1Thu Dec 25 16:01:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2 3 * file.c (rb_file_expand_path_internal): drop characters ignored 4 by filesystem on Mac OS X. 5 6Thu Dec 25 15:36:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7 8 * dir.c (replace_real_basename): get the real name and replace the 9 base name with it by getattrlist(2) if available. 10 suggested by Matthew Draper at [ruby-core:67116]. [Bug #10015] 11 12 * dir.c (glob_helper): get the real name of the whole path, not 13 only the last name. 14 15Thu Dec 25 13:59:17 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 16 17 * configure.in (NET_LUID): include also ifdef.h as a workaround of 18 a bug in mingw-w64 header. [ruby-core:67103] [Bug #10640] 19 20Thu Dec 25 12:47:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 21 22 * parse.y (gettable_gen): warn possible reference to a local 23 variable defined in a past scope. 24 25Thu Dec 25 10:09:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 26 27 * ext/io/console/console.c (console_dev): id_console is not a 28 constant name, use rb_const_remove() to get rid of NameError. 29 30Thu Dec 25 09:18:55 2014 NAKAMURA Usaku <usa@ruby-lang.org> 31 32 * test/resolv/test_dns.rb (TestResolvDNS#test_query_ipv4_address): 33 set timeout for recvfrom because if client thread is crashed, it 34 waits infinity. 35 36Thu Dec 25 08:42:11 2014 Eric Wong <e@80x24.org> 37 38 * lib/uri/generic.rb (split_userinfo): fstring for 1-byte split 39 (set_port): reduce bytecode size 40 (check_path): reduce garbage via opt_str_freeze 41 (query=): ditto 42 (fragment=): ditto 43 [misc #10628] 44 * lib/uri/rfc3986_parser.rb (regexp): cache as attr 45 (initialize): setup and freeze regexp attr once 46 (split): reduce bytecode size, use opt_str_freeze 47 (parse): minor bytecode and garbage reduction 48 (default_regexp): rename for initialize 49 50Wed Dec 24 20:38:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 51 52 * dir.c (glob_make_pattern): restrict searching case-insensitive 53 name from the filesystem to only last part, for the performance. 54 [ruby-core:63591] [Bug #10015] 55 56Wed Dec 24 18:21:27 2014 Koichi Sasada <ko1@atdot.net> 57 58 * gc.c: remove unused rb_objspace_t::rgengc::old_objects_at_gc_start. 59 60Wed Dec 24 13:25:22 2014 NARUSE, Yui <naruse@ruby-lang.org> 61 62 * tool/redmine-backporter.rb: require view_changesets permission. 63 64Wed Dec 24 13:00:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 65 66 * tool/downloader.rb (Downloader.download): fix the exception to 67 re-raise. initialize methods of subclasses of Exception may 68 have different parameters. [ruby-core:67086] [Bug #10639] 69 70Wed Dec 24 12:16:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 71 72 * ruby.h (rb_data_type_t): revert r48647 and revise parent member. 73 [ruby-core:66969] [Bug #10621] 74 75Wed Dec 24 05:40:52 2014 NARUSE, Yui <naruse@ruby-lang.org> 76 77 * tool/downloader.rb: use config.guess in gcc repo. 78 79Wed Dec 24 11:50:19 2014 Koichi Sasada <ko1@atdot.net> 80 81 * hash.c (rb_hash_delete): return Qnil if there are no corresponding 82 entry. [Bug #10623] 83 84 * hash.c (rb_hash_delete_entry): try delete and return Qundef if there 85 are no corresponding entry. 86 87 * internal.h: add rb_hash_delete_entry()'s declaration. 88 89 * symbol.c: use rb_hash_delete_entry(). 90 91 * thread.c: use rb_hash_delete_entry(). 92 93 * ext/-test-/hash/delete.c: use rb_hash_delete_entry(). 94 95Wed Dec 24 09:35:11 2014 NAKAMURA Usaku <usa@ruby-lang.org> 96 97 * ext/fiddle/extconf.rb: remove ffitarget.h generated by configure on 98 mswin, because it's not normal file (cygwin's symlink) and have 99 system attribute. 100 101Wed Dec 24 05:40:52 2014 NARUSE, Yui <naruse@ruby-lang.org> 102 103 * tool/downloader.rb: support ruby 1.8. 104 105Wed Dec 24 02:44:06 2014 NARUSE, Yui <naruse@ruby-lang.org> 106 107 * lib/net/http/response.rb (Net::HTTPResponse): require one or more 108 spaces [Bug #10591]. 109 by leriksen <leif.eriksen.au@gmail.com> 110 https://github.com/ruby/ruby/pull/782 fix GH-782 111 NOTE: graph.facebook.com returns without SP Reason-Phrase. 112 113Wed Dec 24 02:12:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 114 115 * tool/make-snapshot (package): VCS#branch_list expects glob a 116 pattern string but not a regexp. based on the patch by Vit 117 Ondruch. in [ruby-core:67064]. [Bug #10636] 118 119 * tool/vcs.rb (VCS::SVN#branch_list): strip newlines. 120 121 * tool/vcs.rb (VCS::GIT.get_revisions): retrieve modified time 122 from toplevel log too. 123 124 * tool/vcs.rb (VCS::GIT#branch_list): yield for each lines. 125 126Wed Dec 24 00:23:13 2014 NAKAMURA Usaku <usa@ruby-lang.org> 127 128 * tool/extlibs.rb (do_extract): the pipe should be binmode. 129 130Wed Dec 24 00:21:44 2014 NAKAMURA Usaku <usa@ruby-lang.org> 131 132 * Makefile.in, common.mk: move common-srcs to Makefile.in because 133 it breaks build on mswin. 134 135Wed Dec 24 00:04:45 2014 NAKAMURA Usaku <usa@ruby-lang.org> 136 137 * lib/open-uri.rb (OpenURI.open_http): accept multiple certs path in 138 ssl_ca_certs. 139 140 * tool/downloader.rb: use certs of rubygems for downloading gems. 141 142Tue Dec 23 22:39:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 143 144 * ext/fiddle/extlibs: libffi-3.2.1 and patch for mswin. 145 146Tue Dec 23 22:04:38 2014 NARUSE, Yui <naruse@ruby-lang.org> 147 148 * lib/uri/generic.rb (URI::Generic#query=): don't escape [\]^ 149 on both rfc2396 and rfc3986. [Bug #10619] 150 151Tue Dec 23 16:03:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 152 153 * ext/win32/lib/win32/registry.rb (Win32::Registry::Error#initialize): 154 try en_US message if the default message cannot be encoded to 155 locale. [ruby-core:65295] [Bug #10300] 156 157Tue Dec 23 11:42:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 158 159 * ext/openssl/ossl_cipher.c (ossl_cipher_update_long): update huge 160 data gradually not to exceed INT_MAX. workaround of OpenSSL API 161 limitation. [ruby-core:67043] [Bug #10633] 162 163Mon Dec 22 21:30:16 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 164 165 * test/win32ole/test_win32ole_event.rb: some tests are 166 executed on standard Windows OS without ADO. 167 168Mon Dec 22 14:08:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 169 170 * signal.c (received_signal): fix condition to define. 171 [ruby-core:67032] [Bug #10629] 172 173Sun Dec 21 10:51:51 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 174 175 * test/win32ole/test_win32ole_event.rb: test_s_new_exception is 176 executed on standard Windows OS without ADO. 177 178Sun Dec 21 08:35:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 179 180 * configure.in (jemalloc): fix option argument, should use 181 `$withval` but not `yes` always. [ruby-core:66994] [Bug #10625] 182 183 * configure.in (jemalloc): defer adding the liner option to get 184 rid of linking contest against jemalloc, so that it works 185 without runtime dynamic load path. 186 187Sat Dec 20 17:49:03 2014 Tanaka Akira <akr@fsij.org> 188 189 * lib/tmpdir.rb (Dir.mktmpdir): Accept nil again, as Ruby 2.1. 190 [ruby-core:66943] [Bug #10616] Fixed by Alex Slynko. 191 192Sat Dec 20 11:22:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 193 194 * ext/fiddle/depend, ext/fiddle/extconf.rb: try to build bundled 195 libffi if existing. 196 197Sat Dec 20 05:21:00 2014 Eric Wong <e@80x24.org> 198 199 * test/test_weakref.rb (test_repeated_object_leak): increase timeout 200 [Bug #10618] 201 202Fri Dec 19 22:33:13 2014 Tanaka Akira <akr@fsij.org> 203 204 * tool/update-deps: Use $(hdrdir) if possible. 205 206Fri Dec 19 22:10:00 2014 Kenta Murata <mrkn@cookpad.com> 207 208 * ext/bigdecimal/depend: Fix dependencies to make bigdecimal 209 installable by rubygems. 210 211 * ext/bigdecimal/bigdecimal.gemspec: version 1.2.6. 212 213Fri Dec 19 20:00:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 214 215 * include/ruby/ruby.h (PRIsVALUE): put a space after string 216 literals not to be confused with C++11 string literal suffix. 217 https://github.com/ruby/ruby/commit/a9f3eb7#commitcomment-9040169 218 219Fri Dec 19 15:36:02 2014 Simon Genier <simon.genier@shopify.com> 220 221 * hash.c (hash_equal): prefer true than the result of implicit 222 conversion from int returned by rb_eql() to VALUE. [Fix GH-789] 223 224Thu Dec 18 17:45:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 225 226 * configure.in (rb_cv_binary_elf): get rid of -e option of cat 227 which is not available on BusyBox, use tr instead. 228 [ruby-core:64824] [Bug #10210] 229 230Thu Dec 18 14:25:17 2014 NAKAMURA Usaku <usa@ruby-lang.org> 231 232 * signal.c (ruby_signal): since SIGKILL is not supported by MSVCRT, 233 should be treated before calling signal(3). 234 [Bug #10615] 235 236Wed Dec 17 12:20:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 237 238 * compile.c (rb_method_for_self_aref, rb_method_for_self_aset): 239 move from iseq.c to build from node instead of arrays. 240 241Wed Dec 17 10:50:09 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 242 243 * test/gdbm/test_gdbm.rb: Added test for each_key called without a block. 244 Patch by @joeyates [fix GH-783] 245 246Wed Dec 17 10:18:42 2014 Koichi Sasada <ko1@atdot.net> 247 248 * compile.c (iseq_compile_each): check 249 iseq->compile_data->option->specialized_instruction for opt_* insn. 250 251 * test/ruby/test_iseq.rb: check no specialized_instructions option. 252 253Wed Dec 17 09:48:57 2014 Eric Wong <e@80x24.org> 254 255 * compile.c (iseq_compile_each): only emit opt_str_freeze, 256 opt_aref_with, and opt_aset_with insn when no block is given 257 [Bug #10557] [ruby-core:66595] 258 * test/ruby/test_optimization.rb (test_block_given_aset_aref): 259 new test for bug thanks to Bartosz Kopinski. 260 (test_string_freeze): additional assertion for object_id 261 262Wed Dec 17 01:06:47 2014 NAKAMURA Usaku <usa@ruby-lang.org> 263 264 * ext/win32/lib/Win32API.rb (Win32API#call): need to splat. hmm, when 265 was this broken? 266 267Tue Dec 16 15:18:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 268 269 * iseq.c (rb_method_for_self_aref, rb_method_for_self_aset): call 270 accessor functions directly, not to be affected by [] and []= 271 methods. [ruby-core:66846] [Bug #10601] 272 273 * struct.c (define_aref_method, define_aset_method): ditto. 274 275 * vm_insnhelper.c (rb_vm_opt_struct_aref, rb_vm_opt_struct_aset): 276 direct accessors of Struct. 277 278Tue Dec 16 12:01:29 2014 Koichi Sasada <ko1@atdot.net> 279 280 * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): 281 extend timeout seconds to 60 for RGENGC_CHECK_MODE > 0 environment. 282 283Tue Dec 16 08:53:12 2014 Eric Wong <e@80x24.org> 284 285 * tool/vcs.rb: fix Ruby 1.8 compatibility harder 286 287Tue Dec 16 07:37:18 2014 Eric Wong <e@80x24.org> 288 289 * gc.c (GC_HEAP_FREE_SLOTS): move definition to match use order 290 (RUBY_GC_HEAP_GROWTH_SLOTS): s/factor/number of slots/ 291 292 * man/ruby.1: add section for GC environment variables 293 [Feature #10197] 294 295Tue Dec 16 05:41:46 2014 Eric Wong <e@80x24.org> 296 297 * tool/vcs.rb: fix Ruby 1.8 compatibility 298 299Mon Dec 15 17:51:28 2014 Koichi Sasada <ko1@atdot.net> 300 301 * ext/objspace/objspace.c: ObjectSpace.memsize_of(obj) returns 302 with sizeof(RVALUE). [Bug #8984] 303 304 * gc.c (obj_memsize_of): ditto. 305 306 * NEWS: add a NEWS entry. 307 308 * test/objspace/test_objspace.rb: catch up this fix. 309 310 * test/ruby/test_file_exhaustive.rb: ditto. 311 312Mon Dec 15 16:19:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 313 314 * string.c (rb_enc_str_coderange): dummy wchar, non-endianness 315 encoding string cannot be ascii only. 316 [ruby-core:66835] [Bug #10598] 317 318Sun Dec 14 20:11:42 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 319 320 * parse.y (primary): restore current_arg so that circular 321 reference after a method definition is also warned. 322 [ruby-core:61299] [Bug #9593] 323 324Sat Dec 13 20:41:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 325 326 * vm_trace.c (rb_postponed_job_flush): mask signal trap interrupt 327 too to defer handling after finalizers finished. 328 [ruby-core:66825] [Bug #10595] 329 330Sat Dec 13 18:33:25 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 331 332 * test/openssl/test_pkey_ec.rb: ignored tests with old OpenSSL. 333 334Sat Dec 13 18:01:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 335 336 * signal.c (check_stack_overflow): check sp also on i386/x86_64 337 FreeBSD. 338 339Sat Dec 13 09:58:41 2014 Eric Wong <e@80x24.org> 340 341 * gc.c (define_final0): avoid duplicate blocks 342 [Bug #10537] 343 * test/test_weakref.rb (test_repeated_object_leak): new test 344 345Sat Dec 13 04:59:20 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 346 347 * bin/erb (ERB::Main#run): get rid of shadowing outer local 348 variables. [ruby-core:65772] [Feature #10395] 349 350Fri Dec 12 21:56:44 2014 Kouhei Sutou <kou@cozmixng.org> 351 352 * gems/bundled_gems: Upgrade to test-unit 3.0.8. assert_throw and 353 assert_nothing_thrown in test-unit 3.0.7 were broken by 354 UncaughtThrowError change introduced in Ruby 2.2.0 355 preview2. These assertions in test-unit 3.0.8 work well with 356 UncaughtThrowError in Ruby 2.2.0 preview2. 357 358Fri Dec 12 19:48:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 359 360 * bin/erb (ARGV.switch, ERB::Main#run): allow variables to be set 361 from the command line. [ruby-core:65772] [Feature #10395] 362 363Fri Dec 12 19:31:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 364 365 * lib/erb.rb (ERB#lineno): accessor for line number to eval. 366 367 * lib/erb.rb (ERB#location=): setter of file name and line number. 368 369Fri Dec 12 13:09:13 2014 Koichi Sasada <ko1@atdot.net> 370 371 * gc.c (gc_latest_gc_info): return :state field to show current 372 GC state (none/marking/sweeping). 373 [Feature #10590] 374 375Fri Dec 12 10:49:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 376 377 * string.c (rb_str_crypt): check arguments more strictly. 378 * crypt() is not for wide char strings 379 * salt bytes should not be NUL 380 381Fri Dec 12 08:16:01 2014 Matt Hoyle <matt@deployable.co> 382 383 * io.c (io_read) Fix spelling in docco for read. [Fix GH-781] 384 try > tries 385 386Thu Dec 11 19:06:01 2014 Koichi Sasada <ko1@atdot.net> 387 388 * class.c (class_alloc): Start from age == 2. 389 Class and Module objects can be living long life. 390 391 * iseq.c: Same for ISeq objects. 392 393 * gc.c (RVALUE_AGE_RESET): added. 394 395 * gc.c (newobj_of): allow to generate (age != 0) objects. 396 397 * gc.c (rb_copy_wb_protected_attribute): reset age for wb unprotected 398 objects. 399 400 * include/ruby/ruby.h: add RUBY_TYPED_PROMOTED1 as an unrecommended 401 flag. 402 403Thu Dec 11 05:37:52 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 404 405 * lib/prime.rb: Remove useless loop and block capture. 406 See [#10354] 407 408Thu Dec 11 04:27:24 2014 Koichi Sasada <ko1@atdot.net> 409 410 * vm_core.h: introduce new field 411 rb_thread_t::local_storage_recursive_hash_for_trace to store 412 recursive hash to avoid creating new recursive (nested) hashes 413 for each trace events. 414 [Bug #10511] 415 416 * vm_trace.c (rb_threadptr_exec_event_hooks_orig): use it. 417 418 * cont.c: catch up this fix. 419 420 * vm.c (rb_thread_mark): ditto. 421 422Wed Dec 10 13:39:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 423 424 * struct.c (define_aref_method, define_aset_method): use iseq 425 VALUE instead of rb_iseq_t to prevent from GC, as RB_GC_GUARD 426 makes sense only for local variables. [Feature #10575] 427 428Wed Dec 10 09:38:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 429 430 * thread.c (exec_recursive): use the same last method name as 431 recursive_push in the error message when recursive_pop failed. 432 [ruby-core:66742] [Bug #10579] 433 434Wed Dec 10 02:48:46 2014 NAKAMURA Usaku <usa@ruby-lang.org> 435 436 * test/net/http/test_https.rb 437 (TestNetHTTPS#test_certificate_verify_failure): on Windows, 438 Errno::ECONNRESET will be raised when the verify is failure at the 439 client side, and it'll be eaten by WEBrick. 440 441 * test/open-uri/test_ssl.rb (TestOpenURISSL#test_validation_failure): 442 ditto. 443 444Wed Dec 10 00:42:13 2014 Eric Wong <e@80x24.org> 445 446 * iseq.c (rb_method_for_self_aref, rb_method_for_self_aset): 447 new methods to generate bytecode for struct.c 448 [Feature #10575] 449 * struct.c (rb_struct_ref, rb_struct_set): remove 450 (define_aref_method, define_aset_method): new functions 451 (setup_struct): use new functions 452 * test/ruby/test_struct.rb: add test for struct >10 members 453 * benchmark/bm_vm2_struct_big_aref_hi.rb: new benchmark 454 * benchmark/bm_vm2_struct_big_aref_lo.rb: ditto 455 * benchmark/bm_vm2_struct_big_aset.rb: ditto 456 * benchmark/bm_vm2_struct_small_aref.rb: ditto 457 * benchmark/bm_vm2_struct_small_aset.rb: ditto 458 459Tue Dec 9 20:24:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 460 461 * string.c: [DOC] Add missing documentation around String#chomp. 462 Patch by @stderr [ci skip][fix GH-780] 463 464Tue Dec 9 18:20:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 465 466 * object.c: [DOC] Revise documentation by Marcus Stollsteimer at 467 [ruby-core:66368]. [Bug #10526] 468 469 * #inspect: be more specific about generated string, remove 470 obsolete example. 471 * #nil?: use code examples instead of different call-seq's. 472 * #tap: clarify what is yielded. 473 * Integer(): be more specific about to_int and to_i, remove 474 reference to Ruby 1.8. 475 * Array(): fix error. 476 * Class: fix variable name style and indentation in example. 477 * improve consistency, fix typos and formatting. 478 479Tue Dec 9 12:48:32 2014 Josef Simanek <josef.simanek@gmail.com> 480 481 * vm_eval.c (rb_eval_string_wrap): [DOC] Fix `rb_eval_string_wrap` 482 documentation. It is referencing `require` instead of `load`. 483 The former does not have the optional argument. [Fix GH-779] 484 485Tue Dec 9 10:16:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 486 487 * eval.c (rb_frame_last_func): return the most recent frame method 488 name. 489 490 * thread.c (recursive_list_access): use the last method name, 491 instead of the current method name which can be unset in some 492 cases, not to use a symbol by the invalid ID. 493 [ruby-core:66742] [Bug #10579] 494 495Sun Dec 7 19:36:12 2014 Kazuki Tsujimoto <kazuki@callcc.net> 496 497 * ext/socket/basicsocket.c, ext/socket/sockssocket.c: 498 remove code for $SAFE=4. 499 500Sun Dec 7 10:20:55 2014 Eric Hodel <drbrain@segment7.net> 501 502 * lib/rdoc: Update to RDoc 4.2.0. 503 * test/rdoc: ditto. 504 505Sun Dec 7 09:52:30 2014 Eric Hodel <drbrain@segment7.net> 506 507 * lib/rubygems: Update to RubyGems 2.4.5. 508 * test/rubygems: ditto. 509 510Sat Dec 6 10:05:08 2014 Shugo Maeda <shugo@ruby-lang.org> 511 512 * lib/net/imap.rb: Fix undefined variable usage & refactor/DRY 513 code. Patch by @aledovsky. [Fixes GH-770] 514 515 * test/net/test_imap.rb: related test. 516 517Sat Dec 6 10:09:44 2014 Eric Wong <e@80x24.org> 518 519 * thread.c (do_select): rename parameters to avoid shadowing 520 521Sat Dec 6 09:22:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 522 523 * lib/rake: Update to rake 10.4.2 524 * test/rake: ditto. 525 526Sat Dec 6 06:48:03 2014 Eric Wong <e@80x24.org> 527 528 * compile.c (rb_iseq_build_from_ary): remove misc handling 529 530Sat Dec 6 06:14:23 2014 Vit Ondruch <vondruch@redhat.com> 531 532 * configure.in (RUBY_LIB_VERSION): Fix --with-ruby-version 533 configuration option. get rid of quoting in config.status. 534 535 * template/verconf.h.tmpl: quote RUBY_LIB_VERSION here. 536 [ruby-core:66724] [Bug #10572] 537 538Sat Dec 6 04:33:52 2014 NAKAMURA Usaku <usa@ruby-lang.org> 539 540 * lib/pp.rb (File::Stat#pretty_print): some platforms (such as Windows) 541 does not have major/minor parts of device. 542 543Fri Dec 5 22:43:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 544 545 * ext/psych/lib/psych.rb: bump version to 2.0.8 546 * ext/psych/psych.gemspec: ditto. 547 * ext/psych/psych_emitter.c: ditto. 548 * ext/psych/psych_parser.c: ditto. 549 550Fri Dec 5 17:09:09 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 551 552 * ext/socket/option.c (inet_ntop): link aliased inet_ntop in 553 libruby on mswin not rb_w32_inet_ntop which fails to link for 554 unknown reason. 555 556Fri Dec 5 11:09:54 2014 Eric Wong <e@80x24.org> 557 558 * iseq.c (prepare_iseq_build): remove unused block_opt param 559 (rb_iseq_new_with_bopt_and_opt): remove 560 (rb_iseq_new_with_opt): inline removed function 561 (rb_iseq_new_with_bopt): remove 562 (iseq_load): adjust prepare_iseq_build call 563 [Feature #10565] 564 565Fri Dec 5 09:46:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 566 567 * parse.y (parser_yylex): fix lex_state after tLABEL_END, should 568 be EXPR_LABELARG to be followed by "paren with arg". 569 [ruby-core:66705] [Feature #4935] 570 571Fri Dec 5 02:27:47 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 572 573 * ext/extmk.rb: as all extension objects including initializations 574 of ext and enc should be linked to libruby if enable-shared, 575 EXTOBJS should not be linked to main programs. 576 [ruby-core:66675] [Bug #10566] 577 578Thu Dec 4 07:06:02 2014 Eric Wong <e@80x24.org> 579 580 * compile.c (rb_iseq_build_from_exception): entry->sp is unsigned 581 (iseq_build_callinfo_from_hash): account for kw_arg 582 (iseq_build_from_ary_body): update for r35459 583 (CHECK_STRING, CHECK_INTEGER): remove unused checks 584 (int_param): new function for checking new `params' hash 585 (iseq_build_kw): new function for loading rb_iseq_param_keyword 586 (rb_iseq_build_from_ary): account for `misc' entry and general 587 structure changes 588 [Feature #8543] 589 * iseq.c (CHECK_HASH): new macro (for `misc' and `param' entries) 590 (iseq_load): account for `misc' and `params' hashes 591 (iseq_data_to_ary): add final opt to arg_opt_labels, 592 fix kw support, account for unsigned entry->sp 593 * ext/-test-/iseq_load/iseq_load.c: new ext for test 594 * ext/-test-/iseq_load/extconf.rb: ditto 595 * test/-ext-/iseq_load/test_iseq_load.rb: new test 596 597Thu Dec 4 06:56:57 2014 Eric Wong <e@80x24.org> 598 599 * iseq.c (iseq_free): avoid segfault on incomplete iseq 600 * test/ruby/test_syntax.rb (test_invalid_next): new test 601 for syntax error, not segfault 602 603Thu Dec 4 04:20:34 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 604 605 * load.c (ruby_require_internal): ignore error detail, just return 606 an error. 607 608Wed Dec 3 17:13:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 609 610 * encoding.c (load_encoding): use rb_require_internal instead of 611 calling rb_require_safe with protection. 612 613Wed Dec 3 16:47:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 614 615 * load.c (register_init_ext, ruby_init_ext): defer running the 616 registered initialization function until required, not to enable 617 extensions which have global effects just by loading, e.g., 618 mathn/complex and mathn/rational. fix `make test` with 619 --with-static-linked-ext. 620 621 * enc/encinit.c.erb (Init_enc): initialize encdb and transdb 622 directly. 623 624Wed Dec 3 14:51:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 625 626 * load.c (ruby_require_internal): separate from rb_require_safe, 627 not to raise exceptions. 628 629 * ruby.c (process_options): remove unnatural encoding search. 630 631Wed Dec 3 14:34:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 632 633 * string.c (setup_fake_str): fake string does not share another 634 string, but just should not free. 635 636Wed Dec 3 11:14:14 2014 NAKAMURA Usaku <usa@ruby-lang.org> 637 638 * win32/win32.c (w32_spawn): `v2` is used not only for `shell` but also 639 `cmd`, so must not free before using `cmd`. 640 [ruby-core:66648] [Bug #10563] 641 642Wed Dec 3 09:48:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 643 644 * ext/racc/cparse/cparse.c (cparse_params_type): use typed data. 645 646Tue Dec 2 21:33:56 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 647 648 * ext/win32ole/win32ole.c: use typed data for com_hash. 649 650Tue Dec 2 15:30:30 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 651 652 * array.c (rb_ary_plus): in documentation, added note about 653 inefficiency of repeated += operations. 654 655Tue Dec 2 07:20:21 2014 Eric Wong <e@80x24.org> 656 657 * iseq.c (iseq_data_to_ary): keep hidden variables 658 Thanks to wanabe [ruby-core:66566] 659 660Tue Dec 2 06:46:57 2014 Aaron Patterson <aaron@tenderlovemaking.com> 661 662 * ext/psych/lib/psych.rb: bumping version 663 664 * ext/psych/psych.gemspec: ditto 665 666Tue Dec 2 06:34:08 2014 Aaron Patterson <aaron@tenderlovemaking.com> 667 668 * ext/psych/lib/psych/visitors/to_ruby.rb: support objects that are 669 marshalable, but inherit from basic object. 670 Thanks Sean Griffin <sean@thoughtbot.com> 671 672 * ext/psych/lib/psych/visitors/yaml_tree.rb: ditto 673 674 * test/psych/test_marshalable.rb: test for fix 675 676Tue Dec 2 06:32:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 677 678 * parse.y (ripper_flush_string_content): preserve the dispatched 679 results at tSTRING_CONTENT. [ruby-dev:48714] [Bug #10437] 680 681 * parse.y (regexp_contents): check in ripper only if the whole 682 content is a single regexp without interpolation. 683 [ruby-dev:48714] [Bug #10437] 684 685Tue Dec 2 06:30:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 686 687 * re.c (rb_reg_region_copy): new function to try with GC if copy 688 failed and return the error. 689 690Tue Dec 2 04:43:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 691 692 * re.c (CHECK_REGION_COPIED): onig_region_copy() can fail when 693 memory exhausted but returns nothing, so check by if allocated. 694 695Tue Dec 2 02:53:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 696 697 * parse.y (magic_comment_encoding): enable in ripper, since the 698 encoding is necessary to parse non-default encoding scripts. 699 700Tue Dec 2 02:30:25 2014 NARUSE, Yui <naruse@ruby-lang.org> 701 702 * lib/uri/generic.rb (URI::Generic.build): 703 use hostname= to detect and wrap IPv6 hosts. 704 Build is accepting URI components and users may not expect 705 that a host component needs to be wrapped with square brackets 706 since it's not providing a URI. 707 Note: initialize with arg_check => true does not wrap IPv6 hosts. 708 by Joe Rafaniello <jrafanie@redhat.com> 709 https://github.com/ruby/ruby/pull/765 fix GH-765 710 711 * test/uri/test_generic.rb: Add more tests 712 713Mon Dec 1 20:01:12 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 714 715 * ext/win32ole/win32ole.c: use typed data for WIN32OLE. 716 * ext/win32ole/win32ole.h: ditto. 717 * ext/win32ole/win32ole_event.c: ditto. 718 719Mon Dec 1 17:20:42 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 720 721 * win32/Makefile.sub (verconf.h): so depends on verconf.mk, which 722 is rebuilt by setup.mak. 723 724Mon Dec 1 11:05:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 725 726 * proc.c: fix grammar by @BenMorganIO [fix GH-764][ci skip] 727 728Mon Dec 1 10:49:53 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 729 730 * man/rake.1: Update latest man content by @aledovsky 731 [fix GH-771][ci skip] 732 733Mon Dec 1 10:42:31 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 734 735 * doc/syntax/refinements.rdoc: refinements are no longer experimental. 736 patch by @gaurish [fix GH-775][ci skip] 737 738Sun Nov 30 20:05:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 739 740 * parse.y (regexp_contents): fix a typo. pointed out by wanabe. 741 [ruby-dev:48741] [Bug #10543] 742 743Sun Nov 30 18:55:32 2014 Tanaka Akira <akr@fsij.org> 744 745 * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): 746 Don't raise Interrupt. 747 748Sun Nov 30 17:11:05 2014 Tanaka Akira <akr@fsij.org> 749 750 * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): Use 751 assert_separately. 752 753Sun Nov 30 00:02:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 754 755 * ruby.c (process_options, ruby_script): transcode script name and 756 program name to locale encoding as well as argv. 757 [ruby-dev:48752] [Bug #10555] 758 759 * ruby.c (translit_char_bin): should not use code page dependent 760 CharNext on UTF-8 string. [ruby-dev:48752] [Bug #10555] 761 762Sat Nov 29 16:53:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 763 764 * ruby.c (ruby_set_argv): convert argv from UTF-8. 765 766 * win32/win32.c (rb_w32_sysinit, cmdglob, w32_cmdvector): convert 767 wide char command line to UTF-8 argv, and glob in UTF-8 so that 768 metacharacters would match multibyte characters. 769 [ruby-dev:48752] [Bug #10555] 770 771Sat Nov 29 10:49:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 772 773 * win32/win32.c (win32_direct_conv, rb_w32_readdir): convert UTF-8 774 and filesystem code page by using Win32 API directly. 775 776Sat Nov 29 09:37:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 777 778 * error.c (syserr_initialize): simplify message building and get 779 rid of potential invalid byte sequence. 780 781Sat Nov 29 06:09:44 2014 NAKAMURA Usaku <usa@ruby-lang.org> 782 783 * eval_error.c (error_print): respect the encoding of the message. 784 785 * io.c (rb_write_error_str): use rb_w32_write_console() on Windows 786 if stderr is a tty. 787 788Fri Nov 28 05:10:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 789 790 * configure.in (--with-setup): add option to select ext/Setup file. 791 792Fri Nov 28 05:02:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 793 794 * dmyenc.c (Init_enc): separate from dmyext.c for statically 795 linked extension excluding encoding libraries. 796 797Thu Nov 27 21:58:30 2014 Tanaka Akira <akr@fsij.org> 798 799 * common.mk (miniprelude.c): It does not depend on prelude.rb now. 800 801Thu Nov 27 21:49:49 2014 Tanaka Akira <akr@fsij.org> 802 803 * tool/update-deps: List up files built always in the source directory 804 and source files built always in the build directory. 805 806Thu Nov 27 21:24:55 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 807 808 * NEWS: add obsolete callcc. 809 810Thu Nov 27 19:59:49 2014 Koichi Sasada <ko1@atdot.net> 811 812 * compile.c (iseq_compile_each): remove duplicated line event. 813 [Bug #10449] 814 815 * test/ruby/test_settracefunc.rb: add and fix tests. 816 817Thu Nov 27 19:04:50 2014 Koichi Sasada <ko1@atdot.net> 818 819 * vm_args.c: fix backtrace location for keyword related exceptions. 820 821 For example, the following program 822 def foo(k1: 1); end # line 1 823 foo(k2: 2) # line 2 824 causes "unknown keyword: k2 (ArgumentError)". 825 826 Before this patch, the backtrace location is only line 2. 827 However, error should be located at line 1 (over line 2 in 828 stack trace). This patch fix this problem. 829 830 * class.c (rb_keyword_error_new): separate exception creation logic 831 from rb_keyword_error(), to use in vm_args.c. 832 833 * vm_insnhelper.c (rb_arg_error_new): rename to rb_arity_error_new(). 834 835 * vm_args.c (argument_arity_error): rename to argument_arity_error(). 836 837 * vm_args.c (argument_kw_error): added to fix backtrace. 838 839 * test/ruby/test_keyword.rb: add tests. 840 841Thu Nov 27 17:31:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 842 843 * common.mk (prelude.c): no longer depends on miniruby, since not 844 depending on rbconfig.rb. 845 846Thu Nov 27 17:12:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 847 848 * common.mk (miniprelude.c): miniruby needs no preludes. 849 850Thu Nov 27 17:10:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 851 852 * template/prelude.c.tmpl: no code if no prelude code is given. 853 854Thu Nov 27 13:11:00 2014 Koichi Sasada <ko1@atdot.net> 855 856 * gc.c (objspace_malloc_increase): enable lazy sweep on GC by malloc() 857 (malloc_increase) to make GC incrementally. 858 859 This change can increase memory consumption. Report us if you find 860 any problem. 861 862Thu Nov 27 12:46:38 2014 Tanaka Akira <akr@fsij.org> 863 864 * time.c (time_s_mkutc): [DOC] Time.utc's 10 arguments form 865 doesn't examine wday, yday, isdst and tz. 866 (time_s_mktime): [DOC] Time.mktime's 10 arguments form 867 doesn't examine wday, yday and tz. 868 Suggested by naruse. 869 870Thu Nov 27 11:45:33 2014 Eric Wong <e@80x24.org> 871 872 * iseq.c (iseq_data_to_ary): add missing GC guard 873 874Thu Nov 27 10:51:59 2014 Koichi Sasada <ko1@atdot.net> 875 876 * vm_core.h: add rb_thread_t::local_storage_recursive_hash 877 to speed up Thread#[:__recursive_key__] access. 878 [Bug #10511] 879 880 * thread.c (threadptr_local_aref): add fast path for 881 :__recursive_data__. 882 883 * thread.c (threadptr_recursive_hash, threadptr_recursive_hash_set): 884 add special accessor for recursive hash. 885 886 * cont.c: store/restore local_storage_recursive_hash. 887 888 * vm.c: init and mark local_storage_recursive_hash. 889 890 * vm_trace.c (rb_threadptr_exec_event_hooks_orig): clear and restore 891 local_storage_recursive_hash directly. 892 893Thu Nov 27 07:11:00 2014 Eric Wong <e@80x24.org> 894 895 * compile.c (iseq_calc_param_size): hoist out of iseq_set_arguments 896 897Wed Nov 26 22:28:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 898 899 * include/ruby/ruby.h (rb_get_kwargs, rb_extract_keywords): export 900 keyword argument functions. 901 902Wed Nov 26 21:18:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 903 904 * test/inlinetest.rb: removed unused test helper. 905 906Wed Nov 26 20:47:28 2014 Masaya Tarui <tarui@ruby-lang.org> 907 908 * ext/continuation/continuation.c (Init_continuation): obsolete callcc. 909 first step of [Feature #10548]. 910 911Wed Nov 26 19:57:54 2014 Koichi Sasada <ko1@atdot.net> 912 913 * test/ruby/test_gc.rb (test_latest_gc_info): do test separately 914 to avoid mysterious behavior. 915 916Wed Nov 26 19:54:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 917 918 * win32/win32.c (constat_reset): do nothing on non-standard 919 console emulators. [ruby-core:66471] [Bug #10546] 920 921Wed Nov 26 19:44:13 2014 Tanaka Akira <akr@fsij.org> 922 923 * lib/tsort.rb: Returns an enumerator if no block is given. 924 [ruby-core:66270] [Feature #10508] Proposed by Andrey Savchenko. 925 926Wed Nov 26 17:25:45 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 927 928 * parse.y (f_label, f_kw, formal_argument_gen): ignore invalid 929 formal argument in keyword argument definition. 930 [ruby-dev:48742] [Bug #10545] 931 932Wed Nov 26 15:32:06 2014 Koichi Sasada <ko1@atdot.net> 933 934 * compile.c (iseq_set_sequence): use "nop" insn instead of 935 "jump to next insn". 936 https://bugs.ruby-lang.org/issues/8543#change-50085 937 938Wed Nov 26 11:01:35 2014 Eric Wong <e@80x24.org> 939 940 * iseq.c (iseq_s_compile_file): close IO when done 941 942Wed Nov 26 06:06:23 2014 Tanaka Akira <akr@fsij.org> 943 944 * common.mk: encdb.h and transdb.h depends on $(PREP). 945 So prebuild files for them in tarball are useless. 946 947Wed Nov 26 02:08:44 2014 Tanaka Akira <akr@fsij.org> 948 949 * tool/make-snapshot: Don't generate enc/trans/newline.c in tarball. 950 951Wed Nov 26 00:41:44 2014 Tanaka Akira <akr@fsij.org> 952 953 * common.mk (prereq): Don't depends on prelude.c and golf_prelude.c. 954 Since they depend on $(PREP) which is miniruby, they are rebuilt 955 after miniruby is built, even if tarball contains them. 956 957Wed Nov 26 00:20:48 2014 Tanaka Akira <akr@fsij.org> 958 959 * template/prelude.c.tmpl: Don't expand RbConfig::Config[...]. 960 It is not used now. 961 962 * common.mk: prelude.c and golf_prelude.c doesn't depend on rbconfig. 963 964Tue Nov 25 17:07:06 2014 Koichi Sasada <ko1@atdot.net> 965 966 * NEWS: add an "Implementation changes" section. 967 968Tue Nov 25 16:09:28 2014 Eric Hodel <drbrain@segment7.net> 969 970 * lib/net/http.rb: Do not attempt SSL session resumption when the 971 session is expired. [Bug #10533] 972 973Tue Nov 25 15:59:46 2014 Eric Hodel <drbrain@segment7.net> 974 975 * lib/rake: Update to rake 10.4.0 976 * test/rake: ditto. 977 * NEWS: ditto. 978 979 * test/lib/minitest/unit.rb: Add compatibility shim for minitest 5. 980 This only provides minitest 5 unit test naming compatibility. 981 982Tue Nov 25 15:26:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 983 984 * tool/vcs.rb (get_revisions): use Time.new instead of Time.mktime 985 which does not accept UTC offset, and offset manually for older 986 versions than 1.9. 987 988Tue Nov 25 12:14:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 989 990 * process.c (Init_process): initialize static IDs before constant 991 definitions. [ruby-core:66445] 992 993Tue Nov 25 10:32:23 2014 Eric Wong <e@80x24.org> 994 995 * compile.c (iseq_build_callinfo_from_hash): hoist out 996 (iseq_build_from_ary_body): shorten callinfo case 997 998Mon Nov 24 23:03:21 2014 Kouhei Sutou <kou@cozmixng.org> 999 1000 * gems/bundled_gems: Update to test-unit 3.0.7. 1001 1002Mon Nov 24 12:44:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1003 1004 * process.c (check_exec_redirect_fd, check_exec_redirect), 1005 (rb_execarg_addopt): get rid of inadvertent ID pindown. 1006 1007Mon Nov 24 02:03:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1008 1009 * string.c (rb_str_setter): preserve encoding of global variable 1010 name in error message. 1011 1012Mon Nov 24 02:03:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1013 1014 * iseq.c (rb_insn_operand_intern): preserve encoding of method 1015 name in CALL_INFO at disassembling. 1016 1017Mon Nov 24 02:02:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1018 1019 * io.c (must_respond_to): preserve encodings of variable name and 1020 class name in warning message. 1021 1022Sun Nov 23 10:46:23 2014 Eric Wong <e@80x24.org> 1023 1024 * internal.h (struct rb_execarg): 160 => 144 bytes on x86-64 1025 * ruby.c (struct load_file_arg): 48 => 40 bytes on x86-64 1026 * vm_args.c (struct args_info): ditto 1027 1028Sun Nov 23 07:46:54 2014 Andy Maloney <asmaloney@gmail.com> 1029 1030 * io.c (rb_io_sysread): Remove redundant assignment of 'n'. 1031 [Fix GH-767] 1032 1033Sat Nov 22 09:48:33 2014 Tanaka Akira <akr@fsij.org> 1034 1035 * tool/make-snapshot: Specify PWD macro for make. 1036 PWD environment variable may not exist. 1037 1038Fri Nov 21 11:58:58 2014 Aaron Patterson <aaron@tenderlovemaking.com> 1039 1040 * lib/resolv.rb: fall back if canonicalization fails. 1041 Thanks Vit Ondruch for the patch! [ruby-core:65836] 1042 1043 * test/resolv/test_dns.rb: test for patch 1044 1045Sat Nov 22 01:11:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1046 1047 * object.c (rb_mod_const_get, rb_mod_const_defined): ditto. 1048 1049 * variable.c (rb_const_missing, rb_mod_const_missing): call 1050 const_missing without new ID to get rid of inadvertent ID 1051 creation. 1052 1053Fri Nov 21 19:32:57 2014 NARUSE, Yui <naruse@ruby-lang.org> 1054 1055 * common.mk (ext/ripper/ripper.c): revert about srcdir and top_srcdir. 1056 1057 * common.mk (ext/ripper/ripper.c): use $(PWD) for Unix, 1058 $(MAKEDIR) for Windows. 1059 1060Fri Nov 21 18:12:37 2014 Tanaka Akira <akr@fsij.org> 1061 1062 * tool/update-deps: Refactored. 1063 1064Fri Nov 21 14:25:40 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1065 1066 * win32/Makefile.sub (top_srcdir): added because lacking this macro 1067 causes build error at r48526. 1068 1069Fri Nov 21 12:00:58 2014 Tanaka Akira <akr@fsij.org> 1070 1071 * tool/update-deps (in_makefile): Use FILES_NEED_VPATH and 1072 FILES_CONFUSING. 1073 1074 * ext/objspace/extconf.rb: Add VPATH for id.h 1075 1076Fri Nov 21 09:10:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1077 1078 * common.mk (ext/ripper/ripper.c): fix dependencies for the case 1079 to make ripper.y and id.h under the build directory. 1080 1081Fri Nov 21 08:42:21 2014 NARUSE, Yui <naruse@ruby-lang.org> 1082 1083 * common.mk (ext/ripper/ripper.c): id.h in VPATH may exist in the build 1084 directory. 1085 1086 * common.mk (ext/ripper/ripper.c): $(RM) was not defined. 1087 1088Fri Nov 21 00:36:09 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1089 1090 * ext/openssl/lib/openssl/x509.rb 1091 (OpenSSL::X509::Name::RFC2253DN::StringChar): get rid of a false 1092 positive assertion in ripper's test. 1093 1094Fri Nov 21 00:29:51 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1095 1096 * lib/net/imap.rb (Net::IMAP::ResponseParser::BEG_REGEXP): no need to 1097 use embed string. 1098 1099Fri Nov 21 00:19:17 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1100 1101 * lib/uri/mailto.rb (URI::MailTo::EMAIL_REGEXP): should escape `#`. 1102 1103Thu Nov 20 23:17:11 2014 Tanaka Akira <akr@fsij.org> 1104 1105 * tool/update-deps: Insert all dependencies found by compiler. 1106 1107Thu Nov 20 15:51:01 2014 NARUSE, Yui <naruse@ruby-lang.org> 1108 1109 * ext/nkf/depend (nkf.o): add nkf.c as dependency. 1110 bsdmake tries to make nkf.o with nkf-utf8/nkf.c without this. 1111 1112Thu Nov 20 08:54:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1113 1114 * parse.y (struct parser_params): reduce size by reordering 1115 members and an unused member. 1116 1117Thu Nov 20 02:44:27 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 1118 1119 * lib/matrix.rb: Vector#independent? and associated class method 1120 patch by gogo tanaka [#10451] 1121 1122Thu Nov 20 02:32:34 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 1123 1124 * lib/matrix.rb: Add Vector#angle_with 1125 Patch by Egunov Dmitriy [#10442] 1126 1127Thu Nov 20 02:10:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1128 1129 * parse.y (ripper_flush_string_content, parser_parse_string): 1130 preserve parsed string content. [ruby-dev:48714] [Bug #10437] 1131 1132 * parse.y (ripper_new_yylval): abstract function to create ripper 1133 wrapper, and make it able to hold another object. 1134 1135Thu Nov 20 01:00:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1136 1137 * parse.y (reg_named_capture_assign_gen): use predefined ID 1138 instead of rb_intern. 1139 1140Thu Nov 20 00:54:57 2014 Tanaka Akira <akr@fsij.org> 1141 1142 * internal.h (ruby_init_setproctitle): Declare here. 1143 1144Thu Nov 20 00:26:37 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1145 1146 * parse.y (parser_here_document): append byte sequence directly to 1147 the delayed content instead of creating an intermediate string 1148 object. 1149 1150Wed Nov 19 21:11:01 2014 NARUSE, Yui <naruse@ruby-lang.org> 1151 1152 * common.mk (ext/json/parser/parser.c): don't touch parse.c, 1153 ruby repo is a downstream. 1154 1155Wed Nov 19 20:38:11 2014 NARUSE, Yui <naruse@ruby-lang.org> 1156 1157 * common.mk (ext/ripper/ripper.c): use $(PWD) to get 1158 <build-directory>/ext/ripper. 1159 1160Wed Nov 19 18:12:17 2014 NARUSE, Yui <naruse@ruby-lang.org> 1161 1162 * tool/downloader.rb (RubyGems.download): Don't download gem if the 1163 version is already downloaded. A gem file is versioned and 1164 it must be identical if the version is the same. 1165 1166Wed Nov 19 17:59:25 2014 NARUSE, Yui <naruse@ruby-lang.org> 1167 1168 * common.mk (ext/ripper/ripper.c): pass build directory as VPATH. 1169 1170 * ext/ripper/depend (.y.c): use VPATH for y.tab.c. 1171 1172Wed Nov 19 10:07:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1173 1174 * template/prelude.c.tmpl (Prelude#translate): strip VPATH prefix 1175 from prelude names, so that srcdir differences do not make the 1176 generated code different. 1177 1178Wed Nov 19 07:45:11 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1179 1180 * win32/win32.c (rb_w32_write): should set the error of 1181 GetOverlappedResult()'s, not WriteFile()'s (it's always 1182 ERROR_IO_PENDING, of course). 1183 1184Tue Nov 18 14:16:47 2014 Koichi Sasada <ko1@atdot.net> 1185 1186 * gc.c (gc_record): add information for debug print. 1187 1188Wed Nov 19 04:49:07 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1189 1190 * debug.c (set_debug_option): need the declaration. 1191 1192 * debug.c (set_debug_option): use the same macro with the implementation 1193 at win32/win32.c. 1194 1195Wed Nov 19 04:16:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1196 1197 * parse.y (symbol_list): fix the node type of literal symbol list 1198 with no interpolation. [ruby-core:66343] 1199 1200Wed Nov 19 00:26:15 2014 Tanaka Akira <akr@fsij.org> 1201 1202 * tool/update-deps: Sort dependencies. 1203 1204Wed Nov 19 00:24:18 2014 Tanaka Akira <akr@fsij.org> 1205 1206 * enc/encdb.c: Include internal.h. 1207 1208Tue Nov 18 23:23:45 2014 Tanaka Akira <akr@fsij.org> 1209 1210 * internal.h: Gather declarations in non-header files. 1211 1212Tue Nov 18 23:45:52 2014 Tanaka Akira <akr@fsij.org> 1213 1214 * debug.c (SET_WHEN): Don't declare debug variables here. 1215 ruby_initial_gc_stress_ptr is changed int* to VALUE* at r41406. 1216 1217 * internal.h (ruby_initial_gc_stress_ptr): Declared. 1218 (ruby_enable_coredump): Ditto. 1219 1220Tue Nov 18 18:06:43 2014 Tanaka Akira <akr@fsij.org> 1221 1222 * include/ruby/io.h (FMODE_WSPLIT): Removed. The write() system call 1223 is not required to split. It was useful to avoid whole process 1224 blocking in Ruby 1.8 but not useful since write() is invoked without 1225 GVL. 1226 (FMODE_WSPLIT_INITIALIZED): Ditto. 1227 1228 * io.c (wsplit_p): Removed. 1229 (io_writable_length): Removed. 1230 (rb_fcntl): Don't update the removed flags. 1231 1232Tue Nov 18 03:23:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1233 1234 * object.c (check_setter_id): show the original argument instead 1235 of nil on TypeError. 1236 1237Tue Nov 18 03:20:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1238 1239 * symbol.h (is_{local,global,instance,attrset,const,class,junk}_sym): 1240 fix ID type names. 1241 1242Mon Nov 17 20:17:59 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 1243 1244 * ext/win32ole/win32ole_event.c: use typed data. 1245 1246Mon Nov 17 12:54:56 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1247 1248 * lib/rubygems/*, test/rubygems/*: Update to RubyGems 2.4.4 1249 master (2f6e42e). 1250 1251Mon Nov 17 06:13:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1252 1253 * proc.c (proc_binding): use the original iseq on a binding from 1254 proc from method object to get the location. 1255 1256Sun Nov 16 19:38:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1257 1258 * vm_eval.c (rb_current_receiver): new function to return the 1259 receiver in the current control frame. [Feature #10195] 1260 1261Sun Nov 16 19:11:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1262 1263 * lib/timeout.rb (Timeout::ExitException#exception): rescue 1264 UncaughtThrowError which is specific for throw, instead of 1265 ArgumentError. 1266 1267Sun Nov 16 18:22:18 2014 Eric Wong <e@80x24.org> 1268 1269 * tool/update-deps: warning to disable ccache 1270 1271Sun Nov 16 13:11:35 2014 Tanaka Akira <akr@fsij.org> 1272 1273 * common.mk (CCAN_LIST_INCLUDES): Unused variable removed. 1274 (ENCODING_H_INCLUDES): Ditto. 1275 (PROBES_H_INCLUDES): Ditto. 1276 (VM_CORE_H_INCLUDES): Ditto. 1277 1278Sun Nov 16 11:07:25 2014 Eric Wong <e@80x24.org> 1279 1280 * test/ruby/test_io.rb (test_readpartial_locktmp): 1281 remove unnecessary begin/end 1282 1283Sun Nov 16 00:45:23 2014 Tanaka Akira <akr@fsij.org> 1284 1285 * common.mk: Specify dependencies for generated C sources. 1286 1287Sat Nov 15 23:10:45 2014 Tanaka Akira <akr@fsij.org> 1288 1289 * common.mk: No need to declare dependencies which 1290 will be detected by inference rules. 1291 1292Sat Nov 15 20:34:23 2014 Tanaka Akira <akr@fsij.org> 1293 1294 * internal.h: Include ruby.h and ruby/encoding.h to be 1295 includable without prior inclusion. 1296 1297Sat Nov 15 20:46:44 2014 Kouhei Sutou <kou@cozmixng.org> 1298 1299 * test/rexml/test_document.rb 1300 (REXMLTests::TestDocument::EntityExpansionLimitTest): 1301 Group tests by general entity and parameter entity. 1302 1303Sat Nov 15 20:43:31 2014 Kouhei Sutou <kou@cozmixng.org> 1304 1305 * test/rexml/test_document.rb 1306 (REXMLTests::TestDocument::EntityExpansionLimitTest): Define 1307 test XML in each test method because (1) each XML in used only 1308 one test and (2) related data and code should be close. 1309 1310Sat Nov 15 20:39:06 2014 Kouhei Sutou <kou@cozmixng.org> 1311 1312 * test/rexml/test_document.rb 1313 (REXMLTests::TestDocument::EntityExpansionLimitTest): Use 1314 one test method for one test. 1315 1316Sat Nov 15 20:16:59 2014 Kouhei Sutou <kou@cozmixng.org> 1317 1318 * test/rexml/test_document.rb 1319 (REXMLTests::TestDocument::EntityExpansionLimitTest): Use 1320 setup and teardown instead of ensure in test. 1321 1322Sat Nov 15 20:11:34 2014 Kouhei Sutou <kou@cozmixng.org> 1323 1324 * test/rexml/test_document.rb (REXMLTests::TestDocument): Group 1325 entity expansion limit related tests. 1326 1327Sat Nov 15 20:09:00 2014 Kouhei Sutou <kou@cozmixng.org> 1328 1329 * test/rexml/test_document.rb (REXMLTests::TestDocument::BomTest): 1330 Fix wrong parent class. It doesn't need inherit tests in 1331 TestDocument class. 1332 1333Sat Nov 15 19:48:59 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1334 1335 * lib/mkmf.rb (depend_rules): support comments during a line. 1336 1337 * lib/mkmf.rb (depend_rules): apply RULE_SUBST even if the dependency 1338 file contains path. 1339 1340Sat Nov 15 19:25:46 2014 Tanaka Akira <akr@fsij.org> 1341 1342 * common.mk: Remove comments in Dependency lines. 1343 Notified by usa. 1344 1345 * enc/depend: Ditto. 1346 1347 * ext/**/depend: Ditto. 1348 1349Sat Nov 15 16:28:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1350 1351 * vm_eval.c (rb_throw_obj): throw UncaughtThrowError instead of 1352 ArgumentError. [Feature #10480] 1353 1354Sat Nov 15 14:13:38 2014 Tanaka Akira <akr@fsij.org> 1355 1356 * tool/update-deps: Extend to fix dependencies. 1357 1358 * common.mk: Dependencies updated by tool/update-deps. 1359 1360 * enc/depend: Ditto. 1361 1362 * ext/**/depend: Ditto. 1363 1364Fri Nov 14 17:36:48 2014 Tanaka Akira <akr@fsij.org> 1365 1366 * tool/update-deps: Support GNU Make 4.0. 1367 1368Fri Nov 14 16:59:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1369 1370 * gc.c (default_proc_for_compat_func): check arguments number and 1371 type, and get rid of reentering this default proc. 1372 1373Fri Nov 14 16:33:06 2014 Koichi Sasada <ko1@atdot.net> 1374 1375 * gc.c (gc_stat_internal): support compatible layer for 1376 GC.stat(symbol) type access. 1377 1378Fri Nov 14 16:19:08 2014 Koichi Sasada <ko1@atdot.net> 1379 1380 * gc.c (gc_stat_internal): add compatible layer. 1381 From Ruby 2.2, keys of GC.stat are changed [Feature #9924]. 1382 To provide compatible layer, GC.stat add a default_proc 1383 (if default_proc of given Hash object is not set). 1384 1385 At first use of this compatible layer of interpreter process, 1386 show a warning message like that: 1387 program: GC.stat[:total_allocated_object] 1388 warning message: "warning: GC.stat keys were changed from Ruby 1389 2.1. In this case, you refer to obsolete `total_allocated_object' 1390 (new key is `total_allocated_objects'). 1391 Please check <https://bugs.ruby-lang.org/issues/9924> 1392 for more information." 1393 1394 Please correct my English message :) 1395 1396 * hash.c (rb_hash_set_default_proc): export (in internal). 1397 1398 * internal.h: ditto. 1399 1400Fri Nov 14 10:41:25 2014 Koichi Sasada <ko1@atdot.net> 1401 1402 * gc.c: guard by #if/#endif with GC_ENABLE_INCREMENTAL_MARK 1403 to hide unused codes. 1404 1405 * gc.c: similar to GC_ENABLE_LAZY_SWEEP. 1406 1407Fri Nov 14 10:23:35 2014 Eric Wong <e@80x24.org> 1408 1409 * vm_eval.c (rb_eval_cmd): use pre-defined idCall 1410 1411Fri Nov 14 09:25:44 2014 Eric Wong <e@80x24.org> 1412 1413 * vm_eval.c (rb_yield_splat): add missing GC guard 1414 [Bug #10509] 1415 1416Fri Nov 14 08:12:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1417 1418 * gc.c: fix build error caused by implicit conversion with clang. 1419 1420Fri Nov 14 06:54:06 2014 Eric Wong <e@80x24.org> 1421 1422 * insns.def (opt_succ): remove Time#succ optimization 1423 [Feature #10501] 1424 1425Fri Nov 14 05:29:46 2014 Koichi Sasada <ko1@atdot.net> 1426 1427 * gc.c: refactoring. 1428 1429 * gc.c: use GC_ENABLE_INCREMENTAL_MARK instead of USE_RINCGC. 1430 1431 * gc.c (gc_start): check FORCE_MAJOR_GC. 1432 1433Fri Nov 14 04:51:18 2014 Koichi Sasada <ko1@atdot.net> 1434 1435 * gc.c: Tuning RincGC parameters. 1436 1437 Before this patch, gc_marks_step() marks (white -> grey) fixed 1438 number objects. However, this strategy does not fit practical 1439 cases, for example too slow to make progress. 1440 1441 This patch changes this strategy how many objects the 1442 gc_marks_step() should handle. 1443 1444 We can estimate how many times gc_marks_step() is called during 1445 this major marking (== C) with the free slot number in pooled 1446 pages. We also can estimate the living object number (== L) 1447 using last marked_slots value. We can solve this problem (how 1448 many objects should be process in gc_marks_step()) by L/C. 1449 1450 * gc.c (rb_objspace_t): add rb_objspace_t::rincgc::pooled_slots and 1451 step_slots. 1452 1453Fri Nov 14 01:26:47 2014 Shugo Maeda <shugo@ruby-lang.org> 1454 1455 * lib/net/imap.rb (search_response): parse MODSEQ in SEARCH 1456 responses properly. [ruby-core:64203] [Bug #10112] 1457 1458Fri Nov 14 01:03:17 2014 Tanaka Akira <akr@fsij.org> 1459 1460 * test/lib/envutil.rb: Moved from test/ruby/. 1461 1462 * test/lib/find_executable.rb: Ditto. 1463 1464 * test/lib/memory_status.rb: Ditto. 1465 1466 * test/lib/test/unit.rb: require envutil. 1467 1468 * test/: Don't require envutil in test files. 1469 1470Thu Nov 13 21:59:58 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1471 1472 * lib/rexml/document.rb: add REXML::Document#document. 1473 reported by Tomas Hoger <thoger@redhat.com> and patched by nahi. 1474 1475Thu Nov 13 21:51:56 2014 Tanaka Akira <akr@fsij.org> 1476 1477 * test/monitor/test_monitor.rb: Use assert_join_threads. 1478 1479Thu Nov 13 21:45:13 2014 Tanaka Akira <akr@fsij.org> 1480 1481 * test/openssl: Don't specify port number. 1482 1483Thu Nov 13 21:22:35 2014 Tanaka Akira <akr@fsij.org> 1484 1485 * test/openssl/ssl_server.rb: Unused file removed. 1486 It is not used since r16111, Ruby 1.9.1. 1487 1488Thu Nov 13 18:50:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1489 1490 * eval.c (rb_ensure): remove obsolete prot_tag comment. patch by 1491 Jack Danger at [ruby-core:66238]. [misc #10502] 1492 1493Thu Nov 13 18:10:38 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1494 1495 * vm.c (rb_vm_make_proc_lambda): similar to rb_vm_make_proc() with 1496 is_lambda argument. 1497 1498Thu Nov 13 12:11:18 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1499 1500 * win32/win32.c (rb_w32_fstat{,i64}): speed up. adjusting 1501 timestamps in this function is to get rid of the side effect of 1502 ENV["TZ"]. then, if ENV["TZ"] is not set, no need to adjust. 1503 this change makes File#stat about 60% faster. 1504 1505Thu Nov 13 11:56:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1506 1507 * st.c: include "internal.h" for STATIC_ASSERT. 1508 1509Thu Nov 13 03:56:38 2014 Eric Wong <e@80x24.org> 1510 1511 * gc.c (struct heap_page): trivial packing 1512 304 => 296 bytes on x86-64 1513 1514Wed Nov 12 22:50:12 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1515 1516 * gems/bundled_gems: Update to test-unit 3.0.6 and minitest 5.4.3. 1517 1518Wed Nov 12 22:30:52 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1519 1520 * lib/rubygems/*: Update to RubyGems 2.4.3 master (7b1f684). 1521 1522Wed Nov 12 00:26:37 2014 Tanaka Akira <akr@fsij.org> 1523 1524 * test/ruby/test_object.rb: Specify an exception class for rescue clause. 1525 1526 * test/dbm/test_dbm.rb: Ditto. 1527 1528 * test/gdbm/test_gdbm.rb: Ditto. 1529 1530 * test/sdbm/test_sdbm.rb: Ditto. 1531 1532Tue Nov 11 23:43:51 2014 Tanaka Akira <akr@fsij.org> 1533 1534 * test/fileutils/test_fileutils.rb: Use assert_join_threads. 1535 1536Tue Nov 11 22:51:14 2014 Tanaka Akira <akr@fsij.org> 1537 1538 * test/resolv/test_dns.rb: Use assert_join_threads. 1539 1540Tue Nov 11 22:33:08 2014 Tanaka Akira <akr@fsij.org> 1541 1542 * test/net/pop/test_pop.rb: Use assert_join_threads. 1543 1544Tue Nov 11 22:07:20 2014 Tanaka Akira <akr@fsij.org> 1545 1546 * test/net/http/test_https_proxy.rb: Use assert_join_threads. 1547 1548Tue Nov 11 18:09:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1549 1550 * template/prelude.c.tmpl: move from tool/compile_prelude.rb and 1551 expand by generic_erb.rb. 1552 1553Tue Nov 11 13:01:31 2014 NARUSE, Yui <naruse@ruby-lang.org> 1554 1555 * lib/rubygems/commands/contents_command.rb (files_in_default_gem): 1556 remove useless sort. show_files will sort the result and 1557 another branch, files_in_gem, doesn't sort. 1558 it should be removed for consistency. 1559 1560 * test/rubygems/test_gem_commands_contents_command.rb 1561 (test_execute_default_gem): adjust the sort algorithm with 1562 Gem::Commands::ContentsCommand#show_files, which sort items 1563 as array of [prefix, basename] not strings. 1564 1565Tue Nov 11 10:37:09 2014 Koichi Sasada <ko1@atdot.net> 1566 1567 * string.c (sym_equal): use rb_obj_equal(). 1568 rb_obj_equal() is specially optimized in 1569 opt_eq_func()@vm_insnhelper.c. 1570 1571 This fix is made from this discussion: 1572 https://www.omniref.com/ruby/2.1.4/symbols/Symbol/%3D%3D#line=8361. 1573 1574Tue Nov 11 09:38:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1575 1576 * lib/rdoc/known_classes.rb: reverted regression changes of 1577 rdoc known class. 1578 1579Tue Nov 11 00:21:50 2014 Tanaka Akira <akr@fsij.org> 1580 1581 * test/net/imap/test_imap.rb: Don't ignore exceptions on server 1582 threads. 1583 1584Mon Nov 10 23:34:13 2014 Tanaka Akira <akr@fsij.org> 1585 1586 * test/net/ftp/test_ftp.rb (create_ftp_server): Don't ignore 1587 exceptions on server thread. 1588 Delete read_timeout method call to fix NoMethodError. 1589 1590Mon Nov 10 20:20:53 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1591 1592 * win32/win32.c (rb_w32_read): retry with reduced length if cannot to 1593 write any data but no error occurs. 1594 1595Mon Nov 10 20:04:16 2014 Tanaka Akira <akr@fsij.org> 1596 1597 * lib/webrick/server.rb: Setup shutdown pipe in listen method. 1598 1599Mon Nov 10 19:37:09 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1600 1601 * win32/win32.c, include/win32/win32.h (rb_w32_set_nonblock): new 1602 function to support nonblock-mode of pipes. 1603 1604 * win32/win32.c (rb_w32_read): nonblock-mode pipe returns ERROR_NO_DATA 1605 if there is no data, but also returns it if remote-end is closed. 1606 1607 * win32/win32.c (rb_w32_write): if cannot to write any data, it may be 1608 blocking. 1609 1610 * io.c (rb_io_set_nonblock): use rb_w32_set_nonblock for Windows. 1611 1612 * ext/io/nonblock/nonblock.c (rb_io_nonblock_set): use ruby's API when 1613 setting nonblock-mode. 1614 1615 * test/ruby/test_io.rb: test nonblock pipes on Windows. 1616 1617Mon Nov 10 17:24:34 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1618 1619 * ext/etc/etc.c (etc_getlogin): set login name encoding properly. 1620 [ruby-core:66163] [Bug #10493] 1621 1622Mon Nov 10 16:20:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1623 1624 * lib/rubygems/*.rb: Update to RubyGems master(3e36528). 1625 1626Mon Nov 10 16:09:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1627 1628 * signal.c (rb_f_kill): [DOC] mention known signal list. 1629 [ruby-core:66162] [Bug #10492] 1630 1631Mon Nov 10 14:17:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1632 1633 * lib/rdoc/*.rb: Update to RDoc 4.2.0.alpha(579a11c) 1634 1635Mon Nov 10 12:44:39 2014 Tanaka Akira <akr@fsij.org> 1636 1637 * lib/webrick/server.rb: Less instance variables. 1638 1639Mon Nov 10 12:19:43 2014 Tanaka Akira <akr@fsij.org> 1640 1641 * lib/webrick/server.rb (shutdown): Use close() on @shutdown_pipe_w to 1642 notify readability on the read side of the pipe. 1643 write_nonblock() is not usable for pipe on Windows. 1644 (cleanup_shutdown_pipe): Rescue IOError for @shutdown_pipe_w.close. 1645 1646Mon Nov 10 07:31:59 2014 Tanaka Akira <akr@fsij.org> 1647 1648 * lib/webrick/server.rb (initialize): Initialize shutdown pipe here 1649 to avoid race condition. 1650 (cleanup_shutdown_pipe): New private method. 1651 (cleanup_listener): Extracted from shutdown method. 1652 Call this method from start method to avoid race condition. 1653 1654Mon Nov 10 05:57:53 2014 Tanaka Akira <akr@fsij.org> 1655 1656 * test/webrick/webrick.cgi: Don't use debug mode. 1657 1658 * test/webrick/webrick_long_filename.cgi: Ditto. 1659 1660Sun Nov 9 23:25:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1661 1662 * vm_eval.c (vm_call_super): allow bound proc method to call super 1663 method. 1664 1665 * vm_insnhelper.c (vm_yield_with_cfunc): push defined class and 1666 bound proc method entry to the control frame. 1667 1668Sun Nov 9 22:46:13 2014 Tanaka Akira <akr@fsij.org> 1669 1670 * test/open-uri: Test server log in server thread. 1671 1672 * test/webrick: Ditto. 1673 1674Sun Nov 9 22:28:34 2014 Tanaka Akira <akr@fsij.org> 1675 1676 * lib/webrick/httpstatus.rb: require webrick/accesslog for AccessLog. 1677 1678Sun Nov 9 21:03:59 2014 Tanaka Akira <akr@fsij.org> 1679 1680 * test/webrick: Fix the argument order of assert_equal. 1681 1682Sun Nov 9 20:29:01 2014 Tanaka Akira <akr@fsij.org> 1683 1684 * test/webrick: Store log in an array. 1685 1686 * test/net/http: Ditto. 1687 1688 * test/open-uri: Ditto. 1689 1690Sun Nov 9 18:35:36 2014 Tanaka Akira <akr@fsij.org> 1691 1692 * test/xmlrpc: Refine log test. 1693 1694Sun Nov 9 18:33:33 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 1695 1696 * lib/unicode_normalize/normalize.rb: Replaced if-else by 1697 case in self.normalized? in parallel to r48309. 1698 1699Sun Nov 9 18:07:00 2014 Tanaka Akira <akr@fsij.org> 1700 1701 * test/xmlrpc: Use assert_join_threads. 1702 1703Sun Nov 9 14:06:13 2014 Tanaka Akira <akr@fsij.org> 1704 1705 * test/xmlrpc: Test webrick error log is empty. 1706 1707Sun Nov 9 13:47:02 2014 Koichi Sasada <ko1@atdot.net> 1708 1709 * gc.c (is_incremental_marking): use #if/#else because 1710 rb_objspace_t::flags::during_incremental_marking is not defined 1711 when GC_ENABLE_INCREMENTAL_MARK is 0. 1712 1713 * gc.c (will_be_incremental_marking, is_full_marking): similar fix. 1714 1715Sun Nov 9 12:16:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1716 1717 * lib/securerandom.rb (SecureRandom.gen_random): separate 1718 implementation details and select at the load time. 1719 1720Sun Nov 9 12:09:38 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1721 1722 * ext/win32/lib/win32/registry.rb (Win32::Registry::API#Enum{Value,Key): 1723 ditto. 1724 1725Sun Nov 9 11:48:40 2014 Tanaka Akira <akr@fsij.org> 1726 1727 * test/net/http: Examine webrick log. 1728 1729Sun Nov 9 11:45:19 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1730 1731 * gems/bundled_gems: upgraded to test-unit 3.0.5. 1732 1733Sun Nov 9 11:40:50 2014 Tanaka Akira <akr@fsij.org> 1734 1735 * defs/known_errors.def: More errors for FreeBSD. 1736 1737Sun Nov 9 11:25:11 2014 Kazuki Tsujimoto <kazuki@callcc.net> 1738 1739 * gems/bundled_gems: upgraded to power_assert 0.2.0. 1740 1741Sun Nov 9 10:31:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1742 1743 * lib/securerandom.rb: set the script encoding to make a string 1744 literal in SecureRandom::Kernel32.last_error_message single byte 1745 encoding so msg[] works in bytes, since FormatMessage() returns 1746 the size in TCHARs, not in characters. 1747 1748Sun Nov 9 09:50:22 2014 Tanaka Akira <akr@fsij.org> 1749 1750 * test/webrick: Refine log tests. 1751 1752Sun Nov 9 08:58:05 2014 Tanaka Akira <akr@fsij.org> 1753 1754 * defs/known_errors.def (EHWPOISON): New errno symbol. 1755 It is defined by glibc-2.16. 1756 1757Sun Nov 9 05:00:23 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1758 1759 * lib/securerandom.rb (initialize): call the special method for Win32 1760 before checking `/dev/urandom` because we know windows doesn't have it. 1761 1762Sun Nov 9 04:01:46 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1763 1764 * lib/securerandom.rb (SecureRandom::AdvApi32): split from `initialize`. 1765 thanks @zzak to remember it. 1766 1767Sun Nov 9 02:05:33 2014 Tanaka Akira <akr@fsij.org> 1768 1769 * test/net/http/utils.rb: Don't connect to spawned server 1770 before actual test. 1771 1772Sun Nov 9 01:51:50 2014 Benoit Daloze <eregontp@gmail.com> 1773 1774 * object.c (Module#const_defined?): [DOC] Revise the documentation. 1775 Patch by Xavier Noria. 1776 [Fixes GH-754] https://github.com/ruby/ruby/pull/754 1777 1778Sun Nov 9 00:37:44 2014 Tanaka Akira <akr@fsij.org> 1779 1780 * test/webrick: Examine log and use assert_join_threads. 1781 1782Fri Nov 7 00:00:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1783 1784 * template/unicode_norm_gen.tmpl: expand kompatible_table so that 1785 recursive expansion is not needed at runtime. 1786 1787Thu Nov 6 23:58:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1788 1789 * pack.c (pack_pack): escape unprintable characters and preserve 1790 the encoding of warning message. 1791 1792Thu Nov 6 23:55:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1793 1794 * string.c (sym_printable): QUOTE() should not raise an exception 1795 even on invalid byte sequence. 1796 1797Thu Nov 6 21:44:36 2014 Tanaka Akira <akr@fsij.org> 1798 1799 * test/test_unicode_normalize.rb: Rename TestNormalize to 1800 TestUnicodeNormalize. 1801 Define constants under TestUnicodeNormalize. 1802 1803Thu Nov 6 21:22:59 2014 Tanaka Akira <akr@fsij.org> 1804 1805 * test/open-uri/test_open-uri.rb: Check empty webrick log. 1806 1807Thu Nov 6 19:27:34 2014 NARUSE, Yui <naruse@ruby-lang.org> 1808 1809 * re.c (unescape_nonascii): cast -1 for the case char is unsigned char. 1810 If char is signed char, for example gcc for ARM or ppc64, it caused 1811 infinite loop. 1812 http://kmuto.jp/build-ruby/arm/ruby-trunk/log/20141106T013005Z.fail.html.gz 1813 http://rubyci.blob.core.windows.net/f19p8/ruby-trunk/log/20141106T090217Z.fail.html.gz 1814 1815Thu Nov 6 09:53:18 2014 Eric Wong <e@80x24.org> 1816 1817 * lib/uri/rfc2396_parser.rb (initialize): reduce bytecode size 1818 2088 => 1332 bytes on 32-bit x86 1819 1820Thu Nov 6 08:49:49 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 1821 1822 * lib/unicode_normalize/normalize.rb: Comment clarification. 1823 1824Wed Nov 5 23:43:24 2014 Naohisa Goto <ngotogenome@gmail.com> 1825 1826 * compile.c (compile_data_alloc): add padding when strict alignment 1827 is required for memory access. Currently, the padding is enabled 1828 only when the CPU is 32-bit SPARC and the compiler is GCC. 1829 [Bug #9681] [ruby-core:61715] 1830 1831 * compile.c (STRICT_ALIGNMENT): defined if strict alignment is required 1832 1833 * compile.c (ALIGNMENT_SIZE, ALIGNMENT_SIZE_MASK, PADDING_SIZE_MAX): 1834 new macros for alignment word size, bit mask, max size of padding. 1835 1836 * compile.c (calc_padding): new function to calculate padding size. 1837 1838Wed Nov 5 23:24:45 2014 Tanaka Akira <akr@fsij.org> 1839 1840 * test/open-uri/test_open-uri.rb: Don't ignore webrick's log. 1841 1842Wed Nov 5 19:20:08 2014 Tanaka Akira <akr@fsij.org> 1843 1844 * lib/webrick/server.rb: Stop listener loop properly. 1845 [ruby-core:66085] [Bug #10478] Fixed by Charles Nutter. 1846 1847Wed Nov 5 17:20:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1848 1849 * include/ruby/intern.h (rb_disable_super, rb_enable_super): warn 1850 as deprecated at build time, instead of ignoring silently or 1851 warning at runtime only. 1852 1853Wed Nov 5 16:55:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1854 1855 * proc.c (rb_f_lambda): remove deprecated function, which has been 1856 unavailable from extension libraries. 1857 1858Wed Nov 5 16:26:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1859 1860 * include/ruby/intern.h (rb_clear_cache): mark as deprecated, not 1861 only warnings at runtime. 1862 1863Wed Nov 5 15:05:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1864 1865 * string.c (rb_str_{,l,r}strip_bang): rb_str_subseq() will not 1866 NUL-terminate the result string, in the future, so it will not 1867 be needed in other cases. 1868 1869Wed Nov 5 14:11:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1870 1871 * common.mk (lib/unicode_normalize/tables.rb): do nothing unless 1872 BASERUBY is available. MINIRUBY cannot load extension libraries, 1873 so cannot update Unicode data. 1874 1875Wed Nov 5 12:13:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1876 1877 * string.c (rb_str_lstrip, rb_str_strip): reduce memory copy by 1878 copying necessary part only. 1879 1880 * string.c (rb_str_strip_bang, rb_str_strip): ditto. 1881 1882Wed Nov 5 12:13:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1883 1884 * string.c (rb_str_lstrip, rb_str_strip): reduce memory copy by 1885 copying necessary part only. 1886 1887 * string.c (rb_str_strip_bang, rb_str_strip): ditto. 1888 1889Wed Nov 5 10:54:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1890 1891 * string.c (rb_str_lstrip_bang, rb_str_rstrip_bang): terminate 1892 wchar strings with wchar 0. 1893 1894Tue Nov 4 21:23:22 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1895 1896 * ext/win32/lib/Win32API.rb: Fiddle::Importer is defined in 1897 fiddle/import.rb and it's not loaded implicitly. 1898 1899 * ext/win32/lib/Win32API.rb (Win32API#initialize): `import` is a string. 1900 1901 * ext/win32/lib/Win32API.rb (Win32API#initialize): 1902 Fiddle::Importer::CALL_TYPE_TO_ABI is private constant. 1903 1904Tue Nov 4 21:20:07 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1905 1906 * lib/securerandom.rb (SecureRandom.random_bytes): use fiddle directly 1907 instead of using Win32API. 1908 1909Tue Nov 4 21:04:30 2014 NAKAMURA Usaku <usa@ruby-lang.org> 1910 1911 * test/rubygems/test_gem_request_set_lockfile.rb 1912 (test_relative_path_from): driveletter support. 1913 1914Tue Nov 4 16:23:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1915 1916 * test/rubygems/test_gem_remote_fetcher.rb (RemoteFetcherCleanup): 1917 close all pooled connections for each tests to fix leaked file 1918 descriptors. 1919 1920Tue Nov 4 12:51:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 1921 1922 * include/ruby/ruby.h (PRIsVALUE), vsnprintf.c (BSD_vfprintf): add 1923 RUBY_PRI_VALUE_MARK to reduce danger of accidental conflict with 1924 plain "%i". binary incompatible with extension libraries using 1925 PRIsVALUE and built for 2.1 and earlier. [EXPERIMENTAL] 1926 1927Tue Nov 4 12:33:44 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1928 1929 * object.c: fix document of Kernel#String by @suzukaze 1930 [fix GH-743][ci skip] 1931 1932Tue Nov 4 12:21:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1933 1934 * lib/csv.rb: added documentation for skip_blanks option by @decasia 1935 [fix GH-744][ci skip] 1936 1937Tue Nov 4 12:09:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1938 1939 * lib/open3.rb: fix code formatting in documentation by @JoshCheek 1940 [fix GH-747][ci skip] 1941 1942Tue Nov 4 08:57:37 2014 Eric Wong <e@80x24.org> 1943 1944 * encoding.c (enc_memsize): remove unnecessary function 1945 [ruby-core:65304] 1946 1947Mon Nov 3 18:09:39 2014 Tanaka Akira <akr@fsij.org> 1948 1949 * test/openssl/utils.rb: The default of :ignore_listener_error is 1950 changed to false. 1951 1952Mon Nov 3 14:42:37 2014 Koichi Sasada <ko1@atdot.net> 1953 1954 * iseq.c (iseq_free): resolve memory leak. 1955 1956Mon Nov 3 13:49:18 2014 Koichi Sasada <ko1@atdot.net> 1957 1958 * iseq.c (iseq_memsize): catch up recent changes. 1959 1960Mon Nov 3 13:38:28 2014 Koichi Sasada <ko1@atdot.net> 1961 1962 * vm_core.h: change semantics of opt_num and opt_table. 1963 `opt_num' was the number of optional parameters + 1. 1964 `opt_table' has "opt_num" entries. 1965 1966 Change them to: 1967 `opt_num' is the number of optional parameters. 1968 `opt_table' has "opt_num + 1" entries. 1969 1970 This change simplify parameter fitting logics. 1971 1972 * compile.c: catch up this change. 1973 1974 * iseq.c: ditto. 1975 1976 * proc.c: ditto. 1977 1978 * vm_args.c: ditto. 1979 1980Mon Nov 3 11:47:44 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1981 1982 * NEWS: added period into Matrix section. [ci skip] 1983 [misc #10446][ruby-core:65987] 1984 1985Mon Nov 3 09:43:30 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1986 1987 * vm_args.c: fixed build error with clang 1988 1989Mon Nov 3 09:32:46 2014 NARUSE, Yui <naruse@ruby-lang.org> 1990 1991 * lib/uri/rfc3986_parser.rb (URI::RFC3986_Parser::RFC3986_URI): 1992 allow '[' and ']' for URI input (and escape). [Bug #10402] 1993 1994 * lib/uri/generic.rb (URI#query=): escape '[', '\', and ']'. 1995 1996Mon Nov 3 07:49:34 2014 Koichi Sasada <ko1@atdot.net> 1997 1998 * vm_core.h: change iseq parameter data structure. 1999 https://bugs.ruby-lang.org/issues/10440#change-49694 2000 2001 * change terminology `arg' to `param'. 2002 * move rb_iseq_t::arg_* to rb_iseq_t::param. 2003 * move rb_iseq_t::arg_size to rb_iseq_t::param::size. 2004 * move rb_iseq_t::argc to rb_iseq_t::param::lead_num. 2005 * move rb_iseq_t::arg_opts to rb_iseq_t::param::opt_num. 2006 * move rb_iseq_t::arg_rest to rb_iseq_t::param::rest_start. 2007 * move rb_iseq_t::arg_post_num to rb_iseq_t::param::post_num. 2008 * move rb_iseq_t::arg_post_start to rb_iseq_t::param::post_start. 2009 * move rb_iseq_t::arg_block to rb_iseq_t::param::block_start. 2010 * move rb_iseq_t::arg_keyword* to rb_iseq_t::param::keyword. 2011 rb_iseq_t::param::keyword is allocated only when keyword 2012 parameters are available. 2013 * introduce rb_iseq_t::param::flags to represent parameter 2014 availability. For example, rb_iseq_t::param::flags::has_kw 2015 represents that this iseq has keyword parameters and 2016 rb_iseq_t::param::keyword is allocated. 2017 We don't need to compare with -1 to check availability. 2018 * remove rb_iseq_t::arg_simple. 2019 2020 * compile.c: catch up this change. 2021 2022 * iseq.c: ditto. 2023 2024 * proc.c: ditto. 2025 2026 * vm.c, vm_args.c, vm_dump.c, vm_insnhelper.c: ditto. 2027 2028 * iseq.c (iseq_data_to_ary): support keyword argument. 2029 2030Mon Nov 3 03:39:04 2014 Koichi Sasada <ko1@atdot.net> 2031 2032 * test/ruby/test_method.rb: r48239 makes this test green. 2033 2034Mon Nov 03 03:02:38 2014 Koichi Sasada <ko1@atdot.net> 2035 2036 * rewrite method/block parameter fitting logic to optimize 2037 keyword arguments/parameters and a splat argument. 2038 [Feature #10440] (Details are described in this ticket) 2039 2040 Most of complex part is moved to vm_args.c. 2041 2042 Now, ISeq#to_a does not catch up new instruction format. 2043 2044 * vm_core.h: change iseq data structures. 2045 2046 * introduce rb_call_info_kw_arg_t to represent keyword arguments. 2047 * add rb_call_info_t::kw_arg. 2048 * rename rb_iseq_t::arg_post_len to rb_iseq_t::arg_post_num. 2049 * rename rb_iseq_t::arg_keywords to arg_keyword_num. 2050 * rename rb_iseq_t::arg_keyword to rb_iseq_t::arg_keyword_bits. 2051 to represent keyword bitmap parameter index. 2052 This bitmap parameter shows that which keyword parameters are given 2053 or not given (0 for given). 2054 It is referred by `checkkeyword' instruction described bellow. 2055 * rename rb_iseq_t::arg_keyword_check to rb_iseq_t::arg_keyword_rest 2056 to represent keyword rest parameter index. 2057 * add rb_iseq_t::arg_keyword_default_values to represent default 2058 keyword values. 2059 * rename VM_CALL_ARGS_SKIP_SETUP to VM_CALL_ARGS_SIMPLE 2060 to represent 2061 (ci->flag & (SPLAT|BLOCKARG)) && 2062 ci->blockiseq == NULL && 2063 ci->kw_arg == NULL. 2064 2065 * vm_insnhelper.c, vm_args.c: rewrite with refactoring. 2066 2067 * rewrite splat argument code. 2068 * rewrite keyword arguments/parameters code. 2069 * merge method and block parameter fitting code into one code base. 2070 2071 * vm.c, vm_eval.c: catch up these changes. 2072 2073 * compile.c (new_callinfo): callinfo requires kw_arg parameter. 2074 2075 * compile.c (compile_array_): check the last argument Hash object or 2076 not. If Hash object and all keys are Symbol literals, they are 2077 compiled to keyword arguments. 2078 2079 * insns.def (checkkeyword): add new instruction. 2080 This instruction check the availability of corresponding keyword. 2081 2082 For example, a method "def foo k1: 'v1'; end" is compiled to the 2083 following instructions. 2084 2085 0000 checkkeyword 2, 0 # check k1 is given. 2086 0003 branchif 9 # if given, jump to address #9 2087 0005 putstring "v1" 2088 0007 setlocal_OP__WC__0 3 # k1 = 'v1' 2089 0009 trace 8 2090 0011 putnil 2091 0012 trace 16 2092 0014 leave 2093 2094 * insns.def (opt_send_simple): removed and add new instruction 2095 "opt_send_without_block". 2096 2097 * parse.y (new_args_tail_gen): reorder variables. 2098 Before this patch, a method "def foo(k1: 1, kr1:, k2: 2, **krest, &b)" 2099 has parameter variables "k1, kr1, k2, &b, internal_id, krest", 2100 but this patch reorders to "kr1, k1, k2, internal_id, krest, &b". 2101 (locate a block variable at last) 2102 2103 * parse.y (vtable_pop): added. 2104 This function remove latest `n' variables from vtable. 2105 2106 * iseq.c: catch up iseq data changes. 2107 2108 * proc.c: ditto. 2109 2110 * class.c (keyword_error): export as rb_keyword_error(). 2111 2112 * common.mk: depend vm_args.c for vm.o. 2113 2114 * hash.c (rb_hash_has_key): export. 2115 2116 * internal.h: ditto. 2117 2118Mon Nov 3 02:35:32 2014 Koichi Sasada <ko1@atdot.net> 2119 2120 * sample/simple-bench.rb: added to measure performance of simple 2121 lines. 2122 2123Mon Nov 3 02:33:43 2014 Koichi Sasada <ko1@atdot.net> 2124 2125 * gc.c (obj_info): show T_STRING more details. 2126 2127Sun Nov 2 01:30:32 2014 Tanaka Akira <akr@fsij.org> 2128 2129 * test/openssl/test_ssl.rb: Don't ignore errors on listener threads, 2130 as much as possible. 2131 2132 * test/openssl/test_ssl_session.rb: Ditto. 2133 2134 * test/openssl/test_partial_record_read.rb: Ditto. 2135 2136Sat Nov 1 23:11:05 2014 Tanaka Akira <akr@fsij.org> 2137 2138 * test/openssl/utils.rb (start_server): Don't close sockets before 2139 threads finished. 2140 2141Sat Nov 1 22:06:24 2014 Tanaka Akira <akr@fsij.org> 2142 2143 * test/openssl/test_ssl_session.rb (test_ctx_client_session_cb): Don't 2144 ignore errors of SSL accept. 2145 (test_ctx_server_session_cb): Ditto. 2146 2147 * test/openssl/utils.rb (server_loop): Add ignore_ssl_accept_error 2148 argument. 2149 (start_server): Refine threads waits. 2150 2151 * test/ruby/envutil.rb (assert_join_threads): Show a thread before 2152 backtrace. 2153 2154Sat Nov 1 20:40:18 2014 Tanaka Akira <akr@fsij.org> 2155 2156 * test/openssl/utils.rb (start_server, server_loop): Use a 2157 pipe to stop server instead of shutdown/close a listening socket. 2158 2159Sat Nov 1 19:24:59 2014 Tanaka Akira <akr@fsij.org> 2160 2161 * test/ruby/envutil.rb (assert_join_threads): New assertion to 2162 join multiple threads without exceptions. 2163 2164Sat Nov 1 17:09:32 2014 Tanaka Akira <akr@fsij.org> 2165 2166 * bignum.c (bary_mul_balance_with_mulfunc): Fix free work area 2167 location. 2168 [ruby-dev:48723] [Bug #10464] 2169 [ruby-core:66044] [Bug #10465] 2170 Reported by Kohji Nishihama. 2171 2172Sat Nov 1 15:45:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2173 2174 * parse.y (parse_atmark): mere atmark and two atmarks without 2175 succeeding identifiers are invalid as instance/class variable 2176 names. 2177 2178Sat Nov 1 06:31:41 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 2179 2180 * ext/win32ole/win32ole_variant.c: use typed data. 2181 2182Fri Oct 31 13:55:28 2014 Aaron Patterson <aaron@tenderlovemaking.com> 2183 2184 * ext/dl/*: remove DL as it is replaced by Fiddle. 2185 [Feature #5458] Thanks to Jonan Scheffler <jonanscheffler@gmail.com> 2186 for this patch 2187 2188 * test/dl/*: ditto. 2189 2190Fri Oct 31 15:26:02 2014 Charles Oliver Nutter <headius@headius.com> 2191 2192 * test/openssl/test_ssl.rb: Add certificate verification chain 2193 test from JRuby community. 2194 2195Fri Oct 31 18:58:02 2014 Charles Oliver Nutter <headius@headius.com> 2196 2197 * test/psych/test_emitter.rb: Fix line_width test...initial value 2198 is impl-specific and attr assignment always returns LHS. 2199 2200Fri Oct 31 22:19:30 2014 Akinori MUSHA <knu@iDaemons.org> 2201 2202 * ext/digest/lib/digest.rb (Digest()): This function should now be 2203 thread-safe. If you have a problem with regard to on-demand 2204 loading under a multi-threaded environment, preload "digest/*" 2205 modules on boot or use this method instead of directly 2206 referencing Digest::*. [Bug #9494] 2207 cf. https://github.com/aws/aws-sdk-ruby/issues/525 2208 2209Fri Oct 31 21:33:17 2014 Akinori MUSHA <knu@iDaemons.org> 2210 2211 * test/digest/test_digest.rb: Drop #!. This no longer runs 2212 stand-alone because it depends on ruby/envutil. 2213 2214Fri Oct 31 17:22:19 2014 NAKAMURA Usaku <usa@ruby-lang.org> 2215 2216 * win32/setup.mak: $(APPEND) with some arguments insert a space before 2217 the arguments, so it causes error if the arguments are expected to be 2218 a macro definition. this fix resolve the build error introduced at 2219 r48210. 2220 2221Fri Oct 31 16:47:35 2014 Akinori MUSHA <knu@iDaemons.org> 2222 2223 * ext/syslog/lib/syslog/logger.rb (Syslog::Logger::VERSION): Bump 2224 the VERSION to 2.1.0. [ruby-core:64483] [Bug #10159] 2225 2226Fri Oct 31 16:33:46 2014 Akinori MUSHA <knu@iDaemons.org> 2227 2228 * lib/net/imap.rb (Net::IMAP#fetch): [DOC] Document that 2229 Net::IMAP#fetch will return nil instead of an empty array. 2230 2231Fri Oct 31 12:54:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2232 2233 * common.mk (.unicode-tables.time): needs Unicode files always, 2234 and should update after downloading these files. 2235 [ruby-core:66026] [Bug #10461] 2236 2237Fri Oct 31 10:16:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 2238 2239 * .travis.yml: reverted r48199, it's unrelated configuration. 2240 2241Fri Oct 31 09:58:14 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 2242 2243 * test/test_unicode_normalize.rb: added unicode version number to 2244 test data location. 2245 2246Fri Oct 31 09:56:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 2247 2248 * .gitignore: ignored unicode data with version directories. 2249 2250Fri Oct 31 09:35:30 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 2251 2252 * .travis.yml: tweak build scripts for unicode_normalize.rb. 2253 2254Thu Oct 30 18:47:04 2014 NARUSE, Yui <naruse@ruby-lang.org> 2255 2256 * common.mk: fix for the case ALWAYS_UPDATE_UNICODE=no 2257 2258Thu Oct 30 13:23:23 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2259 2260 * tool/downloader.rb: changed Unicode data download location 2261 from latest Unicode version to Unicode 7.0.0. 2262 2263Thu Oct 30 11:16:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2264 2265 * vm_insnhelper.c (vm_callee_setup_arg{_complex,}): try conversion 2266 by to_ary for a lambda, as well as a proc. 2267 [ruby-core:65887] [Bug #9605] 2268 2269Wed Oct 29 21:13:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2270 2271 * parse.y (gettable_gen): warn circular argument reference, for 2272 transition from 2.1 and earlier. [ruby-core:65990] [Bug #10314] 2273 2274Wed Oct 29 20:41:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2275 2276 * parse.y (parser_params): remove unused member `cur_mid`. 2277 this has been taken over by `in_def` since 1.6. 2278 2279Wed Oct 29 14:44:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2280 2281 * load.c (rb_f_load): path name needs to be transcoded to OS path 2282 encoding. [ruby-list:49994] 2283 2284Wed Oct 29 11:48:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2285 2286 * configure.in (__builtin_setjmp): disable with gcc/clang earlier 2287 than 4.3 on Mac OS X. [ruby-core:65174] [Bug #10272] 2288 2289Wed Oct 29 11:43:43 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 2290 2291 * lib/matrix.rb: Generalize Vector#cross_product to arbitrary 2292 dimensions 2293 based on a patch by gogo tanaka [#10074] 2294 2295Wed Oct 29 11:43:11 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 2296 2297 * lib/matrix.rb: Add Matrix#adjucate 2298 patch by gogo tanaka [#10056] 2299 2300Wed Oct 29 11:42:33 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 2301 2302 * lib/matrix.rb: Add aliases for Vector#cross & dot 2303 patch by gogo tanaka [#10352] 2304 2305Wed Oct 29 10:00:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 2306 2307 * gems/bundled_gems: Update latest version of bundled gems. 2308 2309Tue Oct 28 16:52:07 2014 Eric Wong <e@80x24.org> 2310 2311 * signal.c (install_sighandler): remove rb_disable_interrupt and 2312 rb_enable_interrupt calls 2313 (init_sigchld): ditto 2314 (Init_signal): disable and enable interrupt once around all 2315 install_sighandler and init_sigchld to reduce syscalls at start 2316 [Feature #9345] [ruby-core:59480] 2317 2318Tue Oct 28 16:22:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2319 2320 * ruby.c (process_options, load_file_internal2): should not 2321 require other files when dump option is given. 2322 [ruby-dev:48712] [Bug #10435] 2323 2324Tue Oct 28 14:51:38 2014 NARUSE, Yui <naruse@ruby-lang.org> 2325 2326 * configure.in: remove apple-gcc4.2 from CC candidates. 2327 2328Mon Oct 27 20:13:37 2014 NAKAMURA Usaku <usa@ruby-lang.org> 2329 2330 * lib/rexml/entity.rb: keep the entity size within the limitation. 2331 reported by Willis Vandevanter <will@silentrobots.com> and 2332 patched by nahi. 2333 2334Mon Oct 27 17:17:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2335 2336 * proc.c (method_proc): the receiver of binding from method should 2337 be same as the receiver of the method. 2338 [ruby-core:65917] [Bug #10432] 2339 2340Mon Oct 27 16:26:37 2014 Koichi Sasada <ko1@atdot.net> 2341 2342 * test/ruby/test_super.rb: add a test to check block passing. 2343 2344Mon Oct 27 15:59:26 2014 Koichi Sasada <ko1@atdot.net> 2345 2346 * gc.c: is_incremental_marking(), will_be_incremental_marking(): 2347 use `&&' with GC_ENABLE_INCREMENTAL_MARK instead of using 2348 #if/#else/#endif. 2349 2350Mon Oct 27 13:40:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2351 2352 * gc.c (gc_sweep_rest): sweep rest pages regardless of whether 2353 lazy sweep is enabled or not. based on the patch by Masahiro 2354 Ide at [ruby-dev:48706]. [Bug #10431] 2355 2356Mon Oct 27 11:18:32 2014 Eric Wong <e@80x24.org> 2357 2358 * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): 2359 reduce garbage during forks 2360 2361Sun Oct 25 12:26:26 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2362 2363 * template/insns.inc.tmpl, insns_info.inc.tmpl, known_errors.inc.tmpl, 2364 minsns.inc.tmpl: fixed path of generating script. 2365 2366Sun Oct 26 12:24:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2367 2368 * ext/ripper/lib/ripper/sexp.rb (Ripper.sexp, Ripper.sexp_raw): 2369 return nil on error. [ruby-dev:48678] [Bug #10405] 2370 2371Sun Oct 25 11:24:24 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2372 2373 * string.c: improved comment. 2374 2375Sun Oct 26 07:40:11 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 2376 2377 * ext/win32ole/win32ole.c (ole_val2variant, ole_invoke): refactoring. 2378 use ole_variant2variant to convert WIN32OLE_VARIANT object to 2379 VARIANT object. 2380 2381 * ext/win32ole/win32ole_variant.c: refactoring. add 2382 ole_variant2variant. 2383 * ext/win32ole/win32ole_variant.h: ditto. 2384 2385Sat Oct 25 22:28:17 2014 Tanaka Akira <akr@fsij.org> 2386 2387 * io.c (io_binwrite_string): Test writev() failure. 2388 2389Sat Oct 25 20:19:19 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2390 2391 * test/test-unicode_normalize.rb: added test_us_ascii. 2392 2393Sat Oct 25 20:09:09 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2394 2395 * lib/unicode_normalize/normalize.rb: added US_ASCII 2396 as trivially supported encoding (is always normalized, 2397 and may appear mixed in with UTF-8 or other Unicode 2398 encodings). 2399 2400Sat Oct 25 20:01:01 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2401 2402 * test/test-unicode_normalize.rb: added 2403 test_raise_exception_for_non_unicode_encoding. 2404 2405Sat Oct 25 19:30:30 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2406 2407 * test/test-unicode_normalize.rb: removed unused function. 2408 2409Sat Oct 25 18:41:41 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2410 2411 * template/unicode_norm_gen.tmpl: Adjusted name of generating file. 2412 2413Fri Oct 24 22:49:42 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2414 2415 * parse.y (parser_yylex): dispatch newline and space at fluent 2416 interface, so that the following identifier does not include the 2417 space. [ruby-dev:48684] [Bug #10411] 2418 2419Fri Oct 24 20:41:36 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 2420 2421 * signal.c (check_reserved_signal_): fix write count since r47991. 2422 2423Thu Oct 23 21:42:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2424 2425 * hash.c (rb_hash_delete): now does not call the block given to 2426 the current method. [ruby-core:65861] [Bug #10413] 2427 2428Thu Oct 23 19:13:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2429 2430 * vm_method.c (rb_method_entry_make): warn redefinition only for 2431 already defined methods, but not for undefined methods. 2432 [ruby-dev:48691] [Bug #10421] 2433 2434Thu Oct 23 17:19:04 2014 Kouhei Sutou <kou@cozmixng.org> 2435 2436 * lib/rexml/source.rb (REXML::IOSource#encoding_updated): Fix a 2437 bug that can't parse XML correctly when 2438 Encoding.default_internal is different with XML 2439 encoding. REXML::Source converts XML encoding on read. So IO 2440 should not convert XML encoding. 2441 Based on patch by NAKAMURA Usaku. 2442 [ruby-dev:48686] [Bug #10418] 2443 2444 * test/rexml/test_encoding.rb 2445 (REXMLTests::EncodingTester#test_parse_utf16_with_utf8_default_internal): 2446 Add the for the above case. 2447 2448Thu Oct 23 16:29:02 2014 Kouhei Sutou <kou@cozmixng.org> 2449 2450 * test/rexml/test_encoding.rb 2451 (REXMLTests::EncodingTester#test_parse_utf16): Use meaningful 2452 test name. "ticket" in the old test name means the ticket in 2453 REXML's issue tracker. The REXML's issue tracker was gone. So 2454 "ticket" is meaningless. 2455 2456 * test/rexml/data/ticket_110_utf16.xml: Rename to ... 2457 * test/rexml/data/utf16.xml: ... this. 2458 2459Thu Oct 23 16:18:11 2014 Kouhei Sutou <kou@cozmixng.org> 2460 2461 * test/rexml/test_encoding.rb 2462 (REXMLTests::EncodingTester#test_ticket_110): Fix expected and 2463 actual order. 2464 Patch by NAKAMURA Usaku. Thanks!!! 2465 2466Thu Oct 23 10:47:16 2014 Eric Wong <e@80x24.org> 2467 2468 * insns.def (getlocal,setlocal): add comment to def/opt_operand.def 2469 2470Thu Oct 23 10:22:41 2014 Eric Wong <e@80x24.org> 2471 2472 * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): 2473 use IO#wait_readable instead of timeout 2474 2475Thu Oct 23 10:22:24 2014 Eric Wong <e@80x24.org> 2476 2477 * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): 2478 ensure exit! during fork failure 2479 2480Thu Oct 23 10:21:21 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2481 2482 * NEWS: Added String#unicode_normalize(|!|d?) [ci skip] 2483 2484Thu Oct 23 03:41:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2485 2486 * class.c (unknown_keyword_error): delete expected keywords 2487 directly from raw table, so that the given block is not called. 2488 [ruby-core:65837] [Bug #10413] 2489 2490Thu Oct 23 02:33:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2491 2492 * common.mk (update-unicode): invert dependency to run every times. 2493 [ruby-core:65842] [Bug #10415] 2494 2495 * common.mk (after-update): update files under source tree. 2496 [ruby-core:65840] [Bug #10414] 2497 2498Wed Oct 22 22:38:59 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 2499 2500 * ext/openssl/lib/openssl/ssl.rb (DEFAULT_PARAMS): override 2501 options even if OpenSSL::SSL::OP_NO_SSLv3 is not defined. 2502 this is pointed out by Stephen Touset. [ruby-core:65711] [Bug #9424] 2503 2504Wed Oct 22 21:31:56 2014 NAKAMURA Usaku <usa@ruby-lang.org> 2505 2506 * common.mk (prelude.c): add dependency to LIB_SRCS because 2507 enc/prelude.rb requires lib/unicode_normalize.rb, and it's also 2508 requires lib/unicode_normalize/tables.rb (=LIB_SRCS). 2509 2510Wed Oct 22 21:09:51 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 2511 2512 * configure.in (nacl_cv_cpu_nick): fix typo in PNaCl. 2513 (XCFLAGS) Add -isystem flag to pnacl and nacl-newlib 2514 (CXX): added 2515 2516 * nacl/GNUmakefile.in (CXX): Added 2517 (PPROGRAM): Use clang++ instead of clang because libnacl_io 2518 depends on c++ std lib. 2519 2520Wed Oct 22 21:07:32 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 2521 2522 * common.mk (build-ext): avoid trying to build dynamic libraries 2523 if configured --with-static-linked-ext. 2524 2525Wed Oct 22 20:33:33 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2526 2527 * common.mk: Fixed grammar in comment [ci skip] 2528 2529Wed Oct 22 19:18:18 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2530 2531 * tool/unicode_norm_gen.rb: Fixed escaping of backslash and 2532 double quote ('\\\&' -> "\\\\\\\&"; double quoted string 2533 is needed to make \& mean last match; double double 2534 backslashes are needed because of two layers of escaping). 2535 2536Wed Oct 22 18:13:29 2014 NAKAMURA Usaku <usa@ruby-lang.org> 2537 2538 * test/test-unicode_normalize.rb: as often said, ruby is sometimes built 2539 at non-srcdir. 2540 2541Wed Oct 22 18:12:12 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2542 2543 * test/test-unicode_normalize.rb: Adjusted path for test 2544 data file (now ../enc/unicode/data/NormalizationTest.txt). 2545 2546Wed Oct 22 18:07:07 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2547 2548 * test/test-unicode_normalize.rb: Removed explicit require, 2549 changed method names, adjusted copyright. 2550 2551Wed Oct 22 18:00:00 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2552 2553 * test/test-unicode_normalize.rb: Importing from 2554 https://github.com/duerst/eprun/blob/master/test/test_normalize.rb. 2555 (removing trailing whitespace, fixing EOLs and adding EOL property) 2556 2557Wed Oct 22 08:21:09 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 2558 2559 * nacl/pepper_main.c (Instance_DidCreate): mount devfs and rebind fd 0 2560 .. 2 so that stderr goes to the console of the browser. 2561 2562Wed Oct 22 03:47:43 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2563 2564 * ext/etc/etc.c (etc_nprocessors_affin): maximum "n" should be 16384. 2565 2566Wed Oct 22 03:37:00 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2567 2568 * ext/etc/etc.c (etc_nprocessors_affin): minor spell fix. 2569 2570Wed Oct 22 03:33:58 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2571 2572 * ext/etc/etc.c (etc_nprocessors_affin): optimize memory usage a 2573 bit. Typical rubyist never use 8k cpus machine. 2574 2575Wed Oct 22 00:01:09 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 2576 2577 * configure.in (XCFLAGS): Add include path for NaCl libraries. 2578 (XLDFLAGS): ditto. 2579 (NACL_LIB_PATH): new substitution 2580 2581 * nacl/nacl-config.rb: support NACL_LIB_PATH 2582 2583 * nacl/package.rb: ditto. 2584 2585 * nacl/pepper_main.c: replace old implementations with nacl_io. 2586 2587 * nacl/GNUmakefile.in: link nacl_io to pepper_ruby 2588 2589 * ruby.c (rb_load_file): remove __attribute__((weak)) because the old 2590 override hack was replaced with nacl_io. 2591 2592 * file.c (rb_file_load_ok): ditto. 2593 2594Tue Oct 21 17:32:32 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2595 2596 * common.mk: Adding explicit creation of directory 2597 enc/unicode/data because git doesn't handle empty 2598 directories. [patch by Masahiro Ide, filed with r48073] 2599 2600Tue Oct 21 17:12:12 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2601 2602 * lib/unicode_normalize/tables.rb: Committing to make version 2603 update easier and more predictable, and reducing compilation 2604 time. 2605 2606Tue Oct 21 15:56:56 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2607 2608 * lib/unicode_normalize/normalize.rb: Added comment to point to 2609 relevant portion of Unicode standard for Hangul (de)composition 2610 identifiers and algorithm. 2611 2612Tue Oct 21 11:49:16 2014 Andreas Schwab <schwab@suse.de> 2613 2614 * gc.c (mark_current_machine_context) [__mc68000__]: Update stack 2615 marking. 2616 (rb_gc_mark_machine_stack) [__mc68000__]: Also handle it here. 2617 2618Mon Oct 20 23:59:38 2014 NAKAMURA Usaku <usa@ruby-lang.org> 2619 2620 * enc/prelude.rb: we sometimes run ruby without library path (especially 2621 for test), so should permit to run ruby if unicode_normalize.rb is 2622 missing. 2623 2624Mon Oct 20 23:57:58 2014 NAKAMURA Usaku <usa@ruby-lang.org> 2625 2626 * common.mk (lib/unicode_normalize/tables.rb): enable running (n)make 2627 in non-srcdir. 2628 2629Mon Oct 20 23:58:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2630 2631 * tool/downloader.rb: add -a option to always download regardless 2632 existing files. 2633 2634Mon Oct 20 23:18:18 2014 NAKAMURA Usaku <usa@ruby-lang.org> 2635 2636 * lib/mkmf.rb: no need to convert path separator for COPY because it's 2637 ruby -run cp and it can treat '/' on any platform. 2638 2639Mon Oct 20 19:54:54 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2640 2641 * config.mk: Added missing data files as targets for 2642 prerequisite update_unicode. 2643 2644Mon Oct 20 19:06:06 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2645 2646 * lib/unicode_normalize.rb: revert r48046. The s in sIndex 2647 is not hungarian notation. The variable name sIndex is 2648 directly taken from the relevant part of the Unicode 2649 Standard, where it is written SIndex and stands for 2650 'syllable index'. See pp. 144/145 of 2651 http://www.unicode.org/versions/Unicode7.0.0/ch03.pdf. 2652 2653Mon Oct 20 12:46:46 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2654 2655 * lib/unicode_normalize.rb: removing unnecessary 'self'. 2656 2657Mon Oct 20 12:37:37 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2658 2659 * lib/unicode_normalize.rb: change method names 2660 in commented-out code. Followup to r48027. 2661 2662Mon Oct 20 02:23:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2663 2664 * variable.c (rb_ivar_get), vm_insnhelper.c (vm_getivar): improve 2665 instance variable retrieval performance by checking ruby_verbose 2666 before call of rb_warning and evaluation of its argument. 2667 [ruby-core:65786] [Feature #10396] 2668 2669Sun Oct 19 23:31:29 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 2670 2671 * lib/unicode_normalize.rb: (unicode_normalize!): change method name. 2672 catch up the method name change at r48014. [Feature #10084] 2673 2674Sun Oct 19 20:05:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 2675 2676 * ext/tk/lib/tkextlib/tile/treeview.rb: fix syntax error. 2677 2678Sun Oct 19 18:39:39 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2679 2680 * enc/prelude.rb: Added automatic loading of 2681 lib/unicode_normalize.rb. This makes sure that all 2682 the methods that are available on String are 2683 available without explicit require. 2684 2685Sun Oct 19 18:35:35 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2686 2687 * lib/unicode_normalize/normalize.rb: Added a missing 2688 file extension in require statement. 2689 2690Sun Oct 19 18:13:13 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2691 2692 * common.mk: Added a rule to generate 2693 lib/unicode_normalize/tables.rb. This rule still 2694 needs to be integrated into the overall make process. 2695 2696Sun Oct 19 17:53:53 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2697 2698 * lib/unicode_normalize.rb: Changed to dynamic 2699 loading of actual normalization code and tables. 2700 2701Sun Oct 19 17:37:37 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2702 2703 * lib/unicode_normalize.rb: Small documentation fix. 2704 2705Sun Oct 19 17:26:26 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2706 2707 * lib/unicode_normalize.rb: Added documentation. 2708 2709Sun Oct 19 11:09:09 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2710 2711 * tool/unicode_norm_gen.rb, lib/unicode_normalize.rb: 2712 File name change from lib/unicode_normalize/normalize_tables.rb 2713 to lib/unicode_normalize/tables.rb. 2714 2715Sun Oct 19 10:12:12 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2716 2717 * lib/unicode_normalize.rb: Changing method names, see 2718 https://bugs.ruby-lang.org/issues/10084#note-7 2719 2720Sun Oct 19 10:10:10 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2721 2722 * lib/unicode_normalize.rb: Changing module name. 2723 2724Sun Oct 19 10:08:08 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2725 2726 * lib/unicode_normalize.rb: Changing require statement, 2727 adjusting copyright. 2728 2729Sun Oct 19 10:04:04 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2730 2731 * lib/unicode_normalize.rb: Importing from 2732 https://github.com/duerst/eprun/blob/master/lib/string_normalize.rb. 2733 (removing trailing whitespace, fixing EOLs and adding EOL property) 2734 2735Sun Oct 19 09:56:56 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2736 2737 * tool/unicode_norm_gen.rb: Changed module name. 2738 2739Sun Oct 19 09:48:48 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2740 2741 * lib/unicode_normalize/normalize.rb: Changed module name, 2742 adjusted copyright. 2743 2744Sun Oct 19 09:38:38 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 2745 2746 * lib/unicode_normalize/normalize.rb: Importing from 2747 https://github.com/duerst/eprun/blob/master/lib/normalize.rb. 2748 2749Sat Oct 18 20:40:52 2014 Kazuki Tsujimoto <kazuki@callcc.net> 2750 2751 * vm_core.h, proc.c, vm_backtrace.c, vm_trace.c: 2752 remove rb_binding_new_with_cfp, and use rb_vm_make_binding instead. 2753 2754Sat Oct 18 20:38:48 2014 Kazuki Tsujimoto <kazuki@callcc.net> 2755 2756 * vm_core.h, vm.c, proc.c: fix GC mark miss on bindings. 2757 [ruby-dev:48616] [Bug #10368] 2758 2759 * test/ruby/test_eval.rb: add a test code. 2760 2761Fri Oct 17 22:47:11 2014 Tanaka Akira <akr@fsij.org> 2762 2763 * pack.c (pack_unpack): Add casts for char references for 'u'. 2764 Fix line ending recognition algorithm. 2765 2766Fri Oct 17 21:49:52 2014 Tanaka Akira <akr@fsij.org> 2767 2768 * pack.c (pack_unpack): Add casts for char references for 'b' and 'h'. 2769 2770Fri Oct 17 17:50:10 2014 Tanaka Akira <akr@fsij.org> 2771 2772 * Avoid undefined behaviors found by gcc -fsanitize=undefined. 2773 gcc (Debian 4.9.1-16) 4.9.1 2774 2775 * string.c (rb_str_sum): Avoid undefined behavior. 2776 2777Fri Oct 17 17:43:50 2014 Tanaka Akira <akr@fsij.org> 2778 2779 * Avoid undefined behaviors found by gcc -fsanitize=undefined. 2780 gcc (Debian 4.9.1-16) 4.9.1 2781 2782 * include/ruby/ruby.h (INT2FIX): Avoid undefined behavior. 2783 2784 * node.h (nd_set_line): Ditto. 2785 2786 * pack.c (encodes): Ditto. 2787 (pack_unpack): Ditto. 2788 2789 * regint.h (BIT_STATUS_AT): Ditto. 2790 (BS_BIT): Ditto. 2791 2792 * time.c (time_mdump): Ditto. 2793 (time_mload): Ditto. 2794 2795 * vm_core.h (VM_FRAME_MAGIC_MASK): Ditto. 2796 2797 * vm_trace.c (recalc_add_ruby_vm_event_flags): Ditto. 2798 2799Fri Oct 17 15:06:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2800 2801 * re.c (unescape_nonascii): make dynamically compiled US-ASCII 2802 regexps ASCII-8BIT encoding if binary (hexadecimal, control, 2803 meta) escapes are contained, as well as literal regexps. 2804 [ruby-dev:48626] [Bug #10382] 2805 2806Fri Oct 17 03:05:08 2014 Eric Wong <e@80x24.org> 2807 2808 * test/-ext-/bug_reporter/test_bug_reporter.rb 2809 (test_bug_reporter_add): revert r47972 2810 * test/ruby/test_rubyoptions.rb (test_segv_test): revert r47971 2811 [ruby-core:65764] 2812 2813Thu Oct 16 23:17:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2814 2815 * signal.c (rb_sigaltstack_size): double default size to get rid 2816 of heap corruption by alternate stack overflow in SEGV handler. 2817 typically happened at fprintf() in control_frame_dump(). 2818 2819Thu Oct 16 22:43:12 2014 Tanaka Akira <akr@fsij.org> 2820 2821 * vm_backtrace.c (id2str): Fix a variable name. 2822 [ruby-dev:48642] [Bug #10389] 2823 2824Thu Oct 16 20:01:26 2014 Tanaka Akira <akr@fsij.org> 2825 2826 * test/ruby/envutil.rb (assert_pattern_list): Show number of matched 2827 patterns and characters. 2828 2829Thu Oct 16 16:26:09 2014 Eric Wong <e@80x24.org> 2830 2831 * cont.c (fiber_store): fix WIN32 fibers 2832 [ruby-core:65745] [ruby-core:65758] 2833 2834Thu Oct 16 15:05:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2835 2836 * parse.y (parser_here_document): do not append already appended 2837 and disposed code fragment. [ruby-dev:48647] [Bug #10392] 2838 2839Thu Oct 16 10:35:33 2014 Eric Wong <e@80x24.org> 2840 2841 * test/-ext-/bug_reporter/test_bug_reporter.rb 2842 (test_bug_reporter_add): fix race 2843 2844Thu Oct 16 10:09:02 2014 Eric Wong <e@80x24.org> 2845 2846 * test/ruby/test_rubyoptions.rb (test_segv_test): fix race 2847 2848Thu Oct 16 09:17:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2849 2850 * cont.c (rb_fiber_t): fix compile error caused by move to 2851 vm_core.h at r47964. [Feature #10341] 2852 2853Thu Oct 16 08:58:11 2014 Eric Wong <e@80x24.org> 2854 2855 * test/ruby/test_process.rb (test_deadlock_by_signal_at_forking): 2856 avoid killing wrong parent 2857 2858Thu Oct 16 08:40:04 2014 Eric Wong <e@80x24.org> 2859 2860 * cont.c (fiber_store): restore references to next_fib (fix typo) 2861 2862Thu Oct 16 08:26:08 2014 Eric Wong <e@80x24.org> 2863 2864 * cont.c (fiber_store): remove references to nextfib 2865 fix build when FIBER_USE_NATIVE is 0 2866 2867Thu Oct 16 06:51:35 2014 Knut Franke <Knut.Franke@gmx.de> 2868 2869 * vm_core.h: declare rb_fiber_t typedef 2870 (rb_thread_t): fiber and root_fiber become rb_fiber_t * (from VALUE) 2871 * vm.c (rb_thread_mark): use rb_fiber_mark_self 2872 * cont.c (rb_fiber_t): prev becomes rb_fiber_t * (from VALUE) 2873 (cont_mark, cont_free): simplify conditions 2874 (rb_fiber_mark_self): new function 2875 (fiber_mark): use rb_fiber_mark_self 2876 (cont_save_thread, cont_restore_thread): inline 2877 (cont_restore_thread): simplify 2878 (fiber_setcontext): simplify conditions 2879 (rb_cont_call): remove dereference 2880 (fiber_t_alloc): update for rb_fiber_t->prev type change 2881 (rb_fiber_start): ditto 2882 (fiber_current): extract from rb_fiber_current 2883 (return_fiber): move, simplify type checks 2884 (rb_fiber_current): use fiber_current 2885 (fiber_store): simplify type checks 2886 (fiber_switch): ditto, simplify call to fiber_setcontext, 2887 use fiber_current 2888 (rb_fiber_transfer): update for type changes 2889 (rb_fiber_terminate): move, use fiber_switch 2890 (rb_fiber_resume): update for type changes 2891 (rb_fiber_reset_root_local_storage): ditto 2892 (rb_fiber_yield): use rb_fiber_switch instead of rb_fiber_transfer 2893 (rb_fiber_m_transfer): ditto 2894 [ruby-core:65518] [Feature #10341] 2895 2896Thu Oct 16 06:25:29 2014 Knut Franke <Knut.Franke@gmx.de> 2897 2898 * cont.c (rb_context_t): comment on saved_thread 2899 (cont_save_thread): sparse copy 2900 (cont_init): copy extra fields 2901 (fiber_init): use current thread VM stack size 2902 [ruby-core:65518] [Feature #10341] 2903 2904Thu Oct 16 06:13:09 2014 Knut Franke <Knut.Franke@gmx.de> 2905 2906 * cont.c (cont_capture): remove unnecessary variable 2907 [ruby-core:65518] [Feature #10341] 2908 2909Thu Oct 16 05:02:31 2014 Knut Franke <Knut.Franke@gmx.de> 2910 2911 * cont.c (fiber_store, fiber_switch): simplify 2912 [ruby-core:65518] [Feature #10341] 2913 2914Thu Oct 16 04:28:41 2014 Knut Franke <Knut.Franke@gmx.de> 2915 2916 * cont.c (rb_fiber_t): remove prev_fiber/next_fiber 2917 (fiber_link_join, fiber_link_remove): remove functions 2918 (fiber_free, fiber_init, root_fiber_alloc): 2919 remove references to removed fields and functions 2920 [ruby-core:65518] [Feature #10341] 2921 2922Wed Oct 15 22:08:37 2014 Tanaka Akira <akr@fsij.org> 2923 2924 * ext/etc/etc.c (etc_nprocessors_affin): Test CPU_ALLOC availability. 2925 CentOS 5 don't have CPU_ALLOC(). 2926 2927Wed Oct 15 18:26:19 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2928 2929 * ext/etc/etc.c (etc_nprocessors_affinity): use sched_getaffinity 2930 for getting precious number of available cpus. 2931 2932 * ext/etc/etc.c (etc_nprocessors): use etc_nprocessors_affinity if 2933 possible. 2934 2935 [Feature #10267] etc-nprocessors-kosaki2.patch 2936 2937Wed Oct 15 17:53:28 2014 Tanaka Akira <akr@fsij.org> 2938 2939 * test/ruby/envutil.rb (assert_pattern_list) Renamed from 2940 assert_regexp_list. 2941 Show multiline string in multi lines. 2942 2943 * test/-ext-/bug_reporter/test_bug_reporter.rb: Use 2944 assert_pattern_list. 2945 2946Wed Oct 15 12:26:58 2014 Tanaka Akira <akr@fsij.org> 2947 2948 * test/ruby/envutil.rb (assert_regexp_list): New assertion method. 2949 2950 * test/ruby/test_rubyoptions.rb: Use assert_regexp_list. 2951 2952Wed Oct 15 07:21:09 2014 Tanaka Akira <akr@fsij.org> 2953 2954 * enum.c: min(n) drops elements bigger than the n-th maximum element. 2955 (struct nmin_data): New field to record the n-th maximum element, limit 2956 (nmin_filter): Update limit field. 2957 (nmin_i): Drop too big elements. 2958 (nmin_run): Initialize limit field. 2959 2960Wed Oct 15 07:00:14 2014 Eric Wong <e@80x24.org> 2961 2962 * test/ruby/test_optimization.rb (test_string_size): new test 2963 2964Wed Oct 15 06:51:13 2014 Eric Wong <e@80x24.org> 2965 2966 * test/ruby/test_optimization.rb (test_string_eq_neq): new test 2967 (test_string_ltlt): ditto 2968 2969Wed Oct 15 06:50:29 2014 Eric Wong <e@80x24.org> 2970 2971 * test/ruby/test_optimization.rb (test_hash_aset_with): 2972 assert assignment 2973 2974Wed Oct 15 04:56:27 2014 Zachary Scott <e@zzak.io> 2975 2976 * gc.c (rb_obj_id): [DOC] Fix typo, clean up sentence, and wrap cols 2977 2978Wed Oct 15 04:53:30 2014 Zachary Scott <e@zzak.io> 2979 2980 * error.c: [DOC] Fix case of type in exception message by @tricknotes 2981 [Fixes GH-740] https://github.com/ruby/ruby/pull/740 2982 2983 * object.c: ditto 2984 2985Tue Oct 14 21:39:16 2014 Vit Ondruch <vondruch@redhat.com> 2986 2987 * tool/rbinstall.rb (gem): Fix permissions of bundled gems 2988 specification files. [ruby-core:65700] [Bug #10383] 2989 2990Tue Oct 14 19:15:31 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 2991 2992 * ext/win32ole/win32ole_record.c: use typed data. 2993 2994Tue Oct 14 16:23:12 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 2995 2996 * symbol.c (global_symbols): make ids two-dimensional array of 2997 strings and symbols, for write-barrier. 2998 2999 * symbol.c (global_symbols): make IDs immortal always, instead 3000 of treating dynamic symbols as IDs. 3001 3002 * iseq.c, marshal.c, string.c: use rb_str_intern instead of 3003 rb_str_dynamic_intern. 3004 3005 * symbol.c (rb_str_intern): rename rb_str_dynamic_intern. 3006 3007Tue Oct 14 10:19:10 2014 Eric Wong <e@80x24.org> 3008 3009 * test/ruby/test_optimization.rb (test_string_freeze): new test 3010 (test_hash_aref_with): ditto 3011 (test_hash_aset_with): ditto 3012 3013Tue Oct 14 01:27:54 2014 Tanaka Akira <akr@fsij.org> 3014 3015 * enum.c (nmin_run): max(n) and max_by(n) returns an array in 3016 descending order. 3017 [ruby-core:65452] Suggested by David Grayson. 3018 3019Mon Oct 13 20:44:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3020 3021 * common.mk (update-gems): chdir to the target directory and then 3022 add the tool directory to load paths, for older BASERUBY. 3023 [Bug #10372][ruby-core:65630] 3024 3025Mon Oct 13 17:53:01 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3026 3027 * lib/xmlrpc/parser.rb: added new parser class using libxml-ruby gem. 3028 [Feature #9379][ruby-core:59633] 3029 * lib/xmlrpc/config.rb: ditto. 3030 3031Mon Oct 13 16:32:56 2014 Tanaka Akira <akr@fsij.org> 3032 3033 * lib/find.rb (Find.find): Call to_path for arguments to obtain 3034 strings. 3035 [ruby-core:63713] [Bug #10035] Reported by Herwin. 3036 3037Mon Oct 13 15:42:25 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3038 3039 * common.mk: use relative load path for bundled_gems directory. 3040 [Bug #10372][ruby-core:65630] 3041 3042Mon Oct 13 08:44:06 2014 Zachary Scott <e@zzak.io> 3043 3044 * README.EXT: [DOC] fix example missing typedef with patch by 3045 @steveklabnik [Fixes GH-739] https://github.com/ruby/ruby/pull/739 3046 3047 * README.EXT.ja: ditto. 3048 3049Mon Oct 13 06:52:09 2014 Eric Wong <e@80x24.org> 3050 3051 * array.c (ary_recycle_hash): add RB_GC_GUARD 3052 (rb_ary_diff): remove volatile 3053 [Bug #10369] 3054 3055Mon Oct 13 03:20:23 2014 Zachary Scott <e@zzak.io> 3056 3057 * ext/date/date_core.c: [DOC] Clean up whitespace, examples, and typos 3058 in date_core based on a patch by @vipulnsward [Fixes GH-724] 3059 https://github.com/ruby/ruby/pull/724 3060 3061Mon Oct 13 02:39:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3062 3063 * parse.y (remove_duplicate_keys): should not simply eliminate all 3064 value nodes, which may have side effects. 3065 [ruby-core:65625] [Bug #10315] 3066 3067Sun Oct 12 10:39:16 2014 Zachary Scott <e@zzak.io> 3068 3069 * vm.c: [DOC] fix typo by @yui-knk [Fixes GH-738] 3070 https://github.com/ruby/ruby/pull/738 3071 3072Sun Oct 12 09:24:15 2014 Tanaka Akira <akr@fsij.org> 3073 3074 * test/lib/test/unit.rb: Hide skips by default. 3075 3076Sun Oct 12 01:37:11 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 3077 3078 * file.c: include sys/time.h only if HAVE_SYS_TIME_H 3079 3080Sat Oct 11 22:29:40 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 3081 3082 * file.c (HAVE_UTIMENSAT): disabled for NativeClient. 3083 Fixes build error. 3084 3085Sat Oct 11 22:11:58 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 3086 3087 * ext/extmk.rb: generates the rule for extinit.$(OBJEXT). 3088 extinit.$(OBJEXT) used to be generated by the builtin rule, thus 3089 didn't accept custom $(CC) and caused linkage error for cross 3090 compiling. 3091 3092Sat Oct 11 18:46:50 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 3093 3094 * include/ruby/intern.h (rb_fd_select): declare struct timeval, or the 3095 struct gets local to the function in C99. 3096 3097 * file.c (#include): add nacl/stat.h for PNaCl. 3098 (utimes): added a declaration for PNaCl. 3099 (stat_atimespec): stat::st_atimensec is long long but 3100 timespec::tv_nsec is long in PNaCl. 3101 (stat_mtimespec, stat_ctimespec): ditto. 3102 (rb_group_member): disable getgroups unless HAVE_GETGROUPS. 3103 (eaccess): unify the fallback to generic defined(USE_GETEUID). 3104 3105 * io.c: include sys/time.h for struct timeval. 3106 (rb_close_before_exec): nothing we can do if F_GETFD is not 3107 available. 3108 (ioctl): pnacl newlib actually doesn't have ioctl. 3109 3110 * process.c (maxgroups): it is used iff 3111 defined(_SC_NGROUPS_MAX) || defined(NGROUPS_MAX) but not 3112 defined(HAVE_GETGROUPS) || defined(HAVE_SETGROUPS). 3113 (obj2gid): fail unless the object is a Fixnum if getgrnam is not 3114 available. 3115 (disable_child_handler_fork_child): sigaction is not available in 3116 PNaCl newlib. 3117 3118 * configure.in (warnflags, strict_warnflags): avoid -ansi for strlcpy. 3119 (rb_cv_gcc_atomic_builtins): also check 3120 __atomic_or_etch because it is used in ruby_atomic.h. 3121 (rb_cv_gcc_sync_builtins): ditto. 3122 (HAVE_GETGRNAM): added. 3123 3124Sat Oct 11 15:32:08 2014 Eric Wong <e@80x24.org> 3125 3126 * compile.c (iseq_build_from_ary_exception): move RB_GC_GUARD 3127 (iseq_build_from_ary_body): use PRIsVALUE instead of RB_GC_GUARD 3128 3129Sat Oct 11 14:57:08 2014 Eric Wong <e@80x24.org> 3130 3131 * string.c (rb_str_intern): remove unnecessary RB_GC_GUARD 3132 3133Sat Oct 11 13:47:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3134 3135 * parse.y (remove_duplicate_keys): remove duplicate literal keys, 3136 i.e., symbols and strings. [ruby-core:65368] [Bug #10315] 3137 3138 * vm.c (kwmerge_i): override existing keys by new keys. 3139 [ruby-core:65368] [Bug #10315] 3140 3141 * parse.y (assocs): concatenate splatted literal hashes. the 3142 former key has precedence even if duplicated literal keys 3143 follow. [ruby-core:65368] [Bug #10315] 3144 3145Sat Oct 11 12:27:03 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 3146 3147 * configure.in (RUBY_NACL): automatically locate pnacl-clang. 3148 (RUBY_PLATFORM): pnacl instead of le32-nacl. 3149 3150Sat Oct 11 11:27:14 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 3151 3152 * io.c: fix issues in the last two commits. don't disable cloexec for 3153 platforms other than NativeClient. 3154 3155 * ChangeLog: ditto. add entries for the last two commits. 3156 3157Sat Oct 11 11:12:00 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 3158 3159 * signal.c (install_signalhandler, init_sigchld): allow failure because it 3160 always fails with ENOSYS on NaCl. 3161 3162Sat Oct 11 11:11:53 2014 Yuki Yugui Sonoda <yugui@yugui.jp> 3163 3164 * configure.in (RUBY_NACL and others): merge patch from naclports. Supports PNaCl. 3165 3166 * dln.c: ditto. replace the old hacky dynamic loading over HTTP with nacl_io. 3167 3168 * file.c: ditto. tentatively use access(2) instead of eaccess. 3169 (rb_file_load_ok): weaken with attribute but not by postprocess. 3170 3171 * io.c: ditto. 3172 (socket.h): now NaCl has socket.h 3173 (flock): disable here instead of nacl/ioctl.h 3174 3175 * nacl/GNUmakefile.in: ditto. 3176 (CC, LD, NM, AR, AS, RANLIB, OBJDUMP, OBJCOPY): 3177 respect path to them if they are absolute. 3178 This helps naclports to build ruby in their source tree. 3179 (PROGRAM_NMF, .SUFFIXES): support .pnexe for PNaCl. 3180 (ruby.o, file.o): move the hack to attributes in ruby.c and file.c 3181 3182 * nacl/ioctl.h: ditto. removed. move the hack to io.c. 3183 3184 * nacl/nacl-config.rb: ditto. support arm, pnacl and others. 3185 3186 * nacl/pepper_main.c: ditto. support build in a naclports tree. 3187 3188 * ruby.c (rb_load_file): ditto. weaken with attribute but not by postprocess. 3189 3190Sat Oct 11 09:32:00 2014 Zachary Scott <e@zzak.io> 3191 3192 * ext/socket/unixsocket.c: [DOC] Fix example to render in HTML 3193 properly, with a patch by @eval [Fixes GH-733] 3194 https://github.com/ruby/ruby/pull/733 3195 3196Sat Oct 11 04:14:41 2014 Kir Shatrov <shatrov@me.com> 3197 3198 * lib/open-uri.rb (OpenURI::Options): add :open_timeout default 3199 * (def OpenURI.open_http): check :open_timeout option 3200 * (module OpenURI): rdoc for :open_timeout 3201 * test/open-uri/test_open-uri.rb (test_open_timeout): new test 3202 [Feature #10361] 3203 3204Fri Oct 10 11:27:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3205 3206 * include/ruby/io.h (rb_io_mode_flags, rb_io_modenum_flags): 3207 deprecate old macros for compatibility for ruby 1.8 and older. 3208 3209Thu Oct 9 23:31:47 2014 Naohisa Goto <ngotogenome@gmail.com> 3210 3211 * bignum.c (absint_numwords_generic): set an array element after 3212 definition of a variable to fix compile error with older version 3213 of fcc (Fujitsu C Compiler) 5.6 on Solaris 10 on Sparc. 3214 [Bug #10350] [ruby-dev:48608] 3215 3216Thu Oct 9 16:15:26 2014 Eric Wong <e@80x24.org> 3217 3218 * ext/-test-/st/foreach/extconf.rb: new file 3219 * ext/-test-/st/foreach/foreach.c: ditto 3220 * test/-ext-/st/test_foreach.rb: ditto 3221 [Feature #10321] 3222 3223Thu Oct 9 12:40:28 2014 Eric Wong <e@80x24.org> 3224 3225 * benchmark/bm_hash_aref_sym*.rb: force static symbols 3226 3227Thu Oct 9 12:38:28 2014 Eric Wong <e@80x24.org> 3228 3229 * hash.c (rb_any_hash): remove unnecessary dsym check 3230 3231Thu Oct 9 07:20:30 2014 Rei Odaira <Rei.Odaira@gmail.com> 3232 3233 * missing/setproctitle.c: Avoid invalidating argv[1], argv[2], 3234 etc. until the first call to Process.setproctitle, because 3235 the ps command of AIX refers to the argv array. 3236 [Bug #10090] 3237 3238Thu Oct 9 00:53:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3239 3240 * dir.c (dir_s_aref): fix rdoc. `Dir.glob` allows an array but 3241 `Dir[]` not. the former accepts an optional parameter `flags`, 3242 while the latter accepts arbitrary number of arguments but no 3243 `flags`. [ruby-core:65265] [Bug #10294] 3244 3245Wed Oct 8 21:44:10 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 3246 3247 * ext/win32ole/win32ole_variable.c: use typed data. 3248 3249Wed Oct 8 16:36:47 2014 gogo tanaka <mail@tanakakazuki.com> 3250 3251 * test/ruby/test_syntax.rb: added syntax tests of underscore 3252 arguments. [Feature #10340][ruby-core:65496] 3253 3254Wed Oct 8 07:42:39 2014 NARUSE, Yui <naruse@ruby-lang.org> 3255 3256 * lib/uri/generic.rb (URI#inspect): remove Object id. 3257 URI is considered that it doesn't require id. 3258 3259Wed Oct 8 05:22:42 2014 Eric Wong <e@80x24.org> 3260 3261 * ext/etc/etc.c (etc_systmpdir): set default tmplen correctly 3262 Fixup r47826 3263 3264Wed Oct 8 05:16:32 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3265 3266 * lib/matrix.rb: Add @- and @+ for Matrix and Vector. 3267 patch by gogo tanaka [#10068] [#10069] 3268 3269Wed Oct 8 04:58:48 2014 John Bachir <j@jjb.cc> 3270 3271 * bootstraptest/test_io.rb (assert_finish): 3272 normalize rescue for Timeout::Error 3273 * lib/net/ftp.rb (Net#read_timeout): ditto for doc 3274 * lib/resolv.rb (Resolv::ResolvTimeout): ditto for subclass 3275 * lib/webrick/httprequest.rb (_read_data): ditto for rescue 3276 * sample/timeout.rb (p timeout): ditto for call 3277 * test/drb/drbtest.rb (test_06_timeout): ditto 3278 * test/ruby/test_readpartial.rb (test_open_pipe): ditto 3279 * test/thread/test_queue.rb (test_queue_thread_raise): ditto 3280 * thread.c (rb_thread_s_handle_interrupt): ditto for doc 3281 [ruby-core:65481] [misc #10339] 3282 3283Wed Oct 8 04:38:29 2014 Rei Odaira <Rei.Odaira@gmail.com> 3284 3285 * test/ruby/test_process.rb (TestProcess#test_setsid): AIX 3286 does not allow Process::getsid(pid) when pid is in a 3287 different session. 3288 3289Wed Oct 8 04:33:04 2014 Rei Odaira <Rei.Odaira@gmail.com> 3290 3291 * test/ruby/test_rubyoptions.rb (TestRubyOptions#test_encoding): 3292 On AIX, locale_charmap is ISO-8859-1 with LANG=C. This means 3293 the source encoding of stdin is ISO-8859-1, so "invalid 3294 multibyte char" error does not occur. 3295 3296Wed Oct 8 04:30:29 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3297 3298 * lib/matrix.rb: Add Matrix#laplace_expansion. 3299 patch by gogo tanaka [#10073] 3300 3301Wed Oct 8 04:29:21 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3302 3303 * lib/matrix.rb: Add Vector.basis. 3304 Based on patch by gogo tanaka [#10072] 3305 3306Tue Oct 7 23:40:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3307 3308 * signal.c (rb_f_kill): get rid of deadlock as unhandled and 3309 discarded signals do not make interrupt_cond signaled. 3310 based on the patch by Kazuki Tsujimoto at [ruby-dev:48606]. 3311 [Bug #9820] 3312 3313Tue Oct 7 22:43:44 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 3314 3315 * ext/win32ole/win32ole_method.c: use typed data. 3316 3317Tue Oct 7 21:47:05 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 3318 3319 * ext/win32ole/win32ole_param.c: refactoring. 3320 3321Tue Oct 7 21:40:17 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 3322 3323 * ext/win32ole/win32ole_method.c: refactoring. add 3324 olemethod_data_get_struct to wrap Data_Get_Struct. 3325 * ext/win32ole/win32ole_method.h: ditto. 3326 3327 * ext/win32ole/win32ole_param.c (oleparam_ole_param): 3328 call olemethod_data_get_struct instead of Data_Get_Struct. 3329 3330Tue Oct 7 11:17:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3331 3332 * ext/etc/etc.c (etc_systmpdir): try user temporary directory by 3333 confstr() on Mac OS X. 3334 c.f. http://www.opensource.apple.com/source/ruby/ruby-104/patches/ext_etc_etc.c.diff 3335 3336Tue Oct 7 10:48:17 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3337 3338 * configure.in (struct stat.st_size): prefer off_t over int, long, 3339 and so on. inspired by 3340 http://www.opensource.apple.com/source/ruby/ruby-104/patches/config.h.ed 3341 3342Tue Oct 7 10:37:39 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3343 3344 * configure.in (RUBY_UNIVERSAL_ARCH): fix missing quoting 3345 brackets. incorporated from 3346 http://www.opensource.apple.com/source/ruby/ruby-104/patches/configure.diff 3347 3348Mon Oct 6 23:34:42 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 3349 3350 * ext/win32ole/win32ole_param.c: use typed data. 3351 3352Mon Oct 6 22:37:09 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3353 3354 * symbol.h (struct RSymbol): move from internal.h. 3355 3356Mon Oct 6 21:43:03 2014 NAKAMURA Usaku <usa@ruby-lang.org> 3357 3358 * error.c: update exception tree. [DOC] 3359 reported by @hemge via twitter. 3360 3361Mon Oct 6 18:43:03 2014 Rei Odaira <Rei.Odaira@gmail.com> 3362 3363 * configure.in: Fix typo. [Bug #9914] 3364 3365Mon Oct 6 16:23:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3366 3367 * signal.c (rb_f_kill): should not ignore signal unless the 3368 default handler is registered. [ruby-dev:48592] [Bug #9820] 3369 3370Mon Oct 6 16:07:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3371 3372 * test/ruby/test_string.rb (test_LSHIFT_neary_long_max): enable 3373 only on platforms where string size range is smaller than memory 3374 space. this test does not make sense but just wastes memory and 3375 time on other platforms, as it is hardly possible that a string 3376 size becomes neary LONG_MAX if long size equals pointer size. 3377 [ruby-core:65410] [Bug #10325] 3378 3379Mon Oct 6 11:21:21 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3380 3381 * tool/unicode_norm_gen.rb: Adding/tweaking comments. 3382 3383Mon Oct 6 10:57:57 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3384 3385 * tool/unicode_norm_gen.rb: Adjusted directory paths. 3386 3387Mon Oct 6 10:27:27 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3388 3389 * tool/unicode_norm_gen.rb: Data generation script imported from 3390 https://github.com/duerst/eprun/blob/master/lib/generate.rb 3391 3392Mon Oct 6 10:15:15 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3393 3394 * tool/downloader.rb: Adjust example in documentation for 3395 Downloader.download. 3396 3397Mon Oct 6 10:07:07 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3398 3399 * lib/unicode_normalize: New folder for Unicode normalization 3400 functionality 3401 3402Sun Oct 5 11:04:13 2014 Luiz Angelo Daros de Luca <luizluca@gmail.com> 3403 3404 * ext/digest/{md5,rmd160,sha1,sha2}/extconf.rb: configure OpenSSL 3405 only if bundled libraries is not used, so that OpenSSL is not 3406 linked unnecessarily. [ruby-core:65404] [Bug #10324] 3407 3408Sun Oct 5 10:39:11 2014 Luiz Angelo Daros de Luca <luizluca@gmail.com> 3409 3410 * ext/digest/rmd160/extconf.rb: fix transform function name to 3411 check. [ruby-core:65091] [Bug #10252] 3412 3413Sun Oct 5 05:46:00 2014 Eric Wong <e@80x24.org> 3414 3415 * ext/zlib/zlib.c (zstream_mark, zstream_free): update signature 3416 (gzfile_mark, gzfile_free): ditto 3417 (zstream_memsize): new function for rb_data_type->dsize 3418 (gzfile_memsize): ditto 3419 (zstream_data_type, gzfile_data_type): new data types 3420 (zstream_new): Data_Make_Struct => TypedData_Make_Struct 3421 (gzfile_new): ditto 3422 (get_zstream, get_gzfile): Data_Get_Struct => TypedData_Get_Struct 3423 (rb_zstream_flush_next_in): ditto 3424 (rb_zstream_flush_next_out): ditto 3425 (rb_zstream_avail_out): ditto 3426 (rb_zstream_avail_in): ditto 3427 (rb_zstream_closed_p): ditto 3428 (rb_deflate_initialize): ditto 3429 (rb_deflate_init_copy): ditto 3430 (rb_inflate_initialize): ditto 3431 (gzfile_ensure_close): ditto 3432 (rb_gzfile_closed_p): ditto 3433 (rb_gzfile_path): ditto 3434 (rb_gzwriter_initialize): ditto 3435 (rb_gzreader_initialize): ditto 3436 (rb_gzreader_unused): ditto 3437 [ruby-core:65377] [Feature #10319] 3438 3439Sat Oct 4 16:24:41 2014 Rei Odaira <Rei.Odaira@gmail.com> 3440 3441 * test/test_syslog.rb (TestSyslog#test_log): In AIX, each output 3442 line of LOG_PERROR to stderr has an additional empty line appended, 3443 so skip that line. 3444 3445Sat Oct 4 16:05:49 2014 Rei Odaira <Rei.Odaira@gmail.com> 3446 3447 * test/socket/test_unix.rb (TestSocket_UNIXSocket#test_too_long_path): 3448 sockaddr_un.sun_path in AIX is defined as char[1024], 3449 so "a" * 300 is not too long. "a" * 3000 would be enough. 3450 3451Sat Oct 4 09:12:03 2014 Zachary Scott <e@zzak.io> 3452 3453 * ext/win32ole/sample/example*.rb: Add wait input to quit for examples 3454 with patch provided by @windwiny [Fixes GH-705] 3455 https://github.com/ruby/ruby/pull/705 3456 3457Sat Oct 4 09:08:18 2014 Zachary Scott <e@zzak.io> 3458 3459 * ext/win32ole/win32ole.c: [DOC] Fix typo in :nodoc: reported by 3460 @windwiny to [Fix GH-705] https://github.com/ruby/ruby/pull/705 3461 3462 * ext/pty/pty.c: ditto 3463 3464Sat Oct 4 08:59:45 2014 Zachary Scott <e@zzak.io> 3465 3466 * ext/openssl/ossl_rand.c: [DOC] Add call signature for pseudo_bytes 3467 and random_bytes, wrap lines at 80 chars, and remove useless 3468 comments. 3469 3470Sat Oct 4 08:49:34 2014 Zachary Scott <e@zzak.io> 3471 3472 * ext/openssl/ossl_rand.c: [DOC] Add rdoc for method descriptions 3473 By @vipulnsward [Fixes GH-657] https://github.com/ruby/ruby/pull/657 3474 3475Sat Oct 4 08:23:48 2014 Zachary Scott <e@zzak.io> 3476 3477 * ext/openssl/ossl_rand.c: Use rb_define_module_function instead of 3478 macro. [Fixes GH-686] https://github.com/ruby/ruby/pull/686 3479 3480Sat Oct 4 06:04:56 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 3481 3482 * ext/win32ole/win32ole_method.c(olemethod_set_member): remove 3483 redundant NULL check. 3484 * ext/win32ole/win32ole_type.c(oletype_set_member): ditto. 3485 3486Sat Oct 4 00:25:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3487 3488 * .travis.yml: removed needless preparation for gcc. 3489 3490Fri Oct 3 23:41:20 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3491 3492 * .travis.yml: enabled gcc build with osx on travis. 3493 3494Fri Oct 3 23:22:23 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> 3495 3496 * template/fake.rb.in: fix make install failure due to MSYS path 3497 with mingw on MSYS environment. 3498 [ruby-core:64965] [Bug #10230] 3499 3500Fri Oct 3 21:02:32 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3501 3502 * test/ruby/test_io.rb (TestIO#test_advise): avoid to infinite loop. 3503 3504Fri Oct 3 19:26:01 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3505 3506 * .travis.yml: enabled test results of linux. 3507 3508Fri Oct 3 18:52:16 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3509 3510 * test/ruby/test_io.rb (TestIO#test_advise): added workaround of fadvise(2) 3511 with tmpfs and old linux kernel. [ruby-core:65355][Bug #10313] 3512 3513Fri Oct 3 18:22:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3514 3515 * .travis.yml: Disabled to generate document on travis. 3516 Reduce test running time. 3517 3518Fri Oct 3 12:42:15 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3519 3520 * lib/matrix.rb: Add hstack & vstack methods. 3521 Based on a patch by creasywuqiong. [Fix GH-344] 3522 3523Fri Oct 3 12:37:48 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3524 3525 * lib/matrix.rb: Fix Matrix.rows copy bug. 3526 Patch by Arron Mabrey. [Fix GH-707] 3527 3528Fri Oct 3 06:06:28 2014 Eric Wong <e@80x24.org> 3529 3530 * st.c (next_pow2): new function (from old bignum.c) 3531 (new_size): use next_pow2 function 3532 3533Fri Oct 3 05:58:58 2014 Eric Wong <e@80x24.org> 3534 3535 * vm_trace.c (rb_tp_t): pack 56 => 48 bytes on 64-bit 3536 3537Thu Oct 2 18:41:45 2014 NAKAMURA Usaku <usa@ruby-lang.org> 3538 3539 * ext/etc/etc.c (etc_nprocessors): Windows support. 3540 see [Feature #10267] 3541 3542Thu Oct 2 12:21:52 2014 Tanaka Akira <akr@fsij.org> 3543 3544 * ext/etc/etc.c (etc_nprocessors): New method. 3545 Accepted by matz at RubyKaigi 2014. 3546 [ruby-core:65142] [Feature #10267] 3547 3548Thu Oct 2 07:56:49 2014 Eric Wong <e@80x24.org> 3549 3550 * iseq.c (rb_iseq_line_trace_each): explicit cast 3551 Fix https://travis-ci.org/ruby/ruby/jobs/36814282 3552 3553Thu Oct 2 05:40:05 2014 Eric Wong <e@80x24.org> 3554 3555 * ruby.h: set rb_event_flag_t to uint32_t 3556 [ruby-core:65315] [misc #10249] 3557 3558Thu Oct 2 05:32:17 2014 Eric Wong <e@80x24.org> 3559 3560 * io.c (fptr_finalize): free memory before GC sweep 3561 [ruby-core:65269] [Feature #10295] 3562 3563Thu Oct 2 05:27:24 2014 Eric Wong <e@80x24.org> 3564 3565 * marshal.c (w_class): check dump_arg->compat_tbl before lookup 3566 (w_object): lazy init ->compat_tbl before insert 3567 (obj_alloc_by_class): ditto 3568 (clear_dump_arg): free only non-NULL ->compat_tbl 3569 (clear_load_arg): ditto for ->compat_tbl 3570 (marshal_dump): ->compat_tbl defaults to zero 3571 (marshal_load): ditto for ->compat_tbl 3572 (r_entry0): check l->compat_tbl before lookup 3573 (r_fixup_compat): ditto 3574 [ruby-core:65305] [Feature #10302] 3575 3576Wed Oct 1 21:14:34 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 3577 3578 * ext/win32ole/win32ole_type.c: use typed data. 3579 3580Wed Oct 1 18:15:42 2014 Nolan Evans <nolane@gmail.com> 3581 3582 * compile.c: remove commented out code. 3583 3584Wed Oct 1 17:38:53 2014 Rei Odaira <Rei.Odaira@gmail.com> 3585 3586 * test/fileutils/test_fileutils.rb: AIX does not allow 3587 a sticky bit on a regular file. 3588 3589Wed Oct 1 17:31:41 2014 Eric Hodel <drbrain@segment7.net> 3590 3591 * NEWS: Add RubyGems update. 3592 3593Wed Oct 1 17:28:58 2014 Eric Hodel <drbrain@segment7.net> 3594 3595 * lib/rubygems: Update to RubyGems 2.4.2. 3596 * test/rubygems: ditto. 3597 3598Tue Sep 30 22:25:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3599 3600 * parse.y (parser_data_type): separate ripper data type for from 3601 parser. 3602 3603Tue Sep 30 18:46:31 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 3604 3605 * ext/win32ole/win32ole_typelib.c: use typed data. 3606 3607Tue Sep 30 09:51:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3608 3609 * common.mk: fixed broken reference of update-config_files task 3610 3611Mon Sep 29 22:54:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3612 3613 * win32/file.c (append_wstr): set expanded length, not length of 3614 appended string. fix "probable buffer overflow" bug. 3615 [ruby-core:65317] [Bug #10304] 3616 3617 * string.c (str_make_independent_expand): drop NOFREE flag after 3618 reallocation, static buffer is not pointed anymore. 3619 [ruby-core:65317] [Bug #10304] 3620 3621Sun Sep 28 23:59:17 2014 Kazuki Tsujimoto <kazuki@callcc.net> 3622 3623 * gc.c (rb_gcdebug_print_obj_condition): use RVALUE_REMEMBERED 3624 because GET_HEAP_REMEMBERSET_BITS is obsoleted. 3625 3626Sun Sep 28 11:14:14 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3627 3628 * common.mk: Created new target update-unicode to download 3629 some Unicode data files. 3630 3631Fri Sep 26 15:03:19 2014 Masaki Matsushita <glass.saga@gmail.com> 3632 3633 * lib/uri/rfc3986_parser.rb: raise URI::InvalidURIError when 3634 uri doesn't respond to #to_str. [ruby-core:64453] [Bug #10150] 3635 3636 * test/uri/test_parser.rb: test for above. 3637 3638Sat Sep 27 10:31:48 2014 Kazuki Tsujimoto <kazuki@callcc.net> 3639 3640 * gems/bundled_gems: upgraded to power_assert 0.1.4. 3641 3642Fri Sep 26 12:52:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3643 3644 * ext/stringio/stringio.c (strio_write): ASCII-8BIT StringIO 3645 should be writable any encoding strings, without conversion. 3646 [ruby-core:65240] [Bug #10285] 3647 3648Fri Sep 26 05:21:01 2014 Eric Wong <e@80x24.org> 3649 3650 * object.c (rb_class_real): do not dereference 0 VALUE 3651 3652 * test/ruby/test_module.rb (test_inspect_segfault): 3653 Test case and bug report by Thomas Stratmann. 3654 [ruby-core:65214] [Bug #10282] 3655 3656Fri Sep 26 05:12:10 2014 Eric Wong <e@80x24.org> 3657 3658 * man/ruby.1: document stack size env variables 3659 [Feature #10197] 3660 3661Thu Sep 25 19:37:34 2014 Eric Wong <e@80x24.org> 3662 3663 * io.c (free_io_buffer): new function for a common pattern 3664 (clear_readconv): use free_io_buffer 3665 (rb_io_fptr_finalize): ditto 3666 3667Thu Sep 25 07:51:07 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 3668 3669 * lib/matrix.rb: Fix docs. Patched by Ben Woodall. [GH-726] 3670 3671Wed Sep 24 19:04:04 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3672 3673 * enc/unicode/data: New directory for downloaded Unicode 3674 data files. 3675 3676Wed Sep 24 18:59:59 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3677 3678 * tool/downloader.rb: Adjusting example for 3679 Downloader.download to implementation changes in r47693. 3680 3681Wed Sep 24 18:06:06 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3682 3683 * tool/downloader.rb: Removing unused method 3684 Downloader.download_if_modified_since. 3685 (if ever used, just replace with Downloader.download) 3686 3687Wed Sep 24 17:59:59 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3688 3689 * tool/downloader.rb: Fixing raise after return. 3690 3691Wed Sep 24 17:55:55 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3692 3693 * tool/downloader.rb: Made Unicode data file location available 3694 via :unicode Symbol. 3695 3696Wed Sep 24 10:45:45 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3697 3698 * tool/downloader.rb: Small fix to documentation comment. 3699 3700Tue Sep 23 22:00:20 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3701 3702 * parse.y (parse_ident): just after a label, new expression should 3703 start, cannot be a modifier. [ruby-core:65211] [Bug #10279] 3704 3705Tue Sep 23 16:07:07 2014 Martin Duerst <duerst@it.aoyama.ac.jp> 3706 3707 * tool/downloader.rb: added Downloader.download_if_modified_since 3708 to reduce downloads of large files that change only rarely. 3709 [ruby-core:65164] [CommonRuby - Feature #10084] 3710 3711Tue Sep 23 11:55:09 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3712 3713 * .travis.yml: added rubyspec into travis tasks and eliminate to stdout. 3714 3715Mon Sep 22 20:00:29 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 3716 3717 * test/win32ole/test_win32ole_variant.rb 3718 (test_conversion_time2date_with_msec): test by using only 3719 assert_in_delta to avoid to fail when converting Time object with 3720 999999999 nanoseconds into VT_DATE Variant. 3721 3722Mon Sep 22 19:49:12 2014 Zachary Scott <e@zzak.io> 3723 3724 * doc/syntax/methods.rdoc: [DOC] [] and []= methods by @process 3725 [Fixes GH-662] https://github.com/ruby/ruby/pull/662 3726 3727Mon Sep 22 18:21:35 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3728 3729 * .travis.yml: Only osx build is enabled. linux builds is random failure 3730 and test results of major linux is covered by rubyci. 3731 3732Mon Sep 22 12:10:29 2014 Tanaka Akira <akr@fsij.org> 3733 3734 * test/ruby/test_time_tz.rb: Fix test error with tzdata-2014g. 3735 [ruby-core:65058] [Bug #10245] Reported by Vit Ondruch. 3736 3737Mon Sep 22 09:28:43 2014 Eric Wong <e@80x24.org> 3738 3739 * ext/socket/ancdata.c ({send,recv}msg_args_struct): 24 => 16 bytes 3740 * ext/socket/init.c (connect_arg): ditto 3741 * ext/socket/raddrinfo.c (getnameinfo_arg): 56 => 48 bytes 3742 (reductions only for 64-bit systems) 3743 3744Mon Sep 22 02:04:25 2014 Tanaka Akira <akr@fsij.org> 3745 3746 * lib/drb/drb.rb: Support graceful shutdown. 3747 (DRbTCPSocket#initialize): Create a pipe for shutdown notification. 3748 (DRbTCPSocket#close): Invoke close_shutdown_pipe. 3749 (DRbTCPSocket#close_shutdown_pipe): New private method. 3750 (DRbTCPSocket#accept): Use accept_or_shutdown. 3751 (DRbTCPSocket#accept_or_shutdown): New private method which returns 3752 nil on shutdown. 3753 (DRbServer#stop_service): Use shutdown instead of Thread#kill. 3754 (DRbServer#run): Break infinite loop when main_loop returns nil. 3755 (DRbServer#main_loop): @protocol.accept may return nil. 3756 3757 * lib/drb/ssl.rb: Follow above change. 3758 3759 * lib/drb/unix.rb: Ditto. 3760 3761Sun Sep 21 13:54:36 2014 Masaki Matsushita <glass.saga@gmail.com> 3762 3763 * time.c: raise exception when minutes of utc_offset is out of 00-59. 3764 patch is from Kenichi Kamiya. 3765 [ruby-dev:47539] [Bug #8679] 3766 3767 * test/ruby/test_time.rb: test for above. 3768 patch is from Kenichi Kamiya. 3769 3770Sun Sep 21 19:04:08 2014 Narihiro Nakamura <authornari@gmail.com> 3771 3772 * st.c (do_hash_bin): unused macro. 3773 3774Sun Sep 21 18:45:01 2014 Narihiro Nakamura <authornari@gmail.com> 3775 3776 * parse.y (parser_class_nest): unused variable after YARV 3777 merged (r11439). 3778 3779Sun Sep 21 18:14:03 2014 Narihiro Nakamura <authornari@gmail.com> 3780 3781 * st.c (numberof): unused. internal.h has same macro. 3782 3783 * node.c (F_CUSTOM2): unused. 3784 3785Sun Sep 21 14:11:23 2014 Tanaka Akira <akr@fsij.org> 3786 3787 * thread_pthread.c (native_set_thread_name): New function to 3788 set thread name visible with ps command on GNU/Linux. 3789 Ex. ps -o %c -L 3790 3791 * thread.c (thread_start_func_2): Call native_set_thread_name at 3792 beginning. 3793 (rb_thread_inspect_msg): Extract from rb_thread_inspect. 3794 3795Sun Sep 21 12:49:11 2014 Eric Wong <e@80x24.org> 3796 3797 * iseq.c (rb_iseq_defined_string): trim redundant semi-colon 3798 3799Sun Sep 21 12:19:29 2014 Eric Wong <e@80x24.org> 3800 3801 * file.c (rb_find_file_ext_safe): clear tmp buffer on failure 3802 (rb_find_file_safe): ditto 3803 3804Sat Sep 20 04:42:18 2014 Masaki Matsushita <glass.saga@gmail.com> 3805 3806 * lib/csv.rb: avoid unnecessary object allocations. 3807 patch is from Andrew Vit. [ruby-core:63215] [Feature #9952] 3808 3809Sun Sep 21 12:10:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3810 3811 * lib/rexml/**/*.rb: removed commented-out code. 3812 3813Sat Sep 20 03:46:58 2014 Masaki Matsushita <glass.saga@gmail.com> 3814 3815 * array.c: use rb_equal_opt() for performance improvement. 3816 [ruby-core:64954] [Feature #10227] 3817 3818Sun Sep 21 11:16:56 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 3819 3820 * ext/win32ole/win32ole.c (rbtime2vtdate, vtdate2rbtime): fix 3821 the bug in conversion of milliseconds. [Bug #10258] 3822 3823 * test/win32ole/test_win32ole_variant.rb 3824 (test_conversion_dbl2date_with_msec, 3825 test_conversion_time2date_with_msec): use assert_in_delta instead 3826 of assert_equal to treat an acceptable error range. 3827 3828Sun Sep 21 11:03:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3829 3830 * signal.c (ruby_signal): although "EINVAL from sigaction(2) is 3831 not a bug", but even it is a failure. pointed at toRuby/guRuby 3832 in RubyHiroba. 3833 3834Sat Sep 20 03:00:26 2014 Masaki Matsushita <glass.saga@gmail.com> 3835 3836 * lib/tempfile.rb: define parameters appropriately and some 3837 refactoring. 3838 3839 * lib/tmpdir.rb: ditto. 3840 3841Sat Sep 20 23:58:21 2014 Tanaka Akira <akr@fsij.org> 3842 3843 * enum.c (enum_chunk): Deprecate the state management. 3844 (enum_slice_before): Ditto. 3845 3846Sat Sep 20 15:39:11 2014 Tanaka Akira <akr@fsij.org> 3847 3848 * enum.c (enum_slice_when): New method: Enumerable#slice_when. 3849 (slicewhen_i): New function. 3850 (slicewhen_ii): New function. 3851 3852 * enumerator.c (InitVM_Enumerator): New method: 3853 Enumerator::Lazy#slice_when. 3854 3855 [ruby-core:62499] [Feature #9826] 3856 3857Sat Sep 20 11:55:19 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3858 3859 * .travis.yml: added new configurations for osx on travis ci. 3860 [fix GH-723] 3861 * test/ruby/test_object.rb: tweaked to memory leak limit for osx build. 3862 3863Sat Sep 20 10:48:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3864 3865 * parse.y (assoc): allow quoted ID as a key of a hash literal. 3866 [ruby-core:34453] [Feature #4276] 3867 3868Sat Sep 20 10:23:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3869 3870 * compile.c (iseq_set_arguments): store local variable IDs in 3871 temporary list as Symbols. previously these are stored as 3872 Fixnums to prevent from GC, but IDs of dynamic symbols can 3873 exceed Fixnum range and cause RangeError at inverting from 3874 Fixnum. [ruby-dev:48564] [Bug #10266] 3875 3876Sat Sep 20 10:02:51 2014 Tanaka Akira <akr@fsij.org> 3877 3878 * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name#pretty_print): 3879 New method. 3880 (OpenSSL::X509::Certificate#pretty_print): Ditto. 3881 3882 * ext/openssl/lib/openssl/bn.rb (OpenSSL::BN#pretty_print): Ditto. 3883 3884Sat Sep 20 07:55:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3885 3886 * vm_eval.c (eval_string_with_cref): fix super from eval with 3887 scope. set klass in the current control frame to the class of 3888 the receiver in the context to be evaluated, this class/module 3889 must match the actual receiver to call super. 3890 [ruby-core:65122] [Bug #10263] 3891 3892Fri Sep 19 20:06:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3893 3894 * symbol.c (rb_str_dynamic_intern): check if the stem ID of 3895 attrset ID is already registered as a static ID. 3896 [ruby-dev:48559] [Bug #10259] 3897 3898Fri Sep 19 15:48:09 2014 NAKAMURA Usaku <usa@ruby-lang.org> 3899 3900 * win32/Makefile.sub (VCSUP): nothing to do if this worktree is not 3901 under any VCS (it means that the worktree may be from the release 3902 package). 3903 3904Fri Sep 19 10:47:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3905 3906 * test/ruby/test_math.rb (TestMath#assert_infinity): Float#finite? 3907 returns true also for NaN, so use Float#infinite? instead. 3908 [ruby-core:65117] [Feature #10261] 3909 3910Fri Sep 19 05:36:16 2014 Eric Wong <e@80x24.org> 3911 3912 * NEWS: note --with-jemalloc option [ci skip] 3913 3914Thu Sep 18 16:26:27 2014 NAKAMURA Usaku <usa@ruby-lang.org> 3915 3916 * test/rubygems/test_gem_commands_setup_command.rb: @ui uses StringIO 3917 as its streams, and Encoding.default_external does not effect to 3918 StringIOs already exist. so, we need to set external_encoding of 3919 @ui.outs directly. this problem (test failure) does not appear in 3920 the environments default_external is us-ascii or utf-8. 3921 3922Thu Sep 18 15:02:15 2014 NAKAMURA Usaku <usa@ruby-lang.org> 3923 3924 * test/rubygems/test_gem_specification.rb: '/' is not always the root. 3925 3926Thu Sep 18 09:36:37 2014 Scott Francis <scott.francis@shopify.com> 3927 3928 * vm_method.c (Init_Method): make global method cache size 3929 configurable by environment variable 3930 "RUBY_GLOBAL_METHOD_CACHE_SIZE" [Fix GH-719] 3931 3932Thu Sep 18 07:03:36 2014 Eric Wong <e@80x24.org> 3933 3934 * test/-ext-/string/test_modify_expand.rb: increase limit 3935 for {je,tc}malloc [Bug #10236] 3936 3937Thu Sep 18 06:41:18 2014 Eric Wong <e@80x24.org> 3938 3939 * ext/zlib/zlib.c (struct gzfile): pack (288 => 272 bytes) on 64-bit 3940 3941Thu Sep 18 05:44:05 2014 Eric Wong <e@80x24.org> 3942 3943 * ext/socket/init.c (rsock_connect): refactor for blocking 3944 (wait_connectable): clear error before wait 3945 [Bug #9356] 3946 3947Wed Sep 17 23:12:36 2014 NARUSE, Yui <naruse@ruby-lang.org> 3948 3949 * lib/uri/rfc3986_parser.rb: specify a regexp for :OPAQUE; generic.rb 3950 assumes it is present, and will refuse all values otherwise. 3951 by Matthew Draper <matthew@trebex.net> 3952 https://github.com/ruby/ruby/pull/718 fix GH-718 3953 3954Wed Sep 17 16:22:58 2014 Eric Wong <e@80x24.org> 3955 3956 * ext/zlib/zlib.c (zlib_mem_alloc): check overflow 3957 3958Wed Sep 17 11:33:35 2014 Laurent Arnoud <laurent@spkdev.net> 3959 3960 * test/fiddle/test_import.rb (Fiddle::TestImport#test_sizeof): 3961 added test for long long [fix GH-716] 3962 3963Wed Sep 17 11:09:21 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 3964 3965 * tool/rbinstall.rb: fixed invalid options with latest rubygems. 3966 https://github.com/rubygems/rubygems/issues/1013 3967 3968Tue Sep 16 19:19:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 3969 3970 * benchmark/bm_app_aobench.rb: update outdated links to the 3971 original program. [ruby-dev:48550] [Feature #10247] 3972 3973Tue Sep 16 01:06:40 2014 NARUSE, Yui <naruse@ruby-lang.org> 3974 3975 * reg*.c: Merge Onigmo 5.15.0 38a870960aa7370051a3544 3976 3977Mon Sep 15 16:21:10 2014 Eric Wong <e@80x24.org> 3978 3979 * io.c (struct io_advise_struct): 32 => 24 bytes on 64-bit 3980 * io.c (struct io_internal_writev_struct): 24 => 16 bytes on 64-bit 3981 * process.c (struct waitpid_arg): ditto 3982 3983Mon Sep 15 10:29:25 2014 Natalie Weizenbaum <nweiz@google.com> 3984 3985 * ext/pathname/lib/pathname.rb (SAME_PATHS): 3986 Pathname#relative_path_from uses String#casecmp to compare strings 3987 on case-insensitive filesystem platforms (e.g., Windows). This can 3988 return nil for strings with different encodings, and the code 3989 previously assumed that it always returned a Fixnum. [Fix GH-713] 3990 3991Mon Sep 15 09:43:18 2014 Sho Hashimoto <sho.hsmt@gmail.com> 3992 3993 * ext/fiddle/lib/fiddle/import.rb (Fiddle::Importer#sizeof): fix typo, 3994 SIZEOF_LONG_LON. [Fix GH-714] 3995 3996Mon Sep 15 08:13:40 2014 Matthew Draper <matthew@trebex.net> 3997 3998 * sprintf.c (rb_str_format): rational 'f' format works for more 3999 values. [fix GH-717] 4000 4001Sun Sep 14 16:57:27 2014 Eric Wong <e@80x24.org> 4002 4003 * template/vm.inc.tmpl: "insns.c" => "insns.def" 4004 * tool/instruction.rb: typo fix 4005 4006Sun Sep 14 12:29:52 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4007 4008 * test/test_tracer.rb: fixed testcase for rubygems update. 4009 4010Sun Sep 14 12:29:02 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4011 4012 * lib/rubygems: Update to RubyGems 2.4.1 master(713ab65) 4013 Complete history at: 4014 https://github.com/rubygems/rubygems/blob/master/History.txt#L3-L216 4015 4016 * test/rubygems: ditto. 4017 4018Sun Sep 14 11:03:24 2014 Aaron Patterson <aaron@tenderlovemaking.com> 4019 4020 * ext/psych/lib/psych.rb: update version 4021 * ext/psych/psych.gemspec: ditto 4022 4023Sun Sep 14 08:43:37 2014 Eric Wong <e@80x24.org> 4024 4025 * ccan/container_of/container_of.h (container_of_or_null): added 4026 [ccan 7ec5b8e06b2fd5fa98b1fcde1158c286d2d429d8] (David Gibson) 4027 4028Sun Sep 14 08:41:44 2014 Eric Wong <e@80x24.org> 4029 4030 * ccan/list/list.h (list_del_init, list_node_init): new functions 4031 for multiple list_del() calls 4032 [ccan ec8654d94d3c5c47aa5f82698f7e8048c79765b1] (Rusty Russell) 4033 4034Sat Sep 13 22:19:26 2014 Bernard Potocki <bernard.potocki@imanel.org> 4035 4036 * hash.c (rb_hash_aset): fix misleading example which may suggest 4037 that Hash.store will return self instead of value - Hash#store 4038 is returning value and update itself, as well as Hash#[]=. 4039 [Fix GH-715] 4040 4041Sat Sep 13 15:16:31 2014 Eric Wong <e@80x24.org> 4042 4043 * class.c: use ALLOC(rb_subclass_entry_t) 4044 4045Sat Sep 13 14:14:00 2014 Eric Wong <e@80x24.org> 4046 4047 * process.c (free_exec_arg): remove 4048 (memsize_exec_arg): ptr is never NULL 4049 (exec_arg_data_type): use RUBY_TYPED_DEFAULT_FREE 4050 4051 * variable.c (autoload_i_free): remove 4052 (autoload_data_i_type): use RUBY_TYPED_DEFAULT_FREE 4053 (autoload_memsize): ptr is never NULL 4054 4055 * vm_backtrace.c (location_free): remove 4056 (location_mark): ptr is never NULL 4057 (location_data_type): use RUBY_TYPED_DEFAULT_FREE 4058 (backtrace_mark): ditto 4059 (backtrace_free): ditto 4060 4061Sat Sep 13 13:43:07 2014 Eric Wong <e@80x24.org> 4062 4063 * doc/NEWS-2.0.0: fix typo for default RUBY_FIBER_MACHINE_STACK_SIZE 4064 [ci skip] 4065 4066Sat Sep 13 11:16:58 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 4067 4068 * ext/win32ole/win32ole_event.c(ev_advise, ole_event_free, 4069 fev_s_allocate, fev_unadvise): avoid segmentation fault when COM 4070 server freed before calling Unadvise from WIN32OLE_EVENT object. 4071 * ext/win32ole/win32ole.c: ditto. 4072 4073Sat Sep 13 09:47:44 2014 Eric Wong <e@80x24.org> 4074 4075 * man/ruby.1: use https for *.ruby-lang.org links 4076 4077Sat Sep 13 06:31:23 2014 Eric Wong <e@80x24.org> 4078 4079 * vm.c (thread_alloc): remove needless volatile 4080 4081Sat Sep 13 06:13:55 2014 Eric Wong <e@80x24.org> 4082 4083 * proc.c (proc_free): remove, use RUBY_TYPED_DEFAULT_FREE 4084 (proc_mark, proc_memsize): remove needless branching 4085 4086 * vm.c (env_free): remove, use RUBY_TYPED_DEFAULT_FREE 4087 (env_mark, env_memsize): remove needless branching 4088 4089Sat Sep 13 05:52:15 2014 Eric Wong <e@80x24.org> 4090 4091 * proc.c (rb_proc_alloc): inline and move to vm.c 4092 (rb_proc_wrap): new wrapper function used by rb_proc_alloc 4093 (proc_dup): simplify alloc + copy + wrap operation 4094 [ruby-core:64994] 4095 4096 * vm.c (rb_proc_alloc): new inline function 4097 (rb_vm_make_proc): call rb_proc_alloc 4098 4099 * vm_core.h: remove rb_proc_alloc, add rb_proc_wrap 4100 4101 * benchmark/bm_vm2_newlambda.rb: short test to show difference 4102 4103Sat Sep 13 04:40:04 2014 Eric Wong <e@80x24.org> 4104 4105 * process.c (Init_process): subclass Thread as Process::Waiter 4106 (rb_detach_process): use Process::Waiter instead of singleton class 4107 Thanks to headius and nobu. [Bug #10231] 4108 4109 * test/ruby/test_process.rb (test_process_detach): new test 4110 4111 * inits.c (rb_call_inits): call Init_Thread before Init_process to 4112 ensure Process::Waiter may be a subclass of Thread 4113 4114Fri Sep 12 18:14:28 2014 Eric Wong <e@80x24.org> 4115 4116 * vm.c (env_alloc): inline to avoid extra zeroing 4117 tiny speedup [ruby-core:64980] 4118 4119Fri Sep 12 17:13:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 4120 4121 * vm_method.c (rb_method_entry_make, remove_method): ditto. 4122 4123Fri Sep 12 14:39:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4124 4125 * gems/bundled_gems: Upgraded to test-unit-3.0.1 and minitest-5.4.1 4126 4127Fri Sep 12 06:55:40 2014 Eric Wong <e@80x24.org> 4128 4129 * string.c (Init_frozen_strings): use st_init_table_with_size 4130 4131Fri Sep 12 06:15:37 2014 NARUSE, Yui <naruse@ruby-lang.org> 4132 4133 * string.c (sym_find): remove Symbol.find because we have Symbol GC now. 4134 https://bugs.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20140904Japan 4135 If you still want this, request again on Redmine. [Feature #7854] 4136 https://bugs.ruby-lang.org/issues/7854 4137 4138 * ext/-test-/symbol/init.c (sym_find): moved from string.c for tests. 4139 4140Fri Sep 12 04:24:03 2014 Eric Wong <e@80x24.org> 4141 4142 * insns.def (once): define and use fake RUNNING_THREAD_ONCE_DONE 4143 pointer to indicate is->once.running_thread is done. 4144 4145 * vm_core.h (iseq_inline_storage_entry): remove done field, 4146 allowing the union to be reduced from 24=>16 bytes on 64-bit 4147 [Feature #10187] 4148 4149Thu Sep 11 20:10:00 2014 Koichi Sasada <ko1@atdot.net> 4150 4151 * vm.c (rb_thread_mark): use rb_gc_mark_values() to mark VM stack. 4152 4153Thu Sep 11 19:50:57 2014 Koichi Sasada <ko1@atdot.net> 4154 4155 * vm.c (rb_vm_register_special_exception): make new function to 4156 make and register special exceptions. 4157 4158 * vm.c (rb_vm_mark): do not need to mark special exceptions 4159 because they are registered by rb_gc_register_mark_object(). 4160 4161 * eval.c (Init_eval): use rb_vm_register_special_exception(). 4162 4163 * gc.c (Init_GC): ditto. 4164 4165 * proc.c (Init_Proc): ditto. 4166 4167 * thread.c (Init_Thread): ditto. 4168 4169Thu Sep 11 19:32:30 2014 Koichi Sasada <ko1@atdot.net> 4170 4171 * gc.c (rb_gc_mark_values): added. 4172 This function is similar to rb_gc_mark_locations(), but not 4173 conservative. 4174 4175 * internal.h: ditto. 4176 4177 * vm.c (env_mark): use rb_gc_mark_values() because env values should 4178 be Ruby VALUEs. 4179 4180Thu Sep 11 19:16:39 2014 Koichi Sasada <ko1@atdot.net> 4181 4182 * gc.c (gc_mark_ptr): rename to gc_mark_set. 4183 4184 * gc.c (gc_mark): add gc_mark_ptr() to skip is_markable_object() 4185 check. gc_mark_maybe() can use gc_mark_ptr() directly because 4186 passed pointer is checked by is_pointer_to_heap(). 4187 4188Thu Sep 11 18:40:16 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4189 4190 * .gitignore: ignored temporary files and coverage results. 4191 4192Thu Sep 11 18:15:30 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4193 4194 * .gitignore: ignored only simplecov. 4195 * coverage/README: Added coverage docs. 4196 4197Thu Sep 11 17:25:31 2014 Koichi Sasada <ko1@atdot.net> 4198 4199 * include/ruby/ruby.h, gc.c: add new internal events 4200 RUBY_INTERNAL_EVENT_GC_ENTER and 4201 RUBY_INTERNAL_EVENT_GC_EXIT. 4202 4203 When invoking GC process, GC_ENTER event is called. 4204 When exiting from GC process, GC_EXIT event is called. 4205 4206 Incremental GC (incremental marking and lazy sweep) can call 4207 these events many times. 4208 4209 For example (minor marking): 4210 (1) GC_ENTER 4211 - (2) GC_START (minor GC) 4212 (minor marking) 4213 - (3) GC_END_MARK 4214 (start lazy sweep) 4215 (4) GC_EXIT 4216 (ruby process) 4217 (5) GC_ENTER 4218 (lazy sweep) 4219 (6) GC_EXIT 4220 (ruby process) 4221 (... repeat (5), (6)) 4222 (7) GC_ENTER 4223 (finish lazy sweep) 4224 - (8) GC_END_SWEEP 4225 (9) GC_EXIT 4226 4227 2nd example (incremental major marking): 4228 (1) GC_ENTER 4229 - (2) GC_START (minor GC) 4230 (start incremental marking) 4231 (3) GC_EXIT 4232 (ruby process) 4233 (4) GC_ENTER 4234 (incremental marking) 4235 (5) GC_EXIT 4236 (ruby process) 4237 (... repeat (4), (5)) 4238 (6) GC_ENTER 4239 (finish incremental marking) 4240 - (7) GC_END_MARK 4241 (start lazy sweep) 4242 (8) GC_EXIT 4243 (ruby process) 4244 (9) GC_ENTER 4245 (lazy sweep) 4246 (10) GC_EXIT 4247 (ruby process) 4248 (... repeat (9), (10)) 4249 (11) GC_ENTER 4250 (finish lazy marking) 4251 - (12) GC_STOP_SWEEP 4252 (13) GC_EXIT 4253 4254 These internal events enable to measure GC pause time completely. 4255 4256Thu Sep 11 17:04:54 2014 Eric Wong <e@80x24.org> 4257 4258 * lib/benchmark.rb: remove CLOCK_MONOTONIC_RAW support 4259 Thanks to Vit Ondruch for reporting the issue on ARM. 4260 [Bug #10202] 4261 4262Thu Sep 11 14:31:57 2014 Koichi Sasada <ko1@atdot.net> 4263 4264 * include/ruby/ruby.h: freeze nil/true/false. 4265 [Feature #8923] 4266 4267 * gc.c (should_be_finalizable): check frozen after checkin FL_ABLE. 4268 4269 * object.c (rb_obj_taint): check 4270 OBJ_TAINTABLE(obj). 4271 4272 * object.c (rb_obj_freeze): remove immediate_frozen_tbl 4273 because all of immediate values are frozen. YAY! 4274 4275 * object.c (rb_obj_frozen_p): ditto. 4276 4277 * test/ruby/test_eval.rb: skip instance_variable_set for 4278 frozen objects. 4279 4280 * test/ruby/test_weakmap.rb: check ArgumentError instead of 4281 RuntimeError. 4282 4283Thu Sep 11 10:03:16 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4284 4285 * lib/rdoc.rb, lib/rdoc, test/rdoc: Update to RDoc 4.2.0.alpha(21b241a) 4286 4287Wed Sep 10 17:52:25 2014 Koichi Sasada <ko1@atdot.net> 4288 4289 * compile.c (rb_vm_addr2insn): rename to rb_vm_insn_addr2insn 4290 to clear what address. 4291 4292Wed Sep 10 16:22:26 2014 Koichi Sasada <ko1@atdot.net> 4293 4294 * test/ruby/test_gc.rb: fix condition. 4295 4296Wed Sep 10 15:29:46 2014 Eric Wong <e@80x24.org> 4297 4298 * vm_core.h (rb_call_info_t): ci->flag becomes 32-bit unsigned int 4299 ci->index becomes a 32-bit signed int (from signed long). 4300 Reorder for better packing on 64-bit, giving an 8 byte reduction 4301 from 104 to 96 bytes for each ci. 4302 [Feature #10187] 4303 4304 * compile.c (new_callinfo, setup_args, iseq_compile_each, 4305 iseq_build_from_ary_body): adjust for type changes 4306 4307 * vm_insnhelper.c (vm_getivar): ditto 4308 4309Wed Sep 10 15:07:35 2014 Eric Wong <e@80x24.org> 4310 4311 * compile.c (rb_iseq_translate_threaded_code): 4312 modify in-place w/o copy 4313 (rb_vm_addr2insn): new function for debug 4314 (rb_iseq_original_iseq): ditto 4315 (iseq_set_sequence): assign iseq_encoded directly 4316 [Feature #10185] 4317 4318 * vm_core (rb_iseq_t): move original ->iseq to bottom 4319 4320 * iseq.c (iseq_free, iseq_free): adjust for new layout 4321 (rb_iseq_disasm): use original iseq for dump 4322 (iseq_data_to_ary): ditto 4323 (rb_iseq_line_trace_each): ditto 4324 (rb_iseq_build_for_ruby2cext): use iseq_encoded directly 4325 4326 * vm_dump.c (rb_vmdebug_debug_print_pre): use original iseq 4327 4328Wed Sep 10 15:00:11 2014 Eric Wong <e@80x24.org> 4329 4330 * time.c (time_mark): remove NULL check 4331 (time_memsize): ditto 4332 (time_free): remove, use RUBY_TYPED_DEFAULT_FREE instead 4333 [Feature #10219] 4334 4335Wed Sep 10 14:14:57 2014 NAKAMURA Usaku <usa@ruby-lang.org> 4336 4337 * common.mk (encs enc trans libencs libenc libtrans): force to run 4338 enk.mk because common.mk does not know the dependency, but enk.mk 4339 knows. [ruby-dev:48530] [Bug #10220] 4340 4341Wed Sep 10 11:59:10 2014 Koichi Sasada <ko1@atdot.net> 4342 4343 * gc.c (gc_stat): update rdoc. 4344 4345Wed Sep 10 11:52:08 2014 Koichi Sasada <ko1@atdot.net> 4346 4347 * gc.c (gc_stat_internal): rename: 4348 * malloc_increase -> malloc_increase_bytes 4349 * malloc_limit -> malloc_increase_bytes_limit 4350 * oldmalloc_increase -> oldmalloc_increase_bytes 4351 * oldmalloc_limit -> oldmalloc_increase_bytes_limit 4352 ref: [Feature #9924] 4353 4354Wed Sep 10 11:45:40 2014 Koichi Sasada <ko1@atdot.net> 4355 4356 * gc.c (gc_stat_internal): rename `heap_used' to `heap_allocated_pages'. 4357 ref: [Feature #9924] 4358 4359 * test/ruby/test_gc.rb: add constraints test for gc stat information. 4360 4361Wed Sep 10 11:31:16 2014 Koichi Sasada <ko1@atdot.net> 4362 4363 * gc.c (gc_stat_internal): rename: 4364 * remembered_shady_object -> remembered_wb_unprotected_objects 4365 * remembered_shady_object_limit -> remembered_wb_unprotected_objects_limit 4366 * old_object -> old_objects 4367 * old_object_limit -> old_objects_limit 4368 ref: [Feature #9924] 4369 4370Wed Sep 10 11:12:25 2014 Koichi Sasada <ko1@atdot.net> 4371 4372 * gc.c (gc_stat_internal): support: 4373 * total_allocated_pages 4374 * total_freed_pages 4375 ref: [Feature #9924] 4376 4377Wed Sep 10 10:48:04 2014 Koichi Sasada <ko1@atdot.net> 4378 4379 * test/ruby/test_gc.rb: catch up last fix. 4380 4381Wed Sep 10 10:36:08 2014 Koichi Sasada <ko1@atdot.net> 4382 4383 * gc.c (objspace_total_slot): rename objspace_available_slots. 4384 4385 * gc.c (objspace_live_slot, objspace_free_slot): rename 4386 ..._slot() to ..._slots(). 4387 4388 * gc.c (objspace_free_slot): should subtract heap_pages_final_slots. 4389 4390 * gc.c (gc_stat_internal): 4391 * add `heap_available_slots' field 4392 * rename heap_live_slot to heap_live_slots 4393 * rename heap_free_slot to heap_free_slots 4394 ref: [Feature #9924] 4395 4396Wed Sep 10 07:22:53 2014 Koichi Sasada <ko1@atdot.net> 4397 4398 * gc.c: refactoring for RGENGC_PROFILE > 0. 4399 4400 * rename rb_objspace_t::profile::..._count 4401 to rb_objspace_t::profile::total_..._count 4402 * rename promote_infant_types to promote_types 4403 4404 * gc.c (gc_remember_unprotected): count remembered shady objects here. 4405 4406Wed Sep 10 03:12:12 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 4407 4408 * gc.c (init_mark_stack): MEMZERO() receive type as 2nd argument instead 4409 of size. 4410 Coverity Scan found this bug. 4411 4412Tue Sep 9 21:55:39 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 4413 4414 * ext/win32ole/sample/excel2.rb: remove some commented-out code. 4415 rotate graph more slowly to see graph clearly. 4416 4417Tue Sep 9 19:52:33 2014 Koichi Sasada <ko1@atdot.net> 4418 4419 * gc.c: rename rb_objspace_t::marked_objects to marked_slots. 4420 4421 * gc.c (gc_marks_start): should be clear first. 4422 4423 * gc.c (gc_marks_start): remembered shady objects are also marked. 4424 4425 * gc.c (gc_stat_internal): add heap_marked_slots. 4426 4427Tue Sep 9 18:58:48 2014 Koichi Sasada <ko1@atdot.net> 4428 4429 * gc.c: rename 4430 * total_allocated_object_num -> total_allocated_objects 4431 * total_allocated_object_num_at_gc_start -> total_allocated_objects_at_gc_start 4432 * total_freed_object_num -> total_freed_objects 4433 4434 * gc.c (gc_stat_internal): 4435 * rename total_allocated_object -> total_allocated_objects 4436 * rename total_freed_object -> total_freed_objects 4437 4438Tue Sep 9 18:51:36 2014 Koichi Sasada <ko1@atdot.net> 4439 4440 * gc.c (gc_stat_internal): fix symbol names 4441 * heap_final_slot -> heap_final_slots 4442 * heap_swept_slot -> heap_swept_slots 4443 4444Tue Sep 9 18:18:07 2014 Koichi Sasada <ko1@atdot.net> 4445 4446 * gc.c (rb_objspace_t::heap_pages): rename field names: 4447 * used -> allocated_pages 4448 * increment -> allocatable_pages 4449 * length -> sorted_length 4450 And remove unused `limit' field. 4451 4452 * gc.c: rename macros: 4453 * heap_pages_used -> heap_allocated_pages 4454 * heap_pages_length -> heap_pages_sorted_length 4455 * heap_pages_increment -> heap_allocatable_pages 4456 4457 * gc.c (gc_stat_internal): fix symbol names 4458 * heap_used -> heap_allocated_pages 4459 * heap_eden_page_length -> heap_eden_pages 4460 * heap_tomb_page_length -> heap_tomb_pages 4461 * heap_increment -> heap_allocatable_pages 4462 * heap_length -> heap_sorted_length 4463 4464 ref: [Feature #9924] 4465 https://docs.google.com/spreadsheets/d/11Ua4uBr6o0k-nORrZLEIIUkHJ9JRzRR0NyZfrhEEnc8/edit?usp=sharing 4466 Yellow color fields in this table are changed. 4467 4468 * test/ruby/test_gc.rb: catch up this change. 4469 4470Tue Sep 9 14:56:03 2014 Koichi Sasada <ko1@atdot.net> 4471 4472 * gc.c: continue layout changing. 4473 4474 newobj_of() also touch: 4475 (4) increment total_allocated_object_num 4476 (5) check hook_events 4477 4478 And gather fields related to marking phase. 4479 4480Tue Sep 9 14:21:50 2014 Koichi Sasada <ko1@atdot.net> 4481 4482 * gc.c: fix layout of rb_objspace_t to improve cache locality. 4483 4484 newobj_of() accesses: 4485 (1) rb_objspace_t::flags 4486 (2) rb_objspace_t::eden_heap::freelist 4487 (3) and rb_objspace_t::eden_heap::free_pages if freelist is NULL. 4488 4489Tue Sep 9 14:09:36 2014 Koichi Sasada <ko1@atdot.net> 4490 4491 * gc.c: move rb_objspace_t::flags::gc_stressful after during_gc 4492 to make accessing both parameters easy. 4493 4494 * gc.c (heap_get_freeobj): add LIKELY() hint. 4495 4496 * gc.c (heap_get_freeobj_from_next_freepage): ditto. 4497 4498 * gc.c (newobj_of): check both parameters at once for exceptional 4499 case. 4500 4501Tue Sep 9 13:51:32 2014 Koichi Sasada <ko1@atdot.net> 4502 4503 * gc.c: add rb_objspace_t::flags::gc_stressful and 4504 ruby_gc_stressful macro. 4505 Rename objspace->gc_stress to objspace->gc_stress_mode. 4506 4507 If objspace->gc_stress_mode is true (!nil and !false) then 4508 ruby_gc_stressful becomes TRUE. 4509 4510 ruby_gc_stressful will speedup newobj_of() slightly. 4511 4512 * gc.c: initialize ruby_gc_stress(full|_mode) by gc_params.gc_stress 4513 even if ENABLE_VM_OBJSPACE is false. 4514 4515Tue Sep 9 13:05:50 2014 Koichi Sasada <ko1@atdot.net> 4516 4517 * gc.c: remove ruby_disable_gc_stress and add ruby_disable_gc 4518 to speed-up newobj_of(). 4519 4520 * gc.c (ready_to_gc): check ruby_disable_gc. 4521 4522 * signal.c: use ruby_disable_gc. 4523 4524Tue Sep 9 12:11:41 2014 Koichi Sasada <ko1@atdot.net> 4525 4526 * gc.c: rename gc_stat entries and check stat transition. 4527 4528Tue Sep 9 12:06:03 2014 Koichi Sasada <ko1@atdot.net> 4529 4530 * gc.c (gc_sweep_rest): remove wrong modification of during_gc flag. 4531 4532Tue Sep 9 11:39:41 2014 Koichi Sasada <ko1@atdot.net> 4533 4534 * gc.c: pack boolean values into rb_objspace_t::flags with bit fields 4535 to improve cache locality. 4536 4537Tue Sep 9 11:11:05 2014 Koichi Sasada <ko1@atdot.net> 4538 4539 * test/ruby/test_object.rb: extend timeout. 4540 4541Tue Sep 9 09:02:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 4542 4543 * lib/mkmf.rb (MakeMakefile#pkg_config): append --cflags to also 4544 $CXXFLAGS, as they are often used by C++ compiler. 4545 [ruby-core:54532] [Bug #8315] 4546 4547Tue Sep 9 07:03:22 2014 Eric Wong <e@80x24.org> 4548 4549 * compile.c: remove needless SYM2ID <-> ID2SYM conversions 4550 [misc #10207] 4551 4552Tue Sep 9 05:48:42 2014 Eric Wong <e@80x24.org> 4553 4554 * symbol.c (rb_intern_cstr_without_pindown): check dsymbol on return 4555 This is not a complete fix for bug 10206, but seems to reduce 4556 that crash and also looks correct. 4557 4558Tue Sep 9 04:36:24 2014 Eric Wong <e@80x24.org> 4559 4560 * vm_core.h (rb_env_t): use flexible array 4561 This reduces allocations and speeds up the lambda calculus 4562 fizzbuzz (bm_app_lc_fizzbuzz.rb) benchmark [ruby-core:64858] 4563 * proc.c (get_local_variable_ptr): deconst to adjust for flex array 4564 * vm.c (env_mark, env_free, env_memsize): remove check for env->env 4565 * vm.c (env_alloc): single allocation for flex array 4566 * vm.c (vm_make_env_each): adjust env_alloc call 4567 4568Mon Sep 8 16:08:22 2014 Koichi Sasada <ko1@atdot.net> 4569 4570 * benchmark/bm_app_lc_fizzbuzz.rb: should skip output on benchmark. 4571 4572Mon Sep 8 16:04:02 2014 Koichi Sasada <ko1@atdot.net> 4573 4574 * benchmark/bm_app_lc_fizzbuzz.rb: `answer.to_a' does not return 4575 a string, but an array. 4576 4577Mon Sep 8 13:18:37 2014 Koichi Sasada <ko1@atdot.net> 4578 4579 * benchmark/bm_app_lc_fizzbuzz.rb: added. 4580 4581 This program is described closely in "Understanding Computation" 4582 chapter 6 by Tom Stuart. <http://computationbook.com/> 4583 4584 Japanese translation will be published soon. 4585 <http://www.oreilly.co.jp/books/9784873116976/> 4586 4587Mon Sep 8 12:01:39 2014 Koichi Sasada <ko1@atdot.net> 4588 4589 * gc.c: add incremental GC algorithm. [Feature #10137] 4590 4591 Please refer this ticket for details. 4592 4593 This change also introduces the following changes. 4594 4595 * Remove RGENGC_AGE2_PROMOTION and introduce object age (0 to 3). 4596 Age can be count with FL_PROMOTE0 and FL_PROMOTE1 flags in 4597 RBasic::flags (2 bit). Age == 3 objects become old objects. 4598 * WB_PROTECTED flag in RBasic to WB_UNPROTECTED bitmap. 4599 * LONG_LIVED bitmap to represent living objects while minor GCs 4600 It specifies (1) Old objects and (2) remembered shady objects. 4601 * Introduce rb_objspace_t::marked_objects which counts marked 4602 objects in current marking phase. marking count is needed to 4603 introduce incremental marking. 4604 * rename mark related function and sweep related function to 4605 gc_(marks|sweep)_(start|finish|step|rest|continue). 4606 * rename rgengc_report() to gc_report(). 4607 * Add obj_info() function to get cstr of object details. 4608 * Add MEASURE_LINE() macro to measure execution time of specific line. 4609 * and many small fixes. 4610 4611 * include/ruby/ruby.h: add flag USE_RINCGC. 4612 Now USE_RINCGC can be set only with USE_RGENGC. 4613 4614 * include/ruby/ruby.h: introduce FL_PROMOTED0 and add FL_PROMOTED1 4615 to count object age. 4616 4617 * include/ruby/ruby.h: rewrite write barriers for incremental marking. 4618 4619 * debug.c: catch up flag name changes. 4620 4621 * internal.h: add rb_gc_writebarrier_remember() instead of 4622 rb_gc_writebarrier_remember_promoted(). 4623 4624 * array.c (ary_memcpy0): use rb_gc_writebarrier_remember(). 4625 4626 * array.c (rb_ary_modify): ditto. 4627 4628 * hash.c (rb_hash_keys): ditto. 4629 4630 * hash.c (rb_hash_values): ditto. 4631 4632 * object.c (init_copy): use rb_copy_wb_protected_attribute() because 4633 FL_WB_PROTECTED is moved from RBasic::flags. 4634 4635 * test/objspace/test_objspace.rb: catch up ObjectSpace.dump() changes. 4636 4637Sun Sep 7 12:47:06 2014 Tanaka Akira <akr@fsij.org> 4638 4639 * process.c: PTHREAD_CANCEL_DISABLE is not defined on Android. 4640 4641Sat Sep 6 20:59:06 2014 Tanaka Akira <akr@fsij.org> 4642 4643 * process.c (has_privilege): The gid zero is not a privilege. 4644 4645Sat Sep 6 20:19:16 2014 Tanaka Akira <akr@fsij.org> 4646 4647 * process.c (struct child_handler_disabler_state): cancelstate field 4648 added. 4649 (disable_child_handler_before_fork): Record cancelstate. 4650 (disable_child_handler_fork_parent): Restore cancelstate. 4651 4652Sat Sep 6 19:27:10 2014 Tanaka Akira <akr@fsij.org> 4653 4654 * process.c (struct child_handler_disabler_state): Defined. 4655 4656Sat Sep 6 18:31:32 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4657 4658 * lib/rake.rb, lib/rake/*, test/rake/*: Update latest rake master(e47d023) 4659 4660Sat Sep 6 16:38:08 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 4661 4662 * ext/win32ole/win32ole_variant.c (ole_val2variant_err, 4663 ole_val2variantdata, Init_win32ole_variant): support VT_ERROR 4664 variant with error code. add WIN32OLE_VARIANT::NoParam. 4665 * test/win32ole/test_win32ole_variant.rb(test_c_noparam, 4666 test_vt_error_noparam): ditto. 4667 * ext/win32ole/win32ole.c: ditto. 4668 4669Sat Sep 6 11:08:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 4670 4671 * parse.y (arg_ambiguous_gen): fix warning message, "even" does 4672 not mean the number of spaces here. state the place to put a 4673 space and the operator. [ruby-core:64790] [Bug #10204] 4674 4675Sat Sep 6 08:44:40 2014 Zachary Scott <e@zzak.io> 4676 4677 * lib/rdoc/generator/template/darkfish/js/jquery.js: Backport 4678 rdoc/rdoc@74f60fcb04fee1778fe2694d1a0ea6513f8e67b7 4679 4680Sat Sep 6 08:10:44 2014 Eric Wong <e@80x24.org> 4681 4682 * test/ruby/test_io.rb (test_readpartial_locktmp): use IO#nonblock= 4683 Old fcntl invocation may drop necessary flags on some platforms. 4684 4685Sat Sep 6 07:46:51 2014 Eric Wong <e@80x24.org> 4686 4687 * test/ruby/test_io.rb (test_readpartial_locktmp): avoid EBADF 4688 [ruby-core:64773] [ruby-core:64775] 4689 4690Sat Sep 6 01:34:31 2014 Tanaka Akira <akr@fsij.org> 4691 4692 * process.c (rb_f_exec): Call before_exec_async_signal_safe and 4693 after_exec_async_signal_safe around rb_exec_async_signal_safe. 4694 (rb_exec_async_signal_safe): Don't call 4695 before_exec_async_signal_safe and after_exec_async_signal_safe. 4696 (rb_exec_without_timer_thread): Call before_exec and 4697 after_exec. 4698 (disable_child_handler_fork_child): Make SIGPIPE handler SIG_DFL. 4699 4700Sat Sep 6 00:49:41 2014 Tanaka Akira <akr@fsij.org> 4701 4702 * signal.c (ruby_signal): Don't set SA_SIGINFO for SIG_IGN and 4703 SIG_DFL. 4704 4705Fri Sep 5 21:45:33 2014 Tanaka Akira <akr@fsij.org> 4706 4707 * process.c (disable_child_handler_before_fork): New function. 4708 (disable_child_handler_fork_parent): Ditto. 4709 (disable_child_handler_fork_child): Ditto. 4710 (retry_fork_async_signal_safe): Call above functions to disable 4711 signal handlers in child process. 4712 4713Fri Sep 5 21:02:54 2014 Tanaka Akira <akr@fsij.org> 4714 4715 * process.c (handle_fork_error): Make try_gc_p argument volatile to 4716 suppress "clobbered" warning. 4717 4718Fri Sep 5 20:48:06 2014 Tanaka Akira <akr@fsij.org> 4719 4720 * process.c (handle_fork_error): Don't need state_p argument. 4721 4722Fri Sep 5 20:35:52 2014 Tanaka Akira <akr@fsij.org> 4723 4724 * process.c (has_privilege): Fix a return value. 4725 4726Fri Sep 5 19:00:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4727 4728 * lib/shellwords.rb: proofreading documentation. 4729 [Bug #10155][ruby-core:64471] 4730 4731Fri Sep 5 18:34:33 2014 Laurent Arnoud <laurent@spkdev.net> 4732 4733 * test/csv/test_row.rb: Added some missing tests in CSV. 4734 [fix GH-710] 4735 * test/csv/test_table.rb: ditto. 4736 4737Fri Sep 5 12:57:52 2014 Tanaka Akira <akr@fsij.org> 4738 4739 * process.c (has_privilege): Refine uid/gid check. 4740 4741Fri Sep 5 12:40:55 2014 Tanaka Akira <akr@fsij.org> 4742 4743 * configure.in: Check sys/id.h, getuidx and getgidx for AIX. 4744 4745 * process.c (getresuid): Defined for AIX. 4746 (getresgid): Ditto 4747 AIX don't have getresuid/getresgid but getuidx/getgidx. 4748 4749Fri Sep 5 12:28:21 2014 Tanaka Akira <akr@fsij.org> 4750 4751 * process.c (has_privilege): Fix assignments. 4752 4753Fri Sep 5 11:10:13 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4754 4755 * lib/rdoc/generator/pot/po.rb: fixed broken tests for trailing whitespace. 4756 * test/rdoc/test_rdoc_generator_pot.rb: ditto. 4757 * test/rdoc/test_rdoc_generator_pot_po.rb: ditto. 4758 4759Fri Sep 5 10:41:07 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4760 4761 * test/rdoc/test_rdoc_rdoc.rb (TestRDocRDoc#test_parse_file_encoding): 4762 typofix. 4763 4764Fri Sep 5 10:39:14 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4765 4766 * lib/rdoc.rb, lib/rdoc, test/rdoc: Update to RDoc 4.2.0.alpha(313287) 4767 4768Fri Sep 5 06:04:22 2014 Eric Wong <e@80x24.org> 4769 4770 * vm.c: remove unused USE_THREAD_RECYCLE [misc #10198] 4771 4772Fri Sep 5 00:29:08 2014 Tanaka Akira <akr@fsij.org> 4773 4774 * configure.in (dirfd): Check function. 4775 4776 * dir.c (dir_fileno): New method. 4777 [ruby-dev:48265] [Feature #9880] 4778 4779Thu Sep 4 23:39:52 2014 Tanaka Akira <akr@fsij.org> 4780 4781 * process.c (has_privilege): New function. 4782 (retry_fork_async_signal_safe): Don't use vfork() for privileged 4783 process. 4784 4785 * configure.in (getresuid): Check function. 4786 (getresgid): Ditto. 4787 4788Thu Sep 4 20:22:14 2014 Laurent Arnoud <laurent@spkdev.net> 4789 4790 * test/pathname/test_pathname.rb: added testcase for Pathname#mountpoint?. 4791 [fix GH-709] 4792 4793Thu Sep 4 20:09:21 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4794 4795 * symbian/*: removed Symbian support. 4796 [Feature #10199][ruby-core:64725] 4797 * dln.c: ditto. 4798 * include/ruby/defines.h: ditto. 4799 * thread_pthread.c: ditto. 4800 * vm.c: ditto. 4801 4802Thu Sep 4 17:44:40 2014 Koichi Sasada <ko1@atdot.net> 4803 4804 * dir.c (glob_helper): use #ifdef instead of #if. 4805 gcc's -Wundef option shows warning for undefined macro. 4806 4807 * numeric.c (flo_is_finite_p): ditto. 4808 4809 * vm_dump.c (rb_vmdebug_thread_dump_state): ditto. 4810 4811 * vm_core.h: define VM_DEBUG_VERIFY_METHOD_CACHE to 0. 4812 4813Thu Sep 4 03:57:46 2014 Eric Wong <e@80x24.org> 4814 4815 * man/ruby.1: spelling fix ("bellow" => "below") [ci-skip] 4816 4817Thu Sep 4 03:52:16 2014 Eric Wong <e@80x24.org> 4818 4819 * man/ruby.1: add trailing slash to URLs [ci-skip] 4820 4821Wed Sep 3 19:10:28 2014 Tanaka Akira <akr@fsij.org> 4822 4823 * process.c (before_fork_ruby): Renamed from before_fork. 4824 (after_fork_ruby): Renamed from after_fork. 4825 4826Wed Sep 3 18:56:05 2014 Tanaka Akira <akr@fsij.org> 4827 4828 * process.c (forked_child): Removed. 4829 4830Wed Sep 3 16:56:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 4831 4832 * object.c (rb_obj_copy_ivar): allocate no memory for empty 4833 instance variables. [ruby-core:64700] [Bug #10191] 4834 4835Wed Sep 3 12:05:17 2014 Tanaka Akira <akr@fsij.org> 4836 4837 * process.c (retry_fork_async_signal_safe): Use vfork() if available. 4838 vfork() is still faster than fork() especially when the parent 4839 process uses big memory. 4840 4841 ruby -rbenchmark -e 'a = "a" * 1_000_000_000; puts Benchmark.measure { system("true") }' 4842 fork: 0.000000 0.010000 0.010000 ( 0.014968) 4843 vfork: 0.000000 0.000000 0.000000 ( 0.000912) 4844 on Debian sid. 4845 4846Wed Sep 3 11:33:08 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4847 4848 * test/openssl/test_pkey_rsa.rb (OpenSSL#test_sign_verify_memory_leak): 4849 added timeout into testcase for low performance environment. 4850 [Bug #9984][ruby-core:63367] 4851 4852Wed Sep 3 07:50:15 2014 Tanaka Akira <akr@fsij.org> 4853 4854 * configure.in: Use AC_FUNC_FORK. 4855 4856 * io.c: Use HAVE_WORKING_FORK instead of HAVE_FORK. 4857 4858 * process.c: Ditto. 4859 4860Wed Sep 3 00:12:44 2014 Tanaka Akira <akr@fsij.org> 4861 4862 * process.c (retry_fork_async_signal_safe): Don't return on in child 4863 process. 4864 4865Tue Sep 2 23:47:35 2014 Tanaka Akira <akr@fsij.org> 4866 4867 * process.c (retry_fork_async_signal_safe): Specialized version of 4868 retry_fork respect to rb_fork_async_signal_safe. 4869 (retry_fork_ruby): Specialized version of retry_fork respect to 4870 rb_fork_ruby. 4871 (rb_fork_ruby): Removed. 4872 4873Tue Sep 2 23:26:26 2014 Tanaka Akira <akr@fsij.org> 4874 4875 * process.c (send_child_error): Simplified. 4876 (recv_child_error): Ditto. 4877 4878Tue Sep 2 22:56:25 2014 Tanaka Akira <akr@fsij.org> 4879 4880 * process.c (rb_fork_async_signal_safe): Inline rb_fork_internal. 4881 (rb_fork_ruby): Ditto. 4882 (rb_fork_internal): Removed. 4883 (chfunc_protect): Removed. 4884 4885Tue Sep 2 22:43:52 2014 Tanaka Akira <akr@fsij.org> 4886 4887 * test/ruby/test_io.rb (test_new_with_block): Set autoclose to avoid 4888 EBADF. 4889 4890Tue Sep 2 22:01:51 2014 Kouhei Sutou <kou@cozmixng.org> 4891 4892 * Makefile.in (update-coverage): Remove a never executed line. 4893 4894Tue Sep 2 19:48:26 2014 Tanaka Akira <akr@fsij.org> 4895 4896 * process.c (handle_fork_error): Extracted from retry_fork. 4897 4898Tue Sep 2 17:02:53 2014 Vit Ondruch <v.ondruch@tiscali.cz> 4899 4900 * tool/rbinstall.rb: fixed error of local installation. 4901 [Bug #10192][ruby-core:64702] 4902 4903Tue Sep 2 16:58:03 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4904 4905 * test/runner.rb: reporting test coverage for test-all with COVERAGE env. 4906 [Feature #10189][ruby-core:64681][fix GH-708] 4907 * Makefile.in: added task for coverage report. 4908 * common.mk: added definition of forked simplecov url. 4909 * .gitignore: ignored coverage directory. 4910 4911Mon Sep 1 20:11:02 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 4912 4913 * ext/win32ole/win32ole.c (rbtime2vtdate): try to convert millisecond 4914 of Time object to millisecond of VT_DATE VARIANT. 4915 * test/win32ole/test_win32ole_variant.rb 4916 (test_conversion_time2date_with_msec): ditto. 4917 4918Sun Aug 31 16:58:49 2014 Tanaka Akira <akr@fsij.org> 4919 4920 * lib/benchmark.rb: Fix a syntax error. 4921 4922Sun Aug 31 08:46:44 2014 Eric Wong <e@80x24.org> 4923 4924 * ext/zlib/zlib.c (gzfile_reset): preserve ZSTREAM_FLAG_GZFILE 4925 [Bug #10101] 4926 4927 * test/zlib/test_zlib.rb (test_rewind): test each_byte 4928 4929Sat Aug 30 19:22:47 2014 Eric Wong <e@80x24.org> 4930 4931 * symbol.c (rb_sym2id): do not return garbage object 4932 4933Sat Aug 30 06:39:48 2014 Aaron Patterson <aaron@tenderlovemaking.com> 4934 4935 * ext/psych/lib/psych/visitors/yaml_tree.rb: fix NameError dumping and 4936 loading. Fixes GH #85. Thanks @brentdax for the patch! 4937 * test/psych/test_exception.rb: test for fix 4938 4939Sat Aug 30 06:23:40 2014 Aaron Patterson <aaron@tenderlovemaking.com> 4940 4941 * ext/psych/lib/psych/scalar_scanner.rb: fix loading strings that 4942 look like integers but have a newline. Fixes GH #189 4943 * test/psych/test_string.rb: test for fix 4944 4945Sat Aug 30 06:10:39 2014 Aaron Patterson <aaron@tenderlovemaking.com> 4946 4947 * ext/psych/lib/psych/visitors/to_ruby.rb: merge keys with a hash 4948 should merge the hash in to the parent. 4949 * test/psych/test_merge_keys.rb: test for change. Fixes GH #202 4950 4951Sat Aug 30 06:00:26 2014 Aaron Patterson <aaron@tenderlovemaking.com> 4952 4953 * ext/psych/lib/psych/visitors/to_ruby.rb: quoted "<<" strings 4954 should not be treated as merge keys. 4955 * ext/psych/lib/psych/visitors/yaml_tree.rb: hashes with keys 4956 containing "<<" should roundtrip. 4957 * test/psych/test_merge_keys.rb: test for change. Fixes GH #203 4958 4959Fri Aug 29 17:56:44 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4960 4961 * test/net/imap/test_imap_response_parser.rb: removed needless code. 4962 4963Fri Aug 29 17:36:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 4964 4965 * test/rinda/test_rinda.rb: removed useless assignment variables. 4966 * test/rss/rss-assertions.rb: ditto. 4967 * test/rss/test_maker_itunes.rb: ditto. 4968 4969Fri Aug 29 16:18:26 2014 Eric Wong <e@80x24.org> 4970 4971 * string.c: revert part of r47311, add rb_vm_fstring_table(), 4972 remove vm_core.h dependency. [ruby-core:64627] 4973 4974Fri Aug 29 15:17:13 2014 Eric Wong <e@80x24.org> 4975 4976 * string.c: remove static frozen_strings 4977 * string.c (Init_frozen_strings): new function 4978 * string.c (rb_fstring): remove check for frozen strings, 4979 use per-VM table 4980 * string.c (rb_str_free): use per-VM table 4981 * string.c (Init_String): use per-VM table 4982 * vm_core.h (rb_vm_t): add frozen_strings table 4983 * internal.h (Init_frozen_strings): new function prototype 4984 * eval.c (ruby_setup): call Init_frozen_strings 4985 [Feature #10182] 4986 4987Wed Aug 27 23:10:24 2014 Masaki Matsushita <glass.saga@gmail.com> 4988 4989 * lib/tempfile.rb: remove "require 'thread'". its features are no 4990 longer used. 4991 4992Wed Aug 27 21:19:40 2014 gogo tanaka <mail@tanakakazuki.com> 4993 4994 * lib/drb/acl.rb: Removed meaningless #to_s methods in interpolation. 4995 [Feature #10174][ruby-core:64584] 4996 * lib/erb.rb: ditto. 4997 * lib/observer.rb: ditto. 4998 * lib/rake/invocation_chain.rb: ditto. 4999 * lib/rubygems/command_manager.rb: ditto. 5000 * lib/rubygems/config_file.rb: ditto. 5001 * lib/uri/common.rb: ditto. 5002 5003Wed Aug 27 21:08:20 2014 gogo tanaka <mail@tanakakazuki.com> 5004 5005 * lib/drb/drb.rb: use attr_reader instead of Module#attr. 5006 [Feature #10172][ruby-core:64582] 5007 * lib/irb/ruby-token.rb: ditto. 5008 * lib/net/telnet.rb: ditto. 5009 * lib/rdoc/ruby_token.rb: ditto. 5010 * lib/thwait.rb: ditto. 5011 5012Wed Aug 27 19:52:33 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5013 5014 * ext/win32ole/win32ole.c (vtdate2rbtime): try to convert millisecond 5015 of VT_DATE VARIANT to nsec of Time object. 5016 * test/win32ole/test_win32ole_variant.rb 5017 (test_conversion_dbl2date_with_msec): ditto. 5018 5019Wed Aug 27 09:57:29 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5020 5021 * test/ruby/test_complex.rb: removed unreachable code. 5022 * test/ruby/test_rational.rb: ditto. 5023 5024Wed Aug 27 07:59:17 2014 Eric Wong <e@80x24.org> 5025 5026 * compile.c (iseq_set_sequence): check for multiplication overflow 5027 5028Tue Aug 26 22:07:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5029 5030 * test/ruby/test_complex.rb: cherry-picked working assertions from r47251. 5031 * test/ruby/test_rational.rb: cherry-picked working assertions from r47263. 5032 5033Tue Aug 26 21:07:56 2014 gogo tanaka <mail@tanakakazuki.com> 5034 5035 * lib/mathn.rb (Fixnum#**, Bignum#**, Float#**, Rational#**): 5036 remove as these are now built-in. [ruby-core:63973] [Bug #10086] 5037 5038Tue Aug 26 20:46:55 2014 Tanaka Akira <akr@fsij.org> 5039 5040 * time.c (rb_time_unmagnify_to_float): Avoid double rounding. 5041 Reported by Tsuyoshi Sawada. 5042 https://bugs.ruby-lang.org/issues/10135#note-1 5043 5044Tue Aug 26 17:12:47 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5045 5046 * io.c (io_close): ignore only "closed stream" IOError and 5047 NoMethodError, do not swallow other exceptions at the end of 5048 block. [ruby-core:64463] [Bug #10153] 5049 5050Tue Aug 26 13:46:33 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 5051 5052 * template/fake.rb.in: fix failed to make install when @srcdir@ is 5053 absolute path. 5054 5055Tue Aug 26 13:43:50 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5056 5057 * test/ruby/test_range.rb: added workaround for VERBOSE message. 5058 5059Tue Aug 26 12:38:02 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5060 5061 * test/test_mathn.rb: added workaround for VERBOSE messages. 5062 5063Tue Aug 26 11:44:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5064 5065 * lib/shell/process-controller.rb: removed commented-out code. 5066 5067Tue Aug 26 11:39:01 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5068 5069 * lib/thwait.rb (ThreadsWait): removed needless constant. 5070 5071Tue Aug 26 09:27:10 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5072 5073 * lib/mathn.rb: mathn library is deprecated on ruby 2.2. 5074 [Feature #10169][ruby-core:64553] 5075 5076Tue Aug 26 09:25:03 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5077 5078 * lib/mathn.rb: removed commented-out code. 5079 5080Mon Aug 25 20:15:50 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5081 5082 * ext/win32ole/win32ole.c(fole_s_connect, fole_initialize): raise a 5083 security error with the tainted string object. 5084 * ext/win32ole/win32ole_event.c(ev_advise): ditto. 5085 * test/win32ole/test_win32ole.rb(test_s_new_exc_svr_tainted, 5086 test_s_new_exc_host_tainted): ditto. 5087 * test/win32ole/test_win32ole_event.rb(test_s_new_exc_tainted): ditto. 5088 5089Mon Aug 25 12:56:54 2014 Ivan Korunkov <ivankorunkov@ya.ru> 5090 5091 * lib/logger.rb (format_datetime): use "%6N" to show microsecond. 5092 [Fix GH-704] 5093 5094Mon Aug 25 11:02:07 2014 Eric Wong <e@80x24.org> 5095 5096 * vm_core.h (rb_iseq_location_t): change first_lineno type to VALUE 5097 * iseq.c (rb_iseq_build_for_ruby2cext): update based on argument 5098 5099Sun Aug 24 16:14:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5100 5101 * lib/e2mmap.rb: remove needless instance variables. 5102 * lib/irb.rb: ditto. 5103 * lib/irb/**/*.rb: ditto. 5104 * lib/shell.rb: ditto. 5105 5106Sun Aug 24 12:44:26 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5107 5108 * test/ruby/test_complex.rb: removed needless conditions. 5109 * test/ruby/test_rational.rb: ditto. 5110 5111Sun Aug 24 11:47:39 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5112 5113 * test/ruby/test_rational.rb: fixed indent. 5114 5115Sun Aug 24 11:44:11 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5116 5117 * test/ruby/test_rational.rb: remove commented-out code. 5118 5119Sun Aug 24 11:09:29 2014 Eric Wong <e@80x24.org> 5120 5121 * lib/benchmark.rb (measure): reduce allocations as in r47260 5122 5123Sun Aug 24 10:35:54 2014 Pete Higgins <pete@peterhiggins.org> 5124 5125 * lib/benchmark.rb (module Benchmark): define BENCHMARK_CLOCK 5126 (realtime): use Process.clock_gettime(BENCHMARK_CLOCK) 5127 Reduces allocations to improve performance [Feature #10165] 5128 5129 * test/benchmark/test_benchmark.rb (test_realtime_output): new test 5130 5131Fri Aug 22 20:23:54 2014 Koichi Sasada <ko1@atdot.net> 5132 5133 * string.c (rb_fstring): fix condition (easy to cause infinite loop!). 5134 5135Fri Aug 22 20:07:43 2014 Koichi Sasada <ko1@atdot.net> 5136 5137 * string.c (rb_fstring, fstr_update_callback): simply delete garbage 5138 key first. 5139 5140 Garbage keys can be swept by lazy sweeping invoked by creating new 5141 fstring. So that simply do: 5142 (1) delete garbage key and return `fstr_update_callback' immediately 5143 (2) try again `fstr_update_callback()' to create a new fstr. 5144 5145 This bug can be cause memory corruption, reported by 5146 http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20140821T220302Z.fail.html.gz 5147 5148Fri Aug 22 19:30:39 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5149 5150 * test/ruby/test_complex.rb: removed commented-out code. 5151 5152Fri Aug 22 19:25:28 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5153 5154 * test/ruby/test_complex.rb: fixed broken tests. Math is not 5155 compatible CMath now. 5156 5157Fri Aug 22 15:36:09 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5158 5159 * common.mk (Doxyfile): revert r43888, not to require preinstalled 5160 ruby. [ruby-core:64488] [Bug #10161] 5161 5162Fri Aug 22 12:32:15 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5163 5164 * lib/shell.rb: removed commented-out code. 5165 * lib/shell/builtin-command.rb: ditto. 5166 * lib/shell/command-processor.rb: ditto. 5167 5168Fri Aug 22 12:21:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5169 5170 * lib/complex.rb: removed deprecated library. 5171 * lib/rational.rb: ditto. 5172 5173Fri Aug 22 11:38:49 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5174 5175 * lib/prettyprint.rb: removed PrettyPrint#first? 5176 because it is obsoleted method since Ruby 1.8.2 5177 5178Thu Aug 21 17:10:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5179 5180 * win32/win32.c (constat_attr): manage reverse video internally 5181 since Windows console window does not manage it. based on the 5182 patch by white leaf in [ruby-dev:48483]. [Bug #10158] 5183 5184Thu Aug 21 14:45:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5185 5186 * lib/e2mmap.rb: removed commented-out code. 5187 5188Thu Aug 21 13:23:34 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5189 5190 * lib/rinda/ring.rb: split executable code into sample directory. 5191 * sample/rinda-ring.rb: ditto. 5192 5193Thu Aug 21 13:21:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5194 5195 * lib/drb/acl.rb: split executable code into sample directory. 5196 * sample/drb/acl.rb: ditto. 5197 5198Thu Aug 21 12:55:35 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5199 5200 * .gitignore: ignored temporary file for Changelog. 5201 http://mkosaki.blog46.fc2.com/blog-entry-1284.html 5202 5203Thu Aug 21 12:40:22 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5204 5205 * lib/net/imap.rb: split executable code into sample directory. 5206 * sample/net-imap.rb: ditto. 5207 5208Thu Aug 21 12:23:56 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5209 5210 * lib/net/imap.rb: removed commented-out code. 5211 5212Wed Aug 20 17:27:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5213 5214 * configure.in (RUBY_TRY_CFLAGS, RUBY_TRY_LDFLAGS), 5215 (RUBY_CHECK_BUILTIN_SETJMP, RUBY_SETJMP_TYPE), 5216 (RUBY_STACK_GROW_DIRECTION): quote defun names, for some 5217 versions of autoconf possibly. [ruby-core:64473] [Bug #10156] 5218 5219Tue Aug 19 22:28:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5220 5221 * sprintf.c (rb_str_format): fix condition to round. 5222 [ruby-core:64454] [Bug #10151] 5223 5224Tue Aug 19 22:22:45 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5225 5226 * enc/trans/euckr-tbl.rb (EUCKR_TO_UCS_TBL): add missing euro and 5227 registered signs. [ruby-core:64452] [Bug #10149] 5228 5229Tue Aug 19 13:59:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5230 5231 * compar.c (rb_cmperr): preserve encodings of arguments in the 5232 message. 5233 5234Tue Aug 19 10:13:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5235 5236 * ext/thread/thread.c (get_array): check instance variables are 5237 initialized properly. [ruby-core:63826][Bug #10062] 5238 5239Mon Aug 18 17:06:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5240 5241 * sprintf.c (rb_str_format): support rational 'f' format. 5242 [ruby-core:64382] [Bug #10136] 5243 5244Mon Aug 18 08:03:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5245 5246 * spec/default.mspec: use 2.2 definition. 5247 5248Sun Aug 17 19:41:40 2014 Kazuki Tsujimoto <kazuki@callcc.net> 5249 5250 * gc.c (obj_memsize_of): don't calculate memsize of T_NODE 5251 when called from check_gen_consistency. It fixes segmentation 5252 fault on RGENGC_CHECK_MODE >= 1 introduced by r47188. 5253 5254Sun Aug 17 17:08:12 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5255 5256 * ext/win32ole/win32ole.c (ole_invoke): use RHASH_SIZE instead of 5257 calling Hash#length method. 5258 5259Sat Aug 16 19:32:06 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5260 5261 * ext/win32ole/win32ole_event.c (evs_length): use RARRAY_LEN instead 5262 of calling Array#length method. 5263 5264Sat Aug 16 10:20:17 2014 Eric Wong <e@80x24.org> 5265 5266 * time.c (time_timespec): fix tv_nsec overflow 5267 [Bug #10144] 5268 5269Fri Aug 15 20:34:17 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5270 5271 * ext/win32ole/win32ole.c: separate WIN32OLE_EVENT src from 5272 win32ole.c. 5273 * ext/win32ole/win32ole.h: ditto. 5274 * ext/win32ole/win32ole_event.c: ditto. 5275 * ext/win32ole/win32ole_event.h: ditto. 5276 * ext/win32ole/depend: ditto. 5277 5278Fri Aug 15 19:38:00 2014 Koichi Sasada <ko1@atdot.net> 5279 5280 * iseq.c (rb_iseq_clone): Should not insert write barrier from 5281 non-RVALUE data (to non-RVALUE data, of course). 5282 5283 Ruby 2.1 also has a same problem. 5284 5285Fri Aug 15 19:34:33 2014 Koichi Sasada <ko1@atdot.net> 5286 5287 * string.c (setup_fake_str): fake strings should not set class by 5288 RBASIC_SET_CLASS() because it insert write barriers to fake 5289 (non-RVALUE) structure. 5290 5291 It can cause unexpected behaviour. 5292 5293 Ruby 2.1 also have a same problem (setup_fake_str() in parse.y). 5294 5295 * symbol.c (setup_fake_str): ditto. 5296 5297Fri Aug 15 19:27:25 2014 Koichi Sasada <ko1@atdot.net> 5298 5299 * array.c (rb_ary_tmp_new_fill): added. 5300 This function creates internal use only array (which is completely 5301 hided by ObjectSpace.each_object) with filling nil. 5302 5303 Otherwise, it can be includes strange VALUEs. 5304 5305 * internal.h: added. 5306 5307 * node.h: use rb_ary_tmp_new_fill() for MEMO. 5308 5309Fri Aug 15 10:13:37 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5310 5311 * lib/gserver.rb: removed unmaintained code. 5312 [ruby-core:40313][Feature #5480] 5313 * lib/xmlrpc/httpserver.rb: ditto. 5314 5315Fri Aug 15 09:22:12 2014 Eric Wong <e@80x24.org> 5316 5317 * vm_core.h (rb_thread_struct): reorder to pack 5318 * cont.c (rb_context_struct, rb_fiber_struct): ditto 5319 On x86-64, these changes reduces: 5320 rb_thread_struct to 1000 bytes (from 1016) 5321 rb_context_struct to 1288 bytes (from 1312) 5322 rb_fiber_struct to 2272 bytes (from 2304) 5323 5324Fri Aug 15 09:06:31 2014 Eric Wong <e@80x24.org> 5325 5326 * thread_pthread.h: define RB_NATIVETHREAD_LOCK_INIT and 5327 RB_NATIVETHREAD_COND_INIT macros 5328 5329 * thread_pthread.c (native_mutex_lock, native_mutex_unlock, 5330 native_mutex_trylock, native_mutex_initialize, 5331 native_mutex_destroy, native_cond_wait): 5332 use rb_nativethread_lock_t instead of pthread_mutex_t 5333 [Feature #10134] 5334 5335 * thread_pthread.c (native_mutex_debug): make argument type-agnostic 5336 to avoid later cast. 5337 5338 * thread_pthread.c (register_cached_thread_and_wait): 5339 replace PTHREAD_COND_INITIALIZER with RB_NATIVETHREAD_COND_INIT, 5340 use native_mutex_{lock,unlock} 5341 5342 * thread_pthread.c (use_cached_thread): 5343 use native_mutex_{lock,unlock} 5344 5345 * thread_pthread.c (native_sleep): 5346 use rb_nativethread_lock_t to match th->interrupt_lock, 5347 use native_mutex_{lock,unlock} 5348 5349 * thread_pthread.c (timer_thread_lock): use rb_nativethread_lock_t type 5350 5351Fri Aug 15 08:10:29 2014 Eric Wong <e@80x24.org> 5352 5353 * cont.c (cont_mark): fix typo in unused path [ci skip] 5354 5355Fri Aug 15 06:00:56 2014 Eric Wong <e@80x24.org> 5356 5357 * vm.c (rb_thread_mark): update comment about marking `me' 5358 [ruby-core:64340] [ruby-core:64341] 5359 5360Fri Aug 15 05:53:59 2014 Eric Wong <e@80x24.org> 5361 5362 * README.EXT: preliminary documentation for RB_GC_GUARD 5363 [Bug #10100] [ruby-core:60741] 5364 5365Thu Aug 14 00:26:19 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5366 5367 * ext/win32ole/win32ole.c: separate WIN32OLE_RECORD src from 5368 win32ole.c 5369 * ext/win32ole/win32ole.h: ditto. 5370 * ext/win32ole/win32ole_record.c: ditto. 5371 * ext/win32ole/win32ole_record.h: ditto. 5372 * ext/win32ole/depend: ditto. 5373 5374Wed Aug 13 21:41:04 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5375 5376 * ext/win32ole/win32ole.c: separate WIN32OLE_VARIANT src from 5377 win32ole.c. 5378 * ext/win32ole/win32ole.h: ditto. 5379 * ext/win32ole/win32ole_variant.c: ditto. 5380 * ext/win32ole/win32ole_variant.c: ditto. 5381 * ext/win32ole/depend: ditto. 5382 5383Wed Aug 13 20:09:37 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5384 5385 * ext/win32ole/win32ole.c: remove unused variable. 5386 5387Wed Aug 13 19:31:27 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5388 5389 * ext/win32ole/win32ole.c (ole_search_handler_method, rescue_callback, 5390 folerecord_inspect): use PRIsVALUE in rb_sprintf. 5391 5392 * ext/win32ole/win32ole_param.c (foleparam_inspect): ditto. 5393 5394 * ext/win32ole/win32ole_variable.c (folevariable_inspect): use 5395 PRIsVALUE in rb_sprintf, use rb_inspect. 5396 5397Wed Aug 13 11:54:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5398 5399 * lib/irb/completion.rb: reverted r47163. 5400 because another case can't be show completion target. 5401 5402Wed Aug 13 11:17:00 2014 Shimpei Makimoto <github@makimoto.org> 5403 5404 * lib/irb.rb: Prevent irb from crashing when exception with 5405 nil backtrace is raised. 5406 [fix GH-434][ruby-core:58078][Bug #9063] 5407 * test/irb/test_raise_no_backtrace_exception.rb: ditto. 5408 5409Wed Aug 13 11:08:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5410 5411 * lib/irb/completion.rb: fixed broken completion list with 5412 String including spaces. Contributed from @dunric. [fix GH-465] 5413 5414Wed Aug 13 00:07:01 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5415 5416 * ext/win32ole/win32ole.c: separate WIN32OLE_PARAM src from win32ole.c 5417 * ext/win32ole/win32ole.h: ditto. 5418 * ext/win32ole/win32ole_param.c: ditto. 5419 * ext/win32ole/win32ole_param.h: ditto. 5420 * ext/win32ole/depend: ditto. 5421 5422Tue Aug 12 23:17:47 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5423 5424 * ext/win32ole/win32ole.c: refactoring. move some methods 5425 into win32ole_type.c / win32ole_method.c 5426 * ext/win32ole/win32ole.h: ditto. 5427 * ext/win32ole/win32ole_method.c: ditto. 5428 * ext/win32ole/win32ole_method.h: ditto. 5429 * ext/win32ole/win32ole_type.h: ditto. 5430 * ext/win32ole/win32ole_type.h: ditto. 5431 5432Tue Aug 12 22:59:48 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5433 5434 * ext/win32ole/win32ole.c: refactoring. move 5435 ole_typelib_from_itypeinfo into win32ole_typelib.c. 5436 * ext/win32ole/win32ole.h: ditto. 5437 * ext/win32ole/win32ole_typelib.h: ditto. 5438 * ext/win32ole/win32ole_typelib.h: ditto. 5439 5440Tue Aug 12 21:49:40 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5441 5442 * ext/win32ole/win32ole.c (ole_create_dcom): use the converted 5443 result if the argument can be converted to a string, to get rid 5444 of invalid access. Thanks to nobu. [ruby-dev:48467] [Bug #10127] 5445 5446Tue Aug 12 14:22:58 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5447 5448 * configure.in: ignored working directory same as prefix value. 5449 [ruby-core:54999] [Bug #8409] 5450 5451Tue Aug 12 13:34:25 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5452 5453 * lib/fileutils.rb: enable to remove with non-owner directory. 5454 [ruby-dev:45976] [Bug #6756] 5455 * test/fileutils/test_fileutils.rb: add testcase for #6756. 5456 5457Tue Aug 12 12:57:28 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5458 5459 * vm_exec.c: improve performance in ppc64 arch. 5460 [ruby-core:63437] [Feature #9997] 5461 5462Tue Aug 12 12:14:52 2014 Akira Matsuda <ronnie@dio.jp> 5463 5464 * lib/fileutils.rb: fix typo. 5465 [ruby-dev:47831] [Bug #9180] 5466 5467Tue Aug 12 10:10:42 2014 Eric Wong <e@80x24.org> 5468 5469 * vm_method.c (release_method_definition): use rb_free_method_entry 5470 5471Tue Aug 12 06:16:09 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5472 5473 * ext/win32ole/win32ole.c: separate WIN32OLE_METHOD src from 5474 win32ole.c. 5475 * ext/win32ole/win32ole.h: ditto. 5476 * ext/win32ole/win32ole_method.c: ditto. 5477 * ext/win32ole/win32ole_method.h: ditto. 5478 * ext/win32ole/depend: ditto. 5479 5480Mon Aug 11 22:19:15 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5481 5482 * ext/win32ole/win32ole_variable.c (folevariable_inspect): refactoring. 5483 5484Mon Aug 11 20:47:27 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5485 5486 * ext/win32ole/win32ole.c: separate WIN32OLE_VARIABLE src from 5487 win32ole.c 5488 * ext/win32ole/win32ole.h: ditto. 5489 * ext/win32ole/win32ole_variable.c: ditto. 5490 * ext/win32ole/win32ole_variable.h: ditto. 5491 * ext/win32ole/depend: ditto. 5492 5493Mon Aug 11 16:17:21 2014 Tony Miller <mcfiredrill@gmail.com> 5494 5495 * dir.c (rb_dir_exists_p): [DOC] Document that Dir.exists? is 5496 deprecated. [ruby-core:64135] [Bug #10102] 5497 5498Mon Aug 11 11:26:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5499 5500 * lib/tempfile.rb: start rdoc parsing inside singleton class 5501 definition to include the document there. 5502 [ruby-core:64157] [Bug #10105] 5503 5504Sun Aug 10 12:22:43 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5505 5506 * ext/win32ole/win32ole_type.c: refactoring. 5507 5508Sun Aug 10 10:34:00 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5509 5510 * lib/cgi/session/pstore.rb: separated sample code. 5511 * lib/open3.rb: ditto. 5512 5513Sun Aug 10 10:03:24 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5514 5515 * lib/irb/ext/multi-irb.rb: removed commented-out code. 5516 5517Sat Aug 9 11:02:07 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5518 5519 * lib/irb.rb: removed commented-out code. 5520 * lib/irb/**/*.rb: ditto. 5521 5522Sat Aug 9 10:35:30 2014 Laurent Arnoud <laurent@spkdev.net> 5523 5524 * lib/cmath.rb: fixed indent. [fix GH-696] 5525 * lib/drb/ssl.rb: ditto. 5526 * lib/irb/**/*.rb: ditto. 5527 5528Sat Aug 9 10:28:03 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5529 5530 * test/minitest/test_minitest_unit.rb: removed obsoleted condition 5531 for Ruby 1.8. 5532 * test/ruby/test_time_tz.rb: ditto. 5533 5534Sat Aug 9 10:18:00 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5535 5536 * test/cgi/test_cgi_core.rb: removed obsoleted condition for Ruby 1.8. 5537 * test/cgi/test_cgi_header.rb: ditto. 5538 * test/cgi/test_cgi_multipart.rb: ditto. 5539 * test/cgi/test_cgi_tag_helper.rb: ditto. 5540 5541Sat Aug 9 00:34:37 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5542 5543 * ext/win32ole/win32ole.c: separate WIN32OLE_TYPE src from win32ole.c. 5544 * ext/win32ole/win32ole.h: ditto. 5545 * ext/win32ole/win32ole_type.c: ditto. 5546 * ext/win32ole/win32ole_type.h: ditto. 5547 * ext/win32ole/depend: ditto. 5548 5549Fri Aug 8 01:53:37 2014 Masaki Matsushita <glass.saga@gmail.com> 5550 5551 * lib/securerandom.rb: use OpenSSL::BN for performance improvement. 5552 5553 * benchmark/bm_securerandom.rb: benchmark script. 5554 5555Fri Aug 8 17:19:57 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5556 5557 * lib/open-uri.rb: remove needless condition for old ruby version. 5558 * test/open-uri/test_open-uri.rb: ditto. 5559 5560Fri Aug 8 16:40:59 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5561 5562 * lib/irb/init.rb: removed unreachable code. 5563 5564Fri Aug 8 16:34:22 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5565 5566 * lib/drb/drb.rb: removed unreachable code. 5567 5568Fri Aug 8 14:33:49 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5569 5570 * lib/webrick/httpproxy.rb: remove needless condition 5571 for old ruby version. 5572 5573Fri Aug 8 01:07:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5574 5575 * parse.y (parser_yylex): fix invalid char in eval, should raise 5576 an syntax error too, as well as directly coded. 5577 [ruby-core:64243] [Bug #10117] 5578 5579Thu Aug 7 23:25:29 2014 Masaki Matsushita <glass.saga@gmail.com> 5580 5581 * lib/open3.rb: avoid unnecessary write if stdin_data is empty. 5582 5583Thu Aug 7 21:42:49 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5584 5585 * ext/win32ole/win32ole_typelib.c (foletypelib_version): return 5586 version string. 5587 5588 * test/win32ole/test_win32ole_typelib.rb (test_version): ditto. 5589 5590Thu Aug 7 15:13:13 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5591 5592 * lib/cgi.rb: remove needless condition for old ruby version. 5593 5594Thu Aug 7 06:04:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5595 5596 * parse.y (parser_yyerror): preserve source code encoding in 5597 syntax error messages. [ruby-core:64228] [Bug #10114] 5598 5599Wed Aug 6 20:56:02 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5600 5601 * ext/win32ole/win32ole.c: separate src of WIN32OLE_TYPELIB from 5602 win32ole.c 5603 5604 * ext/win32ole/win32ole.h: ditto. 5605 * ext/win32ole/win32ole_typelib.c: ditto. 5606 * ext/win32ole/win32ole_typelib.h: ditto. 5607 * ext/win32ole/depend: ditto. 5608 5609Wed Aug 6 20:44:07 2014 Akinori MUSHA <knu@iDaemons.org> 5610 5611 * enum.c (enum_one): [DOC] Move enum.one? documentation before the 5612 relevant method. Submitted by @vipulnsward. [Fixes GH-687] 5613 https://github.com/ruby/ruby/pull/687 5614 5615Wed Aug 6 20:25:47 2014 Akinori MUSHA <knu@iDaemons.org> 5616 5617 * lib/set.rb (Set#replace): Check if an object given is enumerable 5618 before clearing self. Reported by yui-knk. [GH-675] 5619 https://github.com/ruby/ruby/pull/675 5620 5621Wed Aug 6 20:07:26 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5622 5623 * ext/win32ole/win32ole.c (olerecord_ivar_set): remove rb_str_subseq. 5624 5625Wed Aug 6 19:09:27 2014 Akinori MUSHA <knu@iDaemons.org> 5626 5627 * lib/set.rb (Set): Implement Set#clone by splitting 5628 initialize_copy into initialize_dup and initialize_clone. 5629 Submitted by yui-knk. [Fixes GH-661] 5630 https://github.com/ruby/ruby/pull/661 5631 5632Wed Aug 6 18:42:58 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5633 5634 * ext/win32ole/win32ole.c: separate src of WIN32OLERuntimeError 5635 from win32ole.c. 5636 5637 * ext/win32ole/win32ole.h: ditto 5638 * ext/win32ole/depend: ditto. 5639 * ext/win32ole/win32ole_error.c: ditto. 5640 * ext/win32ole/win32ole_error.h: ditto. 5641 5642Wed Aug 6 04:33:58 2014 NARUSE, Yui <naruse@ruby-lang.org> 5643 5644 * lib/net/http.rb (Net::HTTP.proxy_uri): use initializer instead 5645 of parser to handle IPv6 address. [Bug #9129] 5646 5647Wed Aug 6 04:16:05 2014 NARUSE, Yui <naruse@ruby-lang.org> 5648 5649 * lib/net/http/requests.rb (Net::HTTP::Options::RESPONSE_HAS_BODY): 5650 OPTIONS requests may have response bodies. [Feature #8429] 5651 http://tools.ietf.org/html/rfc7231#section-4.3.7 5652 5653Wed Aug 6 03:18:04 2014 NARUSE, Yui <naruse@ruby-lang.org> 5654 5655 * lib/net/http/generic_request.rb (Net::HTTP::GenericRequest#exec): 5656 handle req['host'] in update_uri. 5657 5658 * lib/net/http/generic_request.rb 5659 (Net::HTTP::GenericRequest#update_uri): 5660 use req['host'] if it is explicitly set. Even if URI is given, 5661 it is already used for the initial value of req['host']. 5662 Therefore overwritten value should be respected. [Bug #10054] 5663 5664Wed Aug 6 03:17:34 2014 NARUSE, Yui <naruse@ruby-lang.org> 5665 5666 * lib/net/http/generic_request.rb 5667 (Net::HTTP::GenericRequest#update_uri): 5668 handle scheme, host, and port to reflect connection to @uri. 5669 5670 * lib/net/http.rb (Net::HTTP#begin_transport): move trivial handling 5671 to Net::HTTP::GenericRequest#update_uri. 5672 5673 5674Wed Aug 6 02:16:43 2014 NARUSE, Yui <naruse@ruby-lang.org> 5675 5676 * lib/net/http/generic_request.rb 5677 (Net::HTTP::GenericRequest#initialize): 5678 optimize object allocation. 5679 5680Wed Aug 6 01:16:47 2014 NARUSE, Yui <naruse@ruby-lang.org> 5681 5682 * lib/uri/generic.rb (URI::Generic#path_query): remove a private method. 5683 5684Wed Aug 6 01:15:47 2014 NARUSE, Yui <naruse@ruby-lang.org> 5685 5686 * lib/uri/generic.rb (URI::Generic#normalize!): use String#empty? 5687 5688 * lib/uri/generic.rb (URI::Generic#path_query): optimized. 5689 5690 * lib/uri/generic.rb (URI::Generic#to_s): optimized. 5691 5692Wed Aug 6 00:15:10 2014 NARUSE, Yui <naruse@ruby-lang.org> 5693 5694 * lib/uri/http.rb (URI::HTTP#request_uri): optimized. 5695 decrease object allocation, and ensure always create at least one new 5696 object for return value. 5697 5698Wed Aug 6 03:41:21 2014 Aaron Patterson <aaron@tenderlovemaking.com> 5699 5700 * ext/psych/lib/psych/visitors/to_ruby.rb: backwards compatibility for 5701 hashes emitted by Syck. Github #198 5702 * test/psych/test_hash.rb: test for change. 5703 5704Tue Aug 5 19:27:59 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5705 5706 * ext/win32ole/win32ole.c (ole_invoke): skip VariantClear when 5707 argument is VT_RECORD variant. 5708 5709Tue Aug 5 15:52:51 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5710 5711 * gems/bundled_gems: Upgrade to test-unit-3.0.0 and minitest-5.4.0. 5712 5713Mon Aug 4 21:50:09 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5714 5715 * test/win32ole/test_win32ole_record.rb: add for WIN32OLE_RECORD 5716 test(need .NET Framework 3.5 to run test). 5717 5718Mon Aug 4 19:49:34 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5719 5720 * ext/win32ole/win32ole.c (ole_invoke): call rb_hash_foreach instead 5721 of rb_block_call. 5722 5723 * ext/win32ole/win32ole.c: add comment for rdoc of WIN32OLE_VARIANT 5724 class. 5725 5726Mon Aug 4 09:12:47 2014 Eric Wong <e@80x24.org> 5727 5728 * variable.c: cleanup to use rb_const_lookup 5729 [Feature #10107] 5730 5731 * vm_insnhelper.c: ditto 5732 5733Sun Aug 3 10:55:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5734 5735 * include/ruby/encoding.h (rb_check_symbol_cstr): ditto. 5736 5737Sun Aug 3 10:43:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5738 5739 * vm_insnhelper.c (vm_call_method): unusable super class should cause 5740 method missing when BasicObject is refined but not been using. 5741 [ruby-core:64166] [Bug #10106] 5742 5743Sat Aug 2 23:47:45 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5744 5745 * ext/win32ole/win32ole.c: separate WIN32OLE::VARIANT src file 5746 from win32ole.c 5747 * ext/win32ole/win32ole.h: ditto. 5748 * ext/win32ole/win32ole_variant_m.c: ditto. 5749 * ext/win32ole/win32ole_variant_m.h: ditto. 5750 * ext/win32ole/depend: ditto. 5751 * ext/.document: ditto. 5752 5753Sat Aug 2 14:34:58 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5754 5755 * ext/win32ole/win32ole.c: add comments for rdoc. 5756 5757Sat Aug 2 10:26:57 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5758 5759 * object.c (rb_obj_itself): new method Object#itself. based on the 5760 patch by Rafael Franca in [ruby-core:64156]. 5761 [EXPERIMENTAL] this method may be renamed due to compatibilities. 5762 [ruby-core:44704] [Feature #6373] 5763 5764Fri Aug 1 22:30:40 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5765 5766 * ext/win32ole/win32ole.c (folerecord_initialize): accept 5767 only 2 arguments. The 2nd argument should be WIN32OLE object or 5768 WIN32OLE_RECORD object. 5769 5770Fri Aug 1 20:17:33 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5771 5772 * ext/win32ole/win32ole.c (ole_variant2val): call 5773 folerecord_s_allocate instead of WIN32OLE_RECORD.new. 5774 5775Fri Aug 1 18:39:57 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5776 5777 * test/date/test_date.rb: remove commented-out code. 5778 * test/date/test_date_arith.rb: ditto. 5779 * test/date/test_date_attr.rb: ditto. 5780 * test/date/test_date_parse.rb: ditto. 5781 5782Fri Aug 1 16:35:32 2014 Evan Miller <evan@squareup.com> 5783 5784 * numeric.c (flodivmod): all results are NaN if divisor is NaN. 5785 [fix GH-692] 5786 5787Thu Aug 01 07:28:12 2014 Kenta Murata <mrkn@mrkn.jp> 5788 5789 * ext/bigdecimal/bigdecimal.c: [DOC] Add description of 5790 `BigDecimal.new` exceptions. Patched by @joker1007 and 5791 @prathamesh-sonpatki [Fixes GH-690] 5792 https://github.com/ruby/ruby/pull/690 5793 5794Thu Jul 31 22:20:12 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5795 5796 * ext/win32ole/win32ole.c: add WIN32OLE_RECORD#inspect. 5797 5798Thu Jul 31 20:35:32 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5799 5800 * ext/win32ole/win32ole.c: add 5801 WIN32OLE_RECORD#ole_instance_variable_set and 5802 WIN32OLE_RECORD#ole_instance_variable_get 5803 5804Wed Jul 30 23:28:10 2014 Kazuki Tsujimoto <kazuki@callcc.net> 5805 5806 * sprintf.c (rb_str_format): like r47006, get rid of 5807 function calls in RSTRING_PTR(). 5808 5809Wed Jul 30 22:10:29 2014 Kazuki Tsujimoto <kazuki@callcc.net> 5810 5811 * process.c (rlimit_resource_type, rlimit_resource_value): 5812 get rid of inadvertent dynamic symbol pin-down. 5813 5814 * re.c (match_backref_number): ditto. 5815 5816 * signal.c (esignal_init, rb_f_kill, trap_signm): ditto. 5817 5818 * transcode.c (econv_opts): ditto. 5819 5820 * vm_trace.c (symbol2event_flag): ditto. 5821 5822Wed Jul 30 21:29:39 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5823 5824 * ext/win32ole/win32ole.c (ole_invoke): pass WIN32OLE_RECORD variant 5825 by reference when invoke OLE methods at first. 5826 5827 * ext/win32ole/win32ole.c (olerecord_set_ivar): release 5828 IRecordInfo interface before setting another IRecordInfo interface. 5829 5830Wed Jul 30 13:17:35 2014 Koichi Sasada <ko1@atdot.net> 5831 5832 * gc.c: remove unused macros. 5833 5834Tue Jul 29 22:21:37 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5835 5836 * ext/win32ole/win32ole.c (hash2olerec): ignore WIN32OLE_RECORD 5837 instance variable if the variable is nil. 5838 5839Tue Jul 29 19:43:27 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5840 5841 * ext/win32ole/win32ole.c (folerecord_method_missing): refactoring. 5842 divide functionality of folerecord_method_missing into 5843 olerecord_ivar_set and olerecord_ivar_get. 5844 5845Mon Jul 28 20:20:08 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 5846 5847 * ext/win32ole/win23ole.c (folerecord_method_missing): support 5848 setter of member of WIN32OLE_RECORD object. 5849 5850Mon Jul 28 06:37:19 2014 Zachary Scott <e@zzak.io> 5851 5852 * vm_eval.c: [DOC] Fix rdoc formatting of patch from [Bug #9551] 5853 5854Mon Jul 28 06:34:43 2014 Zachary Scott <e@zzak.io> 5855 5856 * vm_eval.c: [DOC] [Bug #9551] Improve clarity of Kernel::catch 5857 documentation, patch by Jesse Sielaff. 5858 5859Mon Jul 28 06:24:54 2014 Zachary Scott <e@zzak.io> 5860 5861 * lib/uri/common.rb: [DOC] [Bug #9563] Recommend using URI.escape 5862 before parsing a uri to avoid invalid characters. Reported by 5863 Evgeniy Serykh. 5864 5865Mon Jul 28 05:55:56 2014 Zachary Scott <e@zzak.io> 5866 5867 * time.c: [DOC] Clarify %Y in strftime, which can accept any digits 5868 and will output at least 4 digits as the year. Reported by Yury 5869 Trofimenko [Bug #10049] 5870 5871 * lib/time.rb: ditto 5872 5873Mon Jul 28 05:32:06 2014 Zachary Scott <e@zzak.io> 5874 5875 * lib/uri/common.rb: [DOC] [Bug #10075] Clarify how URI.join arguments 5876 are handled by RFC3986, originally reported by John Feminella. 5877 5878Mon Jul 28 05:21:41 2014 Zachary Scott <e@zzak.io> 5879 5880 * file.c: [DOC] Clarify how File.file? handles symbolic links. Also 5881 cleaned up the rdoc style for this method, more to follow. 5882 Originally reported by Michael Renner [Bug #10067] 5883 5884Mon Jul 28 05:12:22 2014 Zachary Scott <e@zzak.io> 5885 5886 * time.c: [DOC] Remove dead link and old bug report, which hasn't been 5887 reproduced in a few years. Reported by Federico Builes [Bug #10071] 5888 5889Mon Jul 28 04:39:58 2014 Zachary Scott <e@zzak.io> 5890 5891 * ext/zlib/zlib.c: [DOC] Remove default value of Zlib constants, as 5892 they may change in the implementation without notice. Patched by 5893 @robin850 [Fixes GH-682] https://github.com/ruby/ruby/pull/682 5894 5895Mon Jul 28 04:35:35 2014 Zachary Scott <e@zzak.io> 5896 5897 * ext/openssl/ossl_hmac.c: Fix NO_HMAC warning [Fixes GH-665] 5898 Patched by @vipulnsward https://github.com/ruby/ruby/pull/665 5899 5900Sun Jul 27 19:49:36 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5901 5902 * lib/cgi/core.rb: remove unused variables. 5903 * lib/erb.rb: ditto. 5904 * lib/mkmf.rb: ditto. 5905 * lib/net/http/response.rb: ditto. 5906 * lib/optparse/version.rb: ditto. 5907 * lib/prime.rb: ditto. 5908 * lib/racc/parser.rb: ditto. 5909 * lib/rexml/document.rb: ditto. 5910 * lib/rexml/dtd/dtd.rb: ditto. 5911 * lib/rexml/element.rb: ditto. 5912 * lib/rexml/functions.rb: ditto. 5913 * lib/rexml/parsers/xpathparser.rb: ditto. 5914 5915Sun Jul 27 05:11:21 2014 Zachary Scott <e@zzak.io> 5916 5917 * lib/irb.rb: [DOC] PROMPT_I cannot be nil, patch by @hgillane 5918 Fixes documenting-ruby/ruby#37 5919 https://github.com/documenting-ruby/ruby/pull/37 5920 5921Sun Jul 27 02:41:50 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5922 5923 * lib/shell/command-processor.rb: remove unused variable. 5924 * lib/shell/system-command.rb: ditto. 5925 * lib/tmpdir.rb: ditto. 5926 * lib/uri/generic.rb: ditto. 5927 5928Sun Jul 27 02:08:31 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5929 5930 * lib/weakref.rb: split executable code into sample directory. 5931 * sample/weakref.rb: ditto. 5932 5933Sun Jul 27 02:06:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 5934 5935 * lib/delegate.rb: split executable code into sample directory. 5936 * sample/delegate.rb: ditto. 5937 5938Sun Jul 27 01:46:34 2014 Zachary Scott <e@zzak.io> 5939 5940 * proc.c (method_super_method): [DOC] Method#super_method 5941 5942Sun Jul 27 01:22:39 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 5943 5944 * proc.c (method_super_method): new method Method#super_method, 5945 which returns a method object of the method to be called by 5946 `super` in the receiver method object. 5947 [ruby-core:62202] [Feature #9781] 5948 5949Sat Jul 26 17:22:14 2014 URABE Shyouhei <shyouhei@ruby-lang.org> 5950 5951 * ext/objspace/objspace_dump.c (dump_append): avoid fflush. 5952 5953 because dump_append_string_value() iterates over each chars, 5954 fflush()-ing here effectively issues system calls on every single 5955 bytes exist in a ruby process. 5956 5957Sat Jul 26 16:55:18 2014 Eric Wong <e@80x24.org> 5958 5959 * iseq.h (struct iseq_compile_data_storage): reduce overhead 5960 to 16 bytes (from 32) on 64-bit 5961 5962Sat Jul 26 16:28:06 2014 Eric Wong <e@80x24.org> 5963 5964 * vm_core.h (struct rb_iseq_struct): reduce to 280 bytes 5965 (from 288 bytes) on 64-bit 5966 5967Sat Jul 26 06:44:43 2014 Eric Wong <e@80x24.org> 5968 5969 * parse.y (struct parse_params): shrink to 320 to 304 bytes on 64-bit 5970 5971Sat Jul 26 05:58:35 2014 Eric Wong <e@80x24.org> 5972 5973 * include/ruby/ruby.h (ZALLOC, ZALLOC_N): implement 5974 (Data_Make_Struct, TypedData_Make_Struct): 5975 ZALLOC replaces ALLOC+memset 5976 [ruby-core:63951][Feature #10082] 5977 * compile.c (iseq_seq_sequence): ZALLOC_N replaces ALLOC_N+MEMZERO 5978 * cont.c (fiber_t_alloc): ZALLOC replaces ALLOC+MEMZERO 5979 * io.c (rb_io_reopen): ditto 5980 * iseq.c (prepare_iseq_build): ditto 5981 * parse.y (new_args_tail_gen, parser_new, ripper_s_allocate): ditto 5982 * re.c (match_alloc): ditto 5983 * variable.c (rb_const_set): ditto 5984 * ext/socket/raddrinfo.c (get_addrinfo): ditto 5985 * ext/strscan/strscan.c (strscan_s_allocate): ditto 5986 * gc.c (rb_objspace_alloc): calloc replaces malloc+MEMZERO 5987 5988Sat Jul 26 05:54:54 2014 Eric Wong <e@80x24.org> 5989 5990 * symbol.c (dsymbol_check): remove unneeded semi-colon 5991 5992Fri Jul 25 14:07:27 2014 Koichi Sasada <ko1@atdot.net> 5993 5994 * gc.c: change objspace::rgengc::parent_object_is_old (boolean) 5995 to objspace::rgengc::parent_object (VALUE). 5996 Use Qfalse or RVALUE pointer instead of FALSE and TRUE. 5997 5998 * gc.c (gc_marks_body): should clear parent_object just before 5999 gc_mark_roots() because there are no parents objects 6000 for root objects. 6001 6002Fri Jul 25 13:45:39 2014 Koichi Sasada <ko1@atdot.net> 6003 6004 * gc.c (rb_gc_writebarrier_remember_promoted): should remember only 6005 OLD objects on RGENGC_AGE2_PROMOTION. 6006 6007Fri Jul 25 13:42:02 2014 Koichi Sasada <ko1@atdot.net> 6008 6009 * gc.c (gc_mark_stacked_objects): fix error message. 6010 6011Fri Jul 25 13:18:00 2014 Will Farrington <wfarrington@digitalocean.com> 6012 6013 * ext/socket/socket.c (sock_gethostname): Use NI_MAXHOST to support 6014 hostnames longer than 64 characters if the system supports it. 6015 [fixes GH-683] 6016 6017Fri Jul 25 12:21:11 2014 Santiago Pastorino <santiago@wyeworks.com> 6018 6019 * compile.c (defined_expr): make the condition if the receiver 6020 is explicit or implicit cleaner. [fix GH-681] 6021 6022Fri Jul 25 03:53:52 2014 Eric Hodel <drbrain@segment7.net> 6023 6024 * doc/keywords.rdoc: [DOC] Describe each keyword. 6025 6026Thu Jul 24 22:40:24 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 6027 6028 * ext/win32ole/win32ole.c (Init_win32ole): add WIN32OLE_RECORD#initialize 6029 method. 6030 6031 * ext/win32ole/win32ole.c (ole_val2variant): convert WIN32OLE_RECORD 6032 object to VT_RECORD variant. 6033 6034Thu Jul 24 20:10:59 2014 Koichi Sasada <ko1@atdot.net> 6035 6036 * gc.c: fix major GC flags. 6037 * add GPR_FLAG_MAJOR_BY_FORCE, which indicates 6038 major GC by METHOD, CAPI and so on (see GC_BY). 6039 * remove GPR_FLAG_MAJOR_BY_RESCAN because not used. 6040 * remove GPR_FLAG_MAJOR_BY_STRESS, use FORCE instead. 6041 6042 * test/ruby/test_gc.rb: catch up. 6043 6044Thu Jul 24 15:55:02 2014 Naohisa Goto <ngotogenome@gmail.com> 6045 6046 * include/ruby/io.h (struct rb_io_buffer_t): PACKED_STRUCT should not 6047 be used for platform-specific optimization. PACKED_STRUCT_UNALIGNED 6048 should be used. [ruby-core:63988] [Bug #10088] 6049 6050Thu Jul 24 04:42:13 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6051 6052 * lib/benchmark.rb: split executable code into sample directory. 6053 * sample/benchmark.rb: ditto. 6054 6055Thu Jul 24 04:36:49 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6056 6057 * lib/tempfile.rb: split executable code into sample directory. 6058 * sample/tempfile.rb: ditto. 6059 6060Thu Jul 24 04:29:36 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6061 6062 * lib/pstore.rb: split executable code into sample directory. 6063 * sample/pstore.rb: ditto. 6064 6065Wed Jul 23 23:50:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6066 6067 * include/ruby/defines.h, siphash.c, st.c (UNALIGNED_WORD_ACCESS): 6068 add PowerPC64 too, which is capable to access unaligned words. 6069 patched by Gustavo Frederico Temple Pedrosa in [ruby-core:63937]. 6070 [Feature #10081] 6071 6072 * regint.h (PLATFORM_UNALIGNED_WORD_ACCESS): ditto. 6073 6074Wed Jul 23 04:04:38 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6075 6076 * lib/drb/extserv.rb: remove duplicate code with sample directory. 6077 contributed from @vipulnsward. [fix GH-679] 6078 6079Tue Jul 22 12:56:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6080 6081 * string.c (rb_str_count): fix wrong single-byte optimization. 6082 7bit ascii can be a trailing byte in Shift_JIS. 6083 [ruby-dev:48442] [Bug #10078] 6084 6085Tue Jul 22 01:48:38 2014 Eric Wong <e@80x24.org> 6086 6087 * include/ruby/io.h (rb_io_buffer_t): fix packing on gcc 6088 r46892 caused packing to be a no-op on gcc (4.7.2-5, Debian) 6089 [Bug #10079][ruby-core:63912] 6090 6091Mon Jul 21 15:55:42 2014 fuji70 <fujifuji70@gmail.com> 6092 6093 * lib/optparse.rb (getopts): print default values and descriptions 6094 in the help message. [fix GH-676] 6095 6096Sun Jul 20 14:26:27 2014 Eric Wong <e@80x24.org> 6097 6098 * vm_core.h (rb_proc_t): reduce to 64 bytes from 72 on 64-bit 6099 6100Sun Jul 20 13:50:34 2014 Eric Wong <e@80x24.org> 6101 6102 * transcode.c (rb_econv_t): reduce to 184 bytes from 200 on 64-bit 6103 6104Sun Jul 20 12:44:23 2014 Eric Wong <e@80x24.org> 6105 6106 * include/ruby/io.h (rb_io_buffer_t): pack structure 6107 Reduces rb_io_t from 200 to 192 bytes, allowing rb_io_t to 6108 occupy one less cache line. 6109 [Feature #10050] 6110 6111Sun Jul 20 12:41:53 2014 Eric Wong <e@80x24.org> 6112 6113 * include/ruby/io.h (rb_io_t): shrink to 200 bytes from 216 on 64-bit 6114 This puts us within 8 bytes of being three cache lines instead of 6115 four lines on x86-64. This breaks the ABI. 6116 [Feature #10050] 6117 6118Sun Jul 20 12:36:46 2014 Eric Wong <e@80x24.org> 6119 6120 * include/ruby/oniguruma.h (struct re_pattern_buffer): shrink to 448 6121 bytes from 464 bytes on 64-bit. This breaks the ABI. 6122 [Feature #10034] 6123 6124Sun Jul 20 01:06:06 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6125 6126 * ext/openssl/ossl.c: use encryptor instead of encrypter in doc. 6127 contributed from @vipulnsward. [fix GH-663] 6128 6129Sun Jul 20 00:32:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6130 6131 * io.c (rb_io_initialize): [DOC] fix rdoc of append mode. it does 6132 not move the pointer at open. [ruby-core:63747] [Bug #10039] 6133 6134Sat Jul 19 12:40:50 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6135 6136 * compile.c (iseq_compile_each): allow to access private attribute 6137 reader in op_assign. [ruby-core:63817] [Bug #10060] 6138 6139Sat Jul 19 11:56:36 2014 Grey Baker <greysteil@gmail.com> 6140 6141 * lib/time.rb (Time#apply_offset): Guards against a `nil` return 6142 value from `Time.month_days` when offsetting date. Out of range 6143 values are then caught when `Time.utc` is called (as usual). 6144 6145 Previously a `nil` return value from `Time.month_days` would 6146 have the `<` operator called on it, and raise `NoMethodError`. 6147 [fix GH-667] 6148 6149 * lib/rdoc/parser/changelog.rb (RDoc#parse_entries): fix dirty hack. 6150 6151Sat Jul 19 06:19:01 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 6152 6153 * ext/win32ole/win32ole.c: refactoring. 6154 6155Fri Jul 18 22:34:41 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 6156 6157 * ext/win32ole/win32ole.c (folevariant_initialize): WIN32OLE_VARIANT 6158 does not support VT_RECORD. VT_RECORD should be supported in 6159 WIN32OLE_RECORD. 6160 6161 * test/win32ole/test_win32ole_variant.rb (test_s_new_vt_record_exc): 6162 ditto. 6163 6164Fri Jul 18 19:54:03 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 6165 6166 * ext/win32ole/win32ole.c (folevariant_initialize): remove unnecessary 6167 code. 6168 6169Fri Jul 18 19:11:03 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 6170 6171 * lib/matrix/eigenvalue_decomposition: Style fix 6172 Patch by Gogo Tanaka [#10058] 6173 6174Fri Jul 18 19:03:53 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 6175 6176 * lib/matrix.rb: Avoid using `and`. 6177 Patch by gogo tanaka [#10058] 6178 6179Fri Jul 18 17:41:54 2014 GoGo tanaka <qlli.illb@gmail.com> 6180 6181 * test/matrix/test_matrix.rb: Add tests for Matrix class. 6182 [Feature #10057][ruby-core:63809] 6183 6184Fri Jul 18 10:14:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6185 6186 * lib/fileutils.rb: added missing options of FileUtils.touch by @Domon. 6187 [fix GH-669] 6188 6189Thu Jul 17 19:57:27 2014 Herwin <herwin@quarantainenet.nl> 6190 6191 * ext/thread/thread.c (rb_szqueue_push): add optional parameter, 6192 non_block defaulted to false. [ruby-core:63794] [Feature #10052] 6193 6194Wed Jul 16 23:01:43 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 6195 6196 * ext/win32ole/win32ole.c (ole_variant2val): support array of 6197 VT_RECORD variant. 6198 6199Wed Jul 16 20:21:49 2014 Naohisa Goto <ngotogenome@gmail.com> 6200 6201 * vm_core.h (struct rb_iseq_struct): stack_max is changed to int 6202 because all calculations related to stack_max in compile.c 6203 (iseq_set_sequence) and vm_insnhelper.c (vm_push_frame) are 6204 conducted by using int. This partly reverts r23945. 6205 * vm_insnhelper.c (vm_push_frame): ditto. This reverts r42401. 6206 6207Wed Jul 16 19:55:32 2014 Naohisa Goto <ngotogenome@gmail.com> 6208 6209 * vm_core.h (struct rb_iseq_struct): temporal workaround of [Bug 10037]. 6210 Add padding on big-endian 64-bit architecture (e.g. sparc64). 6211 6212Wed Jul 16 19:32:23 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 6213 6214 * ext/win32ole/win32ole.c (fole_record_method_missing): call 6215 rb_hash_fetch instead of rb_hash_aref. 6216 6217Wed Jul 16 18:08:47 2014 Koichi Sasada <ko1@atdot.net> 6218 6219 * iseq.c (rb_iseq_defined_string): use rb_gc_mark_object() instead of 6220 marking from vm_mark(). 6221 6222 * vm.c (rb_vm_mark): ditto. 6223 6224Wed Jul 16 18:03:50 2014 Koichi Sasada <ko1@atdot.net> 6225 6226 * gc.c (gc_mark_roots): call rb_vm_mark directly. 6227 6228 * vm.c: remove mark function for RubyVM object because 6229 RubyVM object marked manually. 6230 6231Wed Jul 16 12:25:39 2014 NARUSE, Yui <naruse@ruby-lang.org> 6232 6233 * regcomp.c: Merge Onigmo 5.14.1 25a8a69fc05ae3b56a09. 6234 this includes Support for Unicode 7.0 [Bug #9092]. 6235 6236Tue Jul 15 23:59:27 2014 Jared Jennings <jared.jennings.ctr@us.af.mil> 6237 6238 * ext/digest: make built-in digest function implementations 6239 indicate success or failure of init and final functions. 6240 [ruby-core:61614] [Bug #9659] 6241 6242 * ext/digest/digest.c: expect digest init and finish functions to 6243 indicate success or failure; raise exception on failure. 6244 [ruby-core:61614] [Bug #9659] 6245 6246Tue Jul 15 20:31:40 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 6247 6248 * ext/win32ole/win32ole.c: modify document for WIN32OLE_RECORD. 6249 6250Tue Jul 15 12:42:23 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6251 6252 * defs/default_gems: change version definition file of rake. 6253 6254Tue Jul 15 12:00:03 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6255 6256 * lib/rake.rb, lib/rake/*.rb: Upgrade to rake-10.3.2 6257 [fix GH-668] 6258 * test/rake/*.rb: ditto. 6259 6260Mon Jul 14 19:14:51 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 6261 6262 * ext/win32ole/win32ole.c: modify WIN32OLE class document and 6263 add comment for constants of WIN32OLE. 6264 6265Mon Jul 14 16:38:45 2014 Eric Wong <e@80x24.org> 6266 6267 * vm_core.h (struct rb_iseq_struct): reduce to 288 bytes 6268 on x86-64 (from 296 bytes) 6269 6270Mon Jul 14 16:07:25 2014 Eric Wong <e@80x24.org> 6271 6272 * iseq.h (struct iseq_catch_table_entry): shrink to 32 bytes 6273 on x86-64 (from 48 bytes) 6274 6275Mon Jul 14 16:04:41 2014 Eric Wong <e@80x24.org> 6276 6277 * iseq.h (struct iseq_catch_table): new flexible array struct 6278 (iseq_catch_table_bytes): allocated size function 6279 * vm_core.h (struct rb_iseq_struct): update catch_table member 6280 This reduces the struct from 304 to 296 bytes on x86-64. 6281 * compile.c (iseq_set_exception_table): update for struct changes 6282 * iseq.c (iseq_free): ditto 6283 * iseq.c (iseq_memsize): ditto 6284 * iseq.c (rb_iseq_disasm): ditto 6285 * iseq.c (iseq_data_to_ary): ditto 6286 * iseq.c (rb_iseq_build_for_ruby2cext): ditto (untested) 6287 * vm.c (vm_exec): ditto 6288 * vm_core.h (struct rb_iseq_struct): ditto 6289 * vm_insnhelper.c (vm_throw): ditto 6290 6291Sun Jul 13 17:49:52 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6292 6293 * ext/openssl/ossl_cipher.c: Fix call to ciphers class method and 6294 spell out `encryption` by @vipulnsward [fix GH-664] 6295 6296Sun Jul 13 17:31:51 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6297 6298 * ext/gdbm/gdbm.c: fix wrong arguments in GetDBM2 macro. 6299 * ext/sdbm/init.c: ditto. 6300 6301Sun Jul 13 17:25:50 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6302 6303 * ext/dbm/dbm.c: fix wrong arguments in GetDBM2 macro by @v2e4lisp. 6304 [fix GH-655] 6305 6306Sun Jul 13 16:44:56 2014 Eric Wong <e@80x24.org> 6307 6308 * vm_core.h (struct rb_call_info_struct): improve packing 6309 This reduces the struct from 112 to 104 bytes on x86-64. 6310 6311Sun Jul 13 15:53:25 2014 Eric Wong <e@80x24.org> 6312 6313 * vm_core.h (struct rb_iseq_struct): stack_max is uint32_t 6314 This reduces the struct from 312 to 304 bytes on x86-64. 6315 6316Sun Jul 13 10:56:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6317 6318 * configure.in (rb_cv_broken_backtrace): exit with failure 6319 normally, no needs to abort. [ruby-core:63678] [Bug #10008] 6320 6321Sat Jul 12 15:10:22 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 6322 6323 * ext/win32ole/win32ole.c (fole_record_method_missing): correct 6324 fields Hash key. 6325 6326Sat Jul 12 04:17:40 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6327 6328 * lib/net/smtp.rb (Net::SMTP#data): enable buffering while 6329 'data' send for optimizing Net::SMTP#send_message. 6330 [ruby-dev:48329] [misc #9981] 6331 patch by Masahiro Tomita. 6332 6333Sat Jul 12 01:13:45 2014 Naohisa Goto <ngotogenome@gmail.com> 6334 6335 * test/ruby/envutil.rb (assert_no_memory_leak): On Solaris 9 or later, 6336 if possible, execute child ruby with environment variables 6337 LD_PRELOAD=libumem.so UMEM_OPTIONS="backend=mmap". With these 6338 variables, freed memory is immediately returned to the OS. 6339 [Bug #10020] [ruby-dev:48391] 6340 6341Fri Jul 11 20:49:10 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 6342 6343 * ext/win32ole/win32ole.c: add WIN32OLE_RECORD class to support 6344 VT_RECORD OLE variables. 6345 6346Fri Jul 11 17:15:08 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6347 6348 * lib/abbrev.rb: remove executable. 6349 6350Fri Jul 11 16:45:39 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6351 6352 * lib/fileutils.rb: handle ENOENT error with symlink targeted to 6353 non-exists file. [ruby-dev:45933] [Bug #6716] 6354 6355Fri Jul 11 15:59:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6356 6357 * array.c: Clarify documentation for Array#insert. 6358 [ruby-core:62934] [Bug #9901] 6359 6360Fri Jul 11 15:39:36 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6361 6362 * io.c: Improve Documentation by @dapplebeforedawn. 6363 [fix GH-658] [ruby-core:63579] [Bug #10012] 6364 6365Fri Jul 11 14:19:14 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 6366 6367 * lib/matrix.rb: Fix sign for cross_product [#9499] 6368 6369Fri Jul 11 11:11:50 2014 Koichi Sasada <ko1@atdot.net> 6370 6371 * benchmark/prepare_so_k_nucleotide.rb: use require_relative. 6372 6373 * benchmark/prepare_so_reverse_complement.rb: ditto. 6374 6375Fri Jul 11 10:09:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6376 6377 * pack.c (encodes): fix buffer overrun by tail_lf. Thanks to 6378 Mamoru Tasaka and Tomas Hoger. [ruby-core:63604] [Bug #10019] 6379 6380Thu Jul 10 23:51:36 2014 Naohisa Goto <ngotogenome@gmail.com> 6381 6382 * hash.c (ruby_setenv): Fix TestEnv#test_aset failure on Solaris 9. 6383 When name contains '=', ruby_setenv raises Errno::EINVAL. 6384 That is the same behavior as Solaris 10. 6385 NULL check for malloc return value is also added. 6386 6387Thu Jul 10 15:02:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6388 6389 * vm_insnhelper.c (vm_callee_setup_keyword_arg): adjust VM stack 6390 pointer to get rid of overwriting splat arguments by arguments 6391 for `to_hash` conversion. [ruby-core:63593] [Bug #10016] 6392 6393Thu Jul 10 01:09:57 2014 Koichi Sasada <ko1@atdot.net> 6394 6395 * symbol.c: remove rb_gc_mark_symbols(). 6396 6397 fstrings referred by static symbols and pinned dynamic symbols 6398 are registered by rb_gc_register_mark_object(). 6399 6400 fstrings referred by dynamic symbols (not pinned symbols) 6401 are referred from global_symbols.dsymbol_fstr_hash (Hash object). 6402 6403 Note that fstrings referred from dynamic symbols must live logger 6404 than symbol objects themselves because rb_gc_free_dsymbol() uses 6405 fstrings to remove from symbol tables. 6406 This is why we can not mark fstrings from dynamic symbols. 6407 6408 This technique reduces root objects for GC marking. 6409 6410 * gc.c (gc_mark_roots): ditto. 6411 6412 * internal.h: ditto. 6413 6414Thu Jul 10 00:24:18 2014 Naohisa Goto <ngotogenome@gmail.com> 6415 6416 * common.mk (DTRACE_DEPENDENT_OBJS): fix build failure on Solaris 6417 introduced in r46768. Object files containing dtrace probes should 6418 be listed in DTRACE_DEPENDENT_OBJS. 6419 6420Wed Jul 9 17:07:28 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6421 6422 * symbol.c, symbol.h: Symbol class implementation and internals, 6423 split from parse.y. 6424 6425Wed Jul 9 14:45:39 2014 Koichi Sasada <ko1@atdot.net> 6426 6427 * parse.y: change Symbol <-> ID relationship to avoid 6428 exposing IDs from collectable symbols. 6429 [Bug #10014] 6430 6431 Now, rb_check_id() returns 0 if corresponding symbol is 6432 pinned dynamic symbol. 6433 6434 There is remaining intern_cstr_without_pindown(), it can return 6435 IDs from collectable symbols. We must be careful to use it 6436 (only used in parse.y). I think it should be removed if 6437 it does not have impact for performance. 6438 6439 * parse.y: 6440 add: 6441 * STATIC_SYM2ID() 6442 * STATIC_ID2SYM() 6443 rename: 6444 * rb_pin_dynamic_symbol() -> dsymbol_pindown() 6445 6446 * internal.h: 6447 remove: 6448 * rb_check_id_without_pindown() 6449 * rb_sym2id_without_pindown() 6450 add: 6451 * rb_check_symbol() 6452 * rb_check_symbol_cstr() 6453 6454 * load.c: use rb_check_id() or rb_check_id_cstr(). 6455 6456 * object.c: ditto. 6457 6458 * struct.c: ditto. 6459 6460 * thread.c: ditto. 6461 6462 * vm_method.c: ditto. 6463 6464 * string.c (sym_find): use only rb_check_symbol(). 6465 6466 * sprintf.c (rb_str_format): use rb_check_symbol_cstr(). 6467 6468Wed Jul 9 12:21:55 2014 Koichi Sasada <ko1@atdot.net> 6469 6470 * parse.y (symbols_i): delete garbage symbols for Symbol.all_symbols. 6471 6472Wed Jul 9 05:49:08 2014 Eric Wong <e@80x24.org> 6473 6474 * thread_pthread.h (struct rb_global_vm_lock_struct): 6475 do not expose pthread type for lock 6476 6477Wed Jul 9 05:41:40 2014 Eric Wong <e@80x24.org> 6478 6479 * thread_pthread.h: remove unneeded semaphore.h include 6480 6481Wed Jul 9 00:12:28 2014 Keiju Ishitsuka <keiju@ishitsuka.com> 6482 6483 * lib/irb/ruby-lex.rb: fix counting indent in identify_string_dvar. 6484 6485Tue Jul 8 16:58:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6486 6487 * test/ruby/memory_status.rb (Memory::PSCMD): use ps command which 6488 outputs expected result. [ruby-dev:48370] [Bug #10010] 6489 6490Tue Jul 8 14:45:17 2014 Koichi Sasada <ko1@atdot.net> 6491 6492 * parse.y (dsymbol_alloc): set global_symbols.minor_marked to 0. 6493 6494 * parse.y (dsymbol_check): set RSYMBOL(sym)->fstr to 0 6495 because we should not touch fstr after that. 6496 6497 * parse.y (rb_gc_free_dsymbol): skip deleting str and sym 6498 from tables if fstr == 0. 6499 6500Mon Jul 7 14:31:52 2014 Koichi Sasada <ko1@atdot.net> 6501 6502 * parse.y: remove global_symbols::pinned_dsym 6503 (and ::pinned_dsym_minor_marked). 6504 6505 Mark pinned dsymbols by rb_gc_register_mark_object() because 6506 they are immortal. 6507 6508 * parse.y (rb_gc_free_dsymbol): rename parameter name `ptr' to `sym'. 6509 6510Mon Jul 7 12:45:51 2014 Koichi Sasada <ko1@atdot.net> 6511 6512 * gc.c: revert miss-commit. 6513 6514Mon Jul 7 12:40:59 2014 Koichi Sasada <ko1@atdot.net> 6515 6516 * parse.y: need to use updated (re-created) symbols. 6517 6518Mon Jul 7 11:02:55 2014 NARUSE, Yui <naruse@ruby-lang.org> 6519 6520 * tool/mkconfig.rb: remove not to require rbconfig/obsolete.rb. 6521 6522 * lib/rbconfig/obsolete.rb: removed. 6523 6524Mon Jul 7 10:52:03 2014 Koichi Sasada <ko1@atdot.net> 6525 6526 * parse.y: do not use rb_gc_resurrect(), but create a new dynamic 6527 symbol for garbage dynamic symbol. 6528 6529 * common.mk: use gc.h by parse.y. 6530 6531Mon Jul 7 02:18:42 2014 Koichi Sasada <ko1@atdot.net> 6532 6533 * string.c (fstr_update_callback): do not use rb_gc_resurrect() 6534 any more. 6535 6536 Make new frozen string and replace with garbage frozen string. 6537 6538 * common.mk: use gc.h from string.c. 6539 6540Mon Jul 7 00:36:13 2014 Koichi Sasada <ko1@atdot.net> 6541 6542 * gc.c: rename is_dying_object() to is_garbage_object(). 6543 6544 * gc.h: rb_objspace_garbage_object_p() as an exported function. 6545 6546Sun Jul 6 21:30:35 2014 Koichi Sasada <ko1@atdot.net> 6547 6548 * gc.c (is_dying_object): fix missed condition. 6549 6550 * gc.c (is_live_object): move frequent path first. 6551 6552Sun Jul 6 21:00:11 2014 Koichi Sasada <ko1@atdot.net> 6553 6554 * gc.c: rename is_dead_object() to is_dying_object(). 6555 This function is not opposite against is_live_object() 6556 because is_dying_object() does *not* check object type. 6557 6558 * gc.c (is_dying_object): change condition. 6559 6560 * gc.c (is_live_object): use T_NONE instead of 0. 6561 6562 * gc.c (rb_objspace_dying_object_p): added. 6563 6564Sun Jul 6 13:37:27 2014 Koichi Sasada <ko1@atdot.net> 6565 6566 * gc.c (rb_gc_register_mark_object): change data structure. 6567 From single array, to array of arrays. Each array only has 1024 6568 entries. 6569 6570 * vm.c (Init_vm_objects): change default capa from 1 to 128. 6571 6572Sat Jul 5 05:05:53 2014 Vipul A M <vipulnsward@gmail.com> 6573 6574 * lib/irb/locale.rb (IRB::Locale#modifier): fix wrong attr_reader 6575 `modifieer` => `modifier` from irb locale. [fix GH-656] 6576 6577Fri Jul 4 20:45:26 2014 Koichi Sasada <ko1@atdot.net> 6578 6579 * parse.y: rename symbols::sym_id to symbols::str_id. 6580 This table is not {Symbol => ID} table, but 6581 {String => ID} table. 6582 6583 * parse.y (lookup_sym_id): also rename lookup_sym_id() to 6584 lookup_str_id() because key is not Symbol, but String. 6585 6586Fri Jul 4 18:42:04 2014 Koichi Sasada <ko1@atdot.net> 6587 6588 * parse.y (must_be_dynamic_symbol): fix missed-condition. 6589 6590Fri Jul 4 18:38:11 2014 Koichi Sasada <ko1@atdot.net> 6591 6592 * parse.y (rb_pin_dynamic_symbol): should be `static' function. 6593 6594Fri Jul 4 18:03:35 2014 Koichi Sasada <ko1@atdot.net> 6595 6596 * parse.y (must_be_dynamic_symbol): refactoring. 6597 * add `inline'. 6598 * use UNLIKELY(). 6599 * check only DYNAMIC_SYM_P(), otherwise it is a bug. 6600 * lookup_id_str() is not needed in second condition. 6601 6602Fri Jul 4 11:53:56 2014 Koichi Sasada <ko1@atdot.net> 6603 6604 * parse.y: remove unused code 6605 surrounded by `#if ENABLE_SELECTOR_NAMESPACE' 6606 6607Fri Jul 4 10:08:24 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6608 6609 * test/rubygems/test_gem_package.rb: avoid tempfile leaks using Tempfile#close! 6610 * test/rubygems/test_gem_request_set.rb: ditto. 6611 * test/rubygems/test_gem_request_set_gem_dependency_api.rb: ditto. 6612 6613Fri Jul 4 04:42:05 2014 NARUSE, Yui <naruse@ruby-lang.org> 6614 6615 * lib/net/http/response.rb (Net::Inflater#inflate_adapter): 6616 prevent automatic encoding conversion. 6617 6618Fri Jul 4 04:39:52 2014 NARUSE, Yui <naruse@ruby-lang.org> 6619 6620 * lib/net/http/response.rb (Net::HTTPResponse.each_response_header): 6621 raise first exception even if inflate_body_io.finish raises error. 6622 when begin block raises error, finish usually raises error too. 6623 6624Fri Jul 4 02:56:04 2014 NARUSE, Yui <naruse@ruby-lang.org> 6625 6626 * lib/uri/generic.rb (URI::Generic#query=): remove validation, just 6627 escape. [Feature #2542] 6628 6629 * lib/uri/generic.rb (URI::Generic#fragment=): ditto. 6630 6631 * lib/uri/generic.rb (URI::Generic#check_query): removed. 6632 6633 * lib/uri/generic.rb (URI::Generic#set_query): ditto. 6634 6635 * lib/uri/generic.rb (URI::Generic#check_fragment): ditto. 6636 6637 * lib/uri/generic.rb (URI::Generic#set_fragment): ditto. 6638 6639Thu Jul 3 12:40:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6640 6641 * configure.in (--with-static-linked-ext): fix for extensions to 6642 be linked statically. 6643 6644 * Makefile.in, common.mk: use ENCSTATIC for enc directory. 6645 6646 * ext/extmk.rb: supply dependencies of statically linked extension 6647 libraries. 6648 6649Wed Jul 2 15:45:49 2014 Koichi Sasada <ko1@atdot.net> 6650 6651 * gc.c (gc_heap_lazy_sweep): simplify logic. 6652 6653 * gc.c (gc_page_sweep): return TRUE if empty slots are available. 6654 6655Wed Jul 2 09:48:42 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6656 6657 * logger.rb: removed unmaintained code. 6658 [Feature #9860][ruby-core:62724] 6659 * test/logger/test_application.rb: ditto. 6660 6661Wed Jul 2 03:20:00 2014 Charlie Somerville <charliesome@ruby-lang.org> 6662 6663 * node.c (dump_node): handle nd_value == (NODE *)-1 to mean this 6664 keyword argument is required 6665 6666Wed Jul 2 02:57:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6667 6668 * vm.c (rb_vm_env_local_variables): returns array of local 6669 variable name symbols in the environment by envval. 6670 6671 * proc.c (bind_local_variables): use rb_vm_env_local_variables. 6672 6673Wed Jul 2 02:23:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6674 6675 * proc.c (bind_receiver): new method to return the bound receiver 6676 of the binding object. [ruby-dev:47613] [Feature #8779] 6677 6678Wed Jul 2 02:14:37 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6679 6680 * proc.c (bind_local_variables): update env from envval for each 6681 iterations. [ruby-dev:48351] [Bug #10001] 6682 6683Tue Jul 1 23:46:34 2014 NAKAMURA Usaku <usa@ruby-lang.org> 6684 6685 * NEWS: [DOC] mention about Binding#local_variables, introduced at 6686 r44392 (see [Feature #8773]). 6687 6688Tue Jul 1 23:30:51 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 6689 6690 * numeric.c (num_step_scan_args): table argument of rb_get_kwargs() is 6691 array of IDs, not Symbols. [ruby-dev:48353] [Bug #9811] 6692 6693Tue Jul 1 16:18:22 2014 Akinori MUSHA <knu@iDaemons.org> 6694 6695 * ext/digest/lib/digest/hmac.rb, test/digest/test_digest_hmac.rb: 6696 Digest::HMAC is finally removed as previously noticed. 6697 [fix GH-648] 6698 6699Tue Jul 1 11:13:43 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6700 6701 * ext/date/lib/date/format.rb: removed empty file by @vipulnsward. 6702 * ext/date/lib/date.rb: removed needless require. 6703 [fix GH-647] 6704 6705Mon Jun 30 16:42:52 2014 Koichi Sasada <ko1@atdot.net> 6706 6707 * gc.c (gc_stat_internal): return size_t value instead of VALUE 6708 and remove `out' parameter. 6709 6710 * gc.c: add braces for `if' statements. 6711 6712 * gc.c (gc_stat_internal): fix comment. 6713 6714Mon Jun 30 15:07:34 2014 Koichi Sasada <ko1@atdot.net> 6715 6716 * gc.c: support `USE_RGENGC == 0'. 6717 6718 * test/ruby/test_gc.rb: ditto. 6719 6720Mon Jun 30 11:36:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6721 6722 * file.c: [DOC] document File.join returns a string. 6723 Contributed by @dapplebeforedawn. [fix GH-646] 6724 6725Sat Jun 28 22:57:01 2014 NAKAMURA Usaku <usa@ruby-lang.org> 6726 6727 * ext/pathname/pathname.c (path_birthtime): Windows support. 6728 see [Feature #9857] [ruby-dev:48339] 6729 6730Sat Jun 28 22:44:16 2014 Tanaka Akira <akr@fsij.org> 6731 6732 * ext/pathname/pathname.c (path_birthtime): New method, 6733 Pathname#birthtime. 6734 Proposed by Kazuhiro NISHIYAMA. [ruby-dev:48232] [Feature #9857] 6735 6736Sat Jun 28 20:29:03 2014 Simon Baird <simon.baird@gmail.com> 6737 6738 * ext/bigdecimal/lib/bigdecimal/math.rb (BigMath#PI): change error 6739 message about zero or negative precision for clarity and 6740 consistency with other methods. [GH-644] 6741 6742Sat Jun 28 15:32:57 2014 Tanaka Akira <akr@fsij.org> 6743 6744 * lib/webrick/utils.rb (create_listeners): Close socket objects. 6745 6746Sat Jun 28 13:58:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6747 6748 * eval.c (setup_exception): should not overwrite SystemStackError 6749 backtrace if set already. [ruby-core:63377] [Feature #6216] 6750 6751 * eval.c (setup_exception): get rid of method calls before raising 6752 stack overflow, not to cause stack overflow again. 6753 6754 * defs/id.def: add IDs for backtraces. 6755 6756Sat Jun 28 04:08:22 2014 NARUSE, Yui <naruse@ruby-lang.org> 6757 6758 * lib/uri/mailto.rb: update to latest specs, RFC 6068 and HTML5. 6759 6760 * lib/uri/mailto.rb (HEADER_PATTERN): removed. 6761 6762 * lib/uri/mailto.rb (HEADER_REGEXP): use RFC 6068 hfields. 6763 6764 * lib/uri/mailto.rb (EMAIL_REGEXP): use HTML5 email regexp. 6765 6766 * lib/uri/mailto.rb (URI::MailTo.build): support multiple to addresses. 6767 6768 * lib/uri/mailto.rb (URI::MailTo#initialize): Support multiple to 6769 addresses. Don't check with regexp, only split. 6770 6771 * lib/uri/mailto.rb (URI::MailTo#check_to): verify by matching 6772 URI path-rootless and HTML5 email regexp with unescaped one. 6773 6774 * lib/uri/mailto.rb (URI::MailTo#check_headers): verify only by 6775 HEADER_REGEXP. 6776 6777 * lib/uri/mailto.rb (URI::MailTo#set_headers): don't check by 6778 HEADER_REGEXP, only split it. 6779 6780Sat Jun 28 00:35:10 2014 Lauri Tirkkonen <lotheac@iki.fi> 6781 6782 * tool/mkconfig.rb: fix empty RbConfig::CONFIG["prefix"] when 6783 configured --with-rubyarchprefix, remove prefix from rubyarchdir 6784 after expansion for the case it does not start with '$(prefix)'. 6785 [fix GH-643] 6786 6787Fri Jun 27 15:20:12 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6788 6789 * lib/rubygems/test_case.rb: rescue Gem::LoadError in Gem::TestCase. 6790 because it's effected by removing minitest from stdlib. 6791 6792Fri Jun 27 12:29:37 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6793 6794 * lib/rubygems/specification.rb: fixed broken condition caused 6795 by removing YAML::ENGINE. 6796 * lib/rubygems/package/old.rb: ditto. 6797 6798Fri Jun 27 05:33:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6799 6800 * hash.c (env_shift): fix memory leak on Windows, free environment 6801 strings block always. [ruby-dev:48332] [Bug #9983] 6802 6803Fri Jun 27 03:41:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6804 6805 * sprintf.c (GETASTER): should not use the numbered argument to be 6806 formatted, raise ArgumentError instead. 6807 [ruby-dev:48330] [Bug #9982] 6808 6809Thu Jun 26 18:18:28 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6810 6811 * test/with_different_ofs.rb: move into test library directory. 6812 * test/csv/base.rb: fix require path for with_different_ofs.rb. 6813 * test/digest/test_digest_extend.rb: ditto. 6814 6815Thu Jun 26 18:06:50 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6816 6817 * test/profile_test_all.rb: move into test library directory. 6818 * test/runner.rb: fix require path for profile_test_all.rb. 6819 6820Thu Jun 26 17:57:57 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6821 6822 * lib/webrick/httpproxy.rb: remove useless assigned variables. 6823 * lib/webrick/httpservlet/cgihandler.rb: ditto. 6824 * lib/webrick/httpservlet/erbhandler.rb: ditto. 6825 * lib/webrick/server.rb: ditto. 6826 6827Thu Jun 26 08:28:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6828 6829 * hash.c (env_select): fix memory leak and crash on Windows, make 6830 keys array first instead of iterating on environ directly. 6831 [ruby-dev:48325] [Bug #9978] 6832 6833Thu Jun 26 02:45:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6834 6835 * eval_error.c (error_print): put a newline after an anonymous 6836 exception class name. 6837 6838Wed Jun 25 22:31:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6839 6840 * hash.c (ruby_setenv): fix memory leak on Windows, free 6841 environment strings block after check for the size. 6842 [ruby-dev:48323] [Bug #9977] 6843 6844Wed Jun 25 15:44:12 2014 Eric Wong <e@80x24.org> 6845 6846 * ccan/container_of/container_of.h (container_off_var): 6847 avoid warning with -Wcast-qual 6848 [ccan ba5ad771af4aa9e085498de6c3c665c52694460f (Rusty Russell)] 6849 6850Wed Jun 25 10:19:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6851 6852 * hash.c (env_aset, env_has_key, env_assoc, env_has_value), 6853 (env_rassoc, env_key): prohibit tainted strings if $SAFE is 6854 non-zero. [Bug #9976] 6855 6856Tue Jun 24 14:46:17 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6857 6858 * lib/gserver.rb: remove redundant use of to_s in interpolation. 6859 * lib/logger.rb: ditto. 6860 * lib/optparse.rb: ditto. 6861 * lib/rbconfig/obsolete.rb: ditto. 6862 * lib/resolv.rb: ditto. 6863 * lib/webrick/httpresponse.rb: ditto. 6864 6865Tue Jun 24 10:50:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6866 6867 * hash.c (env_path_str_new): make PATH environment variable 6868 string, to be frozen. 6869 6870Tue Jun 24 10:40:52 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6871 6872 * tool/make-snapshot: download bundle gems when package making. 6873 [Feature #9852][ruby-core:62676] 6874 * gems/bundled_gems: listed bundled gems for Ruby 2.2. 6875 6876Tue Jun 24 10:20:35 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6877 6878 * tool/downloader.rb: make Downloader class to general download utility. 6879 It can be used without config.guess and config.sub. 6880 * tool/get-config_files: ditto. 6881 * tool/make-snapshot: ditto. 6882 6883Tue Jun 24 06:17:52 2014 NARUSE, Yui <naruse@ruby-lang.org> 6884 6885 * eval.c (setup_exception): "mesg == sysstack_error" and 6886 sysstack_error_p(mesg) are duplicated. 6887 r46502 seems to want to use latter. 6888 6889Tue Jun 24 06:15:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6890 6891 * ext/tk/tcltklib.c: fix format specifiers for VALUE and 6892 Tcl_Interp*. [ruby-core:63283] [Bug #9972] 6893 6894Tue Jun 24 05:40:41 2014 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6895 6896 * nacl/nacl-config.rb: Use File.exist? instead of executable? 6897 for irt_core. Recent nacl_sdk has non-executable irt_core. 6898 Patch by Shinichiro Hamaji. 6899 [Fixes GH-529] https://github.com/ruby/ruby/pull/529 6900 6901Mon Jun 23 18:44:45 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6902 6903 * tool/config_files.rb: rename class ConfigFiles to Downloader. 6904 * tool/get-config_files: ditto. 6905 * tool/make-snapshot: ditto. 6906 6907Mon Jun 23 18:03:13 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 6908 6909 * tool/rbinstall.rb: support to install bundle gems. 6910 6911Mon Jun 23 17:33:11 2014 Akinori MUSHA <knu@iDaemons.org> 6912 6913 * lib/net/imap.rb (Net::IMAP#fetch): [DOC] Describe how a range in 6914 +set+ is interpreted, and mention -1 which can be used for '*'. 6915 6916Mon Jun 23 16:22:50 2014 URABE Shyouhei <shyouhei@ruby-lang.org> 6917 6918 * include/ruby/ruby.h (struct RHash): no longer. [Feature #9889] 6919 6920 * include/ruby/ruby.h (RHASH): ditto. 6921 6922 * include/ruby/ruby.h (RHASH_ITER_LEV): deprecated. Will be deleted later. 6923 6924 * include/ruby/ruby.h (RHASH_IFNONE): ditto. 6925 6926 * internal.h (struct RHash): moved here. 6927 6928 * internal.h (RHASH): ditto. 6929 6930 * hash.c (rb_hash_iter_lev): do not use this. 6931 6932 * hash.c (rb_hash_ifnone): ditto. 6933 6934Mon Jun 23 13:30:11 2014 URABE Shyouhei <shyouhei@ruby-lang.org> 6935 6936 * include/ruby/ruby.h (struct RComplex): no longer. [Feature #9888] 6937 6938 * include/ruby/ruby.h (RCOMPLEX): ditto. 6939 6940 * include/ruby/ruby.h (RCOMPLEX_SET_REAL): deprecated. Will be deleted later. 6941 6942 * include/ruby/ruby.h (RCOMPLEX_SET_IMAG): ditto. 6943 6944 * internal.h (struct RFloat): moved here. 6945 6946 * internal.h (RCOMPLEX): ditto. 6947 6948 * complex.c (rb_complex_set_real): do not use this. 6949 6950 * complex.c (rb_complex_set_imag): ditto. 6951 6952Mon Jun 23 13:10:15 2014 URABE Shyouhei <shyouhei@ruby-lang.org> 6953 6954 * include/ruby/ruby.h (struct RFloat): no longer. [Feature #9863] 6955 6956 * include/ruby/ruby.h (RFLOAT): ditto. 6957 6958 * internal.h (struct RFloat): moved here. 6959 6960 * internal.h (RFLOAT): ditto. 6961 6962Mon Jun 23 12:01:42 2014 NARUSE, Yui <naruse@ruby-lang.org> 6963 6964 * lib/uri/generic.rb (check_port): allow strings for port= as 6965 described in rdoc. 6966 6967 * lib/uri/rfc3986_parser.rb (regexp): implementation detail of above. 6968 6969Mon Jun 23 11:35:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6970 6971 * eval.c (setup_exception): set backtrace in system stack error 6972 other than the pre-allocated sysstack_error. [Feature #6216] 6973 6974 * proc.c (Init_Proc): freeze the pre-allocated sysstack_error. 6975 6976 * vm_insnhelper.c (vm_stackoverflow): raise new instance for each 6977 times without calling any methods to keep the backtrace with no 6978 further stack overflow. 6979 6980 * object.c (rb_obj_copy_ivar): extract function to copy instance 6981 variables only for T_OBJECT from init_copy. 6982 6983Mon Jun 23 11:11:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 6984 6985 * signal.c (check_stack_overflow): drop the last tag too close to 6986 the fault page, to get rid of stack overflow deadlock. 6987 [Bug #9971] 6988 6989Sun Jun 22 09:11:15 2014 NARUSE, Yui <naruse@ruby-lang.org> 6990 6991 * lib/uri/generic.rb: remove registry. 6992 'registry' is not used and RFC3986 doesn't use it. 6993 6994Sun Jun 22 09:10:09 2014 NARUSE, Yui <naruse@ruby-lang.org> 6995 6996 * lib/uri/rfc3986_parser.rb: raise exception when given a URI string 6997 has non ASCII in order to keep the regexp compiled for US-ASCII. 6998 6999Sun Jun 22 09:05:42 2014 NARUSE, Yui <naruse@ruby-lang.org> 7000 7001 * lib/uri/common.rb (URI::REGEXP): move to lib/uri/rfc2396_parser.rb. 7002 7003 * lib/uri/common.rb (URI::Parser): ditto. 7004 7005 * lib/uri/common.rb (URI.split): use RFC3986_Parser. [Feature #2542] 7006 7007 * lib/uri/common.rb (URI.parse): ditto. 7008 7009 * lib/uri/common.rb (URI.join): ditto. 7010 7011 * lib/uri/common.rb (URI.extract): deprecated. 7012 7013 * lib/uri/common.rb (URI.regexp): ditto. 7014 7015 * lib/uri/rfc2396_parser.rb: added. 7016 7017 * lib/uri/rfc3986_parser.rb: added. 7018 7019Sun Jun 22 09:04:50 2014 NARUSE, Yui <naruse@ruby-lang.org> 7020 7021 * lib/uri/mailto.rb (initialize): as previous commit, fix arg_check 7022 7023Sun Jun 22 09:01:47 2014 NARUSE, Yui <naruse@ruby-lang.org> 7024 7025 * lib/uri/ftp.rb (initialize): argument checking flag is arg_check, 7026 but arg[-1] is fragment. 7027 7028 * lib/uri/ftp.rb (initialize): explicitly specify arguments. 7029 7030Sat Jun 21 12:50:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7031 7032 * ext/fiddle/extconf.rb: supply 0 to fill RUBY_LIBFFI_MODVERSION 7033 with 3-digit. libffi 3.1 returns just 2-digit. 7034 [ruby-core:62920] [Bug #9897] 7035 7036Sat Jun 21 07:06:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7037 7038 * encoding.c (enc_find): [DOC] never accepted a symbol. 7039 [ruby-dev:48308] [Bug #9966] 7040 7041Fri Jun 20 17:15:43 2014 Koichi Sasada <ko1@atdot.net> 7042 7043 * test/lib/tracepointchecker.rb: add to check TracePoint healthiness. 7044 7045 * test/runner.rb: use it. 7046 7047Fri Jun 20 07:26:44 2014 Koichi Sasada <ko1@atdot.net> 7048 7049 * test/ruby/test_settracefunc.rb: rewrite tests with 7050 assert_consistent_call_return(). 7051 7052 assert_consistent_call_return() is also modified to check 7053 consistency. 7054 7055Fri Jun 20 07:07:28 2014 Koichi Sasada <ko1@atdot.net> 7056 7057 * compile.c (rb_iseq_compile_node): put start label of block after 7058 trace (b_call). 7059 [Bug #9964] 7060 7061 * test/ruby/test_settracefunc.rb: add a test. 7062 7063 added assert_consistent_call_return() method check call/return 7064 consistency. 7065 7066Fri Jun 20 05:26:27 2014 Koichi Sasada <ko1@atdot.net> 7067 7068 * vm_eval.c (rb_catch_protect): fix same problem of [Bug #9961]. 7069 7070 * vm_eval.c (rb_iterate): ditto. 7071 7072Thu Jun 19 21:41:30 2014 Koichi Sasada <ko1@atdot.net> 7073 7074 * vm.c (rb_vm_rewind_cfp): add new function to rewind specified cfp 7075 with invoking RUBY_EVENT_C_RETURN. 7076 [Bug #9961] 7077 7078 * vm_core.h: ditto. 7079 7080 * eval.c (rb_protect): use it. 7081 7082 * eval.c (rb_rescue2): ditto. 7083 7084 * vm_eval.c (rb_iterate): ditto. 7085 7086 * test/ruby/test_settracefunc.rb: add a test. 7087 7088 * vm_core.h (rb_vm_rewind_cfp): add the prototype declaration. 7089 7090Thu Jun 19 19:47:21 2014 Koichi Sasada <ko1@atdot.net> 7091 7092 * vm.c (invoke_block_from_c): move call/return event timing for 7093 bmethod. It can invoke inconsistent call event if this call raises 7094 argument error. 7095 [Bug #9959] 7096 7097 * vm_insnhelper.c (vm_call_bmethod_body): ditto. 7098 7099 * test/ruby/test_settracefunc.rb: add a test. 7100 7101Thu Jun 19 18:14:47 2014 Koichi Sasada <ko1@atdot.net> 7102 7103 * vm_core.h: add VM_FRAME_MAGIC_RESCUE to recognize normal block or 7104 rescue clause. 7105 7106 * vm.c (vm_exec): use VM_FRAME_MAGIC_RESCUE on at rescue/ensure. 7107 7108 * test/ruby/test_settracefunc.rb: should not invoke b_return at rescue 7109 clause. 7110 [Bug #9957] 7111 7112 * vm_dump.c (control_frame_dump): check VM_FRAME_MAGIC_RESCUE. 7113 7114 * vm_dump.c (vm_stack_dump_each): ditto. 7115 7116Thu Jun 19 13:39:11 2014 Arne Brasseur <arne@arnebrasseur.net> 7117 7118 * proc.c (rb_method_curry): Implement Method#curry, which delegates 7119 to to_proc.curry. [ruby-core:62212] [Feature #9783] 7120 7121Tue Jun 17 16:41:49 2014 Shugo Maeda <shugo@ruby-lang.org> 7122 7123 * lib/net/ftp.rb (gets, readline): read lines without LF properly. 7124 [ruby-core:63205] [Bug #9949] 7125 7126 * test/net/ftp/test_buffered_socket.rb: related test. 7127 7128Tue Jun 17 12:35:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7129 7130 * eval.c (extract_raise_opts): pass unknown options to the 7131 exception, so that exception class can receive a hash argument. 7132 [ruby-core:63203] [Feature #8257] 7133 7134Tue Jun 17 12:24:57 2014 Koichi Sasada <ko1@atdot.net> 7135 7136 * gc.c (obj_memsize_of): memsize_of(T_ZOMBIE) returns 0, not a rb_bug. 7137 ObjectSpace.count_objects_size() uses memsize_of(T_ZOMBIE). 7138 7139 This bug introduced at r46348. 7140 7141Mon Jun 16 19:00:11 2014 Koichi Sasada <ko1@atdot.net> 7142 7143 * test/runner.rb: failure message should be passed as an argument. 7144 7145Mon Jun 16 18:42:57 2014 Koichi Sasada <ko1@atdot.net> 7146 7147 * test/runner.rb: capture TracePoint stat before setup and compare 7148 it after teardown. 7149 7150Mon Jun 16 14:33:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7151 7152 * process.c (open): use UTF-8 version function to support 7153 non-ascii path properly. [ruby-core:63185] [Bug #9946] 7154 7155Sat Jun 14 10:54:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7156 7157 * array.c (rcombinate0): remove recursion, by looping with indexes 7158 stored in `p`. 7159 7160 * array.c (rpermute0): remove recursion, by looping with indexes 7161 stored in `p`. 7162 7163 * array.c (permute0): remove recursion, by looping with indexes 7164 stored in `p`. [ruby-core:63103] [Bug #9932] 7165 7166Sat Jun 14 10:52:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7167 7168 * string.c (rb_str_resize): update capa only when buffer get 7169 reallocated. 7170 http://d.hatena.ne.jp/nagachika/20140613/ruby_trunk_changes_46413_46420#r46413 7171 7172Sat Jun 14 08:28:59 2014 Zachary Scott <e@zzak.io> 7173 7174 * man/rake.1: [DOC] Update links for Rake, patch by @hsbt [Bug #9904] 7175 [Fixes GH-628] https://github.com/ruby/ruby/pull/628 7176 7177Fri Jun 13 17:58:58 2014 Koichi Sasada <ko1@atdot.net> 7178 7179 * vm_trace.c: add new method TracePoint.stat to debug 7180 TracePoint mechanism. 7181 7182 Ruby users should not use this method. So I don't note this method 7183 in the NEWS file. 7184 7185 * test/runner.rb: detect zombie active TracePoints with 7186 TracePoint.stat. 7187 7188Fri Jun 13 17:46:31 2014 Koichi Sasada <ko1@atdot.net> 7189 7190 * vm_trace.c: clear and restore recursive checking thread local data 7191 to avoid unexpected throw from TracePoint. 7192 [Bug #9940] 7193 7194 * test/ruby/test_settracefunc.rb: add a test. 7195 7196 * thread.c: added 7197 * rb_threadptr_reset_recursive_data(rb_thread_t *th); 7198 * rb_threadptr_restore_recursive_data(rb_thread_t *th, VALUE old); 7199 7200 * vm_core.h: ditto. 7201 7202Fri Jun 13 17:33:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7203 7204 * array.c (rb_ary_combination): iterate on a shared copy, and use 7205 array of indexes instead of array of chosen objects. 7206 [ruby-core:63149] [Bug #9939] 7207 7208 * array.c (yield_indexed_values): extract from permute0(), 7209 rpermute0(), and rcombinate0(). 7210 7211Fri Jun 13 13:42:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7212 7213 * array.c (rb_ary_permutation): `p` is the array of size `r`, as 7214 commented at permute0(). since `n >= r` here, buffer overflow 7215 never happened, just reduce unnecessary allocation though. 7216 7217Thu Jun 12 20:32:28 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7218 7219 * string.c (rb_str_resize): should consider the capacity instead 7220 of the old length, as pointed out by nagachika. 7221 7222Thu Jun 12 18:31:01 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7223 7224 * lib/net/http/responses.rb: added Net::HTTPPermanentRedirect(308) 7225 Contributed by @yorkie [fix GH-638] 7226 7227Thu Jun 12 13:27:38 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7228 7229 * string.c (rb_str_freeze): shrink the buffer before freezing, as 7230 pointed out by Eric Wong at [ruby-core:63119]. 7231 7232Thu Jun 12 13:09:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7233 7234 * file.c (expand_path): shrink expanded path which no longer needs 7235 rooms to append. [ruby-core:63114] [Bug #9934] 7236 7237Wed Jun 11 17:37:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7238 7239 * configure.in (rb_cv_scalar_pthread_t): pthread_t is not required 7240 to be a scalar type. 7241 7242 * thread.c (fill_thread_id_string, thread_id_str): dump pthread_t 7243 in hexadecimal form if it is not a scalar type, assume it can be 7244 represented in a pointer form otherwise. based on the patch by 7245 Rei Odaira at [ruby-core:62867]. [ruby-core:62857] [Bug #9884] 7246 7247 * thread_pthread.c (Init_native_thread, thread_start_func_1), 7248 (native_thread_create): set thread_id_str if needed. 7249 7250 * vm_core.h (rb_thread_t): add thread_id_string if needed. 7251 7252Wed Jun 11 01:53:22 2014 Koichi Sasada <ko1@atdot.net> 7253 7254 * gc.c: invoke GC before memory allocation (xmalloc/xrealloc) 7255 when GC.stress = true. 7256 [Bug #9859] 7257 7258 * test/ruby/test_gc.rb: add a test. 7259 7260Tue Jun 10 13:20:14 2014 Takeyuki FUJIOKA <xibbar@ruby-lang.org> 7261 7262 * lib/cgi/core.rb: Provide a mechanism to specify the 7263 max_multipart_length of multipart data. 7264 [Feature #8370] patch by Leif Eriksen <leif.eriksen.au@gmail.com> 7265 7266Tue Jun 10 10:57:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7267 7268 * lib/csv.rb (CSV#<<): honor explicitly given encoding. based on 7269 the patch by DAISUKE TANIWAKI <daisuketaniwaki AT gmail.com> at 7270 [ruby-core:62113]. [Bug #9766] 7271 7272Mon Jun 9 20:40:48 2014 Koichi Sasada <ko1@atdot.net> 7273 7274 * gc.c: change full GC timing to keep lower memory usage. 7275 7276 Extend heap only at 7277 (1) after major GC 7278 or 7279 (2) after several (two times, at current) minor GC 7280 7281 Details in https://bugs.ruby-lang.org/issues/9607#note-9 7282 [Bug #9607] 7283 7284Mon Jun 9 16:01:41 2014 Masahiro Ide <imasahiro9@gmail.com> 7285 7286 * gc.c (gcdebug_sentinel): fix typo, "sentinel" not "sential". 7287 [fix GH-634] 7288 7289Mon Jun 9 00:04:25 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7290 7291 * configure.in (posix_fadvise): disable use of posix_fadvise 7292 itself on 32-bit AIX. [ruby-core:62968] [Bug #9914] 7293 7294Sun Jun 8 23:28:00 2014 <kanemoto@ruby-lang.org> 7295 7296 * io.c (rb_io_advise): AIX currently does not support a 32-bit call to 7297 posix_fadvise() if _LARGE_FILES is defined. Patch by Rei Odaira. 7298 [ruby-core:62968] [Bug #9914] 7299 7300Sun Jun 8 04:52:40 2014 Jun Hiroe <Jun.Hiroe@gmail.com> 7301 7302 * string.c (rb_str_slice_bang): [DOC] update return value against 7303 a fixnum, which has changed because of M17N. [fix GH-631] 7304 7305Sat Jun 7 22:13:42 2014 Benoit Daloze <eregontp@gmail.com> 7306 7307 * numeric.c (do_coerce): Add a warning when an exception is raised 7308 or an invalid value is returned in #coerce called by 7309 numeric comparison operators and the exception 7310 thrown by the caller has no information on the failure. 7311 In the next release such exception should not be rescued or 7312 should be the cause of the caller exception. nil is accepted 7313 as the "no possible coercion" return value. See #7688. 7314 7315 * test/ruby/test_numeric.rb: Add corresponding test. 7316 7317Sat Jun 7 18:15:33 2014 Benoit Daloze <eregontp@gmail.com> 7318 7319 * numeric.c (bit_coerce): remove constant parameter `err' 7320 (always TRUE) of bit_coerce(). 7321 7322Sat Jun 7 16:01:57 2014 Yutaka Kanemoto <kanemoto@ruby-lang.org> 7323 7324 * cont.c (rb_fiber_struct): keep context.uc_stack.ss_sp and context.uc_stack.ss_size 7325 for later use. Patch by Rei Odaira. [ruby-core:62945] [Bug #9905] 7326 7327Sat Jun 7 12:51:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7328 7329 * io.c (read_all): truncate the buffer before appending read data, 7330 instead of truncating before reading. 7331 [ruby-core:55951] [Bug #8625] 7332 7333Sat Jun 7 12:28:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7334 7335 * ext/digest/digest.c (rb_digest_instance_equal): no need to call 7336 `to_s` twice. [Bug #9913] 7337 7338Sat Jun 7 11:35:01 2014 Tanaka Akira <akr@fsij.org> 7339 7340 * object.c (rb_mod_initialize_clone): Override Kernel#initialize_clone 7341 to avoid an exception on Class.new.freeze.clone.to_s. 7342 Reported by Andrew Grimm. [ruby-core:41858] [Bug #5828] 7343 7344Sat Jun 7 06:03:11 2014 Benoit Daloze <eregontp@gmail.com> 7345 7346 * ext/digest/digest.c (rb_digest_instance_equal): 7347 fix #== for non-string arguments. [ruby-core:62967] [Bug #9913] 7348 7349 * test/digest/test_digest.rb: add test for above. 7350 7351Fri Jun 6 22:19:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7352 7353 * compile.c (private_recv_p): check by node type, instead of a 7354 magic number. 7355 7356 * node.h (NODE_PRIVATE_RECV), parse.y (attrset_gen): remove 7357 7358Fri Jun 6 17:07:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7359 7360 * compile.c (iseq_compile_each), parse.y (new_attr_op_assign_gen): 7361 allow op assign to a private attribute. 7362 [ruby-core:62949] [Bug #9907] 7363 7364Fri Jun 6 13:39:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7365 7366 * io.c (io_setstrbuf, io_read): should not shorten the given buffer until 7367 read succeeds. [ruby-core:55951] [Bug #8625] 7368 7369Fri Jun 6 07:41:41 2014 Aaron Patterson <aaron@tenderlovemaking.com> 7370 7371 * ext/psych/lib/psych/visitors/yaml_tree.rb: dump empty symbols with a 7372 tag so that they can be parsed on input. [Bug #9873] [ruby-core:62825] 7373 * test/psych/test_symbol.rb: test for change 7374 7375Thu Jun 5 16:08:39 2014 Koichi Sasada <ko1@atdot.net> 7376 7377 * gc.c (gc_page_sweep): refactoring. 7378 7379 * gc.c (gc_page_sweep): should not set, but add final_slots into 7380 sweep_page->final_slots. 7381 7382Thu Jun 5 14:36:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7383 7384 * configure.in (jemalloc): check for the header regardless drop-in 7385 libjemalloc is found, for `malloc_conf` declaration. 7386 7387 * version.c (ruby_show_version): show `malloc_conf` if set. 7388 [Feature #9113] 7389 7390 * configure.in (with-jemalloc): also check for header, for ABIs 7391 which JEMALLOC_MANGLE is needed, i.e., Mach-O and PE-COFF 7392 platforms. [ruby-core:62939] [Feature #9113] 7393 7394 * include/ruby/missing.h: include alternative malloc header to 7395 replace memory management functions. 7396 7397 * dln.c, io.c, parse.y, st.c: undef malloc family before 7398 re-definition to suppress warnings. 7399 7400Thu Jun 5 12:52:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7401 7402 * man/ruby.1: remove rubyforge entry. 7403 7404Thu Jun 5 12:45:32 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7405 7406 * misc/README: use github link instead of rubyforge. 7407 7408Thu Jun 5 10:03:29 2014 Koichi Sasada <ko1@atdot.net> 7409 7410 * gc.c (obj_free): check also FL_PROMOTED bit by RVALUE_OLD_P(). 7411 7412Thu Jun 5 03:45:28 2014 Eric Wong <e@80x24.org> 7413 7414 * configure.in: add --with-jemalloc option 7415 [ruby-core:62912] 7416 7417Wed Jun 4 22:28:14 2014 Koichi Sasada <ko1@atdot.net> 7418 7419 * gc.c: introduce RZombie to manage zombie objects. 7420 Rewrite finalizing logics with this type. 7421 7422 * gc.c (gc_verify_internal_consistency): verify zombie (finalizing) 7423 objects count. 7424 7425Wed Jun 4 22:09:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7426 7427 * re.c (match_aref, rb_reg_regsub): consider encoding of captured 7428 names, encoding-incompatible should not match. 7429 [ruby-dev:48278] [Bug #9903] 7430 7431Wed Jun 4 21:23:52 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7432 7433 * re.c (match_aref): should not ignore name after NUL byte. 7434 [ruby-dev:48275] [Bug #9902] 7435 7436Wed Jun 4 04:08:37 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7437 7438 * vm.c (core_hash_merge_kwd): should return the result hash, which 7439 may be converted from and differ from the given argument. 7440 [ruby-core:62921] [Bug #9898] 7441 7442Tue Jun 3 23:32:34 2014 Tanaka Akira <akr@fsij.org> 7443 7444 * ruby.c (load_file_internal2): Extracted from load_file_internal. 7445 (load_file_internal): Invoke load_file_internal2 using rb_protect. 7446 Close an opened FD if load_file_internal2 raises an exception. 7447 7448Tue Jun 3 19:11:45 2014 Koichi Sasada <ko1@atdot.net> 7449 7450 * gc.c (rb_objspace_free): should not rest_sweep() here. 7451 Some data structures are already freed. 7452 7453Tue Jun 3 18:43:51 2014 Koichi Sasada <ko1@atdot.net> 7454 7455 * test/ruby/test_gc.rb: allocate more objects to invoke GC by newobj. 7456 GC allows extending pages depends on heap_increment. 7457 7458Tue Jun 3 18:01:27 2014 Koichi Sasada <ko1@atdot.net> 7459 7460 * gc.c (rb_gc_call_finalizer_at_exit): add 7461 gc_verify_internal_consistency() when RGENGC_CHECK_MODE >= 2. 7462 7463Tue Jun 3 17:54:21 2014 Koichi Sasada <ko1@atdot.net> 7464 7465 * gc.c: change the counting method for young objects. 7466 clear counter at the beginning of every GC and 7467 count promoted (infant->young) objects. 7468 7469 Some promotions (infant->young) are transition of promoting to old 7470 objects. We should not count such promotions. 7471 7472 With this technique, we don't need to check young objects 7473 at obj_free(). 7474 7475Tue Jun 3 16:38:19 2014 Koichi Sasada <ko1@atdot.net> 7476 7477 * gc.c: add verifying counters code in gc_verify_internal_consistency(). 7478 gc_verify_internal_consistency() counts all 7479 - live objects 7480 - young objects (if age2 promotion) 7481 - old objects 7482 in all pages and compares with objspace managing counters. 7483 7484 * gc.c (gc_after_sweep): do gc_verify_internal_consistency() 7485 when RGENGC_CHECK_MODE >= 2. 7486 7487Tue Jun 3 13:14:04 2014 Shugo Maeda <shugo@ruby-lang.org> 7488 7489 * lib/net/imap.rb (body_type_1part): Gmail IMAP reports a body 7490 type as "MIXED" followed immediately by params 7491 [ruby-core:62864] [Bug #9885] 7492 Patch by @rayners (David Raynes). [Fixes GH-622] 7493 https://github.com/ruby/ruby/pull/622 7494 7495Tue Jun 3 13:18:24 2014 Koichi Sasada <ko1@atdot.net> 7496 7497 * gc.c (objspace_live_slot): live slot count should not include final 7498 slot (contains T_ZOMBIE) count. 7499 7500Tue Jun 3 13:03:21 2014 Koichi Sasada <ko1@atdot.net> 7501 7502 * gc.c (obj_free): fix spacing. 7503 7504Tue Jun 3 12:59:32 2014 Koichi Sasada <ko1@atdot.net> 7505 7506 * gc.c (check_gen_consistency): fix error message. 7507 7508Tue Jun 3 12:40:23 2014 Koichi Sasada <ko1@atdot.net> 7509 7510 * gc.c: count old/young objects more correctly. 7511 7512 * gc.c (RVALUE_DEMOTE_FROM_OLD): decrement old object count. 7513 7514 * gc.c (RVALUE_DEMOTE_FROM_YOUNG): decrement young object count. 7515 7516 * gc.c (rb_gc_resurrect): increment old object count. 7517 7518 * gc.c (gc_marks_body): should not add old object count. 7519 This code is completely my misunderstanding. 7520 7521 * gc.c (rb_gc_force_recycle): decrement young or old object count 7522 correctly. 7523 7524Tue Jun 3 12:26:47 2014 Koichi Sasada <ko1@atdot.net> 7525 7526 * test/ruby/memory_status.rb: add $LOAD_PATH to load test/unit 7527 correctly for fiddle/import unavailable environments. 7528 7529Tue Jun 3 09:45:13 2014 NAKAMURA Usaku <usa@ruby-lang.org> 7530 7531 * test/openssl/test_ssl.rb (OpenSSL::TestSSL#test_verify_result): 7532 shouldn't use same server for respective tests, because the 1st 7533 test sometimes kills the server main loop silently. 7534 [Bug #9881] [ruby-dev:48266] 7535 7536Tue Jun 3 01:34:59 2014 Zachary Scott <e@zzak.io> 7537 7538 * README.EXT: [DOC] Add rb_call_super when subclassing from @robin850 7539 [Fixes GH-623] https://github.com/ruby/ruby/pull/623 7540 7541Mon Jun 2 17:14:49 2014 Koichi Sasada <ko1@atdot.net> 7542 7543 * vm.c (ruby_vm_destruct): remove useless call of 7544 rb_gc_force_recycle(). 7545 7546 At this line, a VM object is already freed 7547 (is changed to T_NONE) by rb_gc_call_finalizer_at_exit(). 7548 7549Mon Jun 2 15:50:24 2014 Koichi Sasada <ko1@atdot.net> 7550 7551 * eval.c (rb_using_refinement): add write-barriers for 7552 cref->nd_refinements. 7553 7554Mon Jun 2 12:26:08 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7555 7556 * CONTRIBUTING.md: added contributing guide for github. [fix GH-625] 7557 7558Mon Jun 2 07:30:33 2014 Tanaka Akira <akr@fsij.org> 7559 7560 * test/ruby/envutil.rb (default_warning): New method. 7561 7562 * test/ruby/test_autoload.rb: Use EnvUtil.default_warning. 7563 7564Mon Jun 2 07:05:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7565 7566 * include/ruby/encoding.h: constify `rb_encoding` arguments. 7567 7568 * include/ruby/oniguruma.h: constify `OnigEncoding` arguments. 7569 7570Sun Jun 1 12:05:10 2014 Tanaka Akira <akr@fsij.org> 7571 7572 * test/drb: Wrap tests definitions by DRbTests module. This makes 7573 several tests (ACLEntryTest, TestBug4409, etc.) easier to understand 7574 that they are tests for DRb. 7575 7576Sun Jun 1 11:36:25 2014 Tanaka Akira <akr@fsij.org> 7577 7578 * lib/rinda/ring.rb (RingFinger#make_socket): Close the socket on 7579 exception. 7580 7581Sun Jun 1 06:55:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7582 7583 * parse.y (intern_str): dynamic attrset ID is registered by 7584 `rb_id_attrset()` already, so no further registration is needed. 7585 [ruby-core:62861] 7586 7587Sun Jun 1 04:52:47 2014 Zachary Scott <e@zzak.io> 7588 7589 * lib/English.rb: [DOC] $LOADED_FEATURES moved to load.c [Fixes GH-620] 7590 Patch submitted by @leafac in https://github.com/ruby/ruby/pull/620 7591 * doc/globals.rdoc: Added $LOADED_FEATURES to list 7592 7593Sat May 31 22:30:14 2014 Tanaka Akira <akr@fsij.org> 7594 7595 * test/lib/leakchecker.rb: Leak checker extracted from 7596 test/lib/minitest/unit.rb. 7597 7598Sat May 31 21:15:43 2014 URABE Shyouhei <shyouhei@ruby-lang.org> 7599 7600 * thread.c (rb_thread_atfork_internal): My compiler complains 7601 about this variable being used before initialized. I looked at 7602 the code and expanded the macro and turned out it was actually 7603 USED for pointer arithmetic, not dereferenced. So this was 7604 never a serious bug. But is annoying indeed to see warnings 7605 every time. I added `=0` and all went healthy. 7606 7607 * configure.in: Also, I found that the problematic macro expansion 7608 only happens when we lack __typeof__ C extension, which shall 7609 not be the case of my compiler. I added AC_C_TYPEOF to kick ass. 7610 7611Sat May 31 16:32:50 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7612 7613 * lib/ipaddr.rb: extracted inline tests into test dir. 7614 * test/test_ipaddr.rb: ditto. 7615 7616Sat May 31 16:29:21 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7617 7618 * ext/digest/lib/digest/hmac.rb: extracted inline tests into test dir. 7619 * test/digest/test_digest_hmac.rb: ditto. 7620 7621Sat May 31 16:02:03 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7622 7623 * test/test_syslog.rb: remove executable. 7624 7625Sat May 31 08:58:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7626 7627 * enc/unicode.c (init_case_fold_table): no longer need to 7628 initialize tables at runtime. 7629 7630 * enc/unicode/case-folding.rb (lookup_hash): make perfect hash to 7631 lookup case unfolding table 3. 7632 7633 * enc/unicode/case-folding.rb (lookup_hash): make perfect hash to 7634 lookup case unfolding table 2. 7635 7636 * enc/unicode/case-folding.rb (lookup_hash): make perfect hash to 7637 lookup case unfolding table 1. 7638 7639 * enc/unicode/case-folding.rb (lookup_hash): make perfect hash to 7640 lookup case folding table. 7641 7642 * enc/unicode/case-folding.rb (print_table): merge non-locale and 7643 locale tables, and reduce initializing loops. 7644 7645 * enc/unicode/case-folding.rb (CaseFolding): modularize, and add 7646 --output-file option. 7647 7648 * enc/unicode/case-folding.rb: script to convert CaseFolding.txt, 7649 translated from CaseFolding.py. 7650 7651Sat May 31 08:31:41 2014 Tanaka Akira <akr@fsij.org> 7652 7653 * test/lib/minitest/unit.rb: Check Tempfile leaks for each test method 7654 again. 7655 7656Sat May 31 03:50:50 2014 Zachary Scott <e@zzak.io> 7657 7658 * lib/delegate.rb: [DOC] Document raise in Delegator class 7659 Patch by @lucasmazza. [Fixes GH-621] 7660 https://github.com/ruby/ruby/pull/621 7661 7662Fri May 30 21:23:26 2014 Tanaka Akira <akr@fsij.org> 7663 7664 * lib/webrick/server.rb: Use a pipe to detect server shutdown. 7665 shutdown() or close() for listening socket is not a reliable. 7666 Actually, both doesn't work (doesn't wake up select()) on 7667 DragonFly BSD 3.6.2. 7668 7669 * test/webrick/utils.rb: :ShutdownSocketWithoutClose is not required 7670 now to immediate server shutdown detection. 7671 This fixes fd leaks. 7672 7673 * test/net/http/utils.rb: Ditto. 7674 7675Fri May 30 20:58:37 2014 Tanaka Akira <akr@fsij.org> 7676 7677 * test/lib/minitest/unit.rb (check_fd_leak): Sort the inspected 7678 objects list for a FD. 7679 7680Fri May 30 18:06:55 2014 Tanaka Akira <akr@fsij.org> 7681 7682 * test/lib/minitest/unit.rb (check_fd_leak): Try GC to delete leaked 7683 FDs. 7684 7685Fri May 30 12:05:59 2014 NARUSE, Yui <naruse@ruby-lang.org> 7686 7687 * test/lib/test/unit/parallel.rb (_run_suite): orig_stdout may be nil 7688 though I don't know the reason. 7689 7690Fri May 30 11:33:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7691 7692 * string.c (rb_str_substr): need to reset code range for shared 7693 string too, not only copied string. 7694 [ruby-core:62842] [Bug #9882] 7695 7696Fri May 30 10:22:21 2014 Mark Lorenz <mlorenz@covermymeds.com> 7697 7698 * lib/erb.rb (result): [DOC] no longer accepts a Proc, as 7699 Kernel.eval does not. [fix GH-619] 7700 7701Fri May 30 07:25:46 2014 Tanaka Akira <akr@fsij.org> 7702 7703 * ext/-test-/dir: Dir#fileno implemented. 7704 7705 * test/lib/minitest/unit.rb (find_fds): Don't return the fd used to 7706 scan /proc/$$/fd. 7707 7708Fri May 30 04:48:00 2014 Eric Wong <e@80x24.org> 7709 7710 * parse.y (rb_gc_mark_parser): remove, empty since r8758 7711 * internal.h: ditto, not usable from extensions since 2.0.0 7712 * gc.c (gc_mark_roots): remove checkpoint for parser 7713 7714Thu May 29 23:27:50 2014 Rei Odaira <Rei.Odaira@gmail.com> 7715 7716 * signal.c (ruby_signal): should return either `old.sa_sigaction` 7717 or `old.sa_handler`, depending on whether `SA_SIGINFO` is set in 7718 `old.sa_flags`, because they may not be a union. 7719 [ruby-core:62836] [Bug #9878] 7720 7721Thu May 29 23:11:20 2014 Tanaka Akira <akr@fsij.org> 7722 7723 * io.c (pipe_open): Close pipes when rb_execarg_fixup() raises 7724 an exception. 7725 (rb_execarg_fixup_v): New function. 7726 7727Thu May 29 22:18:57 2014 Tanaka Akira <akr@fsij.org> 7728 7729 * test/lib/minitest/unit.rb (capture_subprocess_io): Close fds. 7730 7731Thu May 29 19:47:08 2014 Tanaka Akira <akr@fsij.org> 7732 7733 * io.c (rb_io_s_pipe): Close pipes if io_encoding_set() raises an 7734 exception. 7735 (io_encoding_set_v): New function. 7736 7737Thu May 29 19:42:49 2014 Tanaka Akira <akr@fsij.org> 7738 7739 * lib/csv.rb (CSV.open): Close the opened file when an exception 7740 occur. 7741 7742Thu May 29 19:31:10 2014 Tanaka Akira <akr@fsij.org> 7743 7744 * ext/openssl/lib/openssl/ssl.rb (SSLServer#accept): Close a socket 7745 if any exception occur. 7746 7747Thu May 29 05:05:29 2014 Eric Wong <e@80x24.org> 7748 7749 * include/ruby/ruby.h: Hide Symbol internals. 7750 (struct RSymbol): moved to internal.h 7751 (RSYMBOL): ditto 7752 7753Thu May 29 00:28:56 2014 Tanaka Akira <akr@fsij.org> 7754 7755 * ext/socket/unixsocket.c (rsock_init_unixsock): Open a socket 7756 after path length check. 7757 This fixes a fd leak by TestSocket_UNIXSocket#test_too_long_path. 7758 7759Wed May 28 23:04:35 2014 Tanaka Akira <akr@fsij.org> 7760 7761 * test/ruby/test_io.rb (test_flush_in_finalizer1): Use 7762 ObjectSpace.each_object to close files. 7763 GC.start is not reliable. 7764 7765Wed May 28 19:00:31 2014 Tanaka Akira <akr@fsij.org> 7766 7767 * lib/net/imap.rb (Net::IMAP#initialize): Close the opened socket when 7768 any exception occur. 7769 This fixes a fd leak by IMAPTest#test_imaps_post_connection_check 7770 which start_tls_session() raises an exception. 7771 7772Wed May 28 18:06:13 2014 Tanaka Akira <akr@fsij.org> 7773 7774 * ext/openssl/ossl_ssl.c (ossl_ssl_close): Fix sync_close to work 7775 when SSL is not started. 7776 This fix the fd leak by test_https_proxy_authentication in 7777 test/net/http/test_https_proxy.rb. 7778 7779Wed May 28 10:29:28 2014 Eric Wong <e@80x24.org> 7780 7781 * vm.c (rb_vm_living_threads_foreach): remove function 7782 [ruby-core:62745] 7783 * thread.c (terminate_i): remove 7784 * thread.c (terminate_all): implement (inlines old terminate_i) 7785 * thread.c (rb_thread_terminate_all): use terminate_all 7786 * thread.c (rb_thread_fd_close_i): remove 7787 * thread.c (rb_thread_fd_close): iterate inline 7788 * thread.c (thread_list_i): remove 7789 * thread.c (rb_thread_list): iterate inline 7790 * thread.c (rb_thread_atfork_internal): iterate inline 7791 * thread.c (terminate_atfork_i): update types to remove casts 7792 * thread.c (terminate_atfork_before_exec_i): ditto 7793 * thread.c (struct thgroup_list_params): remove definition 7794 * thread.c (thgroup_list_i): remove 7795 * thread.c (thgroup_list): iterate inline 7796 * thread.c (check_deadlock_i): remove 7797 * thread.c (debug_deadlock_check): implement (inlines check_deadlock_i) 7798 * thread.c (debug_i): remove 7799 * thread.c (rb_check_deadlock): iterate inline 7800 * vm.c (vm_mark_each_thread_func): remove 7801 * vm.c (rb_vm_mark): iterate inline 7802 * vm_core.h (rb_vm_living_threads_remove): remove 7803 * vm_trace.c (clear_trace_func_i): remove 7804 * vm_trace.c (rb_clear_trace_func): iterate inline 7805 7806Wed May 28 09:30:51 2014 Eric Wong <e@80x24.org> 7807 7808 * signal.c (signal_exec): ignore immediate cmd for SIG_IGN 7809 * signal.c (trap_handler): set cmd to true for SIG_IGN 7810 * signal.c (trap): handle nil and true values for oldcmd 7811 [Bug #9835] 7812 7813Wed May 28 01:02:54 2014 Tanaka Akira <akr@fsij.org> 7814 7815 * lib/tempfile.rb (Tempfile#inspect): Show "(closed)" if the tempfile 7816 is closed. 7817 7818Wed May 28 00:38:09 2014 Tanaka Akira <akr@fsij.org> 7819 7820 * test/lib/minitest/unit.rb: Use Tempfile#close! instead of 7821 Tempfile#unlink to close file descriptors. 7822 7823 * test/openssl/test_config.rb: Ditto. 7824 7825 * test/ruby/test_io.rb: Ditto. 7826 7827Wed May 28 00:06:18 2014 Tanaka Akira <akr@fsij.org> 7828 7829 * lib/net/ftp.rb (transfercmd): Close TCP server socket even if an 7830 exception occur. 7831 7832Tue May 27 23:50:07 2014 Tanaka Akira <akr@fsij.org> 7833 7834 * lib/cgi/core.rb: Use Tempfile#close! instead of Tempfile#unlink 7835 to close file descriptors. 7836 7837Tue May 27 23:06:46 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7838 7839 * parse.y (parser_number_literal_suffix): refine error message for 7840 extra dot and digits. 7841 7842Tue May 27 22:44:20 2014 Tanaka Akira <akr@fsij.org> 7843 7844 * test/rexml: Avoid fd leaks. 7845 7846Tue May 27 22:24:25 2014 Kouhei Sutou <kou@cozmixng.org> 7847 7848 * test/rexml/test_document.rb: Indent. 7849 7850Tue May 27 22:15:29 2014 Kouhei Sutou <kou@cozmixng.org> 7851 7852 * test/rexml/test_document.rb: Wrap by REXMLTests module. 7853 7854Tue May 27 22:11:10 2014 Kouhei Sutou <kou@cozmixng.org> 7855 7856 * test/rexml/test_encoding_2.rb: Remove a needless file. 7857 7858Tue May 27 22:10:30 2014 Kouhei Sutou <kou@cozmixng.org> 7859 7860 * test/rexml/test_contrib.rb: Indent. 7861 7862Tue May 27 21:28:16 2014 NARUSE, Yui <naruse@ruby-lang.org> 7863 7864 * ext/socket/ifaddr.c (ifaddr_inspect_flags): support IFF_SIMPLEX. 7865 7866Tue May 27 21:03:03 2014 Kouhei Sutou <kou@cozmixng.org> 7867 7868 * test/rexml/: Use REXMLTests as wrapping module for REXML tests. 7869 I avoid using the same module for library in test because 7870 it provides "include REXML" environment in test. Normally, 7871 users don't use REXML on "include REXML" environment. So I 7872 don't want to write tests on "include REXML" environment. 7873 7874Tue May 27 20:59:37 2014 Kouhei Sutou <kou@cozmixng.org> 7875 7876 * test/rexml/test_comment.rb: Remove needless REXML module wrapping. 7877 7878Tue May 27 20:56:49 2014 Kouhei Sutou <kou@cozmixng.org> 7879 7880 * test/openssl/test_pkcs7.rb: Fix inverted expected and actual values. 7881 7882Tue May 27 20:26:06 2014 NAKAMURA Usaku <usa@ruby-lang.org> 7883 7884 * test/ruby/test_io.rb (test_flush_in_finalizer1): some opened fds are 7885 remain before GC, so unlink the tempfile is failed. 7886 7887Tue May 27 19:07:26 2014 Tanaka Akira <akr@fsij.org> 7888 7889 * io.c (rb_io_autoclose_p): Don't raise on frozen IO. 7890 7891 * test/lib/minitest/unit.rb: IO#autoclose? may raise IOError. 7892 7893Tue May 27 19:01:49 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7894 7895 * test/openssl/test_pair.rb: Modify TestSSL#test_read_and_write 7896 to handle partial sysreads. [Bug #7398][ruby-core:49563] 7897 * test/openssl/test_ssl.rb: ditto. 7898 7899Tue May 27 18:46:23 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7900 7901 * test/openssl/test_pkcs7.rb: Add tests for PKCS7#type= and add_data. 7902 [Feature #7399][ruby-core:49565] 7903 7904Tue May 27 17:45:09 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7905 7906 * test/openssl/test_hmac.rb (test_binary_update): Added Test for 7907 HMAC signing with UTF-8 String. [Bug #7512][ruby-core:50559] 7908 7909Tue May 27 17:10:14 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7910 7911 * test/runner.rb: fixed randomly test failure. 7912 [Bug #6573][ruby-core:45563] 7913 7914Tue May 27 16:58:12 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 7915 7916 * test/test_timeout.rb (test_timeout): inverted test condition. 7917 [Bug #8523] 7918 7919Tue May 27 12:24:22 2014 Tanaka Akira <akr@fsij.org> 7920 7921 * test/lib/minitest/unit.rb: Show leaked file descriptors. 7922 7923Tue May 27 11:12:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7924 7925 * io.c (rb_io_fileno, rb_io_inspect): non-modification does not 7926 error on frozen IO. [ruby-dev:48241] [Bug #9865] 7927 7928Tue May 27 00:00:21 2014 yui-knk <spiketeika@gmail.com> 7929 7930 * insns.def (defineclass): fix typo in the instruction comment. 7931 [fix GH-618] 7932 7933Mon May 26 16:33:15 2014 NAKAMURA Usaku <usa@ruby-lang.org> 7934 7935 * test/ruby/test_file.rb: skip the test of atime on Windows, because 7936 Windows delays updating atime about 1 hour. 7937 see more details: 7938 http://msdn.microsoft.com/en-us/library/windows/desktop/ms724290%28v=vs.85%29.aspx 7939 7940Mon May 26 12:25:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7941 7942 * lib/optionparser.rb, lib/optparse.rb (OptParse): aliases. 7943 [ruby-core:62751] [Feature #9864] 7944 7945Mon May 26 07:59:34 2014 Tanaka Akira <akr@fsij.org> 7946 7947 * test/lib/minitest/unit.rb: Show Finished threads line-by-line. 7948 7949Mon May 26 01:39:02 2014 Zachary Scott <e@zzak.io> 7950 7951 * lib/csv.rb: Reject nil as data source for CSV.new, patch by @Peeja. 7952 [Fixes GH-580] https://github.com/ruby/ruby/pull/580 7953 7954Mon May 26 01:07:51 2014 Tanaka Akira <akr@fsij.org> 7955 7956 * test/lib/minitest/unit.rb: Show leaked threads and tempfiles 7957 line-by-line. 7958 7959Sun May 25 23:02:06 2014 Tanaka Akira <akr@fsij.org> 7960 7961 * test/lib/minitest/unit.rb (MiniTest::Assertions#diff): Remove 7962 tempfiles. 7963 7964Sun May 25 22:42:27 2014 Tanaka Akira <akr@fsij.org> 7965 7966 * test/lib/minitest/unit.rb: Check tempfile leak for each test class. 7967 7968Sun May 25 20:31:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7969 7970 * configure.in (ac_cv_func_{getcontext,setcontext}): do not 7971 disable ucontext.h entirely, but disable use of functions only. 7972 `ucontext_t` is necessary in the signal handler now. 7973 7974Sun May 25 20:00:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 7975 7976 * signal.c (check_stack_overflow): revert part of r46100, the 7977 previous condition was correct, and fix compilation error on 7978 other architecture linux. [ruby-core:62746] [Bug #9862] 7979 7980Sun May 25 17:09:13 2014 Tanaka Akira <akr@fsij.org> 7981 7982 * test/lib/minitest/unit.rb: Less ObjectSpace.each_object(Tempfile) 7983 invocation. 7984 7985Sun May 25 16:54:06 2014 Tanaka Akira <akr@fsij.org> 7986 7987 * test/lib/minitest/unit.rb: Use Thread.list instead of 7988 ObjectSpace.each_object(Thread). 7989 7990Sun May 25 15:53:54 2014 Tanaka Akira <akr@fsij.org> 7991 7992 * lib/rinda/ring.rb (Rinda::RingServer#shutdown): Join the killed 7993 threads. 7994 7995Sun May 25 15:26:17 2014 Tanaka Akira <akr@fsij.org> 7996 7997 * lib/webrick/utils.rb: Override the inspect method of the thread 7998 used in WEBrick::Utils::TimeoutHandler. 7999 8000Sun May 25 14:22:30 2014 Tanaka Akira <akr@fsij.org> 8001 8002 * test/openssl: Join threads. 8003 8004Sun May 25 12:46:47 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8005 8006 * error.c (rb_bug_context): new function to report bug with 8007 context. 8008 8009 * vm_dump.c (rb_vm_bugreport): accepts `ucontext_t` argument to 8010 dump machine registers. based on [GH-584]. 8011 8012 * signal.c (sigbus, sigsegv): dump machine registers if available. 8013 8014Sun May 25 12:32:42 2014 Tanaka Akira <akr@fsij.org> 8015 8016 * test/lib/minitest/unit.rb: Sort leaked threads and tempfiles. 8017 8018Sun May 25 12:15:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8019 8020 * signal.c (check_stack_overflow): fix condition to use ucontext 8021 register, mcontext_t dereference, and its member names, on Mac 8022 OS X. 8023 8024Sun May 25 11:58:26 2014 Zachary Scott <e@zzak.io> 8025 8026 * enumerator.c: [DOC] Fix example to show Enumerator#peek behavior 8027 Patch by Erik Hollembeak [Bug #9814] 8028 8029Sun May 25 11:56:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8030 8031 * vsnprintf.c (BSD_vfprintf): fix string width when precision is 8032 given. as the result of `memchr` is NULL or its offset from the 8033 start cannot exceed the size, the comparison was always false. 8034 [ruby-core:62737] [Bug #9861] 8035 8036Sun May 25 11:32:42 2014 Zachary Scott <e@zzak.io> 8037 8038 * lib/yaml.rb: Remove Psych::EngineManager [Bug #8344] 8039 * test/psych/*: ditto. 8040 8041Sun May 25 10:34:15 2014 Zachary Scott <e@zzak.io> 8042 8043 * doc/regexp.rdoc: [DOC] Clarify whitespace matching by @allolex 8044 [Fixes GH-606] https://github.com/ruby/ruby/pull/606 8045 8046Sun May 25 10:19:34 2014 Zachary Scott <e@zzak.io> 8047 8048 * enum.c: [DOC] Use #find in example to clarify alias by @rachellogie 8049 Patch submitted via documenting-ruby/ruby#34 8050 8051Sun May 25 10:16:43 2014 Zachary Scott <e@zzak.io> 8052 8053 * cont.c: [DOC] Fix rdoc in example for Fiber#transfer by @majjoha 8054 Patch submitted via documenting-ruby/ruby#33 8055 8056Sun May 25 10:01:11 2014 Zachary Scott <e@zzak.io> 8057 8058 * lib/irb.rb: [DOC] Fixed syntax error in example by @jasdeepsingh. 8059 Patch submitted via documenting-ruby/ruby#32 8060 8061Sun May 25 09:58:02 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8062 8063 * test/fileutils/test_fileutils.rb (test_chown_R): Add tests for 8064 chown_R. [Feature #9383][ruby-core:59641] 8065 8066Sun May 25 09:57:09 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8067 8068 * test/fileutils/test_fileutils.rb: Added recursively chown tests. 8069 [Feature #9303][ruby-core:59325] 8070 8071Sun May 25 09:41:56 2014 Zachary Scott <e@zzak.io> 8072 8073 * class.c: [DOC] Fixed grammar and examples of instance_methods. 8074 By @alex-frost via documenting-ruby/ruby#31 8075 8076Sun May 25 09:40:44 2014 Tanaka Akira <akr@fsij.org> 8077 8078 * test/lib/minitest/unit.rb: Show leaked threads and tempfiles. 8079 8080Sun May 25 08:54:38 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8081 8082 * test/openssl/test_partial_record_read.rb: Testing read_nonblock on 8083 a partial TLS record results in IO::WaitReadable by @mohamedhafez. 8084 [fix GH-547] 8085 8086Sun May 25 08:43:16 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8087 8088 * lib/logger.rb: refactored to include Logger::Period. 8089 8090Sun May 25 06:50:19 2014 Zachary Scott <e@zzak.io> 8091 8092 * vm_eval.c: [DOC] Improve instance_eval description when given a 8093 block or String arguments. By @nathanl via documenting-ruby/ruby#28 8094 8095Sun May 25 06:29:39 2014 Zachary Scott <e@zzak.io> 8096 8097 * array.c: [DOC] Clarify default argument for Array.new. 8098 By @Elffers [Fixes GH-610] 8099 8100Sat May 24 22:37:20 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8101 8102 * array.c: [DOC] Add more documents to shuffle! and shuffle. 8103 Contributed by @JuanitoFatas [ci skip][fix GH-612] 8104 8105Sat May 24 22:28:55 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8106 8107 * test/lib/minitest/.document: removed unused configuration. 8108 8109Sat May 24 19:08:47 2014 Tanaka Akira <akr@fsij.org> 8110 8111 * test/lib/minitest/spec.rb: Unused file removed. 8112 8113 * test/lib/minitest/autorun.rb: Don't require minitest/spec. 8114 8115 * test/lib/minitest/benchmark.rb: Ditto. 8116 8117Sat May 24 18:45:30 2014 Tanaka Akira <akr@fsij.org> 8118 8119 * test/benchmark/test_benchmark.rb: Use test/unit. 8120 8121Sat May 24 16:20:59 2014 Eric Wong <e@80x24.org> 8122 8123 * process.c (proc_getgroups, proc_setgroups): use ALLOCV_N 8124 [Bug #9856] 8125 8126Sat May 24 15:49:39 2014 Tanaka Akira <akr@fsij.org> 8127 8128 * test/lib/minitest/unit.rb (parallelize_me!): Removed. 8129 This fixes the line-by-line structure of the test result in verbose 8130 mode. [ruby-core:54905] 8131 8132 * test/lib/minitest/parallel_each.rb: Removed. 8133 8134 * test/minitest/test_minitest_mock.rb: Don't call parallelize_me!. 8135 8136 * test/minitest/test_minitest_spec.rb: Ditto. 8137 8138 * test/minitest/test_minitest_unit.rb: Ditto. 8139 Tests for parallel feature removed. 8140 8141Sat May 24 15:29:10 2014 Tanaka Akira <akr@fsij.org> 8142 8143 * test/lib/minitest/hell.rb: Unused file removed. 8144 8145 * test/lib/minitest/pride.rb: Ditto. 8146 8147Sat May 24 15:05:32 2014 yui-knk <spiketeika@gmail.com> 8148 8149 * enumerator.c (yielder_yield_push): Insert a break after the 8150 method return value. [fix GH-617] 8151 8152Sat May 24 14:59:12 2014 Tanaka Akira <akr@fsij.org> 8153 8154 * test/lib/minitest: Remove comments not appropriate now. 8155 8156 * test/minitest: Ditto. 8157 8158Sat May 24 14:02:04 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8159 8160 * NEWS: added minitest changes. 8161 8162Sat May 24 13:42:46 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8163 8164 * test/lib/test/unit/test-unit.gemspec: removed needless gemspec file. 8165 8166Sat May 24 09:39:06 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8167 8168 * defs/default_gems: removed minitest entry. 8169 8170Sat May 24 06:17:33 2014 Ryan Davis <ryand-ruby@zenspider.com> 8171 8172 * lib/minitest: minitest 4.7.5 removed. Need to support proper 8173 gem packaging / installation before minitest 5 can be added. 8174 8175Sat May 24 05:54:06 2014 Tanaka Akira <akr@fsij.org> 8176 8177 * ext/socket/mkconstants.rb: More constants 8178 8179Sat May 24 00:25:34 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 8180 8181 * NEWS: add information of incompatibility about Prime.prime? 8182 * lib/prime.rb: fix docs. 8183 8184Fri May 23 21:36:28 2014 Josh Goebel <dreamer3@gmail.com> 8185 8186 * net/protocol.rb (using_each_crlf_line): fix SMTP dot-stuffing 8187 for messages not ending with a new-line. 8188 [ruby-core:61441] [Bug #9627] [fix GH-616] 8189 8190Fri May 23 03:48:08 2014 Eric Wong <e@80x24.org> 8191 8192 * gc.c (rb_free_m_tbl): mark function as static 8193 8194 * method.h (rb_free_m_tbl): remove prototype 8195 8196Thu May 22 22:58:27 2014 Tanaka Akira <akr@fsij.org> 8197 8198 * ext/socket/mkconstants.rb: More TCP option constants. 8199 Describe Linux and glibc versions. 8200 8201Thu May 22 20:38:10 2014 NARUSE, Yui <naruse@ruby-lang.org> 8202 8203 * file.c (stat_birthtime): add birthtime support [Feature #9647] 8204 8205 * file.c (rb_stat_birthtime): add File::Stat.birthtime 8206 8207 * file.c (rb_file_s_birthtime): add File.birthtime 8208 8209 * file.c (rb_file_birthtime): add File#birthtime 8210 8211 * configure.in: check struct stat.st_birthtimespec. 8212 8213Thu May 22 19:38:14 2014 NARUSE, Yui <naruse@ruby-lang.org> 8214 8215 * file.c: remove IO::Statfs because of reject. [Feature #9772] 8216 8217Thu May 22 14:02:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8218 8219 * enc/jis/props.kwd: constify character property tables of JIS 8220 based encodings by perfect hash. 8221 8222 * enc/euc_jp.c, enc/shift_jis.c: use character property functions. 8223 8224Wed May 21 12:21:10 2014 Tanaka Akira <akr@fsij.org> 8225 8226 * ext/socket/option.c: Fix compilation error on Android. 8227 Bionic doesn't define TCP state constants. 8228 8229Wed May 21 11:42:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8230 8231 * configure.in: workaround for Info.plist to get rid of `dsymutil` 8232 crash by wrong files in parent directories. 8233 [ruby-core:62594] [Bug #9840] 8234 8235Tue May 20 20:57:34 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8236 8237 * test/ruby/test_dir.rb (test_glob): added testcase of double 8238 slash path. 8239 8240Tue May 20 04:58:54 2014 Tanaka Akira <akr@fsij.org> 8241 8242 * ext/socket/extconf.rb: Don't check fields of struct tcp_info if the 8243 structure is not available. 8244 8245Mon May 19 23:13:33 2014 Tanaka Akira <akr@fsij.org> 8246 8247 * ext/socket/option.c (inspect_tcp_info): Permit longer data. (glibc 8248 2.7 adds tcpi_rcv_rtt, tcpi_rcv_space and tcpi_total_retrans to 8249 struct tcp_info.) 8250 8251Mon May 19 20:49:07 2014 Tanaka Akira <akr@fsij.org> 8252 8253 * ext/socket/option.c (inspect_tcp_info): New function to inspect 8254 struct tcp_info. 8255 (sockopt_inspect): Use inspect_tcp_info. 8256 8257 * ext/socket/extconf.rb: Check tcp_info related things. 8258 8259 * ext/socket/rubysocket.h: Include netinet/tcp_fsm.h if available. 8260 8261Mon May 19 19:36:39 2014 Tanaka Akira <akr@fsij.org> 8262 8263 * test/dbm/test_dbm.rb: Use Etc.uname. 8264 8265 * test/gdbm/test_gdbm.rb: Ditto. 8266 8267Mon May 19 16:54:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8268 8269 * ext/etc/etc.c (etc_uname): add support for Windows using 8270 GetVersionExW(), GetSystemInfo(), and GetComputerNameExW() with 8271 `ComputerNameDnsHostname`. [Feature #9842] 8272 8273Mon May 19 16:29:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8274 8275 * string.c (rb_pat_search): advance by byte offset but not by char 8276 offset. [ruby-core:62669] [Bug #9849] 8277 8278Mon May 19 14:06:18 2014 Shota Fukumori <her@sorah.jp> 8279 8280 * bin/testrb: Removed. Forgot to remove in r45971. 8281 [Feature #9711] [ruby-core:62620] 8282 8283Sun May 18 16:42:08 2014 Tanaka Akira <akr@fsij.org> 8284 8285 * test/ruby/test_m17n_comb.rb (test_str_crypt): Use Etc.confstr to 8286 detect the glibc version. 8287 libc.so is not an executable on Debian GNU/kFreeBSD 7.0 (wheezy). 8288 8289Sun May 18 12:15:54 2014 Jonathan Mukai-Heidt <johnnymukai@gmail.com> 8290 8291 * io.c (argf_each_line, argf_inplace_mode_set): [DOC] Update ARGF 8292 documentation examples. `ARGF.lines` has been deprecated in 8293 favor of `ARGF.each_line`. [Fixes GH-615] 8294 8295Sun May 18 11:59:25 2014 Tanaka Akira <akr@fsij.org> 8296 8297 * missing/nextafter.c: Include ruby/missing.h. 8298 8299Sun May 18 11:09:28 2014 Tanaka Akira <akr@fsij.org> 8300 8301 * win32/Makefile.sub: Add nextafter.obj to MISSING. 8302 8303Sun May 18 10:46:04 2014 Tanaka Akira <akr@fsij.org> 8304 8305 * ext/etc/etc.c: Etc.sysconf, Etc.confstr and IO#pathconf implemented. 8306 8307 * ext/etc/extconf.rb: Check sysconf(), confstr() and fpathconf(). 8308 8309 * ext/etc/mkconstants.rb: New file. 8310 8311 [ruby-core:62600] [Feature #9842] 8312 8313Sun May 18 09:58:17 2014 Tanaka Akira <akr@fsij.org> 8314 8315 * ext/etc/etc.c: Etc.uname method implemented. 8316 8317 * ext/etc/extconf.rb: Check uname() function. 8318 8319 [ruby-core:62139] [Feature #9770] 8320 8321Sun May 18 09:16:33 2014 Tanaka Akira <akr@fsij.org> 8322 8323 * configure.in: Check nextafter() availability. 8324 8325 * include/ruby/missing.h (nextafter): New optional declaration. 8326 8327 * missing/nextafter.c: New file. 8328 8329 * numeric.c: Float#next_float and Float#prev_float implemented. 8330 8331 [ruby-core:62562] [Feature #9834] 8332 8333Sun May 18 09:02:17 2014 Tanaka Akira <akr@fsij.org> 8334 8335 * enum.c: Enumerable#slice_after implemented. 8336 8337 * enumerator.c: Enumerator::Lazy#slice_after implemented. 8338 8339 Requested by Tsuyoshi Sawada. [ruby-core:58123] [Feature #9071] 8340 8341Sun May 18 08:22:25 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8342 8343 * io.c (io_setstrbuf): always check if the buffer is modifiable. 8344 [ruby-core:62643] [Bug #9847] 8345 8346Sun May 18 01:21:23 2014 Tanaka Akira <akr@fsij.org> 8347 8348 * include/ruby/ruby.h: Hide Rational internal. 8349 (RRational): Moved to internal.h 8350 (RRATIONAL): Ditto. 8351 (RRATIONAL_SET_NUM): Moved to rational.c. 8352 (RRATIONAL_SET_DEN): Ditto. 8353 8354 * rational.c (rb_rational_num): New function. 8355 (rb_rational_den): Ditto. 8356 8357 * include/ruby/intern.h (rb_rational_num): Declared. 8358 (rb_rational_den): Ditto. 8359 8360 * ext/bigdecimal/bigdecimal.c: Follow the above change. 8361 8362 * ext/date/date_core.c: Ditto. 8363 8364 [ruby-core:60665] [Feature #9513] 8365 8366Sat May 17 17:04:32 2014 Shota Fukumori <her@sorah.jp> 8367 8368 * NEWS: Add news about removal of lib/test/**/*.rb. 8369 8370Sat May 17 16:57:33 2014 Shota Fukumori <her@sorah.jp> 8371 8372 * lib/test: Removed because ruby's test cases now independent to 8373 lib/test by r45970. [Feature #9711] [ruby-core:62620] 8374 8375 I'm still considering about the future of lib/minitest, lib/test. 8376 (bundling gems?) 8377 8378Sat May 17 15:06:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8379 8380 * test/runner.rb: remove dependency test-unit and minitest 8381 from stdlib when running with test-all. 8382 [Feature #9711][ruby-core:61890] 8383 * test/testunit/*.rb: ditto. 8384 * test/lib: ditto. 8385 8386Sat May 17 11:02:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8387 8388 * dir.c (glob_helper): try match PLAIN as well as ALPHA, which are 8389 separated by previous commits. [ruby-core:61552] [Bug #9648] 8390 8391 * dir.c (glob_make_pattern): set PLAIN for non-magical path to 8392 skip parts which not need to glob. 8393 [ruby-core:61552] [Bug #9648] 8394 8395 * dir.c (has_magic): return ALPHA at alphabetical name regardless 8396 FNM_CASEFOLD flag. 8397 8398 * dir.c (glob_helper): fix conditions for ALPHA. 8399 [ruby-core:61552] [Bug #9648] 8400 8401Sat May 17 01:49:27 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8402 8403 * dir.c (glob_helper): reduce matching at non-magical path on 8404 Windows. 8405 8406Sat May 17 01:49:23 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8407 8408 * dir.c (glob_pattern_type): separate names with alphabet but no 8409 magical from plain. 8410 8411 * dir.c (glob_helper): match plain names as-is to treat super-root 8412 same as the root. [ruby-core:61552] [Bug #9648] 8413 8414Fri May 16 17:38:22 2014 Koichi Sasada <ko1@atdot.net> 8415 8416 * gc.c (gc_marks, gc_marks_body): increase the counter of young objects 8417 at the major GC because AGE2Promotion changes all old objects into 8418 young objects at major GC. 8419 8420Fri May 16 17:26:24 2014 Koichi Sasada <ko1@atdot.net> 8421 8422 * gc.c (gc_before_sweep): heap_pages_swept_slots should contains 8423 heap_pages_increment. 8424 8425 For example, GC by exceeding malloc_limit can remain 8426 heap_pages_increment. 8427 8428Thu May 15 21:18:43 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> 8429 8430 * configure.in: enable SSE2 on mingw. target='i386-pc-mingw32'. 8431 [ruby-core:62095] [Bug #8358] 8432 8433Thu May 15 21:04:06 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> 8434 8435 * lib/test/unit/parallel.rb: fix test-all parallel failure if a test 8436 is skipped after raise. 8437 DL::TestFunc#test_sinf is skipped after raise on mingw ruby. 8438 But it causes Marshal.load failure due to undefined class/module 8439 DL::DLError when doing test-all parallel and test-all doesn't 8440 complete. We create new MiniTest::Skip object to avoid Marshal.load 8441 failure. 8442 [ruby-core:62133] [Bug #9767] 8443 8444 * test/testunit/test_parallel.rb (TestParallel): add a test. 8445 8446 * test/testunit/tests_for_parallel/ptest_forth.rb: ditto. 8447 8448Thu May 15 18:57:23 2014 Koichi Sasada <ko1@atdot.net> 8449 8450 * gc.c (garbage_collect_body): move gc_heap_prepare_minimum_pages() 8451 from gc_sweep(). 8452 8453Thu May 15 18:51:25 2014 Koichi Sasada <ko1@atdot.net> 8454 8455 * gc.c (heap_extend_pages): calculate next growing heap size. 8456 8457 * gc.c (heap_set_increment): accept addition pages instead of 8458 minimum pages. 8459 8460 * gc.c (gc_after_sweep): use heap_etend_pages(). 8461 8462 * gc.c (gc_heap_prepare_minimum_pages): add only 1 page. 8463 8464 * gc.c (heap_ready_to_gc): add only 1 page. 8465 8466Thu May 15 18:42:49 2014 Koichi Sasada <ko1@atdot.net> 8467 8468 * gc.c: introduce macros to remove magic number. 8469 8470 GC_HEAP_FREE_SLOTS_MIN_RATIO = 0.3: guarantee minimum empty slots 8471 ratio after sweep. 8472 GC_HEAP_FREE_SLOTS_MAX_RATIO = 0.8: allow to free pages 0.2 (= 1-0.8) 8473 of current existing slots. 8474 8475Thu May 15 17:32:51 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> 8476 8477 * thread_win32.c (rb_w32_stack_overflow_handler): use Structured 8478 Exception Handling by AddVectoredExceptionHandler() for machine 8479 stack overflow on mingw. 8480 This would be equivalent to the handling using __try and __except 8481 on mswin introduced by r43748. 8482 8483Wed May 14 19:31:03 2014 Koichi Sasada <ko1@atdot.net> 8484 8485 * ext/openssl/depend: remove dependency from internal headers. 8486 [Feature #9612] 8487 8488 * ext/openssl/ossl.c (ossl_fips_mode_set): ditto. 8489 8490 * ext/coverage/depend: ditto. 8491 8492 * include/ruby/thread_native.h: added. 8493 8494 This header file only provides wrapper functions to control 8495 native threads. These wrapper functions are used by MRI 8496 implementation. 8497 8498 * vm_core.h: use include/ruby/thread_native.h. 8499 8500 * thread.c: ditto. 8501 8502 * thread_pthread.h: ditto. 8503 8504 * thread_win32.h: ditto. 8505 8506 * thread_native.h: removed. 8507 8508Wed May 14 18:03:28 2014 Koichi Sasada <ko1@atdot.net> 8509 8510 * gc.c: enable RGENGC_AGE2_PROMOTION. 8511 8512Wed May 14 18:02:30 2014 Koichi Sasada <ko1@atdot.net> 8513 8514 * gc.c (rgengc_rememberset_mark): promote remembered object earlier. 8515 8516Mon May 12 23:57:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8517 8518 * configure.in (rb_cv_atan2_inf_c99): check whether runtime atan2 8519 handles Inf as C99. [ruby-core:62536] [Bug #9831] 8520 8521Mon May 12 20:33:01 2014 Tanaka Akira <akr@fsij.org> 8522 8523 * configure.in: Invoke AC_REPLACE_FUNCS for each function. 8524 8525Mon May 12 19:52:11 2014 Koichi Sasada <ko1@atdot.net> 8526 8527 * gc.c: count young object correctly and show it in GC.stat 8528 on RGENGC_AGE2_PROMOTION. 8529 8530 * gc.c (RVALUE_PROMOTE_YOUNG): decrement young object count on 8531 YOUNG->OLD. 8532 8533 * gc.c (obj_free): decrement young object count when young object 8534 freed. 8535 8536 * gc.c (gc_marks): should not clear young object count. 8537 8538 * gc.c (gc_stat_internal): GC.stat :young_object information. 8539 8540Mon May 12 01:30:59 2014 Tanaka Akira <akr@fsij.org> 8541 8542 * ext/socket/ifaddr.c (IS_IFADDRS): Unused macro removed. 8543 8544 * ext/strscan/strscan.c (BUFSIZE): Ditto. 8545 8546 * ext/zlib/zlib.c (OBJ_IS_FREED): Ditto. 8547 8548Sun May 11 22:27:18 2014 Tanaka Akira <akr@fsij.org> 8549 8550 * compile.c (BUFSIZE): Unused macro removed. 8551 8552 * vm.c (BUFSIZE): Ditto. 8553 8554 * pack.c (INT64toNUM): Ditto. 8555 (UINT64toNUM): Ditto. 8556 (BYTEWIDTH): Ditto. 8557 8558 * time.c (lshift): Ditto. 8559 (UINT64toNUM): Ditto. 8560 (id_lshift): Unused variable removed. 8561 8562Sun May 11 21:23:27 2014 Tanaka Akira <akr@fsij.org> 8563 8564 * pack.c (swaps): Unused macro removed. 8565 (swapi): Ditto. 8566 (swapl): Ditto. 8567 (swapll): Ditto. 8568 8569Sun May 11 08:02:49 2014 Eric Wong <e@80x24.org> 8570 8571 * vm_core.h (rb_vm_t): list_head and counter for living_threads 8572 (rb_thread_t): vmlt_node for living_threads linkage 8573 (rb_vm_living_threads_init): new function wrapper 8574 (rb_vm_living_threads_insert): ditto 8575 (rb_vm_living_threads_remove): ditto 8576 * vm.c (rb_vm_living_threads_foreach): new function wrapper 8577 * thread.c (terminate_i, thread_start_func_2, thread_create_core, 8578 thread_fd_close_i, thread_fd_close): update to use new APIs 8579 * vm.c (vm_mark_each_thread_func, rb_vm_mark, ruby_vm_destruct, 8580 vm_memsize, vm_init2, Init_VM): ditto 8581 * vm_trace.c (clear_trace_func_i, rb_clear_trace_func): ditto 8582 * benchmark/bm_vm_thread_close.rb: added to show improvement 8583 * ccan/build_assert/build_assert.h: added as a dependency of list.h 8584 * ccan/check_type/check_type.h: ditto 8585 * ccan/container_of/container_of.h: ditto 8586 * ccan/licenses/BSD-MIT: ditto 8587 * ccan/licenses/CC0: ditto 8588 * ccan/str/str.h: ditto (stripped of unused macros) 8589 * ccan/list/list.h: ditto 8590 * common.mk: add CCAN_LIST_INCLUDES 8591 [ruby-core:61871][Feature #9632 (part 1)] 8592 8593Sun May 11 01:10:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8594 8595 * signal.c (rb_f_kill): directly enqueue an ignored signal to self, 8596 except for SIGSEGV and SIGBUS. [ruby-dev:48203] [Bug #9820] 8597 8598Sat May 10 22:37:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8599 8600 * dir.c (push_glob): match in UTF-8 on Mac OS X. 8601 [ruby-dev:48213] [Bug #9825] 8602 8603Sat May 10 13:32:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8604 8605 * thread.c (thread_start_func_2): stop if forked in a sub-thread, 8606 the thread has become the main thread. 8607 [ruby-core:62070] [Bug #9751] 8608 8609Sat May 10 09:32:19 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8610 8611 * man/ruby.1: remove deadlink. [ruby-core:62145][Bug #9773] 8612 8613Sat May 10 08:47:36 2014 Tanaka Akira <akr@fsij.org> 8614 8615 * signal.c (trap): Return "SYSTEM_DEFAULT" if SIG_DFL is set. 8616 8617Fri May 9 14:27:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8618 8619 * configure.in (RUBY_SETJMP_TYPE): check for setjmp type after 8620 CCDLFLAGS is appended to CFLAGS, since __builtin_setjmp can be 8621 affected. [ruby-core:62469] [Bug #9818] 8622 8623Fri May 9 03:59:06 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 8624 8625 * lib/delegate.rb: Fix example of using delegator. 8626 patched from Andrey Koleshko. [Fixes GH-505] 8627 8628Fri May 9 03:42:43 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 8629 8630 * lib/shell.rb: add documentation in lib/shell.rb 8631 patched from reprah. [Fixes GH-516] 8632 8633Fri May 9 03:28:04 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 8634 8635 * lib/fileutils.rb: show fileutils require at top. 8636 patched from Richard Schneeman. [Fixes GH-604] 8637 8638Fri May 9 03:07:09 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 8639 8640 * lib/prime.rb (Prime#prime?): negative numbers can't be primes 8641 by definition. reported by Ivan Kataitsev. [Bug #7395] 8642 * test/test_prime.rb: add test. 8643 8644Thu May 8 14:34:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8645 8646 * class.c (rb_mod_init_copy): always clear instance variable, 8647 constant and method tables first, regardless the source tables. 8648 [ruby-dev:48182] [Bug #9813] 8649 8650Thu May 8 10:53:14 2014 NARUSE, Yui <naruse@ruby-lang.org> 8651 8652 * configure.in: OpenBSD needs to include sys/param.h before include 8653 sys/mount.h. [ruby-dev:48167] 8654 8655Thu May 8 10:17:04 2014 Karsten Sperling <karsten@sperling.co.nz> 8656 8657 * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): stop 8658 handling requests on shutdown, even if the socket is readable 8659 and IO.select() returns true. [Fixes GH-607] 8660 8661 * lib/webrick/server.rb (WEBrick::GenericServer#start): IO.select() 8662 raises ENOTSOCK on shutdown on Windows. 8663 8664Wed May 7 21:45:00 2014 Tanaka Akira <akr@fsij.org> 8665 8666 * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#accept): 8667 Consider Socket#accept as well as TCPServer#accept. 8668 Reported by Sam Stelfox. [ruby-core:62064] [Bug #9750] 8669 8670Wed May 7 17:24:07 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8671 8672 * numeric.c (num_step_scan_args): check keyword arguments and fail 8673 if they conflict with positional arguments. 8674 [ruby-dev:48177] [Bug #9811] 8675 8676Wed May 7 12:06:14 2014 Koichi Sasada <ko1@atdot.net> 8677 8678 * benchmark/driver.rb: remove debug output and output results into 8679 specified file. 8680 8681Wed May 7 11:55:40 2014 Koichi Sasada <ko1@atdot.net> 8682 8683 * benchmark/driver.rb: add '--rawdata-output=[FILE] option to output 8684 raw results into FILE. 8685 8686Wed May 7 11:25:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8687 8688 * vm_eval.c (rb_f_local_variables): exclude variables hidden by 8689 shadowing. [ruby-core:60501] [Bug #9486] 8690 8691 * vm.c (collect_local_variables_in_iseq): ditto. 8692 8693Tue May 6 23:29:05 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8694 8695 * parse.y (new_bv_gen): no duplicated names, if already added in 8696 shadowing_lvar(). 8697 8698 * parse.y (local_tbl_gen): remove local variables duplicated with 8699 arguments. 8700 [ruby-core:60501] [Bug #9486] 8701 8702Tue May 6 18:48:50 2014 Tanaka Akira <akr@fsij.org> 8703 8704 * lib/time.rb (Time.make_time): Adjust the time zone of "now". 8705 8706Tue May 6 18:33:12 2014 Tadayoshi Funaba <tadf@dotrb.org> 8707 8708 * io.c (io_{read,write}_nonblock): use rb_get_kwargs instead of 8709 rb_hash_aref. 8710 8711Tue May 6 18:03:05 2014 Tanaka Akira <akr@fsij.org> 8712 8713 * lib/time.rb (Time.make_time): Argument validation code moved from 8714 Time.parse and Time.strptime. 8715 8716Tue May 6 17:27:06 2014 Tanaka Akira <akr@fsij.org> 8717 8718 * lib/time.rb (Time.parse): [DOC] Fix an example in the documentation 8719 to use EST. 8720 Reported by Marcus Stollsteimer. 8721 [ruby-core:60778] [Bug #9521] and [ruby-core:61718] [Bug #9682] 8722 8723Tue May 6 04:31:48 2014 Tadayoshi Funaba <tadf@dotrb.org> 8724 8725 * file.c (rb_f_test): removed meaningless "case 'a'". 8726 8727Tue May 6 01:28:14 2014 Tanaka Akira <akr@fsij.org> 8728 8729 * lib/open-uri.rb (OpenURI.open_uri): Call StringIO#close only if 8730 the StringIO object is not closed yet. 8731 Reported by Jordi Massaguer Pla. [ruby-core:42538] [Bug #6010] 8732 8733Tue May 6 01:08:01 2014 Koichi Sasada <ko1@atdot.net> 8734 8735 * benchmark/driver.rb: define File::NULL if not defined and /dev/null 8736 is available to run benchmark driver on ruby 1.9.2. 8737 8738Mon May 5 23:53:24 2014 Tanaka Akira <akr@fsij.org> 8739 8740 * ext/socket/mkconstants.rb: Add IP_TRANSPARENT. 8741 IP_TRANSPARENT is provieded since glibc-2.12. 8742 Reported by Eliezer Croitoru. [ruby-core:50372] [Bug #7476] 8743 8744Mon May 5 22:29:47 2014 Tanaka Akira <akr@fsij.org> 8745 8746 * process.c (check_exec_redirect): Open the file in write mode for 8747 redirect from [:out, :err]. 8748 Proposed and implemented by Yusuke Endoh. 8749 [ruby-dev:41430] [Feature #3348] 8750 8751Mon May 5 21:52:35 2014 Tanaka Akira <akr@fsij.org> 8752 8753 * ext/pathname/lib/pathname.rb (cleanpath_aggressive): make all 8754 separators File::SEPARATOR from File::ALT_SEPARATOR. 8755 Reported by Daniel Rikowski. 8756 Fixed by Nobuyoshi Nakada. [Bug #9618] 8757 8758 * ext/pathname/lib/pathname.rb (cleanpath_conservative): ditto. 8759 8760Mon May 5 21:48:04 2014 Tanaka Akira <akr@fsij.org> 8761 8762 * ext/pathname/lib/pathname.rb (Pathname#/): Aliased to Pathname#+. 8763 Suggested by Alexey Muranov. [ruby-core:61432] [Feature #9625] 8764 8765Mon May 5 17:26:09 2014 Tadayoshi Funaba <tadf@dotrb.org> 8766 8767 * math.c (rb_math_sqrt): omitted exporting an unused function, 8768 anyway. 8769 * internal.h: follows the above change. 8770 8771Mon May 5 11:44:03 2014 Tanaka Akira <akr@fsij.org> 8772 8773 * lib/time.rb (Time.strptime): Raise ArgumentError if Date._strptime 8774 doesn't extract date information. 8775 Reported by tadayoshi funaba. [ruby-core:62349] 8776 8777Mon May 5 01:12:27 2014 Tadayoshi Funaba <tadf@dotrb.org> 8778 8779 * ext/date/date_core.c (rt_rewrite_frags): a new feature (not a 8780 bug fix) of strptime. applies offset even if the given date is 8781 not local time (%s and %Q). This is an exceptional feature and 8782 I do NOT recommend to use this at all. Thank you git community. 8783 8784Sun May 4 20:51:32 2014 Tanaka Akira <akr@fsij.org> 8785 8786 * lib/time.rb (Time.force_zone!): Use usual local time if it has 8787 expected offset from UTC. 8788 8789Sun May 4 17:58:12 2014 Tanaka Akira <akr@fsij.org> 8790 8791 * lib/time.rb (Time.force_zone!): New private method. 8792 (Time.make_time): Use Time.force_zone!. 8793 (Time.strptime): Ditto. 8794 (Time.rfc2822): Ditto. 8795 (Time.xmlschema): Ditto. 8796 8797 * lib/rss/rss.rb (Time.w3cdtf): Use Time.force_zone!. 8798 8799Sun May 4 10:22:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8800 8801 * math.c (math_atan2): return values like as expected by C99 if 8802 both two arguments are infinity. based on the patch by cremno 8803 phobia <cremno AT mail.ru> in [ruby-core:62310]. [Feature #9799] 8804 8805Sun May 4 03:46:42 2014 Tanaka Akira <akr@fsij.org> 8806 8807 * lib/time.rb (Time.httpdate): Always return a UTC Time object. 8808 8809Sun May 4 03:26:39 2014 Tanaka Akira <akr@fsij.org> 8810 8811 * lib/time.rb (Time.make_time): Refactored. 8812 8813Sun May 4 02:53:17 2014 Tanaka Akira <akr@fsij.org> 8814 8815 * lib/time.rb (Time.rfc2822): Fix year completion. 8816 Produce fixed-offset time object if appropriate. 8817 (Time.xmlschema): Produce fixed-offset time object if appropriate. 8818 8819Sat May 3 23:52:20 2014 Tanaka Akira <akr@fsij.org> 8820 8821 * lib/time.rb (make_time): Produce fixed-offset time object if 8822 appropriate. 8823 (Time.strptime): Use d[:zone] instead of d[:offset]. 8824 8825 * lib/rss/rss.rb (Time.w3cdtf): Produce fixed-offset time object if 8826 appropriate. 8827 8828Sat May 3 20:21:38 2014 Tanaka Akira <akr@fsij.org> 8829 8830 * lib/time.rb (Time.strptime): Use d[:offset] if d[:seconds] is not 8831 given. 8832 Reported by tadayoshi funaba. [ruby-core:62322] 8833 8834Sat May 3 04:04:16 2014 Eric Wong <e@80x24.org> 8835 8836 * complex.c (parse_comp): replace ALLOCA_N with ALLOCV_N/ALLOCV_END 8837 [Bug #9608] 8838 * rational.c (read_digits): ditto 8839 8840Sat May 3 00:06:30 2014 Naohisa Goto <ngotogenome@gmail.com> 8841 8842 * file.c (HAVE_STRUCT_STATVFS_F_BASETYPE): File::Statfs#fstypename 8843 is supported on AIX, HP-UX, and Solaris, by using the value of 8844 struct statvfs.f_basetype. 8845 8846 * configure.in (HAVE_STRUCT_STATVFS_F_BASETYPE): check struct 8847 statvfs.f_basetype which is available on AIX, HP-UX, and Solaris. 8848 8849Fri May 2 21:04:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8850 8851 * parse.y (next_id): no reason to set ID_STATIC_SYM here, as ID 8852 returned by rb_intern3 can be a dynamic symbol and the static 8853 symbol flag is set otherwise. [Bug #9787] 8854 8855Fri May 2 11:32:51 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8856 8857 * test/ruby/test_io.rb (test_seek, test_seek_symwhence): defer 8858 File::Statfs#type call which may not be implemented, to mitigate 8859 errors on platforms where SEEK_DATA is available but f_type in 8860 struct statfs is not. [ruby-dev:48154] [Bug #9789] 8861 8862Fri May 2 10:37:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8863 8864 * parse.y (rb_id_attrset): turn dynamically interned Symbol into 8865 an ID, since rb_str_dynamic_intern returns a Symbol but not an 8866 ID. [ruby-core:62226] [Bug #9787] 8867 8868Thu May 1 22:19:34 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 8869 8870 * file.c: Change AND condition to nested condition. 8871 8872Thu May 1 00:36:26 2014 Naohisa Goto <ngotogenome@gmail.com> 8873 8874 * file.c (FSTATFS): check availability of struct statfs and 8875 struct statvfs in addition to fstatfs(2) and fstatvfs(2). 8876 This fixes error in Solaris. [Bug #9788] [ruby-dev:48145] 8877 8878Wed Apr 30 19:46:23 2014 Narihiro Nakamura <authornari@gmail.com> 8879 8880 * gc.c (gc_after_sweep): suppress unnecessary expanding heap. 8881 Tomb heap pages are freed pages here, so expanding heap is 8882 not required. 8883 8884Wed Apr 30 17:58:40 2014 Koichi Sasada <ko1@atdot.net> 8885 8886 * vm.c (invoke_block_from_c): add VM_FRAME_FLAG_BMETHOD to record 8887 it is bmethod frame. 8888 8889 * vm.c (vm_exec): invoke RUBY_EVENT_RETURN event if rollbacked frame 8890 is VM_FRAME_FLAG_BMETHOD. 8891 [Bug #9759] 8892 8893 * test/ruby/test_settracefunc.rb: add a test for TracePoint/set_trace_func. 8894 8895 * vm_core.h: rename rb_thread_t::passed_me to 8896 rb_thread_t::passed_bmethod_me to clarify the usage. 8897 8898 * vm_insnhelper.c (vm_call_bmethod_body): use renamed member. 8899 8900Wed Apr 30 17:06:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8901 8902 * parse.y (rb_id_attrset): pin down dynamic symbol only. it is 8903 possible that attrset ID can be registered as a static symbol 8904 after the corresponding attrget ID has been registered as a 8905 dynamic, and then the latter may be collected. 8906 [ruby-core:62226] [Bug #9787] 8907 8908Tue Apr 29 14:17:57 2014 Tanaka Akira <akr@fsij.org> 8909 8910 * lib/tmpdir.rb: Rescue LoadError on etc.so for miniruby. 8911 Revert r45707, r45711, r45717. 8912 8913Tue Apr 29 12:50:02 2014 Tanaka Akira <akr@fsij.org> 8914 8915 * lib/fileutils.rb: Don't need to define fu_get_gid and fu_get_gid in 8916 rescue LoadError on 'etc'. 8917 8918Tue Apr 29 10:21:38 2014 Kazuki Tsujimoto <kazuki@callcc.net> 8919 8920 * parse.y (symbols_i): like r45492, call rb_gc_resurrect(). 8921 8922Tue Apr 29 04:29:05 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 8923 8924 * file.c (HAVE_STRUCT_STATFS_T_F_FSTYPENAME): Add new macro for 8925 statfs_t. 8926 * file.c (HAVE_STRUCT_STATFS_T_F_TYPE): ditto. 8927 8928 * file.c (rb_io_statfs): check FSTATFS macro only instead of 8929 HAVE_FSTATFS and HAVE_FSTATVFS. 8930 8931 * file.c (statfs_type): use new macro. 8932 * file.c (statfs_fstypename): ditto. 8933 * file.c (statfs_inspect): ditto. 8934 8935Tue Apr 29 00:20:26 2014 Rajarshi Das <rajarshid@cybage.com> 8936 8937 * bootstraptest/test_literal.rb: fix typo of "dynamic". [ci skip] 8938 8939 * regexp.rdoc: fix typo of "organized". [ci skip] 8940 8941 * lib/session.rb: fix typo of "recognized". [ci skip] 8942 8943Mon Apr 28 21:40:27 2014 NARUSE, Yui <naruse@ruby-lang.org> 8944 8945 * configure.in (HAVE_STRUCT_STATFS_F_TYPE): check struct statfs.f_type 8946 to support OpenBSD. 8947 8948 * file.c (statfs_type): use above macro to switch. 8949 8950 * file.c (statfs_inspect): ditto. 8951 8952Mon Apr 28 18:06:08 2014 NARUSE, Yui <naruse@ruby-lang.org> 8953 8954 * configure.in: check struct statvfs and struct statvfs.f_fstypename. 8955 8956 * configure.in: on NetBSD fstatfs is obsoleted. 8957 8958 * file.c: support NetBSD for File::Statfs. 8959 8960Mon Apr 28 17:42:42 2014 Narihiro Nakamura <authornari@gmail.com> 8961 8962 * gc.c: This argument must be a pointer. 8963 8964Mon Apr 28 17:40:15 2014 Narihiro Nakamura <authornari@gmail.com> 8965 8966 * gc.c: Fix typos. These are undefined variables. 8967 8968Sun Apr 27 19:39:42 2014 Tadayoshi Funaba <tadf@dotrb.org> 8969 8970 * ext/date/date_strptime.c (date__strptime_internal): do not 8971 overwrite century. 8972 8973Sat Apr 26 11:50:08 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 8974 8975 * test/ruby/test_enum.rb (test_flat_map): Added test for flat_map. 8976 Contribute from @igaiga. [fix GH-598] 8977 8978Sat Apr 26 10:55:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 8979 8980 * compile.c (compile_array_): make copy a first hash not to modify 8981 the argument itself. keyword splat should be non-destructive. 8982 [ruby-core:62161] [Bug #9776] 8983 8984Sat Apr 26 08:05:36 2014 Tanaka Akira <akr@fsij.org> 8985 8986 * test/ruby/test_process.rb (test_rlimit_nofile): Don't limit 8987 RLIMIT_NOFILE too small. 8988 This fix sporadic "[ASYNC BUG] thread_timer: select" on GNU/Linux. 8989 8990Fri Apr 25 22:54:34 2014 Naohisa Goto <ngotogenome@gmail.com> 8991 8992 * lib/fileutils.rb (rmdir): rescue Errno::EEXIST in addition to 8993 ENOTEMPTY (and ENOENT), because SUSv3 describes that "If the 8994 directory is not an empty directory, rmdir() shall fail and set 8995 errno to [EEXIST] or [ENOTEMPTY]" and Solaris uses EEXIST. 8996 [Bug #9571] [ruby-dev:48017] 8997 8998Fri Apr 25 19:16:30 2014 Tanaka Akira <akr@fsij.org> 8999 9000 * lib/webrick/utils.rb: Don't rescue LoadError for 'etc' extension. 9001 9002Fri Apr 25 14:55:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9003 9004 * configure.in (rb_cv_func___builtin_unreachable): try with an 9005 external variable not only by a warning, which might not be 9006 shown due to the optimization. [ruby-core:61647] [Bug #9665] 9007 9008Fri Apr 25 13:11:49 2014 NARUSE, Yui <naruse@ruby-lang.org> 9009 9010 * configure.in: NetBSD's ksh, used by configure, needs escapes. 9011 9012Fri Apr 25 12:51:08 2014 NARUSE, Yui <naruse@ruby-lang.org> 9013 9014 * configure.in: correct pthread_setname_np's prototype on NetBSD. 9015 [Bug #9586] 9016 9017Thu Apr 24 23:17:25 2014 NAKAMURA Usaku <usa@ruby-lang.org> 9018 9019 * lib/fileutils.rb (fu_get_uid, fu_get_gid): Etc.getpwnam/getgrnam may 9020 returns nil. 9021 9022 * lib/webrick/utils.rb (su): ditto. 9023 9024Thu Apr 24 22:55:22 2014 Tanaka Akira <akr@fsij.org> 9025 9026 * bootstraptest/test_io.rb: Add etc.so to $" before require 'tmpdir'. 9027 9028Thu Apr 24 21:09:55 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 9029 9030 * man/ruby.1: fix broken link. 9031 9032Thu Apr 24 20:53:02 2014 Tanaka Akira <akr@fsij.org> 9033 9034 * lib/tmpdir.rb: Don't need to rescue LoadError for etc.so. 9035 9036Thu Apr 24 17:39:53 2014 NARUSE, Yui <naruse@ruby-lang.org> 9037 9038 * file.c (statfs_inspect): suppress warnings. 9039 assume those values won't be larger than LONG_LONG_MAX. 9040 9041Thu Apr 24 11:53:28 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9042 9043 * ext/openssl/ossl_asn1.c (ossl_asn1_initialize): SYMID on a value 9044 other than Symbol is an undefined behavior. fix up r31699. 9045 [ruby-core:62142] [Bug #9771] 9046 9047Thu Apr 24 11:21:37 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9048 9049 * parse.y (rb_sym2id, rb_sym2id_without_pindown): return 0 for 9050 non-symbol values, for the time being. 9051 9052Thu Apr 24 05:50:13 2014 NARUSE, Yui <naruse@ruby-lang.org> 9053 9054 * parse.y (dsym_node_gen): like r45492, call rb_gc_resurrect(). 9055 9056Wed Apr 23 20:36:22 2014 Tanaka Akira <akr@fsij.org> 9057 9058 * ext/etc/extconf.rb: Build ext/etc unconditionally. 9059 9060Wed Apr 23 14:10:50 2014 NARUSE, Yui <naruse@ruby-lang.org> 9061 9062 * file.c (statfs_fsid): remove statfs.f_fsid because it doesn't return 9063 meaningful value portably. http://togetter.com/li/658517 9064 9065Wed Apr 23 11:03:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9066 9067 * ext/stringio/stringio.c (strio_write): use rb_str_append to 9068 reuse coderange bits other than ASCII-8BIT, and keep 9069 taintedness. [ruby-dev:48118] [Bug #9769] 9070 9071Wed Apr 23 00:43:00 2014 NAKAMURA Usaku <usa@ruby-lang.org> 9072 9073 * win32/win32.c, include/ruby/win32.h (ustatfs): implementation of 9074 statfs(2) clone. [EXPERIMENTAL] 9075 9076 * file.c (rb_io_statfs): use above function. 9077 9078 * configure.in, win32/Makefile.sub (struct statfs): available. 9079 9080Tue Apr 22 23:56:24 2014 NAKAMURA Usaku <usa@ruby-lang.org> 9081 9082 * file.c (rb_io_stafs): use statfs(2) if fstatfs(2) is unavailable. 9083 9084 * configure.in (fstatfs): check it. 9085 9086Tue Apr 22 22:15:51 2014 NAKAMURA Usaku <usa@ruby-lang.org> 9087 9088 * file.c (rb_io_statfs): need to define even if the system doesn't have 9089 fstatfs(2). 9090 9091 * test/ruby/test_file.rb (TestFile#test_statfs): skip if IO#stafs is not 9092 implemented. 9093 9094Tue Apr 22 19:32:48 2014 NARUSE, Yui <naruse@ruby-lang.org> 9095 9096 * file.c: newly added a class File::Statfs. (experimental) 9097 9098Tue Apr 22 08:22:33 2014 Koichi Sasada <ko1@atdot.net> 9099 9100 * gc.c (objspace_malloc_increase): don't cause GC by malloc_increase 9101 when memop type is MEMOP_TYPE_REALLOC. 9102 9103 GC at realloc is not well maintained. 9104 We need a time to make it safe. 9105 [ruby-dev:48117] 9106 9107Tue Apr 22 06:54:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9108 9109 * gc.c (objspace_malloc_increase): run full mark if 0x04 bit is 9110 set in ruby_gc_stress. [ruby-core:62103] [Feature #9761] 9111 9112 * gc.c (objspace_malloc_increase): run GC after realloc not only 9113 malloc and calloc by GC.stress. [ruby-core:62103] [Feature #9761] 9114 9115Mon Apr 21 19:12:20 2014 NARUSE, Yui <naruse@ruby-lang.org> 9116 9117 * string.c (rb_str_coderange_scan_restartable): coderange is always 9118 ENC_CODERANGE_VALID if the string is ASCII-8BIT and already has a non 9119 ASCII character. 9120 9121Mon Apr 21 19:02:44 2014 NARUSE, Yui <naruse@ruby-lang.org> 9122 9123 * string.c (coderange_scan): remove useless condition `p < e` after 9124 search_nonascii. 9125 9126 * string.c (rb_str_coderange_scan_restartable): ditto. 9127 9128Mon Apr 21 18:55:21 2014 NARUSE, Yui <naruse@ruby-lang.org> 9129 9130 * ext/-test-/string/coderange.c: add Bug::String.new#coderange_scan 9131 to explicitly scan coderange. 9132 9133Mon Apr 21 18:19:35 2014 NARUSE, Yui <naruse@ruby-lang.org> 9134 9135 * string.c (coderange_scan): remove unused logic. 9136 9137 * string.c (rb_str_coderange_scan_restartable): ditto. 9138 9139Mon Apr 21 14:11:48 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9140 9141 * ext/stringio/stringio.c (strio_putc): fix for non-ascii 9142 encoding, like as IO#putc. [ruby-dev:48114] [Bug #9765] 9143 9144Sun Apr 20 12:57:15 2014 Masaya Tarui <tarui@ruby-lang.org> 9145 9146 * st.c (st_foreach_check): change start point of search at check 9147 from top to current. [ruby-dev:48047] [Bug #9646] 9148 9149Sun Apr 20 08:41:33 2014 Andrew DeMaria <ademariad@gmail.com> 9150 9151 * lib/mkmf.rb (link_command, libpathflag, create_makefile): prefer 9152 user specified `$LIBPATH` than `$DEFLIBPATH`. [ruby-core:62100] 9153 [ruby-trunk - Bug #9760] 9154 9155Sun Apr 20 06:01:18 2014 Eric Wong <e@80x24.org> 9156 9157 * gc.c (rb_gc_writebarrier): drop special case for big hash/array 9158 [Bug #9518] 9159 9160Sat Apr 19 15:38:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9161 9162 * parse.y (primary): flush cmdarg flags inside left-paren in a 9163 command argument, to allow parenthesed do-block as an argument 9164 without arguments parentheses. [ruby-core:61950] [Bug #9726] 9165 9166Sat Apr 19 10:07:24 2014 Tanaka Akira <akr@fsij.org> 9167 9168 * internal.h (struct RBignum): Use size_t for len. 9169 9170 * include/ruby/intern.h (rb_big_new): Use size_t instead of long to 9171 specify the size of bignum. 9172 (rb_big_resize): Ditto. 9173 9174 * bignum.c: Follow above changes. 9175 9176 * rational.c: Follow above changes. 9177 9178 * marshal.c: Follow above changes. 9179 9180Sat Apr 19 00:32:07 2014 Tanaka Akira <akr@fsij.org> 9181 9182 * numeric.c (rb_num2long): Returns a long. 9183 (rb_num2ulong): Returns a unsigned long. 9184 9185 * bignum.c (rb_big2long): Returns a long. 9186 (rb_big2ulong): Returns a unsigned long. 9187 9188 * include/ruby/intern.h: Follow above changes. 9189 9190 * include/ruby/ruby.h: Follow above changes. 9191 (rb_num2long_inline): No need to cast. 9192 (rb_num2ulong_inline): Ditto. 9193 9194Sat Apr 19 00:17:20 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9195 9196 * string.c (SHARABLE_SUBSTRING_P): predicate if substring can be 9197 shared with the original string. true if just at the end of the 9198 original string, for the time being. all substring will be able to 9199 be shared in the future. 9200 9201Fri Apr 18 21:48:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9202 9203 * string.c (rb_str_new_frozen): consider the shared string at 9204 middle. 9205 9206 * string.c (rb_str_subseq, rb_str_substr, str_byte_substr): share 9207 middle of a string. 9208 9209Fri Apr 18 15:40:05 2014 NARUSE, Yui <naruse@ruby-lang.org> 9210 9211 * string.c: use uintptr_t instead of VALUE because they are not ruby 9212 object. 9213 9214Fri Apr 18 14:51:42 2014 NARUSE, Yui <naruse@ruby-lang.org> 9215 9216 * string.c: check str_strlen's argument, and add comment or 9217 use NULL if simply it uses str's enc. 9218 9219Fri Apr 18 14:32:40 2014 NARUSE, Yui <naruse@ruby-lang.org> 9220 9221 * string.c (str_strlen): use enc_strlen if the coderange is known. 9222 9223Fri Apr 18 14:21:21 2014 NARUSE, Yui <naruse@ruby-lang.org> 9224 9225 * string.c (enc_strlen): move UTF-8 optimization from str_strlen to 9226 enc_strlen. 9227 9228Fri Apr 18 08:50:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9229 9230 * configure.in (rb_cv_getcwd_malloc): check if getcwd allocates 9231 buffer if NULL is given [ruby-core:62072] [Bug #9752] 9232 9233Thu Apr 17 16:28:10 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 9234 9235 * prelude.rb: [DOC] Update Thread::exclusive docs by @stevenharman. 9236 9237Thu Apr 17 10:03:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9238 9239 * lib/fileutils.rb (FileUtils#copy_entry): update rdoc about 9240 preserve option and permissions, following r31123. 9241 [ruby-core:62065] [Bug #9748] 9242 9243Wed Apr 16 23:47:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9244 9245 * enum.c (dont_recycle_block_arg): fix condition to recycle block 9246 argument. lambda with rest can get internal array directly. 9247 [ruby-core:62060] [Bug #9749] 9248 9249Wed Apr 16 09:51:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9250 9251 * ext/openssl/ossl_pkey.c (ossl_pkey_verify): as EVP_VerifyFinal() 9252 finalizes only a copy of the digest context, the context must be 9253 cleaned up after initialization by EVP_MD_CTX_cleanup() or a 9254 memory leak will occur. [ruby-core:62038] [Bug #9743] 9255 9256Tue Apr 15 19:36:42 2014 NAKAMURA Usaku <usa@ruby-lang.org> 9257 9258 * include/ruby/win32.h (rb_w32_cmdvector): removed. 9259 9260 * win32/win32.c (rb_w32_sysinit): use WCHAR version of GetCommandLine() 9261 internally. 9262 9263 * win32/win32.c (w32_cmdvector): renamed from rb_w32_cmdvector. use 9264 WCHAR* instead of char* internally. 9265 9266 these changes are expected to not changing the behavior yet. 9267 9268Tue Apr 15 19:26:05 2014 Tanaka Akira <akr@fsij.org> 9269 9270 * ext/extmk.rb: Re-generate extmk.mk and dummy makefiles only if 9271 really required. 9272 This fixes a problem to run multiple test-all concurrently as: 9273 make test-all & make test-all & make test-all & ... 9274 9275Tue Apr 15 12:49:53 2014 Sam Rawlins <sam.rawlins@gmail.com> 9276 9277 * enum.c (enum_each_slice, enum_each_cons): make more efficient by 9278 allocating less and recycling block argument arrays if possible. 9279 [Fixes GH-596] 9280 9281Mon Apr 14 18:44:45 2014 NARUSE, Yui <naruse@ruby-lang.org> 9282 9283 * addr2line.c (fill_lines): get base addrs in fill_lines to use it 9284 with dladdr_fbases introduced at r45563. 9285 it didn't get before if the executable is not pie. 9286 9287Mon Apr 14 18:05:48 2014 NARUSE, Yui <naruse@ruby-lang.org> 9288 9289 * addr2line.c (main_exe_path): support FreeBSD. 9290 At least sh, csh, tcsh, bash, and zsh sets realpath of the main 9291 executable for dladdr, but gdb doesn't. 9292 9293Mon Apr 14 17:20:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9294 9295 * proc.c (umethod_bind): use the ancestor iclass instead of new 9296 iclass to get rid of infinite recursion, if the defined module 9297 is already included. [ruby-core:62014] [Bug #9721] 9298 9299Sun Apr 13 12:46:58 2014 Tanaka Akira <akr@fsij.org> 9300 9301 * bignum.c (SIZEOF_BDIGIT): Renamed from SIZEOF_BDIGITS. 9302 9303 * internal.h: Ditto. 9304 9305 * marshal.c: Ditto. 9306 9307 * rational.c: Ditto. 9308 9309Sun Apr 13 10:18:09 2014 Tanaka Akira <akr@fsij.org> 9310 9311 * common.mk: Unused target, $(MKMAIN_CMD), removed. 9312 9313 * Makefile.in (MKMAIN_CMD): Unused macro removed. 9314 9315 * win32/Makefile.sub (MKMAIN_CMD): Ditto. 9316 9317Sat Apr 12 22:11:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9318 9319 * string.c (sym_to_proc), proc.c (rb_block_clear_env_self): clear 9320 caller's self which is useless, so that it can get collected. 9321 [Fixes GH-592] 9322 9323Sat Apr 12 09:26:48 2014 Eric Hodel <drbrain@segment7.net> 9324 9325 * ext/openssl/ossl_ocsp.c: [DOC] Document OpenSSL::OCSP. 9326 9327Fri Apr 11 18:52:38 2014 Koichi Sasada <ko1@atdot.net> 9328 9329 * array.c (ARY_SET): added. 9330 9331 ARY_SET() is same functionality of RARRAY_ASET(), but 9332 it has an assertion (`ary' doesn't have shared array). 9333 9334Fri Apr 11 16:54:26 2014 Koichi Sasada <ko1@atdot.net> 9335 9336 * array.c: make shared arrays WB-protected objects. 9337 9338 Shared arrays were WB-unprotected object because 9339 sharing array can modify shared array's buffer 9340 if it occupied shared array. 9341 9342 [sharing array (ary)] -> [shared array (shared)] -> <buff> 9343 | A 9344 +---------------------------------------+ 9345 write `buff' with WB(ary, &buff[i], obj) 9346 -> if `ary' and `shared' are old, then only `ary' 9347 will be remembered. 9348 -> traverse from `ary'. But `shared' is old, so 9349 that written `obj' is not marked. 9350 9351 It cause WB miss so that shared arrays were WB-unprotected. 9352 (WB-unprotected objects are marked everytime if it is living) 9353 9354 This patch insert WB() for `shared' if it is needed. 9355 9356Fri Apr 11 15:05:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9357 9358 * proc.c (rb_method_call_with_block, umethod_bind): call with 9359 IClass including the module for a module instance method. 9360 [ruby-core:61936] [Bug #9721] 9361 9362 * vm_insnhelper.c (vm_search_super_method): allow bound 9363 UnboundMethod case. 9364 9365Fri Apr 11 12:02:30 2014 NARUSE, Yui <naruse@ruby-lang.org> 9366 9367 * addr2line.c (rb_dump_backtrace_with_lines): set base address 9368 which is retrieved from dladdr to dladdr_fbases, to skip already 9369 parsed objects. 9370 9371Fri Apr 11 12:44:50 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9372 9373 * array.c (ary_reject): may be turned into a shared array during 9374 the given block. [ruby-dev:48101] [Bug #9727] 9375 9376Thu Apr 10 23:41:21 2014 Akinori MUSHA <knu@iDaemons.org> 9377 9378 * lib/net/ftp.rb (Net::FTP#login): [DOC] The default password for 9379 anonymous login was changed to "anonymous@" in r25313. 9380 9381Thu Apr 10 19:22:58 2014 Koichi Sasada <ko1@atdot.net> 9382 9383 * test/ruby/test_array.rb: remove useless `assert'. 9384 9385Thu Apr 10 19:11:11 2014 Koichi Sasada <ko1@atdot.net> 9386 9387 * array.c (rb_ary_modify): remember shared array owner if a shared 9388 array owner is promoted and a shared array is not promoted. 9389 9390 Now, shared array is WB-unprotected so that shared arrays are not 9391 promoted. All objects referred from shared array should be marked 9392 correctly. 9393 9394 [ruby-core:61919] [ruby-trunk - Bug #9718] 9395 9396 * test/ruby/test_array.rb: add a test for above. 9397 9398Thu Apr 10 18:57:12 2014 Koichi Sasada <ko1@atdot.net> 9399 9400 * gc.c (gc_verify_internal_consistency): move lines and enable 9401 allrefs_dump() on RGENGC_CHECK_MODE >= 4. 9402 9403Thu Apr 10 15:01:06 2014 NARUSE, Yui <naruse@ruby-lang.org> 9404 9405 * addr2line.c (append_obj): clear allocated memory. 9406 9407 * addr2line.c (rb_dump_backtrace_with_lines): free `base_addrs'. 9408 9409Thu Apr 10 14:40:18 2014 Koichi Sasada <ko1@atdot.net> 9410 9411 * gc.c (rb_gc_writebarrier_unprotect_promoted): disable to dump debug 9412 message when RGENGC_CHECK_MODE == 0. 9413 9414Thu Apr 10 08:13:47 2014 Tanaka Akira <akr@fsij.org> 9415 9416 * signal.c (check_stack_overflow): Don't use ucontext_t if ucontext.h 9417 is not available. 9418 Fixes build on Android (x86). 9419 9420Wed Apr 9 23:22:44 2014 Tanaka Akira <akr@fsij.org> 9421 9422 * gc.c (mark_current_machine_context): Call SET_STACK_END. 9423 This reverts a hunk of r40703 by ko1. 9424 This fixes [ruby-dev:48098] [Bug #9717]. 9425 9426Wed Apr 9 21:02:04 2014 Tanaka Akira <akr@fsij.org> 9427 9428 * process.c (OBJ2UID1): Defined even if getpwnam_r is not usable. 9429 (OBJ2GID1): Defined even if getgrnam_r is not usable. 9430 This fixes compilation error on Android. 9431 9432Wed Apr 9 15:16:59 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9433 9434 * encoding.c (rb_enc_default_internal): fix rdoc. `__FILE__` is 9435 in filesystem encoding but not `default_internal`. 9436 [ruby-core:61894] [Bug #9713] 9437 9438Wed Apr 9 14:43:00 2014 Koichi Sasada <ko1@atdot.net> 9439 9440 * test/ruby/test_gc.rb: more long timeout. 9441 This test failed under RGENGC_CHECK_MODE >= 2. 9442 9443Wed Apr 9 13:07:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9444 9445 * configure.in: get rid of __builtin_setjmp/__builtin_longjmp on 9446 x64-mingw, which causes SEGV with callcc. 9447 [ruby-core:61887] [Bug #9710] 9448 9449Wed Apr 9 12:44:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9450 9451 * string.c (str_buf_cat): should round up the capacity by 4KiB, 9452 but not number of rooms. [ruby-core:61886] [Bug #9709] 9453 9454Tue Apr 8 22:55:32 2014 Akinori MUSHA <knu@iDaemons.org> 9455 9456 * lib/mkmf.rb (MakeMakefile#dir_config): [DOC] Improve 9457 documentation. 9458 9459Tue Apr 8 22:31:44 2014 Koichi Sasada <ko1@atdot.net> 9460 9461 * gc.c: rename `RGENGC_THREEGEN' to `RGENGC_AGE2_PROMOTION'. 9462 9463 * gc.c (rgengc_rememberset_mark): don't promote, but remain in 9464 remember set for infant objects. 9465 9466 * gc.c (RVALUE_PROMOTE_INFANT, RVALUE_PROMOTE_YOUNG): count numbers 9467 in these functions. 9468 9469Mon Apr 7 21:11:49 2014 Tanaka Akira <akr@fsij.org> 9470 9471 * ext/socket/socket.c (sock_s_getnameinfo): Save errno for EAI_SYSTEM. 9472 Reported by Saravana kumar. [ruby-core:61820] [Bug #9697] 9473 Fixed by Heesob Park. [ruby-core:61868] 9474 9475Mon Apr 7 07:20:23 2014 NARUSE, Yui <naruse@ruby-lang.org> 9476 9477 * lib/xmlrpc/client.rb (do_rpc): don't check body length. 9478 If HTTP content-encoding is used, the length may be different. 9479 [Bug #8182] [ruby-core:53811] 9480 9481Mon Apr 7 02:39:48 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 9482 9483 * lib/matrix.rb: Add Matrix#cofactor [fix GH-568] 9484 Add first_minor [fix GH-568] 9485 Handle empty diagonal matrix case [fix GH-576] 9486 Patches by gogotanaka 9487 9488Sun Apr 6 08:52:50 2014 Bugra Barin <bugrabarin@hotmail.com> 9489 9490 * dln.c (dln_load): use wchar version to load a library in 9491 non-ascii path on Windows. based on the patch by Bugra Barin 9492 <bugrabarin AT hotmail.com> in [ruby-core:61845]. [Bug #9699] 9493 9494Sat Apr 5 19:36:33 2014 Tadayoshi Funaba <tadf@dotrb.org> 9495 9496 * ext/date/date_core.c (d_lite_cmp): should compare with #<. 9497 9498Sat Apr 5 00:31:21 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9499 9500 * ext/readline/extconf.rb (rl_hook_func_t): check pointer type. 9501 [ruby-dev:48089] [Bug #9702] 9502 9503Fri Apr 4 07:13:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9504 9505 * configure.in (ac_cv_func___builtin_setjmp): should not skip 9506 flags restoration in RUBY_WERROR_FLAG by `break`. 9507 [ruby-dev:48086] [Bug #9698] 9508 9509Wed Apr 2 21:50:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9510 9511 * configure.in (ac_cv_func___builtin_setjmp): __builtin_longjmp() 9512 in Apple LLVM 5.1 (LLVM 3.4svn) uses `void**`, not `jmp_buf`. 9513 [Bug #9692] 9514 9515Wed Apr 2 20:57:15 2014 Koichi Sasada <ko1@atdot.net> 9516 9517 * gc.c, gc.h (rb_objspace_each_objects_without_setup): 9518 Add a new (hidden) C-API to iterate objspace snapshot. 9519 9520 This API is not safe to call any C-APIs in a given callback 9521 function. Be careful to use this C-API. 9522 9523Wed Apr 2 17:43:17 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9524 9525 * configure.in (ac_cv_func___builtin_setjmp): gcc 4.9 disallows a 9526 variable as the second argument of __builtin_longjmp(). 9527 [ruby-core:61800] [Bug #9692] 9528 9529Wed Apr 2 15:12:18 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 9530 9531 * common.mk: Use redmine-2.x url for DeveloperHowto wiki. 9532 [ruby-core:60657] [Bug #9511] 9533 9534Wed Apr 2 11:46:29 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 9535 9536 * ext/pathname/lib/pathname.rb (Pathname#join): Fix error with 9537 empty args. Reported by ko1 via IRC. 9538 9539 * test/pathname/test_pathname.rb (TestPathname#test_join): Add the 9540 test for above case. 9541 9542Tue Apr 1 11:39:57 2014 James Edward Gray II <james@graysoftinc.com> 9543 9544 * lib/csv.rb: Symbol HeaderConverter: strip leading/trailing space. 9545 Reported by Skye Shaw 9546 [Fixes GH-575] 9547 9548Tue Apr 1 11:34:04 2014 James Edward Gray II <james@graysoftinc.com> 9549 9550 * lib/csv.rb: Don't attempt to convert nil headers. 9551 Reported by Skye Shaw 9552 9553Tue Apr 1 17:29:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9554 9555 * tool/config_files.rb (ConfigFiles.download): show failed URI. 9556 [ruby-core:61792] [Bug #9690] 9557 9558Tue Apr 1 12:06:49 2014 NARUSE, Yui <naruse@ruby-lang.org> 9559 9560 * addr2line.c (rb_dump_backtrace_with_lines): don't depend hard coded 9561 symbol '_start'. 9562 9563 * addr2line.c (fill_lines): instead of above, get a dynamic symbol 9564 in the main executable and use it to know the base address. 9565 9566 * addr2line.c (follow_debuglink0): use obj_info_t instead of 9567 line_info_t to handle object related data. 9568 9569 * addr2line.c (main_exe_path): defined for Linux. 9570 9571Tue Apr 1 08:58:39 2014 Kazuki Tsujimoto <kazuki@callcc.net> 9572 9573 * parse.y (rb_str_dynamic_intern): set mark bit if dynamic symbol 9574 is before sweeping. 9575 9576Tue Apr 1 07:37:00 2014 NARUSE, Yui <naruse@ruby-lang.org> 9577 9578 * addr2line.c (fill_lines): use dynsym, which is used for dynamic 9579 linking and always exists, if there's no symtab. 9580 9581Tue Apr 1 07:27:15 2014 NARUSE, Yui <naruse@ruby-lang.org> 9582 9583 * vm_dump.c (rb_print_backtrace): current implementation 9584 uses dladdr to get the path of objects. 9585 9586Mon Mar 31 23:57:45 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9587 9588 * ext/readline/extconf.rb: fix typo, `$defs` not `$DEFS`. 9589 [ruby-core:61756] [Bug #9578] 9590 9591Mon Mar 31 17:23:50 2014 NAKAMURA Usaku <usa@ruby-lang.org> 9592 9593 * test/ruby/memory_status.rb: require envutil before accessing EnvUtil 9594 module. reported by ko1 via twitter. 9595 9596Mon Mar 31 10:28:01 2014 Eric Wong <e@80x24.org> 9597 9598 * st.c (st_init_table_with_size): update comment 9599 [Feature #9425] 9600 9601Sun Mar 30 23:39:26 2014 NAKAMURA Usaku <usa@ruby-lang.org> 9602 9603 * win32/win32.c (rb_w32_accept, open_ifs_socket, socketpair_internal): 9604 reset inherit flag of socket to avoid unintentional inheritance of 9605 socket. note that the return value of SetHandleInformation() is not 9606 verified intentionally because old Windows may return an error. 9607 [Bug #9688] [ruby-core:61754] 9608 9609Sat Mar 29 13:04:22 2014 Koichi Sasada <ko1@atdot.net> 9610 9611 * gc.c (gc_before_sweep): cap `malloc_limit' to 9612 gc_params.malloc_limit_max. It can grow and grow with such case: 9613 `loop{"a" * (1024 ** 2)}' 9614 [Bug #9687] 9615 9616 This issue is pointed by Tim Robertson. 9617 http://www.omniref.com/blog/blog/2014/03/27/ruby-garbage-collection-still-not-ready-for-production/ 9618 9619Fri Mar 28 19:32:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9620 9621 * struct.c (not_a_member): extract name error and use same error 9622 messages. based on the patch by Marcus Stollsteimer <sto.mar AT 9623 web.de> at [ruby-core:61721]. [Bug #9684] 9624 9625Fri Mar 28 09:21:54 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 9626 9627 * ext/psych/psych.gemspec: update gemspec for psych-2.0.5 9628 9629Fri Mar 28 09:11:06 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 9630 9631 * ext/psych/lib/psych.rb: Merge psych-2.0.5. bump version to 9632 libyaml-0.1.6 for CVE-2014-2525. 9633 * ext/psych/yaml/config.h: ditto. 9634 * ext/psych/yaml/scanner.c: ditto. 9635 * ext/psych/yaml/yaml_private.h: ditto. 9636 9637Thu Mar 27 18:58:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9638 9639 * re.c (match_regexp): set regexp for MatchData from string. 9640 9641 * re.c (rb_backref_set_string): create MatchData from string and 9642 set backref. 9643 9644 * string.c (rb_pat_search, rb_str_sub, rb_str_sub_bang, str_gsub), 9645 (scan_once, rb_str_scan, rb_str_partition): use rb_str_index 9646 instead of rb_reg_search() when pattern is a String. based on 9647 the patch by Sam Rawlins <sam.rawlins@gmail.com> [Fixes GH-579] 9648 9649Thu Mar 27 11:58:55 2014 NARUSE, Yui <naruse@ruby-lang.org> 9650 9651 * addr2line.c (fill_lines): check shdr[i].sh_type because even if 9652 .symtab section exists, the section's type can be SHT_NOBITS and 9653 actual data doesn't exist in the file. 9654 revert r45441. 9655 9656Wed Mar 26 14:57:35 2014 NAKAMURA Usaku <usa@ruby-lang.org> 9657 9658 * parse.y: inline must be static (for mswin). 9659 fixed build error introduced at r45426. 9660 9661Wed Mar 26 14:33:00 2014 Narihiro Nakamura <authornari@gmail.com> 9662 9663 * internal.h (USE_SYMBOL_GC): enable Symbol GC by default (USE_SYMBOL_GC == 1). 9664 9665Tue Mar 25 22:57:11 2014 Narihiro Nakamura <authornari@gmail.com> 9666 9667 * parse.y: support Symbol GC. [ruby-trunk Feature #9634] 9668 See this ticket about Symbol GC. 9669 9670 * include/ruby/ruby.h: 9671 Declare few functions. 9672 * rb_sym2id: almost same as old SYM2ID but support dynamic symbols. 9673 * rb_id2sym: almost same as old ID2SYM but support dynamic symbols. 9674 * rb_sym2str: almost same as `rb_id2str(SYM2ID(sym))` but not 9675 pin down a dynamic symbol. 9676 Declare a new struct. 9677 * struct RSymbol: represents a dynamic symbol as object in 9678 Ruby's heaps. 9679 Add few macros. 9680 * STATIC_SYM_P: check a static symbol. 9681 * DYNAMIC_SYM_P: check a dynamic symbol. 9682 * RSYMBOL: cast to RSymbol 9683 9684 * gc.c: declare RSymbol. support T_SYMBOL. 9685 9686 * internal.h: Declare few functions. 9687 * rb_gc_free_dsymbol: free up a dynamic symbol. GC call this 9688 function at a sweep phase. 9689 * rb_str_dynamic_intern: convert a string to a dynamic symbol. 9690 * rb_check_id_without_pindown: not pinning function. 9691 * rb_sym2id_without_pindown: ditto. 9692 * rb_check_id_cstr_without_pindown: ditto. 9693 9694 * string.c (Init_String): String#intern and String#to_sym use 9695 rb_str_dynamic_intern. 9696 9697 * template/id.h.tmpl: use LSB of ID as a flag for determining a 9698 static symbol, so we shift left other ruby_id_types. 9699 9700 * string.c: use rb_sym2str instead `rb_id2str(SYM2ID(sym))` to 9701 avoid pinning. 9702 9703 * load.c: use xx_without_pindown function at creating temporary ID 9704 to avoid pinning. 9705 9706 * object.c: ditto. 9707 9708 * sprintf.c: ditto. 9709 9710 * struct.c: ditto. 9711 9712 * thread.c: ditto. 9713 9714 * variable.c: ditto. 9715 9716 * vm_method.c: ditto. 9717 9718Wed Mar 26 13:25:54 2014 NARUSE, Yui <naruse@ruby-lang.org> 9719 9720 * addr2line.c (fill_lines): loop reverse order not to overwrite 9721 the basis of base addresses comparison. 9722 9723 * addr2line.c: use uintptr_t instead of intptr_t for pointers. 9724 9725 * addr2line.c (rb_dump_backtrace_with_lines): don't use syms. 9726 9727 * vm_dump.c (rb_print_backtrace): ditto. 9728 9729 * addr2line.h: ditto. 9730 9731Wed Mar 26 11:20:50 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9732 9733 * marshal.c (w_object): internal objects are not dumpable. 9734 [ruby-core:61677] [Bug #9674] 9735 9736 * ext/thread/thread.c (undumpable): ConditionVariable and Queue 9737 are not dumpable. [ruby-core:61677] [Bug #9674] 9738 9739Wed Mar 26 10:36:39 2014 NARUSE, Yui <naruse@ruby-lang.org> 9740 9741 * addr2line.c (follow_debuglink): show message if it closes opened 9742 (and maybe used) elf binary. 9743 9744Wed Mar 26 10:34:25 2014 NARUSE, Yui <naruse@ruby-lang.org> 9745 9746 * addr2line.c (fill_line): pass and use offset instead of 9747 curobj_baseaddr. 9748 9749Wed Mar 26 09:07:48 2014 Yutaka Kanemoto <kanemoto@ruby-lang.org> 9750 9751 * configure.in: add --disable-pie. [Feature #9673] 9752 9753Wed Mar 26 08:47:04 2014 NARUSE, Yui <naruse@ruby-lang.org> 9754 9755 * addr2line.c (fill_lines): don't run fill_lines multiple times. 9756 9757Wed Mar 26 08:45:00 2014 Sam Rawlins <sam.rawlins@gmail.com> 9758 9759 * internal.h: add prototype for rb_reg_search0 9760 9761 * re.c: rename rb_reg_search to rb_reg_search0, add set_backref_str 9762 argument to allow callers to indicate that they don't require the 9763 backref string to be allocated. 9764 9765 * string.c: don't allocate backref str if replacement string is provided 9766 9767 [GH-578] [Bug #9676] [ruby-core:61682] 9768 9769Wed Mar 26 08:29:43 2014 mo khan <mo@mokhan.ca> 9770 9771 * lib/rubygems.rb: fix spelling of Jim Weirich. [Fixes GH-577] 9772 9773Wed Mar 26 01:55:45 2014 NARUSE, Yui <naruse@ruby-lang.org> 9774 9775 * addr2line.c (rb_dump_backtrace_with_lines): a function to get must 9776 be a function in the main executable, whose absolute path is not 9777 available by dladdr, and ruby get it by /proc/self/exe on Linux. 9778 9779Wed Mar 26 01:34:50 2014 NARUSE, Yui <naruse@ruby-lang.org> 9780 9781 * addr2line.c (fill_lines): skip if path is NULL. 9782 9783Tue Mar 25 23:57:17 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9784 9785 * parse.y (parser_yylex): only a newline after label should be 9786 significant. [ruby-core:61658] [Bug #9669] 9787 9788Tue Mar 25 23:32:25 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 9789 9790 * ext/pathname/lib/pathname.rb (Pathname#join): remove unnecessary 9791 unshift. 9792 9793 * test/pathname/test_pathname.rb (TestPathname#test_join): add tests. 9794 9795Tue Mar 25 16:47:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9796 9797 * parse.y (lex_state_e, parser_params, f_arglist, parser_yylex): 9798 separate EXPR_LABELARG from EXPR_BEG and let newline significant, 9799 so that required keyword argument can place at the end of 9800 argument list without parentheses. [ruby-core:61658] [Bug #9669] 9801 9802Mon Mar 24 22:19:56 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9803 9804 * parse.y (ripper_initialize): filename can not be modified. 9805 9806Mon Mar 24 15:19:47 2014 NARUSE, Yui <naruse@ruby-lang.org> 9807 9808 * addr2line.c (rb_dump_backtrace_with_lines): fetch path of the 9809 executable from /proc/self/exe on Linux. 9810 9811Mon Mar 24 14:14:37 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 9812 9813 * gc.c: Fix up default GC params by @csfrancis [fix GH-556] 9814 9815Mon Mar 24 13:13:36 2014 NARUSE, Yui <naruse@ruby-lang.org> 9816 9817 * addr2line.c (parse_debug_line_cu): explicitly specify signed char 9818 because DWARF's line_Base is signed char and char maybe unsigned. 9819 patched by Rei Odaira. [ruby-dev:48068] [Bug #9654] 9820 9821Sun Mar 23 11:03:50 2014 Kohei Suzuki <eagletmt@gmail.com> 9822 9823 * vm_method.c (rb_method_entry_get_without_cache): me->klass is 0 9824 for a method aliased in a module. [ruby-core:61636] [Bug #9663] 9825 9826Sun Mar 23 08:12:27 2014 Eric Wong <e@80x24.org> 9827 9828 * st.c (hash_pos): use bitwise AND to avoid slow modulo op 9829 (new_size): power-of-two sizes for hash_pos change 9830 (st_numhash): adjust for common keys due to lack of prime modulo 9831 [Feature #9425] 9832 * hash.c (rb_any_hash): right shift for symbols 9833 * benchmark/bm_hash_aref_miss.rb: added to show improvement 9834 * benchmark/bm_hash_aref_sym_long.rb: ditto 9835 * benchmark/bm_hash_aref_str.rb: ditto 9836 * benchmark/bm_hash_aref_sym.rb: ditto 9837 * benchmark/bm_hash_ident_num.rb: added to prevent regression 9838 * benchmark/bm_hash_ident_obj.rb: ditto 9839 * benchmark/bm_hash_ident_str.rb: ditto 9840 * benchmark/bm_hash_ident_sym.rb: ditto 9841 9842Sat Mar 22 22:56:45 2014 NARUSE, Yui <naruse@ruby-lang.org> 9843 9844 * addr2line.c (fill_lines): compare the file names of object in which 9845 symbols exist. [Bug #9654] [ruby-dev:48058] 9846 9847Sat Mar 22 06:46:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9848 9849 * lib/cgi/util.rb (escape_html, unescape_html): make synonyms 9850 aliases instead of wrapper methods. 9851 9852 * lib/cgi/util.rb (escape_element, unescape_element): ditto. 9853 [Fixes GH-573] 9854 9855Fri Mar 21 21:57:34 2014 Akinori MUSHA <knu@iDaemons.org> 9856 9857 * configure.in: Fix a build problem with clang and --with-opt-dir. 9858 If ruby is configured with --with-opt-dir=dir when using clang 9859 as compiler, a warning `clang: warning: argument unused during 9860 compilation: '-I dir'` is emitted almost every time clang 9861 compiles a file. Unfortunately, RUBY_CHECK_PRINTF_PREFIX takes 9862 any output from the compiler as fatal error, and the check thus 9863 fails due to the warning. This is an attempt to fix the problem 9864 by adding a flag -Qunused-arguments to CFLAGS locally in the 9865 function to suppress the warning. [ruby-dev:48062] [Bug #9658] 9866 [Fixes GH-571] https://github.com/ruby/ruby/pull/571 9867 9868Fri Mar 21 16:31:56 2014 Zachary Scott <e@zzak.io> 9869 9870 * gc.c: [DOC] Fix call-seq for GC.start by @jasonrclark [Fixes GH-572] 9871 https://github.com/ruby/ruby/pull/572 9872 9873Thu Mar 20 11:37:28 2014 James Edward Gray II <james@graysoftinc.com> 9874 9875 * lib/csv.rb: Fixed a broken regular expression that was causing 9876 CSV to miss escaping some special meaning characters when used 9877 in parsing. 9878 Reported by David Unric 9879 [ruby-core:54986] [Bug #8405] 9880 9881Thu Mar 20 16:53:07 2014 Koichi Sasada <ko1@atdot.net> 9882 9883 * gc.c (objspace_malloc_increase): should not invoke 9884 garbage_collect_with_gvl() here on non-ruby threads. 9885 9886 Should just ignore the malloc_increase. 9887 9888 This issue is pointed by Eric Wong [ruby-core:61519]. 9889 9890Thu Mar 20 13:05:16 2014 Koichi Sasada <ko1@atdot.net> 9891 9892 * struct.c (rb_struct_alloc): use RARRAY_CONST_PTR() instead of 9893 RARRAY_PTR(). 9894 9895Thu Mar 20 12:59:39 2014 Koichi Sasada <ko1@atdot.net> 9896 9897 * include/ruby/intern.h (rb_obj_call_init, rb_class_new_instance): 9898 constify a parameter (VALUE *). 9899 I believe this incompatibility doesn't break any code. 9900 However, if you have trouble, please tell us. 9901 9902 * eval.c, object.c: ditto. 9903 9904Thu Mar 20 12:31:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9905 9906 * vm_method.c (rb_method_entry_get_without_cache): get rid of 9907 infinite recursion at aliases in a subclass and a superclass. 9908 return actually defined class for other than singleton class. 9909 [ruby-core:60431] [Bug #9475] 9910 9911Wed Mar 19 17:13:06 2014 Eric Wong <e@80x24.org> 9912 9913 * time.c (time_mload): freeze and preserve marshal-loaded time zone 9914 * test/ruby/test_time.rb: add test for GC on loaded object 9915 [Bug #9652] 9916 9917Tue Mar 18 23:20:12 2014 Shota Fukumori <her@sorah.jp> 9918 9919 * vm_eval.c (eval_string_with_cref): Unify to use NIL_P. 9920 9921Tue Mar 18 22:03:41 2014 Shota Fukumori <her@sorah.jp> 9922 9923 * vm_eval.c (eval_string_with_cref): Use file path even if scope is 9924 given. Related to [ruby-core:56099] [Bug #8662] and r42103. 9925 9926Mon Mar 17 13:17:47 2014 Koichi Sasada <ko1@atdot.net> 9927 9928 * enumerator.c (enumerator_block_call): use RARRAY_CONST_PTR() 9929 instead of RARRAY_PTR(). 9930 9931 * io.c (rb_io_s_popen): ditto. 9932 9933 * numeric.c (num_step_size): ditto. 9934 9935 * vm_eval.c (rb_apply): ditto. 9936 9937 * vm_eval.c (rb_eval_cmd): ditto. 9938 9939Mon Mar 17 10:11:59 2014 Eric Wong <e@80x24.org> 9940 9941 * variable.c (rb_const_set): delete existing entry on redefinition 9942 [Bug #9645] 9943 * test/ruby/test_const.rb (test_redefinition): test for leak 9944 9945Sun Mar 16 21:33:01 2014 Zachary Scott <e@zzak.io> 9946 9947 * lib/time.rb: [DOC] Fix timezone in example of Time.parse [Bug #9521] 9948 Based on patch by @stomar 9949 9950Sun Mar 16 13:21:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9951 9952 * configure.in (DLDFLAGS): insert a space between option and its 9953 argument for non-GCC compilers. [ruby-core:61429] [Bug #9624] 9954 9955Sun Mar 16 08:05:06 2014 Eric Wong <e@80x24.org> 9956 9957 * gc.c (objspace_xcalloc): fix GC accounting 9958 9959Sun Mar 16 06:33:35 2014 NARUSE, Yui <naruse@ruby-lang.org> 9960 9961 * addr2line.c (fill_lines): return address is just after calling 9962 address. Therefore noreturn function with tail call's return 9963 address may be in another function. 9964 9965Sun Mar 16 05:51:55 2014 Zachary Scott <e@zzak.io> 9966 9967 * lib/gserver.rb: [DOC] Fixed typo in example by @stomar [Bug #9543] 9968 9969Sat Mar 15 18:54:03 2014 Kazuki Tsujimoto <kazuki@callcc.net> 9970 9971 * ext/.document: remove refinement from documentable directories. 9972 9973Sat Mar 15 11:02:58 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 9974 9975 * configure.in (DLDFLAGS): check for each options to control 9976 symbol resolution. [ruby-core:61429] [Bug #9624] 9977 9978Sat Mar 15 07:02:35 2014 Eric Wong <e@80x24.org> 9979 9980 * st.c (st_update): remove unnecessary assignment 9981 9982Fri Mar 14 14:58:38 2014 NARUSE, Yui <naruse@ruby-lang.org> 9983 9984 * addr2line.c (fill_lines): fetch symbol names from ELF binary's 9985 symbol table if it is built with cc -g and not stripped. 9986 Now ruby can show static symbols on Linux though glibc's 9987 backtrace_symbols(3) don't show them. 9988 9989 * addr2line.c (rb_dump_backtrace_with_lines): use dladdr(3) to 9990 detect what object file declares the symbol because 9991 dl_iterate_phdr can't detect the main executable file 9992 and codes on the stack. 9993 NOTE: signal trampolines sometimes on the user stack. (FreeBSD) 9994 9995 * addr2line.c (rb_dump_backtrace_with_lines): stop showing 9996 backtrace if the function's name is main. 9997 NOTE: FreeBSD's backtrace (libexecinfo) shows _start and 9998 an additional address. Why it doesn't remove them on dladdr phase 9999 is, dladdr may fail to detect the main function but detect 10000 as _start function. Therefore it must be after scanning 10001 the symbol table and getting correct name. 10002 10003 10004Fri Mar 14 12:07:46 2014 Zachary Scott <e@zzak.io> 10005 10006 * doc/syntax/literals.rdoc: [DOC] Single quote strings allows escape 10007 of backslash as well, patch by @idupree [Fixes GH-553] 10008 https://github.com/ruby/ruby/pull/553 10009 10010Fri Mar 14 01:18:24 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10011 10012 * vm.c (invoke_block_from_c): add splattable argument. 10013 10014 * vm.c (vm_invoke_proc): disallow to splat when directly invoked. 10015 10016 * vm_insnhelper.c (vm_callee_setup_arg_complex, vm_callee_setup_arg): 10017 relax arity check of yielded lambda. [ruby-core:61340] [Bug #9605] 10018 10019 * test/ruby/test_yield.rb (TestRubyYieldGen#emu_bind_params): no 10020 longer raise ArgumentError when splatting to lambda. 10021 10022Thu Mar 13 23:51:02 2014 NAKAMURA Usaku <usa@ruby-lang.org> 10023 10024 * ext/-test-/win32/dln/libdlntest.c (dlntest_ordinal): no need to 10025 specify export in the source file because .def file do it. 10026 get rid of warning on linking. 10027 10028Wed Mar 12 11:19:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10029 10030 * vm_insnhelper.c (vm_callee_setup_arg): disable fastpath if splat 10031 argument, since argc may differ for each calls. 10032 [ruby-core:61422] [Bug #9622] 10033 10034 * vm_insnhelper.c (vm_callee_setup_arg): turn a macro into an 10035 inline function. 10036 10037Wed Mar 12 07:26:05 2014 Eric Wong <e@80x24.org> 10038 10039 * insns.def (opt_regexpmatch2): respect redefined match op 10040 Thanks to Sam Rawlins for the fix. 10041 * test/ruby/test_string.rb: test based on Tsuyoshi Sawada's report 10042 [Bug #9581] 10043 10044Tue Mar 11 22:31:25 2014 Kazuki Tsujimoto <kazuki@callcc.net> 10045 10046 * ext/.document: add objspace/objspace_dump.c to document file. 10047 10048Tue Mar 11 22:22:38 2014 Kazuki Tsujimoto <kazuki@callcc.net> 10049 10050 * test/objspace/test_objspace.rb (TestObjSpace#test_dump_uninitialized_file): 10051 remove dependency on json library. 10052 10053Tue Mar 11 10:55:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10054 10055 * README.EXT{,.ja} (Appendix B): update contents of `ruby_options` 10056 and replace `ruby_run` with `ruby_run_node`. based on the patch 10057 by Kaneko Yuichiro at [ruby-dev:48030] [Bug #9619]. 10058 10059Tue Mar 11 06:54:00 2014 Scott Francis <scott.francis@shopify.com> 10060 10061 * ext/objspace/objspace_dump.c: Check fptr before trying to dump RFILE 10062 object fd. [GH-562] 10063 10064 * test/objspace/test_objspace.rb: add test 10065 10066Tue Mar 11 02:04:36 2014 NARUSE, Yui <naruse@ruby-lang.org> 10067 10068 * vm_dump.c (rb_vm_bugreport): show vm maps on FreeBSD. 10069 10070 * vm_dump.c (procstat_vm): copied from FreeBSD. 10071 http://svnweb.freebsd.org/base/head/usr.bin/procstat/procstat_vm.c?revision=261780 10072 10073Mon Mar 10 12:14:26 2014 NARUSE, Yui <naruse@ruby-lang.org> 10074 10075 * configure.in: always check dladdr(1). 10076 10077 * addr2line.c (fill_lines): show the line number in C backtrace if 10078 ruby is built without --enable-shared (PIE) on Linux. 10079 patch is originally by Shinichiro Hamaji 10080 https://twitter.com/shinh/status/441957774264504321 10081 NOTE: ld doesn't insert __executable_start for PIE. 10082 dladdr(3)'s argument must be a function pointer. 10083 10084Mon Mar 10 10:51:17 2014 ksss <co000ri@gmail.com> 10085 10086 * test/ruby/test_enumerator.rb (test_iterators): fix test for hash 10087 iterators. [Fixes GH-558] 10088 10089Sun Mar 9 14:14:49 2014 Eric Wong <e@80x24.org> 10090 10091 * class.c (rb_class_subclass_add): use xmalloc 10092 * class.c (rb_module_add_to_subclasses_list): ditto 10093 * class.c (rb_class_remove_from_super_subclasses): use xfree 10094 * class.c (rb_class_remove_from_module_subclasses): ditto 10095 [Bug #9616] 10096 10097Sun Mar 9 13:51:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10098 10099 * ext/fiddle/function.c (function_call): fix memory leak when an 10100 exception occurs at argument conversion or the function call. 10101 10102Sun Mar 9 06:42:40 2014 Eric Wong <e@80x24.org> 10103 10104 * variable.c (struct global_variable): shrink by 8 bytes on 64-bit 10105 10106Sat Mar 8 17:42:51 2014 Eric Wong <e@80x24.org> 10107 10108 * vm.c (add_opt_method): cleanup to use rb_method_entry_at 10109 10110Sat Mar 8 13:46:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10111 10112 * ext/dl/cptr.c (dlptr_free), ext/dl/handle.c (dlhandle_free), 10113 ext/fiddle/handle.c (fiddle_handle_free), 10114 ext/fiddle/pointer.c (fiddle_ptr_free): fix memory leak. 10115 based on the patch Heesob Park at [ruby-dev:48021] [Bug #9599]. 10116 10117Sat Mar 8 13:30:39 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10118 10119 * process.c (obj2uid, obj2gid): now getpwnam_r() and getgrnam_r() 10120 may need larger buffers than sysconf values, so retry with 10121 expanding the buffer when ERANGE is returned. 10122 [ruby-core:61325] [Bug #9600] 10123 10124Fri Mar 7 19:29:13 2014 Eric Wong <e@80x24.org> 10125 10126 * vm_eval.c (vm_call0_body): use RARRAY_CONST_PTR 10127 (check_funcall_exec): ditto 10128 [ruby-core:61360] 10129 10130Fri Mar 7 19:14:11 2014 Eric Wong <e@80x24.org> 10131 10132 * vm_eval.c (vm_call0_body): fix RB_GC_GUARD location 10133 (check_funcall_exec): ditto 10134 [Bug #9609] 10135 10136Fri Mar 7 14:48:17 2014 Narihiro Nakamura <authornari@gmail.com> 10137 10138 * parse.y (ENC_SINGLE): Unused macro removed. 10139 10140Fri Mar 7 12:06:19 2014 Martin Bosslet <Martin.Bosslet@gmail.com> 10141 10142 * test/openssl/test_ssl.rb: Reuse TLS default options from 10143 OpenSSL::SSL::SSLContext::DEFAULT_PARAMS. 10144 10145Thu Mar 6 15:15:24 2014 Zachary Scott <e@zzak.io> 10146 10147 * doc/syntax/assignment.rdoc: [DOC] Fix assignment directions 10148 By @idupree [Fixes GH-555] https://github.com/ruby/ruby/pull/555 10149 10150Thu Mar 6 15:07:18 2014 Zachary Scott <e@zzak.io> 10151 10152 * doc/syntax/methods.rdoc: [DOC] Fix example for block arguments 10153 By @idupree [Fixes GH-554] https://github.com/ruby/ruby/pull/554 10154 10155Thu Mar 6 10:33:31 2014 Martin Bosslet <Martin.Bosslet@gmail.com> 10156 10157 * lib/openssl/ssl.rb: Explicitly whitelist the default 10158 SSL/TLS ciphers. Forbid SSLv2 and SSLv3, disable 10159 compression by default. 10160 Reported by Jeff Hodges. 10161 [ruby-core:59829] [Bug #9424] 10162 10163Wed Mar 5 15:56:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10164 10165 * parse.y (f_arg_asgn): define optional arguments as argument 10166 variables in the rhs default expressions. 10167 [ruby-core:61299] [Bug #9593] 10168 10169Wed Mar 5 11:58:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10170 10171 * ext/openssl/ossl.c (ossl_make_error): check NULL for unknown 10172 error reasons with old OpenSSL, and insert a colon iff formatted 10173 message is not empty. 10174 10175Wed Mar 5 00:42:00 2014 Kazuki Tsujimoto <kazuki@callcc.net> 10176 10177 * ext/pathname/lib/pathname.rb (Pathname#find): add "ignore_error" 10178 keyword argument defaulted to true as well as Find#find. 10179 10180Tue Mar 4 23:00:18 2014 NAKAMURA Usaku <usa@ruby-lang.org> 10181 10182 * test/ruby/test_eval.rb (TestEval#make_test_binding): renamed. 10183 it's not test method. 10184 10185Tue Mar 4 20:50:59 2014 Masaya Tarui <tarui@ruby-lang.org> 10186 10187 * st.c (st_foreach): fix type of hash. not st_data_t but st_index_t. 10188 10189Tue Mar 4 19:41:40 2014 Tanaka Akira <akr@fsij.org> 10190 10191 * Makefile.in: ".DEFAULT" target removed because it is not for 10192 specifying default target. 10193 10194Tue Mar 4 00:25:35 2014 Kazuki Tsujimoto <kazuki@callcc.net> 10195 10196 * lib/find.rb (Find#find): should pass ignore_error option to enumerators. 10197 10198Mon Mar 3 13:27:35 2014 NAKAMURA Usaku <usa@ruby-lang.org> 10199 10200 * test/test_find.rb (TestFind#test_unsearchable_dir): ruby cannot make 10201 directory unreachable by owner on Windows. 10202 10203Mon Mar 3 08:10:04 2014 Eric Wong <e@80x24.org> 10204 10205 * vm_method.c (rb_method_entry_get_without_cache): disable GMC 10206 writing if GMC is disabled. 10207 [ruby-core:61218] 10208 10209Mon Mar 3 07:47:17 2014 Eric Wong <e@80x24.org> 10210 10211 * README.EXT: wrap GetDBM with do/while(0) 10212 * README.EXT.ja: ditto 10213 * ext/dbm/dbm.c: ditto, likewise for GetDBM2 10214 * ext/gdbm/gdbm.c: ditto 10215 * ext/sdbm/init.c: ditto 10216 [ruby-core:61217] 10217 10218Mon Mar 3 07:17:31 2014 Zachary Scott <e@zzak.io> 10219 10220 * NEWS: [DOC] Update doc regarding filesystem load when flushing IO 10221 10222Mon Mar 3 04:37:50 2014 NAKAMURA Usaku <usa@ruby-lang.org> 10223 10224 * io.c (rb_io_fsync): need to fsync even if on Windows. fixed mistake 10225 of r45254 and r45256. 10226 10227Mon Mar 3 04:21:34 2014 NAKAMURA Usaku <usa@ruby-lang.org> 10228 10229 * test/win32ole: get rid of warnings (unused variable). 10230 10231Mon Mar 3 02:53:53 2014 NAKAMURA Usaku <usa@ruby-lang.org> 10232 10233 * io.c (rb_io_flush_raw): [EXPERIMENTAL] remove force syncing for Win32 10234 to speed up IO. this may break some tests, and they'll be fixed 10235 later. 10236 [ruby-core:58570] [Bug #9153] 10237 10238Mon Mar 3 00:17:43 2014 NAKAMURA Usaku <usa@ruby-lang.org> 10239 10240 * test/ruby/test_backtrace.rb: get rid of warnings. unused variable, 10241 shadowing. 10242 10243Sun Mar 2 11:15:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10244 10245 * lib/find.rb (Find#find): add "ignore_error" keyword argument 10246 defaulted to true. [ruby-core:51025] [Feature #7596] 10247 10248Sun Mar 2 11:13:30 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10249 10250 * ext/readline/extconf.rb (rl_hook_func_t): define as Function for 10251 very old readline versions. [ruby-core:61209] [Bug #9578] 10252 10253Sun Mar 2 10:47:58 2014 Eric Wong <e@80x24.org> 10254 10255 * load.c (ruby_init_ext): make idempotent to suppress warnings 10256 10257Sat Mar 1 19:51:42 2014 Tanaka Akira <akr@fsij.org> 10258 10259 * lib/open3.rb (Open3.capture3): Ignore Errno::EPIPE for writing 10260 stdin_data. 10261 (Open3.capture2): Ditto. 10262 (Open3.capture2e): Ditto. 10263 10264Sat Mar 1 19:06:47 2014 Eric Wong <e@80x24.org> 10265 10266 * gc.c (ruby_gc_set_params): simplify condition 10267 10268Sat Mar 1 16:18:40 2014 Tanaka Akira <akr@fsij.org> 10269 10270 * ext/readline/readline.c (Init_readline): Use rl_hook_func_t instead 10271 of Function to support readline-6.3. (rl_hook_func_t is available 10272 since readline-4.2.) 10273 Reported by Dmitry Medvinsky. [ruby-core:61141] [Bug #9578] 10274 10275Sat Mar 1 16:05:58 2014 Eric Wong <e@80x24.org> 10276 10277 * gc.c (ruby_gc_set_params): fix building without RGenGC 10278 10279Sat Mar 1 11:08:00 2014 Aaron Patterson <aaron@tenderlovemaking.com> 10280 10281 * ext/psych/lib/psych/visitors/yaml_tree.rb: support dumping Encoding 10282 objects. 10283 10284 * ext/psych/lib/psych/visitors/to_ruby.rb: support loading Encoding 10285 objects. 10286 10287 * test/psych/test_encoding.rb: add test 10288 10289 * ext/psych/lib/psych.rb: add version 10290 10291Sat Mar 1 10:52:34 2014 Zachary Scott <e@zzak.io> 10292 10293 * README.EXT.ja: [DOC] Fix typo "macro macro" @utenmiki [Fixes GH-551] 10294 https://github.com/ruby/ruby/pull/551 10295 10296Fri Feb 28 11:16:55 2014 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 10297 10298 * numeric.c: Fix Numeric#step with 0 unit [Bug #9575] 10299 10300Thu Feb 27 17:59:01 2014 Zachary Scott <e@zzak.io> 10301 10302 * lib/optparse.rb: [DOC] Add example of generating help with optparse. 10303 Patch by @joelmccracken documenting-ruby/ruby#19 10304 https://github.com/documenting-ruby/ruby/pull/19 10305 10306Thu Feb 27 12:10:09 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10307 10308 * numeric.c (ruby_num_interval_step_size): check signs and get rid 10309 of implementation dependent behavior of negative division. 10310 [ruby-core:61106] [Bug #9570] 10311 10312Thu Feb 27 03:55:45 2014 Zachary Scott <e@zzak.io> 10313 10314 * thread.c: [DOC] Typo in comment for _FORTIFY_SOURCE [Fixes GH-548] 10315 Patch by @qnet-herwin https://github.com/ruby/ruby/pull/548 10316 10317Wed Feb 26 18:43:43 2014 Koichi Sasada <ko1@atdot.net> 10318 10319 * gc.c (heap_pages_free_unused_pages): check tomb page availability 10320 at first. 10321 And return immediately if we don't touch sorted list any more. 10322 10323Wed Feb 26 14:10:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10324 10325 * eval.c (setup_exception): preserve exception class name encoding 10326 in debug mode messages. 10327 10328 * eval.c (setup_exception): preserve errinfo across calling #to_s 10329 method on the exception. [ruby-core:61091] [Bug #9568] 10330 10331Wed Feb 26 01:29:27 2014 NARUSE, Yui <naruse@ruby-lang.org> 10332 10333 * string.c (sym_find): Add Symbol.find(str), which returns whether given 10334 string is defined as symbol or not. [Feature #7854] 10335 10336Tue Feb 25 22:52:02 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 10337 10338 * ext/dl/dl.c (rb_dl_realloc): use NUM2SIZET instead of NUM2INT. 10339 10340 * ext/fiddle/fiddle.c (rb_fiddle_realloc): ditto. 10341 10342Tue Feb 25 22:49:30 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 10343 10344 * ext/dl/dl.c (rb_dl_malloc): use NUM2SIZET instead of NUM2INT. 10345 Coverity Scan found this bug. 10346 10347 * ext/fiddle/fiddle.c (rb_fiddle_malloc): ditto. 10348 10349Tue Feb 25 12:06:13 2014 NARUSE, Yui <naruse@ruby-lang.org> 10350 10351 * win32/Makefile.sub: define PACKED_STRUCT. 10352 10353Mon Feb 24 21:41:56 2014 NAKAMURA Usaku <usa@ruby-lang.org> 10354 10355 * README.md, README.ja.md: removed (wrong) mode setting for emacs. 10356 10357Mon Feb 24 20:05:41 2014 Eric Wong <e@80x24.org> 10358 10359 * configure.in: define PACKED_STRUCT_UNALIGNED for x86* 10360 * timev.h (struct vtm): use PACKED_STRUCT_UNALIGNED 10361 * time.c (struct time_object): ditto 10362 [Bug #9558] non-x86 cannot safely access unaligned addresses 10363 10364Mon Feb 24 18:10:02 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10365 10366 * test/fiddle/test_function.rb: remove unused variables. 10367 * test/fileutils/test_fileutils.rb: ditto. 10368 * test/io/console/test_io_console.rb: ditto. 10369 10370Mon Feb 24 12:37:51 2014 Eric Wong <e@80x24.org> 10371 10372 * configure.in: use -Wno-packed-bitfield-compat for GCC 4.4+ 10373 use __attribute__((packed)) if available 10374 * timev.h: shrink and pack struct vtm 10375 * time.c: pack struct time_object and adjust/introduce helpers 10376 [ruby-core:60794] 10377 10378Sun Feb 23 17:55:50 2014 Kouhei Sutou <kou@cozmixng.org> 10379 10380 * lib/rexml/xmltokens.rb: Add missing non ASCII valid characters 10381 to element name characters. Now, REXML name tokens exactly 10382 match "[5] Name" in the XML spec and "[4] NCName" in the 10383 Namespaces in XML spec. See comment about the details. 10384 [Bug #9539] [ruby-core:60901] 10385 Reported by Mario Barcala. Thanks!!! 10386 10387 * test/rexml/xpath/test_node.rb: Add tests for the above case. 10388 10389Sun Feb 23 12:18:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10390 10391 * ext/socket/raddrinfo.c (inet_pton): use rb_w32_inet_pton, instead of 10392 inet_pton directly, which is unavailable on older version Windows. 10393 10394 * include/ruby/win32.h, win32/win32.c (rb_w32_inet_pton): add a 10395 wrapper function for inet_pton minimum supported client is 10396 Vista, as well as inet_ntop. 10397 10398Sun Feb 23 11:33:25 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10399 10400 * test/net/imap/test_imap.rb: remove unused variables. 10401 * test/net/imap/test_imap_response_parser.rb: ditto. 10402 * test/net/pop/test_pop.rb: ditto. 10403 10404Sun Feb 23 02:19:51 2014 Tanaka Akira <akr@fsij.org> 10405 10406 * lib/resolv.rb (bind_random_port): Rescue EPERM for FreeBSD which 10407 security.mac.portacl.port_high is changed. 10408 See mac_portacl(4) for details. 10409 Reported by Jakub Szafranski. [ruby-core:60917] [Bug #9544] 10410 10411Sat Feb 22 23:17:01 2014 Kouhei Sutou <kou@cozmixng.org> 10412 10413 * lib/rexml/xpath_parser.rb: Fix indent. 10414 10415Sat Feb 22 23:15:35 2014 Kouhei Sutou <kou@cozmixng.org> 10416 10417 * test/rexml/xpath/test_attribute.rb: Simplify. 10418 10419Sat Feb 22 20:28:47 2014 NAKAMURA Usaku <usa@ruby-lang.org> 10420 10421 * tool/redmine-backporter.rb: more friendly. 10422 10423Sat Feb 22 20:24:43 2014 Kouhei Sutou <kou@cozmixng.org> 10424 10425 * test/rexml/test_xpath*.rb: Move to ... 10426 * test/rexml/xpath/*.rb: ... here. 10427 10428Sat Feb 22 20:04:41 2014 Kouhei Sutou <kou@cozmixng.org> 10429 10430 * test/rexml/listener.rb: Untabify. 10431 10432Sat Feb 22 19:07:31 2014 NAKAMURA Usaku <usa@ruby-lang.org> 10433 10434 * ext/io/console/console.c (console_dev): need read access for conout$ 10435 because some functions need it. [Bug#9554] 10436 10437Sat Feb 22 18:40:58 2014 Eric Wong <e@80x24.org> 10438 10439 * .gitignore: ignore benchmark files 10440 10441Sat Feb 22 01:22:24 2014 Yusuke Endoh <mame@tsg.ne.jp> 10442 10443 * bignum.c (bary_mul_precheck): fix a copy-paste error. 10444 Coverity Scan found this bug. 10445 10446Sat Feb 22 00:58:51 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 10447 10448 * ext/socket/raddrinfo.c (rb_getaddrinfo): second argument of 10449 MEMZERO is type. Coverity Scan found this bug. 10450 10451Fri Feb 21 23:47:24 2014 Shugo Maeda <shugo@ruby-lang.org> 10452 10453 * ext/socket/init.c (wait_connectable): break if the socket is 10454 writable to avoid infinite loops on FreeBSD and other platforms 10455 which conforms to SUSv3. This problem cannot be reproduced with 10456 loopback interfaces, so it's hard to write test code. 10457 rsock_connect() and wait_connectable() are overly complicated, so 10458 they should be refactored, but I commit this fix as a workaround 10459 for the release of Ruby 1.9.3 scheduled on Feb 24. 10460 [ruby-core:60940] [Bug #9547] 10461 10462Fri Feb 21 23:03:39 2014 NARUSE, Yui <naruse@ruby-lang.org> 10463 10464 * tool/redmine-backporter.rb: added to handle redmine tickets. 10465 10466Fri Feb 21 20:42:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10467 10468 * class.c (rb_mod_init_copy): do nothing if copying self. 10469 [ruby-dev:47989] [Bug #9535] 10470 10471 * hash.c (rb_hash_initialize_copy): ditto. 10472 10473Fri Feb 21 16:45:54 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10474 10475 * lib/logger.rb (next_rotate_time, previous_period_end): consider 10476 DST change. 10477 10478 * lib/logger.rb (Logger::LogDevice#check_shift_log): compare the 10479 current time with the time for the next rotation to fix rotation 10480 miss when date changed between the comparison and log writing. 10481 based on the patch by megayu <yuhg2310 AT gmail.com>. 10482 [Fixes GH-539] 10483 10484Fri Feb 21 10:39:33 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10485 10486 * test/monitor/test_monitor.rb: remove unused variables. 10487 * test/resolv/test_dns.rb: ditto. 10488 * test/rexml/test_functions.rb: ditto. 10489 * test/rss/test_setup_maker_itunes.rb: ditto. 10490 10491Fri Feb 21 09:48:56 2014 Eric Wong <e@80x24.org> 10492 10493 * ext/socket/ancdata.c (bsock_sendmsg_internal): only retry on error 10494 (bsock_recvmsg_internal): ditto 10495 * test/socket/test_unix.rb: test above for infinite loop 10496 10497Fri Feb 21 08:27:19 2014 Eric Wong <e@80x24.org> 10498 10499 * include/ruby/ruby.h (RB_GC_GUARD): 10500 use rb_gc_guarded_ptr_val on non-GCC/MSC 10501 * gc.c (rb_gc_guarded_ptr_val): rename and adjust argument. 10502 RB_GC_GUARD should be robust enough for any compiler. 10503 [ruby-core:60816] [Bug #7805] 10504 10505Thu Feb 20 22:21:26 2014 Tanaka Akira <akr@fsij.org> 10506 10507 * ext/socket/raddrinfo.c (numeric_getaddrinfo): Use xcalloc. 10508 Suggested by Eric Wong. 10509 https://bugs.ruby-lang.org/issues/9525#note-14 10510 10511Thu Feb 20 11:21:13 2014 Masaki Matsushita <glass.saga@gmail.com> 10512 10513 * hash.c (rb_hash_flatten): fix behavior of flatten(-1). 10514 [ruby-dev:47988] [Bug #9533] 10515 10516 * test/ruby/test_array.rb: test for above. 10517 10518Wed Feb 19 18:57:02 2014 Tanaka Akira <akr@fsij.org> 10519 10520 * ext/socket: Bypass getaddrinfo() if node and serv are numeric. 10521 Reporeted by Naotoshi Seo. [ruby-core:60801] [Bug #9525] 10522 10523 * ext/socket/extconf.rb: Detect struct sockaddr_in6.sin6_len. 10524 10525 * ext/socket/sockport.h (SET_SIN6_LEN): New macro. 10526 (INIT_SOCKADDR_IN6): Ditto. 10527 10528 * ext/socket/rubysocket.h (struct rb_addrinfo): Add 10529 allocated_by_malloc field. 10530 10531 * ext/socket/raddrinfo.c (numeric_getaddrinfo): New function. 10532 (rb_getaddrinfo): Call numeric_getaddrinfo at first. 10533 (rb_freeaddrinfo): Free struct addrinfo properly when it is 10534 allocated by numeric_getaddrinfo. 10535 10536Wed Feb 19 18:31:48 2014 Tanaka Akira <akr@fsij.org> 10537 10538 * ext/socket: Wrap struct addrinfo by struct rb_addrinfo. 10539 10540Wed Feb 19 17:47:01 2014 Tanaka Akira <akr@fsij.org> 10541 10542 * ext/socket/ipsocket.c (ip_s_getaddress): Don't access freed memory. 10543 10544Wed Feb 19 11:39:41 2014 NARUSE, Yui <naruse@ruby-lang.org> 10545 10546 * configure.in: it must see rb_cv_broken_memmem not rb_cv_func_memmem. 10547 10548Tue Feb 18 23:18:41 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10549 10550 * test/socket/test_socket.rb: unix socket is required by test case. 10551 10552Tue Feb 18 20:48:38 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10553 10554 * test/socket/test_addrinfo.rb: remove unused variables. 10555 * test/socket/test_nonblock.rb: ditto. 10556 * test/socket/test_socket.rb: ditto. 10557 * test/socket/test_unix.rb: ditto. 10558 * test/testunit/test_parallel.rb: ditto. 10559 * test/webrick/test_filehandler.rb: ditto. 10560 * test/xmlrpc/test_features.rb: ditto. 10561 * test/zlib/test_zlib.rb: ditto. 10562 10563Tue Feb 18 14:27:18 2014 Shota Fukumori <her@sorah.jp> 10564 10565 * lib/test/unit.rb: Requires minitest < 5.0.0 if Gem is available. 10566 10567Tue Feb 18 14:24:07 2014 Shota Fukumori <her@sorah.jp> 10568 10569 * lib/test/unit/test-unit.gemspec: Add minitest < 5.0.0 dependency 10570 10571 * tool/rbinstall.rb: Add empty implementations for `add_dependency`, 10572 `add_runtime_dependency`, `add_development_dependency` for 10573 Gem::Specification. 10574 10575Tue Feb 18 12:06:39 2014 Tanaka Akira <akr@fsij.org> 10576 10577 * configure.in (FILE_COUNT): Removed. (win32.c defines it in itself.) 10578 (FILE_READPTR): Ditto. 10579 10580Tue Feb 18 09:35:44 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10581 10582 * test/test/psych/test_string.rb: remove unused variables. 10583 * test/test/psych/test_yaml.rb: ditto. 10584 10585Mon Feb 17 21:31:31 2014 Koichi Sasada <ko1@atdot.net> 10586 10587 * test/ruby/test_gc.rb: ignore warning messages for running with -w 10588 option such as chkbuild. 10589 10590Mon Feb 17 20:00:27 2014 Tanaka Akira <akr@fsij.org> 10591 10592 * internal.h: Move BDIGIT and related definitions from 10593 include/ruby/defines.h. 10594 10595Mon Feb 17 17:41:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10596 10597 * marshal.c (marshal_dump, marshal_load): do not recycle wrapper 10598 objects, to prevent from segfault with continuation. 10599 [ruby-dev:47970] [Bug #9523] 10600 10601Mon Feb 17 15:43:59 2014 Zachary Scott <e@zzak.io> 10602 10603 * doc/keywords.rdoc: [DOC] Add keywords doc by documenting-ruby/ruby#29 10604 https://github.com/documenting-ruby/ruby/pull/29 10605 10606Mon Feb 17 12:31:31 2014 Koichi Sasada <ko1@atdot.net> 10607 10608 * gc.c (get_envparam_double): fix a warning message. 10609 10610Mon Feb 17 12:09:52 2014 Koichi Sasada <ko1@atdot.net> 10611 10612 * gc.c: introduce new environment variable 10613 "RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR" to control major/minor GC 10614 frequency. 10615 10616 Do full GC when the number of old objects is more than R * N 10617 where R is this factor and 10618 N is the number of old objects just after last full GC. 10619 10620 * test/ruby/test_gc.rb: add a test. 10621 10622Mon Feb 17 11:28:40 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10623 10624 * test/test_pty.rb: ignore warnings to unused variables. 10625 10626Mon Feb 17 11:27:36 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10627 10628 * test/test_find.rb: remove unused variables. 10629 10630Sun Feb 17 02:12:00 2014 Kenta Murata <mrkn@mrkn.jp> 10631 10632 * ext/bigdecimal/bigdecimal.c (BigDecimal_initialize): Insert GC guard. 10633 10634 * ext/bigdecimal/bigdecimal.c (BigDecimal_global_new): ditto. 10635 10636Sun Feb 16 15:53:36 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10637 10638 * test/test_securerandom.rb: File.exists? is deprecated. use File.exist? 10639 10640Sun Feb 16 15:05:00 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10641 10642 * test/pathname/test_pathname.rb: File.exists? is deprecated. use File.exist? 10643 10644Sun Feb 16 15:00:28 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 10645 10646 * test/net/ftp/test_ftp.rb: remove unused variables. 10647 * test/logger/test_logger.rb: ditto. 10648 10649Sun Feb 16 14:52:46 2014 Eric Wong <e@80x24.org> 10650 10651 * dir.c (dir_s_glob): RB_GC_GUARD instead of volatile 10652 10653Sun Feb 16 14:33:52 2014 Tanaka Akira <akr@fsij.org> 10654 10655 * include/ruby/ruby.h (RBIGNUM_SIGN): Defined for compatibility. 10656 (RBIGNUM_POSITIVE_P): Ditto. 10657 (RBIGNUM_NEGATIVE_P): Ditto. 10658 10659Sun Feb 16 12:46:47 2014 Eric Wong <e@80x24.org> 10660 10661 * io.c (rb_f_backquote): trade volatile for manual recycle 10662 rb_gc_force_recycle ensures object is visible until recycle 10663 10664Sun Feb 16 11:55:14 2014 Eric Wong <e@80x24.org> 10665 10666 * marshal.c (marshal_dump): use rb_gc_force_recycle for GC-safety 10667 (marshal_load): ditto 10668 [ruby-core:60730] [Bug #7805] 10669 10670Sun Feb 16 08:11:23 2014 Zachary Scott <e@zzak.io> 10671 10672 * README.EXT.ja: [DOC] Fix typo by @utenmiki [Fixes GH-534] 10673 https://github.com/ruby/ruby/pull/534 10674 10675Sun Feb 16 07:48:20 2014 Tanaka Akira <akr@fsij.org> 10676 10677 * ext/bigdecimal/bigdecimal.c (BIGNUM_ZERO_P): Unused macro removed. 10678 10679Sun Feb 16 06:12:23 2014 Tanaka Akira <akr@fsij.org> 10680 10681 * internal.h: Rename macro names: RBIGNUM_FOO to BIGNUM_FOO. 10682 (BIGNUM_EMBED_LEN_NUMBITS): Renamed from RBIGNUM_EMBED_LEN_NUMBITS. 10683 (BIGNUM_EMBED_LEN_MAX): Renamed from RBIGNUM_EMBED_LEN_MAX. 10684 (BIGNUM_SIGN_BIT): Renamed from RBIGNUM_SIGN_BIT. 10685 (BIGNUM_SIGN): Renamed from RBIGNUM_SIGN. 10686 (BIGNUM_SET_SIGN): Renamed from RBIGNUM_SET_SIGN. 10687 (BIGNUM_POSITIVE_P): Renamed from RBIGNUM_POSITIVE_P. 10688 (BIGNUM_NEGATIVE_P): Renamed from RBIGNUM_NEGATIVE_P. 10689 (BIGNUM_EMBED_FLAG): Renamed from RBIGNUM_EMBED_FLAG. 10690 (BIGNUM_EMBED_LEN_MASK): Renamed from RBIGNUM_EMBED_LEN_MASK. 10691 (BIGNUM_EMBED_LEN_SHIFT): Renamed from RBIGNUM_EMBED_LEN_SHIFT. 10692 (BIGNUM_LEN): Renamed from RBIGNUM_LEN. 10693 (RBIGNUM_DIGITS): Renamed from RBIGNUM_DIGITS. 10694 (BIGNUM_LENINT): Renamed from RBIGNUM_LENINT. 10695 10696 * bignum.c: Follow the above change. 10697 10698 * gc.c: Ditto. 10699 10700 * marshal.c: Ditto. 10701 10702 * math.c: Ditto. 10703 10704 * numeric.c: Ditto. 10705 10706 * random.c: Ditto. 10707 10708 * rational.c: Ditto. 10709 10710 * sprintf.c: Ditto. 10711 10712 * ext/-test-/bignum/bigzero.c: Ditto. 10713 10714 * ext/-test-/bignum/intpack.c: Ditto. 10715 10716 * ext/bigdecimal/bigdecimal.c: Ditto. 10717 10718Sat Feb 15 20:48:49 2014 Tanaka Akira <akr@fsij.org> 10719 10720 * configure.in (FILE_READEND): Don't detect it because it is not used. 10721 10722Sat Feb 15 13:22:28 2014 Eric Wong <e@80x24.org> 10723 10724 * probes_helper.h (RUBY_DTRACE_HOOK): correct type for _id 10725 10726Sat Feb 15 11:47:47 2014 Tanaka Akira <akr@fsij.org> 10727 10728 * bignum.c (rb_big_cmp): Avoid bignum allocation for comparison 10729 between bignum and fixnum. 10730 10731Sat Feb 15 10:55:12 2014 Hiroshi Shirosaki <h.shirosaki@gmail.com> 10732 10733 * ext/-test-/win32/fd_setsize/depend: fix wrong dependencies. 10734 [ruby-dev:47253] 10735 10736Sat Feb 15 00:38:54 2014 Tanaka Akira <akr@fsij.org> 10737 10738 * enum.c: Enumerable#{min,min_by,max,max_by} extended to take an 10739 optional argument. 10740 (nmin_cmp): New function. 10741 (nmin_block_cmp): Ditto 10742 (nmin_filter): Ditto. 10743 (nmin_i): Ditto. 10744 (nmin_run): Ditto. 10745 (enum_min): Call nmin_run if the optional argument is given. 10746 (nmin_max): Ditto. 10747 (nmin_min_by): Ditto. 10748 (nmin_max_by): Ditto. 10749 10750 * range.c: Range#{min,max} extended to take an optional argument. 10751 (range_min): Call range_first if the optional argument is given. 10752 (range_max): Call rb_call_super if the optional argument is given. 10753 10754 [ruby-core:57111] [Feature #8887] 10755 10756Sat Feb 15 00:27:46 2014 Tanaka Akira <akr@fsij.org> 10757 10758 * include/ruby/ruby.h, 10759 internal.h, 10760 ext/-test-/bignum/bigzero.c: Hide a Bignum definition. 10761 [ruby-core:42891] [Feature #6083] 10762 10763Sat Feb 15 00:13:14 2014 Tanaka Akira <akr@fsij.org> 10764 10765 * include/ruby/intern.h, 10766 include/ruby/io.h, 10767 include/ruby/ruby.h, 10768 include/ruby/win32.h, 10769 include/ruby/backward/rubysig.h, 10770 bignum.c, 10771 gc.c, 10772 io.c, 10773 process.c, 10774 safe.c, 10775 struct.c, 10776 thread.c, 10777 ext/socket/rubysocket.h, 10778 ext/-test-/old_thread_select: Remove deprecated definitions 10779 [ruby-core:60581] [Feature #9502] 10780 10781Fri Feb 14 18:38:46 2014 Eric Wong <e@80x24.org> 10782 10783 * string.c (rb_str_format_m): trade volatile for RB_GC_GUARD 10784 RB_GC_GUARD meaning is clear and has better code generation. 10785 [ruby-core:60688] 10786 10787Thu Feb 13 23:30:30 2014 Shugo Maeda <shugo@ruby-lang.org> 10788 10789 * vm_insnhelper.c (vm_call_method): should check ci->me->flag of 10790 a refining method in case the method is private. 10791 [ruby-core:60111] [Bug #9452] 10792 10793 * vm_method.c (make_method_entry_refined): set me->flag of a refined 10794 method entry to NOEX_PUBLIC in case the original method is private 10795 and it is refined as a public method. The original flag is stored 10796 in me->def->body.orig_me, so it's OK to make a refined method 10797 entry public. [ruby-core:60111] [Bug #9452] 10798 10799 * test/ruby/test_refinement.rb: related tests. 10800 10801Thu Feb 13 18:38:15 2014 Eric Wong <e@80x24.org> 10802 10803 * re.c (rb_reg_raise): remove volatile 10804 Unnecessary since r41597 10805 10806Thu Feb 13 18:28:51 2014 Eric Wong <e@80x24.org> 10807 10808 * re.c (rb_reg_regcomp): remove volatile 10809 Unnecessary since r13261 10810 10811Thu Feb 13 16:54:32 2014 Zachary Scott <e@zzak.io> 10812 10813 * test/ruby/test_array.rb: Ensure flatten! is used for test_flatten 10814 Patch by @ksss [Fixes GH-530] https://github.com/ruby/ruby/pull/530 10815 10816Thu Feb 13 15:43:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10817 10818 * parse.y (IDSET_ATTRSET_FOR_INTERN): fix off-by-one bug. 10819 10820 * parse.y (rb_enc_symname_type): junk ID succeeded by '=' is also 10821 attrset ID. [ruby-core:60668] [Bug #8756] 10822 10823Thu Feb 13 11:06:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10824 10825 * configure.in: check if pthread_setname_np is available. 10826 10827 * thread_pthread.c: pthread_setname_np is not available on old 10828 Darwins. [ruby-core:60524] [Bug #9492] 10829 10830Thu Feb 13 00:56:59 2014 Masaki Matsushita <glass.saga@gmail.com> 10831 10832 * configure.in: revert r44922. I should have used AC_CHECK_FUNCS() 10833 to just define a symbol if the function is available. 10834 10835Thu Feb 13 00:20:58 2014 Masaki Matsushita <glass.saga@gmail.com> 10836 10837 * configure.in: use AC_CHECK_FUNC instead of AC_CHECK_FUNCS 10838 if available. 10839 10840Thu Feb 13 00:15:10 2014 Masaki Matsushita <glass.saga@gmail.com> 10841 10842 * configure.in: fix to undefine HAVE_MEMMEM correctly if it is broken. 10843 10844Tue Feb 11 23:54:40 2014 Tanaka Akira <akr@fsij.org> 10845 10846 * bignum.c (rb_big_cmp): Specialize a comparison to zero. 10847 10848 * ext/bigdecimal/bigdecimal.c (is_negative): Use rb_big_cmp instead of 10849 RBIGNUM_NEGATIVE_P. 10850 (BigMath_s_log): Ditto. 10851 10852Tue Feb 11 22:59:10 2014 Tanaka Akira <akr@fsij.org> 10853 10854 * ext/openssl/ossl_bn.c (ossl_bn_initialize): Use rb_integer_pack. 10855 Fix SEGV by OpenSSL::BN.new(1 << (2**34)). 10856 10857Tue Feb 11 17:00:38 2014 Zachary Scott <e@zzak.io> 10858 10859 * ext/tk/README.tcltklib: [DOC] Fix typo by @xta [Fixes GH-532] 10860 10861Sun Feb 9 13:59:29 2014 Tanaka Akira <akr@fsij.org> 10862 10863 * configure.in: Fix compilation error. 10864 https://bugs.ruby-lang.org/issues/8358#note-16 10865 10866Sun Feb 9 05:20:24 2014 NARUSE, Yui <naruse@ruby-lang.org> 10867 10868 * configure.in (rb_cv_gnu_qsort_r): use compile error "conflicting 10869 types for 'qsort_r'" instead of AC_RUN_IFELSE. 10870 10871Sun Feb 9 04:07:34 2014 Zachary Scott <e@zzak.io> 10872 10873 * lib/yaml.rb: [DOC] Add links to syck and psych on github [Bug #9501] 10874 Based on a patch by Giorgos Tsiftsis 10875 10876Sun Feb 9 02:13:53 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10877 10878 * include/ruby/ruby.h (OBJ_TAINTABLE, OBJ_TAINT, OBJ_INFECT), 10879 marshal.c (r_entry0): all Numerics never be tainted now. 10880 [ruby-core:57346] [Bug #8945] 10881 10882Sat Feb 8 23:40:35 2014 Vit Ondruch <vondruch@redhat.com> 10883 10884 * configure.in: add quoting brackets and append wildcard for the 10885 rest after target_cpu, to properly detect platform for SSE2 10886 instructions. [ruby-core:60576] [Bug #8358] 10887 10888Sat Feb 8 21:44:07 2014 Masaki Matsushita <glass.saga@gmail.com> 10889 10890 * configure.in: check qsort_r(3) and whether it is GNU version. 10891 BSD version has different prototype. 10892 10893 * util.h: use qsort_r() as ruby_qsort() if it is GNU version. 10894 10895 * util.c: define ruby_qsort() if needed. 10896 10897Sat Feb 8 16:34:36 2014 Tanaka Akira <akr@fsij.org> 10898 10899 * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder#get_labels): 10900 Make it iterative. 10901 10902Sat Feb 8 15:54:12 2014 Koichi Sasada <ko1@atdot.net> 10903 10904 * gc.c, gc.h (rb_objspace_marked_object_p): added. 10905 This function *ONLY* works just after marking phase, 10906 before any sweeping. 10907 This function is highly depending current GC implementation 10908 and can be removed future version. 10909 10910Sat Feb 8 15:41:37 2014 Tanaka Akira <akr@fsij.org> 10911 10912 * lib/resolv.rb: Don't set CLOEXEC flag explicitly. (Ruby set it by 10913 default.) 10914 10915Sat Feb 8 15:27:02 2014 Tanaka Akira <akr@fsij.org> 10916 10917 * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder): Raise 10918 DecodeError if no data before the limit. 10919 Reported by Will Bryant. [ruby-core:60557] [Bug #9498] 10920 10921Sat Feb 8 15:11:21 2014 Tanaka Akira <akr@fsij.org> 10922 10923 * io.c (SMALLBUF): Unused macro removed. 10924 10925Fri Feb 7 23:37:49 2014 Tanaka Akira <akr@fsij.org> 10926 10927 * lib/resolv.rb: Ignore name servers which cause EAFNOSUPPORT on 10928 socket creation. 10929 Reported by Bjoern Rennhak. [ruby-core:60442] [Bug #9477] 10930 10931Fri Feb 7 21:58:48 2014 Zachary Scott <e@zzak.io> 10932 10933 * lib/open-uri.rb: [DOC] use lower case version of core classes, same 10934 as commit r44878, based on patch by Jonathan Jackson [Bug #9483] 10935 10936Fri Feb 7 21:54:53 2014 Zachary Scott <e@zzak.io> 10937 10938 * ext/ripper/lib/ripper/lexer.rb: [DOC] use lower case version of core 10939 classes when referring to return value, since we aren't directly 10940 talking about the class. Patch by Jonathan Jackson [Bug #9483] 10941 10942Fri Feb 7 05:28:38 2014 Eric Wong <e@80x24.org> 10943 10944 * constant.h: reduce rb_const_entry_t size on 64-bit 10945 Patch by Adam Avilla [ruby-core:60542] [Feature #9496] 10946 10947Thu Feb 6 15:27:46 2014 Koichi Sasada <ko1@atdot.net> 10948 10949 * gc.c (get_envparam_int): correct warning messages. 10950 10951 * gc.c (get_envparam_double): ditto. 10952 10953Thu Feb 6 15:17:30 2014 Koichi Sasada <ko1@atdot.net> 10954 10955 * gc.c (get_envparam_int): don't accept a value equals to lowerbound 10956 (changed by last commit) because "" or "foo" (not a number) strings 10957 are parsed as 0. They should be rejected. 10958 10959 * gc.c (get_envparam_double): ditto. 10960 10961Thu Feb 6 09:00:35 2014 Koichi Sasada <ko1@atdot.net> 10962 10963 * gc.c (ruby_gc_set_params): if RUBY_GC_OLDMALLOC_LIMIT is provided, 10964 then set objspace->rgengc.oldmalloc_increase_limit. 10965 Without this fix, the env variable RUBY_GC_OLDMALLOC_LIMIT 10966 does not work. 10967 10968 * gc.c (get_envparam_int): accept a value equals to lowerbound. 10969 10970 * gc.c (get_envparam_double): ditto. 10971 10972Thu Feb 6 08:23:28 2014 Eric Wong <e@80x24.org> 10973 10974 * ext/thread/thread.c (rb_szqueue_max_set): use correct queue and 10975 limit wakeups. [Bug #9343][ruby-core:60517] 10976 * test/thread/test_queue.rb (test_sized_queue_assign_max): 10977 test for bug 10978 10979Thu Feb 6 07:18:01 2014 Eric Hodel <drbrain@segment7.net> 10980 10981 * lib/rubygems: Update to RubyGems 2.2.2. Complete history at: 10982 10983 http://rubygems.rubyforge.org/rubygems-update/History_txt.html#label-2.2.2+%2F+2014-02-05 10984 10985 * test/rubygems: ditto. 10986 10987Wed Feb 5 20:56:32 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 10988 10989 * marshal.c (to_be_skipped_id): ignore anonymous attributes. 10990 10991 * pack.c (Init_pack): use anonymous ID so that associated objects 10992 do not appear in the packed result. 10993 10994 * parse.y (rb_make_internal_id): return an anonymous ID for 10995 internal use. 10996 10997Wed Feb 5 14:41:56 2014 Koichi Sasada <ko1@atdot.net> 10998 10999 * vsnprintf.c: remove duplicated def of `UNINITIALIZED_VAR()'. 11000 11001Wed Feb 5 14:40:16 2014 Koichi Sasada <ko1@atdot.net> 11002 11003 * ext/objspace/objspace_dump.c (dump_object): use STR_SHARED_P() 11004 instead of removed STR_NOCAPA_P() macro. 11005 11006Wed Feb 5 13:51:33 2014 Koichi Sasada <ko1@atdot.net> 11007 11008 * internal.h, vm_core.h: move LIKELY/UNLIKELY/UNINITIALIZED_VAR() 11009 macros from vm_core.h to internal.h. 11010 11011 * string.c: remove dependency to "vm_core.h". 11012 11013 * common.mk: ditto. 11014 11015Wed Feb 5 13:29:01 2014 Koichi Sasada <ko1@atdot.net> 11016 11017 * string.c (rb_str_free): use FL_TEST(str, STR_SHARED) directly 11018 because str is not embed. 11019 11020 * string.c (str_replace): remove `FL_SET(str, STR_SHARED)' line 11021 because STR_SET_SHARED() set STR_SHARED. 11022 11023Wed Feb 5 13:18:08 2014 Koichi Sasada <ko1@atdot.net> 11024 11025 * internal.h: remove macros STR_NOCAPA and STR_NOCAPA_P(). 11026 11027 * string.c (rb_str_resize): remove `STR_SET_NOEMBED(str)' because 11028 str_make_independent_expand() set NOEMBED flag. 11029 11030 * string.c (rb_str_resize): remove `STR_NOCAPA_P(str)' check because 11031 `str' is independent (not shared). 11032 11033Wed Feb 5 12:54:25 2014 Koichi Sasada <ko1@atdot.net> 11034 11035 * string.c: refactoring, especially about string flags. 11036 11037 * string.c (STR_UNSET_NOCAPA): removed. 11038 Use FL_UNSET() with STR_SHARED. 11039 11040 * string.c (rb_str_capacity): check STR_SHARED directly 11041 because it is not a embed string. 11042 11043 * string.c (rb_str_modify_expand): ditto. 11044 11045 * string.c (rb_str_shared_replace): use STR_SET_SHARED(). 11046 11047 * string.c (str_make_independent_expand): remove STR_UNSET_NOCAPA() 11048 because `str' is not shared string. 11049 11050Wed Feb 5 12:11:04 2014 Koichi Sasada <ko1@atdot.net> 11051 11052 * string.c (RESIZE_CAPA): should not resize shared string. 11053 11054Wed Feb 5 11:46:42 2014 Koichi Sasada <ko1@atdot.net> 11055 11056 * gc.c (gc_mark_children): STR_ASSOC is no longer available. 11057 Reported by @nagachika. 11058 http://d.hatena.ne.jp/nagachika/20140204 11059 11060Wed Feb 5 11:27:22 2014 Koichi Sasada <ko1@atdot.net> 11061 11062 * string.c (rb_str_new_frozen): refactoring code. 11063 * Move code from str_new_frozen_with_klass() (and remove it) 11064 * `aux.shared' should not be 0 for STR_SHARED strings. 11065 11066Wed Feb 5 04:23:41 2014 Aaron Patterson <aaron@tenderlovemaking.com> 11067 11068 * ext/psych/lib/psych.rb: New release of psych. 11069 * ext/psych/psych.gemspec: ditto 11070 11071Wed Feb 5 04:16:41 2014 Aaron Patterson <aaron@tenderlovemaking.com> 11072 11073 * ext/psych/yaml/emitter.c: merge libyaml 0.1.5 11074 * ext/psych/yaml/loader.c: ditto 11075 * ext/psych/yaml/parser.c: ditto 11076 * ext/psych/yaml/reader.c: ditto 11077 * ext/psych/yaml/scanner.c: ditto 11078 * ext/psych/yaml/writer.c: ditto 11079 * ext/psych/yaml/yaml_private.h: ditto 11080 11081Tue Feb 4 19:10:29 2014 Koichi Sasada <ko1@atdot.net> 11082 11083 * string.c: use long allocator names instead of numbered 11084 allocator names. 11085 * rb_str_new2 -> rb_str_new_cstr 11086 * rb_str_new4 -> rb_str_new_frozen 11087 * rb_str_new5 -> rb_str_new_with_class 11088 * str_new3 -> str_new_shared 11089 * str_new4 -> str_new_frozen_with_klass 11090 11091Tue Feb 4 17:20:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11092 11093 * dir.c (glob_helper): return the filename with actual cases on 11094 the filesystem if it is case-insensitive. [ruby-core:42469] 11095 [Feature #5994] 11096 11097Tue Feb 4 16:16:58 2014 Koichi Sasada <ko1@atdot.net> 11098 11099 * string.c: use STR_SHARED instead of ELTS_SHARED. 11100 (same value, but more clear meaning) 11101 11102Tue Feb 4 16:09:14 2014 Koichi Sasada <ko1@atdot.net> 11103 11104 * string.c: remove STR_ASSOC related code. 11105 By r44804, string objects can not have STR_ASSOC flag. 11106 11107 * internal.h: ditto. 11108 11109 * ext/objspace/objspace_dump.c (dump_object): ditto. 11110 11111Tue Feb 4 14:07:20 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11112 11113 * pack.c (str_associate, str_associated): keep associated objects 11114 in an instance variables, instead of in the internal structure. 11115 11116 * string.c (rb_str_associate, rb_str_associated): deprecate. 11117 11118Tue Feb 4 12:55:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11119 11120 * string.c (rb_str_modify_expand): enable capacity and disable 11121 association with packed objects when setting capa, so that 11122 pack("p") string fails to unpack properly after modified. 11123 11124Tue Feb 4 12:45:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11125 11126 * dir.c (glob_make_pattern): all alphabets are magic characters on 11127 case-insensitive filesystems. [ruby-core:42469] [Feature #5994] 11128 11129Tue Feb 4 09:47:57 2014 Eric Hodel <drbrain@segment7.net> 11130 11131 * lib/rubygems: Update to RubyGems 2.2.2 prerelease to check fixes to 11132 CI. 11133 * test/rubygems: ditto. 11134 11135Mon Feb 3 12:04:47 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 11136 11137 * error.c: [DOC] Exception#cause may return nil. [ci skip] 11138 11139Sun Feb 2 05:48:42 2014 Eric Wong <e@80x24.org> 11140 11141 * io.c (rb_io_syswrite): add RB_GC_GUARD 11142 [Bug #9472][ruby-core:60407] 11143 11144Sat Feb 1 15:09:16 2014 Masaki Suketa <masaki.suketa@nifty.ne.jp> 11145 11146 * ext/win32ole/win32ole.c (ole_typedesc2val): add VT_RECORD case. 11147 11148Sat Feb 1 06:38:51 2014 Zachary Scott <e@zzak.io> 11149 11150 * lib/drb/drb.rb: [DOC] Add note about start_service for each process 11151 Based on a patch by @rosenfeld [Fixes GH-514] [ci skip] 11152 https://github.com/ruby/ruby/pull/514 11153 11154Sat Feb 1 06:30:20 2014 Zachary Scott <e@zzak.io> 11155 11156 * error.c: [DOC] Document Exception#cause by @jasonrclark [ci skip] 11157 [Fixes GH-519] https://github.com/ruby/ruby/pull/519 11158 11159Sat Feb 1 06:10:49 2014 Zachary Scott <e@zzak.io> 11160 11161 * lib/securerandom.rb: [DOC] Add note on require for examples 11162 Based on a patch by @schneems [Fixes GH-518] [ci skip] 11163 https://github.com/ruby/ruby/pull/518 11164 11165Sat Feb 1 06:04:56 2014 Zachary Scott <e@zzak.io> 11166 11167 * numeric.c: [DOC] Fix typo in example for #step [ci skip] 11168 Patch by @ksss [Fixes GH-522] https://github.com/ruby/ruby/pull/522 11169 11170Fri Jan 31 17:01:47 2014 Eric Wong <e@80x24.org> 11171 11172 * ext/socket/init.c (rsock_socket0): split out SOCK_CLOEXEC version 11173 * ext/socket/socket.c (rsock_socketpair0): ditto 11174 [ruby-core:60377] 11175 11176Fri Jan 31 03:48:40 2014 Eric Wong <e@80x24.org> 11177 11178 * benchmark/driver: avoid large alloc in driver process 11179 [ruby-core:59869] [Bug #9430] 11180 11181Thu Jan 30 14:45:49 2014 Shugo Maeda <shugo@ruby-lang.org> 11182 11183 * configure.in: use $@ instead of $(.TARGET) because .TARGET is not 11184 supported by GNU make. 11185 11186Thu Jan 30 08:26:21 2014 Yusuke Endoh <mame@tsg.ne.jp> 11187 11188 * ext/fiddle/closure.c: use sizeof(*pcl) for correct sizeof value. 11189 [ruby-core:57599] [Bug #8978]. 11190 11191Wed Jan 29 20:08:15 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11192 11193 * io.c (nogvl_copy_stream_sendfile): check socket on other than 11194 linux, as sendfile(2) on non-socket fd works only on linux. 11195 [Feature #9427] 11196 11197Wed Jan 29 18:09:48 2014 Eric Wong <e@80x24.org> 11198 11199 * io.c (nogvl_copy_stream_sendfile): remove socket check 11200 [ruby-core:59856][Feature #9427] 11201 11202Wed Jan 29 04:29:54 2014 Aaron Patterson <aaron@tenderlovemaking.com> 11203 11204 * ext/openssl/ossl_ssl.c: pass read_nonblock options to underlying IO 11205 when SSL session has not been started. 11206 11207 * test/openssl/test_ssl.rb: test for change. 11208 11209Wed Jan 29 03:49:36 2014 Aaron Patterson <aaron@tenderlovemaking.com> 11210 11211 * ext/fiddle/closure.c: use sizeof(*pcl) for correct sizeof value. 11212 [ruby-core:57599] [Bug #8978]. Thanks mame! 11213 11214Wed Jan 29 03:36:42 2014 Eric Wong <e@80x24.org> 11215 11216 * doc/contributing.rdoc: allow/encourage other git hosts 11217 [ruby-core:59807][misc #9421] 11218 11219Tue Jan 28 23:36:01 2014 Tanaka Akira <akr@fsij.org> 11220 11221 * ext/socket: Avoid redundant fcntl/fstat syscalls for cloexec 11222 sockets. 11223 Patch by Eric Wong. [ruby-core:59429] [Feature #9330] 11224 11225Tue Jan 28 20:51:07 2014 Tanaka Akira <akr@fsij.org> 11226 11227 * process.c (READ_FROM_CHILD): Apply the last hunk of 11228 0001-process.c-avoid-EINTR-from-Process.spawn.patch written by 11229 Eric Wong in [Bug #8770]. 11230 11231Tue Jan 28 16:31:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11232 11233 * thread_pthread.c (ruby_init_stack, ruby_stack_overflowed_p): 11234 place get_stack above others to get stack boundary information. 11235 [ruby-core:60113] [Bug #9454] 11236 11237Tue Jan 28 15:27:36 2014 NARUSE, Yui <naruse@ruby-lang.org> 11238 11239 * thread_pthread.c: rlimit is only available on Linux. 11240 At least r44712 breaks FreeBSD. 11241 [ruby-core:60113] [Bug #9454] 11242 11243Tue Jan 28 15:17:59 2014 Zachary Scott <e@zzak.io> 11244 11245 * lib/set.rb: [DOC] Add examples for Set#intersect? and Set#disjoint? 11246 Patch by xavier nayrac [Bug #9331] [ci skip] 11247 11248Tue Jan 28 15:12:22 2014 Zachary Scott <e@zzak.io> 11249 11250 * ext/zlib/zlib.c (rb_zlib_adler32): [DOC] Add example for adler32 11251 Patch by Vajrasky Kok [Bug #9307] [ci skip] 11252 11253Tue Jan 28 08:56:00 2014 Charlie Somerville <charliesome@ruby-lang.org> 11254 11255 * compile.c (iseq_build_from_ary_body): Use :blockptr instead of :block 11256 as hash key when loading serialized instruction sequences from arrays. 11257 [Bug #9455] [ruby-core:60146] 11258 11259Mon Jan 27 21:52:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11260 11261 * thread_pthread.c: get current main thread stack size, which may 11262 be expanded than allocated size at initialization, by rlimit(). 11263 [ruby-core:60113] [Bug #9454] 11264 11265Sat Jan 25 22:17:02 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 11266 11267 * README.ja.md, README.md: update the controller address of 11268 mailing lists. 11269 11270Sat Jan 25 14:50:42 2014 Eric Wong <normalperson@yhbt.net> 11271 11272 * process.c (send_child_error): retry write on EINTR to fix 11273 occasional Errno::EINTR from Process.spawn. 11274 11275 * process.c (recv_child_error): retry read on EINTR to fix 11276 occasional Errno::EINTR from Process.spawn. 11277 11278Sat Jan 25 14:21:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11279 11280 * compile.c (iseq_compile_each): result of assignment should be 11281 its rhs instead of returned value from a method. 11282 [ruby-core:60071] [Bug #9448] 11283 11284Sat Jan 25 11:16:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11285 11286 * class.c (rb_extract_keywords): treat nil keyword_hash same as 0, 11287 for the case rb_scan_args returns nil if no keyword hash. 11288 11289Fri Jan 24 15:13:20 2014 Zachary Scott <e@zzak.io> 11290 11291 * lib/racc/rdoc/grammar.en.rdoc: [DOC] Correct grammar and typos 11292 Patch by Giorgos Tsiftsis [Bug #9429] [ci skip] 11293 11294Thu Jan 23 20:20:17 2014 Koichi Sasada <ko1@atdot.net> 11295 11296 * test/ruby/envutil.rb: try to wait a bit (0.1sec) when ruby process 11297 exits by signals because some SEGV tests fail because of not enough 11298 error output. 11299 11300Thu Jan 23 20:06:27 2014 Koichi Sasada <ko1@atdot.net> 11301 11302 * test/ruby/test_settracefunc.rb: check the target thread. 11303 11304Thu Jan 23 19:59:16 2014 Koichi Sasada <ko1@atdot.net> 11305 11306 * test/ruby/test_settracefunc.rb: check the target thread. 11307 11308Thu Jan 23 14:26:44 2014 Zachary Scott <e@zzak.io> 11309 11310 * lib/fileutils.rb: [DOC] Fix typo in options_of() example [Bug #9392] 11311 Patch by Giorgos Tsiftsis 11312 11313Thu Jan 23 13:56:16 2014 Zachary Scott <e@zzak.io> 11314 11315 * README -> README.md: [DOC] Format README with Markdown [Bug #9255] 11316 * README.ja -> README.ja.md: ditto 11317 11318Wed Jan 22 15:59:39 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11319 11320 * ext/thread/thread.c (Init_thread): ConditionVariable and Queue 11321 are not able to copy. [ruby-core:59961] [Bug #9440] 11322 11323Tue Jan 21 20:14:55 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11324 11325 * thread_pthread.c (rb_thread_create_timer_thread): fix for platforms 11326 where PTHREAD_STACK_MIN is a dynamic value and not a compile-time 11327 constant. [ruby-dev:47911] [Bug #9436] 11328 11329Tue Jan 21 17:55:09 2014 Zachary Scott <e@zzak.io> 11330 11331 * lib/uri/common.rb: [DOC] Use static w3.org uri [ci skip] 11332 Patch by @ykzts [Fix GH-484] https://github.com/ruby/ruby/pull/484 11333 11334Tue Jan 21 16:43:22 2014 Zachary Scott <e@zzak.io> 11335 11336 * enum.c: [DOC] Add simple example of Enumerable#zip [ci skip] 11337 Patch by @nruth on documenting-ruby/ruby#22 11338 https://github.com/documenting-ruby/ruby/pull/22 11339 11340Tue Jan 21 16:26:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11341 11342 * thread_pthread.c (rb_thread_create_timer_thread): expand timer 11343 thread stack size to get rid of segfault on FreeBSD/powerpc64. 11344 based on the patch by Steve Wills at [ruby-core:59923]. 11345 [ruby-core:56590] [Bug #8783] 11346 11347Tue Jan 21 04:31:23 2014 Tanaka Akira <akr@fsij.org> 11348 11349 * ext/socket/option.c: Use "int" for IP_MULTICAST_LOOP and 11350 IP_MULTICAST_TTL on Mac OS X and Windows. 11351 11352Tue Jan 21 00:39:15 2014 Tanaka Akira <akr@fsij.org> 11353 11354 * ext/socket/option.c: Use "byte" as default argument for 11355 IP_MULTICAST_LOOP and IP_MULTICAST_TTL socket option to follow 11356 the original multicast implementation. 11357 11358Mon Jan 20 20:20:27 2014 Tanaka Akira <akr@fsij.org> 11359 11360 * ext/socket/option.c: Use preprocessor macros to avoid repeated 11361 conditionals. 11362 11363Mon Jan 20 13:55:03 2014 Zachary Scott <e@zzak.io> 11364 11365 * lib/rubygems/version.rb: [DOC] Use gender-neutral pronouns [ci skip] 11366 * lib/rubygems/security.rb: ditto 11367 11368Sun Jan 19 06:38:48 2014 Benoit Daloze <eregontp@gmail.com> 11369 11370 * compar.c (cmp_equal): warn for this release and still rescue 11371 standard exceptions for a nicer transition. See #7688. 11372 Partly reverts r44502. 11373 11374 * test/ruby/test_comparable.rb: adapt assertion to match new behavior. 11375 11376Sun Jan 19 06:27:18 2014 Benoit Daloze <eregontp@gmail.com> 11377 11378 * test/ruby/test_comparable.rb: specify behavior for the different 11379 kind of exceptions rescued (or not) by Comparable#==. 11380 11381Sat Jan 18 23:12:19 2014 Tanaka Akira <akr@fsij.org> 11382 11383 * ext/socket: Avoid unnecessary ppoll/select on Linux. 11384 Patch by Eric Wong. [ruby-core:57950] [Bug #9039] 11385 11386Sat Jan 18 22:57:44 2014 Tanaka Akira <akr@fsij.org> 11387 11388 * lib/resolv.rb (Resolv::DNS::Resource::TXT#data): Return concatenated 11389 string. 11390 Patch by Ryan Brunner. [ruby-core:58220] [Bug #9093] 11391 11392Sat Jan 18 22:35:15 2014 Tanaka Akira <akr@fsij.org> 11393 11394 * io.c (rb_update_max_fd): Return immediately if the given fd is small 11395 enough. 11396 11397Sat Jan 18 22:25:53 2014 Tanaka Akira <akr@fsij.org> 11398 11399 * io.c: Test O_CLOEXEC only once. 11400 Patch by Eric Wong. [ruby-core:59419] [Feature #9328] 11401 11402Sat Jan 18 21:24:49 2014 Tanaka Akira <akr@fsij.org> 11403 11404 * ext/socket/option.c: IP_MULTICAST_LOOP and IP_MULTICAST_TTL socket 11405 option takes a byte on OpenBSD. 11406 Fixed by Jeremy Evans. [ruby-core:59496] [Bug #9350] 11407 11408Sat Jan 18 21:19:04 2014 Tanaka Akira <akr@fsij.org> 11409 11410 * lib/open-uri.rb: Make proxy disabling working again. 11411 Fixed by Christophe Philemotte. [ruby-core:59650] [Bug #9385] 11412 11413Fri Jan 17 20:05:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11414 11415 * lib/delegate.rb (Delegator): keep source information methods 11416 which start and end with '__'. [ruby-core:59718] [Bug #9403] 11417 11418Fri Jan 17 17:58:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11419 11420 * eval.c (rb_mod_s_constants): return its own constants for other 11421 than Module itself. [ruby-core:59763] [Bug #9413] 11422 11423Tue Jan 16 00:17:00 2014 Kenta Murata <mrkn@mrkn.jp> 11424 11425 * ext/bigdecimal/bigdecimal.gemspec: bigdecimal version 1.2.5. 11426 11427Wed Jan 15 20:30:31 2014 Masaki Matsushita <glass.saga@gmail.com> 11428 11429 * io.c (io_binwrite): use writev(2) to avoid double write if available. 11430 11431 * configure.in: check writev(2) 11432 11433Wed Jan 15 14:04:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11434 11435 * string.c (get_encoding): respect BOM on pseudo encodings. 11436 [ruby-dev:47895] [Bug #9415] 11437 11438Wed Jan 15 14:03:47 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11439 11440 * string.c (get_actual_encoding): get actual encoding according to 11441 the BOM if exists. 11442 11443 * string.c (rb_str_inspect): use according encoding, instead of 11444 pseudo encodings, UTF-{16,32}. [ruby-core:59757] [Bug #8940] 11445 11446Tue Jan 14 21:07:22 2014 Masaki Matsushita <glass.saga@gmail.com> 11447 11448 * ext/thread/thread.c (rb_szqueue_clear): notify SZQUEUE_WAITERS 11449 on SizedQueue#clear. [ruby-core:59462] [Bug #9342] 11450 11451 * test/thread/test_queue.rb: add test. the patch is from 11452 Justin Collins. 11453 11454Tue Jan 14 15:58:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11455 11456 * ext/bigdecimal/bigdecimal.c (CLASS_NAME): macro to wrap 11457 depending on PRIsVALUE for 1.9. [Backport #9406] 11458 11459 * ext/bigdecimal/bigdecimal.c (DECIMAL_SIZE_OF_BITS): fallback 11460 definition for 2.1 or older. [ruby-core:59750] [Backport #9406] 11461 11462Tue Jan 14 11:28:44 2014 Yuki Yugui Sonoda <yugui@google.com> 11463 11464 * vm_exec.c (cfp): Fixes a SEGV issue in r44554. 11465 r11 can be broken by subroutine and sometimes causes SEGV at 11466 runtime. Use r13 instead. 11467 11468Tue Jan 14 02:20:00 2014 Kenta Murata <mrkn@mrkn.jp> 11469 11470 * ext/bigdecimal/bigdecimal.c (BigDecimal_divide): Add an additional 11471 digit for the quotient to be compatible with bigdecimal 1.2.1 and 11472 the former. [ruby-core:59365] [#9316] [#9305] 11473 11474 * test/bigdecimal/test_bigdecimal.rb: tests for the above change. 11475 11476 * ext/bigdecimal/bigdecimal.gemspec: bigdecimal version 1.2.4. 11477 11478Mon Jan 13 14:55:31 2014 Zachary Scott <e@zzak.io> 11479 11480 * lib/xmlrpc/client.rb: [DOC] Remove note about SSL package on RAA 11481 Since RAA has been deprecated, and the SSL package has been replaced 11482 with net/https this statement is entirely false and should be 11483 deleted. [Bug #9152] 11484 11485Mon Jan 13 14:47:07 2014 Zachary Scott <e@zzak.io> 11486 11487 * lib/net/smtp.rb: [DOC] Remove dead link to RAA by Giorgos Tsiftsis 11488 Fixes the following bugs: [Bug #9152] [Bug #9268] [Bug #9394] 11489 * lib/open-uri.rb: ditto 11490 11491Mon Jan 13 14:25:55 2014 Zachary Scott <e@zzak.io> 11492 11493 * ext/openssl/ossl_pkey_dh.c: Fixed typo by Sandor Szuecs [Bug #9243] 11494 11495Mon Jan 13 12:03:00 2014 Charlie Somerville <charliesome@ruby-lang.org> 11496 11497 * ext/thread/thread.c (rb_szqueue_push): check GET_SZQUEUE_WAITERS 11498 instead of GET_QUEUE_WAITERS to prevent deadlock. Patch by Eric Wong. 11499 [Bug #9302] [ruby-core:59324] 11500 11501 * test/thread/test_queue.rb: add test 11502 11503Sun Jan 12 16:41:10 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11504 11505 * iseq.c (iseq_load): keep type_map to get rid of memory leak. 11506 based on a patch by Eric Wong at [ruby-core:59699]. [Bug #9399] 11507 11508Sun Jan 12 09:21:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11509 11510 * include/ruby/util.h (DECIMAL_SIZE_OF_BITS): a preprocessor 11511 constant macro to approximate decimal representation size of n-bits 11512 integer. 11513 11514 * iseq.c (register_label): use DECIMAL_SIZE_OF_BITS for better 11515 approximation. 11516 11517 * ext/bigdecimal/bigdecimal.c (BigMath_s_log): ditto. 11518 11519 * common.mk (iseq.o), ext/bigdecimal/depend (bigdecimal.o): add 11520 dependency to ruby/util.h for DECIMAL_SIZE_OF_BITS. 11521 11522Fri Jan 10 16:27:20 2014 Yuki Yugui Sonoda <yugui@google.com> 11523 11524 * vm_exec.c (cfp): Avoid generating invalid binary for 11525 NativeClient. 11526 r15 on x86_64 is reserved by NativeClient. So r15 to cfp used to 11527 generate invalid binary under some combinations of compiler 11528 optimization flags. 11529 11530Fri Jan 10 18:01:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11531 11532 * vm_insnhelper.c (vm_search_super_method): allow bound method from a 11533 module, yet another method transplanting. 11534 11535Fri Jan 10 13:34:04 2014 Aman Gupta <ruby@tmm1.net> 11536 11537 * insns.def (opt_aref_with): new instruction to optimize Hash#[], 11538 removing any allocation overhead when used with a string literal 11539 key. Patch by normalperson (Eric Wong). [ruby-core:59640] [Bug #9382] 11540 * insns.def (opt_aset_with): new instruction to optimize Hash#[]= 11541 * compile.c (iseq_compile_each): compiler shortcuts for new 11542 instructions 11543 * hash.c (static VALUE rb_hash_compare_by_id_p): fix documentation for 11544 Hash#compare_by_identity to reflect frozen string sharing 11545 * test/ruby/test_hash.rb (class TestHash): test for new behavior 11546 11547Fri Jan 10 06:23:21 2014 Benoit Daloze <eregontp@gmail.com> 11548 11549 * range.c (Range#size): [DOC] improve description and add examples. 11550 Patch by @skade. [Fixes GH-501] 11551 11552Fri Jan 10 00:47:52 2014 Josef Stribny <strzibny@gmail.com> 11553 11554 * ext/tk/extconf.rb: fix to pass arrays instead of strings to 11555 libpathflag. patch at [ruby-core:59665]. [Bug #9386] 11556 11557Thu Jan 9 20:49:22 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11558 11559 * configure.in: -mstackrealign is necessary for -msse2 working. 11560 [ruby-core:54716] [Bug #8349] 11561 11562 * configure.in: use SSE2 instructions to drop unexpected precisions on 11563 other than mingw. [ruby-core:59472] [Bug #8358] 11564 11565Thu Jan 9 20:31:10 2014 NAKAMURA Usaku <usa@ruby-lang.org> 11566 11567 * hash.c (rb_objid_hash): should return `long'. brushup r44534. 11568 11569 * object.c (rb_obj_hash): follow above change. 11570 11571Thu Jan 9 19:12:37 2014 Koichi Sasada <ko1@atdot.net> 11572 11573 * vm.c (rb_vm_pop_cfunc_frame): added. It cares c_return event. 11574 The patch base by drkaes (Stefan Kaes). 11575 [Bug #9321] 11576 11577 * variable.c (rb_mod_const_missing): use rb_vm_pop_cfunc_frame() 11578 instead of rb_frame_pop(). 11579 11580 * vm_eval.c (raise_method_missing): ditto. 11581 11582 * vm_eval.c (rb_iterate): ditto. 11583 11584 * internal.h (rb_vm_pop_cfunc_frame): add decl. 11585 11586 * test/ruby/test_settracefunc.rb: add tests. 11587 provided by drkaes (Stefan Kaes). 11588 11589 * vm.c, eval.c, include/ruby/intern.h (rb_frame_pop): 11590 move definition of rb_frame_pop() and deprecate it. 11591 It doesn't care about `return' events. 11592 11593Thu Jan 9 17:40:28 2014 NAKAMURA Usaku <usa@ruby-lang.org> 11594 11595 * hash.c (rb_any_hash): should treat the return value of rb_objid_hash() 11596 as `long', because ruby assumes the hash value of the object id of 11597 an object is `long'. 11598 this fixes test failures on mswin64 introduced at r44525. 11599 11600Thu Jan 9 09:55:20 2014 Aaron Patterson <aaron@tenderlovemaking.com> 11601 11602 * ext/psych/lib/psych/visitors/yaml_tree.rb: dumping strings with 11603 quotes should not have changed. [ruby-core:59316] [Bug #9300] 11604 11605 * ext/psych/lib/psych.rb: fixed missing require. 11606 11607 * test/psych/test_string.rb: test 11608 11609Thu Jan 9 09:51:00 2014 Aaron Patterson <aaron@tenderlovemaking.com> 11610 11611 * ext/psych/lib/psych/visitors/to_ruby.rb: anonymous structs 11612 should be able to roundtrip. Thanks @splattael! 11613 11614 * test/psych/test_object_references.rb: test for change 11615 11616Wed Jan 8 22:53:16 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11617 11618 * vm_insnhelper.c (vm_search_super_method): when super called in a 11619 bound UnboundMethod generated from a module, no superclass is 11620 found since the current defined class is the module, then call 11621 method_missing in that case. [ruby-core:59619] [Bug #9377] 11622 11623Wed Jan 8 15:55:21 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11624 11625 * hash.c (rb_objid_hash): return hash value from object ID with a 11626 salt, extract from rb_any_hash(). 11627 11628 * object.c (rb_obj_hash): return same value as rb_any_hash(). 11629 fix r44125. [ruby-core:59638] [Bug #9381] 11630 11631Wed Jan 8 13:12:41 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11632 11633 * lib/timeout.rb (Timeout::ExitException.catch): pass arguments 11634 for new instance. 11635 11636 * lib/timeout.rb (Timeout::ExitException#exception): fallback to 11637 Timeout::Error if couldn't throw. [ruby-dev:47872] [Bug #9380] 11638 11639 * lib/timeout.rb (Timeout#timeout): initialize ExitException with 11640 message for the fallback case. 11641 11642Tue Jan 7 12:43:06 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11643 11644 * lib/timeout.rb (Timeout#timeout): should not rescue ordinarily 11645 raised ExitException, which should not be thrown. 11646 11647 * lib/timeout.rb (Timeout::ExitException.catch): set @thread only if 11648 it ought to be caught. 11649 11650 * lib/timeout.rb (Timeout#timeout): when a custom exception is given, 11651 no instance is needed to be caught, so defer creating new instance 11652 until it is raised. [ruby-core:59511] [Bug #9354] 11653 11654Tue Jan 7 10:16:02 2014 Eric Hodel <drbrain@segment7.net> 11655 11656 * lib/rubygems: Update to RubyGems master 21e409d / RubyGems 2.2.1. 11657 11658 See http://rubygems.rubyforge.org/rubygems-update/History_txt.html 11659 for a list of bug fixes. 11660 11661 * test/rubygems: ditto. 11662 11663Tue Jan 7 10:10:46 2014 Eric Wong <e@80x24.org> 11664 11665 * ext/json/generator/depend: add build dependencies for json extension 11666 [Bug #9374] [ruby-core:59609] 11667 * ext/json/parser/depend: ditto 11668 11669Tue Jan 7 04:35:46 2014 Aman Gupta <ruby@tmm1.net> 11670 11671 * array.c (ary_add_hash): Fix consistency issue between Array#uniq and 11672 Array#uniq! [Bug #9340] [ruby-core:59457] 11673 * test/ruby/test_array.rb (class TestArray): regression test for above. 11674 11675Mon Jan 6 21:28:48 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 11676 11677 * .gitignore: ignore *-fake.rb generated even when CROSS_COMPILING = no 11678 since r42862. 11679 11680Sun Jan 5 20:14:14 2014 Benoit Daloze <eregontp@gmail.com> 11681 11682 * compar.c (cmp_equal): remove error hiding in Comparable#==. 11683 Comparable#== no longer rescues exceptions silently. 11684 This was the cause of quite a couple bugs. See #7688. [EXPERIMENTAL] 11685 11686 * test/ruby/test_comparable.rb: adapt assertion to match new behavior. 11687 11688 * lib/rdoc/method_attr.rb: fix bugs discovered by this change. 11689 11690 * test/rdoc/test_rdoc_normal_class.rb: fix bugs in tests. 11691 11692Sat Jan 4 22:44:00 2014 Charlie Somerville <charliesome@ruby-lang.org> 11693 11694 * struct.c (rb_struct_set): return assigned value from setter method 11695 rather than struct object. [Bug #9353] [ruby-core:59509] 11696 11697 * test/ruby/test_struct.rb (test_setter_method_returns_value): add test 11698 11699Sat Jan 4 21:44:31 2014 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 11700 11701 * test/ruby/test_gc.rb (TestGc#test_latest_gc_info): use 11702 GC.stat(:key) instead of GC.stat. 11703 11704Sat Jan 4 19:15:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11705 11706 * ext/socket/socket.c (rsock_syserr_fail_host_port): use format flags, 11707 '+' to inspect, ' ' to quote unprintables. 11708 11709 * ext/socket/socket.c (rsock_syserr_fail_path): ditto. 11710 11711 * ext/socket/socket.c (rsock_syserr_fail_raddrinfo): ditto. 11712 11713 * ext/socket/socket.c (rsock_syserr_fail_host_port): add errno 11714 argument version and use rb_syserr_fail_str() instead of 11715 rb_sys_fail_str() with restoring errno. 11716 11717 * ext/socket/socket.c (rsock_syserr_fail_path): ditto, and 11718 rb_syserr_fail(). 11719 11720 * ext/socket/socket.c (rsock_sys_fail_sockaddr): ditto, use 11721 rsock_syserr_fail_raddrinfo(). 11722 11723 * ext/socket/socket.c (rsock_sys_fail_raddrinfo): ditto. 11724 11725 * ext/socket/socket.c (setup_domain_and_type): ditto. 11726 11727Sat Jan 4 17:18:58 2014 Kazuki Tsujimoto <kazuki@callcc.net> 11728 11729 * vm.c (RubyVM::OPTS): get rid of a garbage character. 11730 11731Sat Jan 4 10:17:54 2014 Eric Hodel <drbrain@segment7.net> 11732 11733 * lib/rinda/ring.rb (Rinda::RingFinger#make_socket): Use 11734 ipv4_multicast_ttl option for portability. 11735 11736Sat Jan 4 10:15:47 2014 Eric Hodel <drbrain@segment7.net> 11737 11738 * lib/rinda/ring.rb (Rinda::RingFinger#make_socket): Use 11739 ipv4_multicast_loop option for portability. Patch by Jeremy Evans. 11740 [ruby-trunk - Bug #9351] 11741 11742Fri Jan 3 19:09:00 2014 Eric Wong <normalperson@yhbt.net> 11743 11744 * ext/socket/socket.c (rsock_sys_fail_host_port): save and restore errno 11745 before calling rb_sys_fail_str to prevent [BUG] errno == 0. 11746 Patch by Eric Wong. [ruby-core:59498] [Bug #9352] 11747 11748 * ext/socket/socket.c (rsock_sys_fail_path): ditto 11749 * ext/socket/socket.c (rsock_sys_fail_sockaddr): ditto 11750 * ext/socket/socket.c (rsock_sys_fail_raddrinfo): ditto 11751 * ext/socket/socket.c (rsock_sys_fail_raddrinfo_or_sockaddr): ditto 11752 11753Fri Jan 3 10:43:57 2014 Aman Gupta <ruby@tmm1.net> 11754 11755 * test/net/imap/cacert.pem: generate new CA cert, since the last one 11756 expired. [Bug #9341] [ruby-core:59459] 11757 * test/net/imap/server.crt: new server cert signed with updated CA. 11758 * test/net/imap/Makefile: add `make regen_certs` to automate this 11759 process. 11760 11761Fri Jan 3 00:09:54 2014 Benoit Daloze <eregontp@gmail.com> 11762 11763 * ext/bigdecimal: update class method call style from :: to . 11764 in documentation and usage. 11765 11766 * ext/bigdecimal/lib/bigdecimal/math.rb: [DOC] fix examples values. 11767 Computations were made using ruby 2.0.0p247 to ensure 11768 no effect of the recent BigDecimal bug. 11769 11770 * ext/bigdecimal/sample/nlsolve.rb: fix indent. 11771 11772Thu Jan 2 16:07:21 2014 Masaki Matsushita <glass.saga@gmail.com> 11773 11774 * io.c (io_fwrite): freeze converted str. 11775 11776Thu Jan 2 04:15:13 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11777 11778 * eval.c (rb_longjmp): remove an extra modifier from the forward 11779 declaration to match the actual definition. [ruby-core:59451] 11780 [Bug #9338] 11781 11782Thu Jan 2 01:23:30 2014 Masaki Matsushita <glass.saga@gmail.com> 11783 11784 * vm_eval.c (method_missing): use ALLOCV_N() instead of 11785 ALLOCA_N() and rb_ary_tmp_new(). 11786 11787Thu Jan 2 00:53:16 2014 Masaki Matsushita <glass.saga@gmail.com> 11788 11789 * array.c (rb_ary_zip): use ALLOCV_N() instead of ALLOCA_N(). 11790 11791Thu Jan 2 00:04:29 2014 Masaki Matsushita <glass.saga@gmail.com> 11792 11793 * hash.c (rb_hash_keys): make rb_hash_keys() static. 11794 it is no longer used from array.c since r43969. 11795 the patch is from normalperson (Eric Wong). 11796 [ruby-core:59449] [Feature #9336] 11797 11798 * internal.h: remove definition of rb_hash_keys(). 11799 11800Wed Jan 1 18:19:35 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11801 11802 * configure.in: reset LDFLAGS and DLDFLAGS for opt-dir again after 11803 LIBPATHFLAG and RPATHFLAG are set. [ruby-dev:47868] [Bug #9317] 11804 11805Wed Jan 1 11:12:29 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 11806 11807 * configure.in: use SSE2 instructions for drop unexpected 11808 precisions. [ruby-core:54738] [Bug #8358] 11809 11810Tue Dec 31 23:49:07 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11811 11812 * eval.c (rb_f_raise): add cause: optional keyword argument. 11813 [ruby-core:58610] [Feature #8257] [EXPERIMENTAL] 11814 11815Tue Dec 31 21:44:17 2013 Akio Tajima <artonx@yahoo.co.jp> 11816 11817 * win32/Makefile.sub: remove HAVE_FSEEKO because fseeko removed from win32/win32.c 11818 Fixed [Bug #9333]. 11819 11820Tue Dec 31 21:02:27 2013 Masaki Matsushita <glass.saga@gmail.com> 11821 11822 * io.c (io_fwrite): allocate frozen str only when str is not converted. 11823 11824Tue Dec 31 15:44:48 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11825 11826 * lib/mkmf.rb (RbConfig): expand RUBY_SO_NAME for extensions 11827 backward compatibility. [ruby-core:59426] [Bug #9329] 11828 11829Mon Dec 30 23:33:07 2013 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 11830 11831 * variable.c: [DOC] adding extra example in docs. 11832 patched by Steve Klabnik. [Bug #9210] 11833 11834Mon Dec 30 18:34:18 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11835 11836 * encoding.c (must_encindex, rb_enc_from_index, rb_obj_encoding): mask 11837 encoding index and ignore dummy flags. [ruby-core:59354] [Bug #9314] 11838 11839Mon Dec 30 16:11:52 2013 WATANABE Hirofumi <eban@ruby-lang.org> 11840 11841 * tool/make-snapshot: needs CXXFLAGS. [ruby-core:59393][Bug #9320] 11842 11843Sun Dec 29 18:36:54 2013 Shota Fukumori <her@sorah.jp> 11844 11845 * lib/mkmf.rb (configuration): Make CXXFLAGS customizable. 11846 Patch by Kohei Suzuki (eagletmt). [Fixes GH-492] 11847 11848Sun Dec 29 12:11:11 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11849 11850 * proc.c (mnew_from_me): keep iclass as-is, to make inheritance 11851 chain consistent. [ruby-core:59358] [Bug #9315] 11852 11853 * proc.c (method_owner): return the original defined_class from 11854 prepended iclass, instead. 11855 11856Sun Dec 29 08:47:24 2013 Lucas Allan Amorim <lucas.allan@gmail.com> 11857 11858 * test/ruby/test_sprintf.rb (test_hash): Added tests for sprintf 11859 with a hash as parameter. [Fixes GH-491] 11860 11861Sun Dec 29 07:27:51 2013 Benoit Daloze <eregontp@gmail.com> 11862 11863 * compar.c (cmp_eq_recursive): Fix the return value, the value for 11864 failed #<=> should be nil. It was raising a NoMethodError for 11865 the test case TestComparable#test_no_cmp (undefined method `>' 11866 for false:FalseClass). Yet one more reason for #7688. 11867 11868Sat Dec 28 22:21:59 2013 Benoit Daloze <eregontp@gmail.com> 11869 11870 * object.c (Kernel#<=>) surround Comparable operators with <code> tags. 11871 The #== method was hidden in ri/rdoc's output and was highlighting 11872 the line instead. 11873 11874Sat Dec 28 17:24:00 2013 DV Suresh <e@dvsuresh.me> 11875 11876 * benchmark/bm_so_meteor_contest.rb: [DOC] Fix a few typos 11877 * ext/fiddle/lib/fiddle/import.rb: ditto 11878 * ext/psych/lib/psych.rb: ditto 11879 * ext/psych/lib/psych/nodes/sequence.rb: ditto 11880 * ext/tk/lib/multi-tk.rb: ditto 11881 * ext/tk/lib/tcltk.rb: ditto 11882 11883Sat Dec 28 00:42:37 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11884 11885 * parse.y (local_push_gen, local_pop_gen): save cmdarg_stack to 11886 isolate command argument state from outer scope. 11887 [ruby-core:59342] [Bug #9308] 11888 11889Fri Dec 27 13:25:03 2013 NAKAMURA Usaku <usa@ruby-lang.org> 11890 11891 * win32/{setup.mak,Makefile.sub}: update fake.rb like 11892 template/fake.rb.in. 11893 11894Thu Dec 26 16:10:41 2013 NAKAMURA Usaku <usa@ruby-lang.org> 11895 11896 * win32/Makefile.sub (fake.rb): should depend on version.h because 11897 if RUBY_VERSION is updated, fake.rb need to say the new version 11898 to avoid install error in rbconfig.rb. 11899 11900Thu Dec 26 14:25:03 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11901 11902 * hash.c (HASH_REJECT_COPY_EXTRA_STATES): turn off the old 11903 behavior, copying extra states by accident. 11904 11905Thu Dec 26 10:49:14 2013 Yukihiro Matsumoto <matz@ruby-lang.org> 11906 11907 * version.h (RUBY_VERSION): 2.2.0 development has started. 11908 11909Thu Dec 26 10:27:53 2013 NAKAMURA Usaku <usa@ruby-lang.org> 11910 11911 * tool/merger.rb (tag): support 2.1.1 semi-automatic tagging and 2.2.0 11912 explicit tagging. 11913 11914Thu Dec 26 06:35:25 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 11915 11916 * proc.c: Having any mandatory keyword argument increases min arity 11917 [#9299] 11918 11919Thu Dec 26 06:27:08 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 11920 11921 * proc.c: Having optional keyword arguments makes maximum arity +1, 11922 not unlimited [#8072] 11923 11924Thu Dec 26 01:09:57 2013 NAKAMURA Usaku <usa@ruby-lang.org> 11925 11926 * tool/release.sh: make symbolic links. 11927 11928Thu Dec 26 00:45:33 2013 NAKAMURA Usaku <usa@ruby-lang.org> 11929 11930 * tool/make-snapshot: support new version scheme. 11931 11932Wed Dec 25 22:44:14 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11933 11934 * compile.c (iseq_set_arguments): set arg_keyword_check from 11935 nd_cflag, which is set by parser. internal ID is used for 11936 unnamed keyword rest argument, which should be separated from no 11937 keyword check. 11938 11939 * iseq.c (rb_iseq_parameters): if no keyword check, keyword rest is 11940 present. 11941 11942 * parse.y (new_args_tail_gen): set keywords check to nd_cflag, which 11943 equals to that keyword rest is not present. 11944 11945Wed Dec 25 22:32:19 2013 Zachary Scott <e@zzak.io> 11946 11947 * lib/abbrev.rb: [DOC] rdoc format patch by Giorgos Tsiftsis [Bug #9146] 11948 11949Wed Dec 25 20:30:10 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11950 11951 * iseq.c (rb_iseq_parameters): push argument type symbol only for 11952 unnamed rest keywords argument. 11953 11954Wed Dec 25 20:28:48 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11955 11956 * proc.c (rb_iseq_min_max_arity): maximum argument is unlimited if 11957 having rest keywords argument. [ruby-core:53298] [Bug #8072] 11958 11959Wed Dec 25 18:29:22 2013 Koichi Sasada <ko1@atdot.net> 11960 11961 * vm_insnhelper.c (argument_error): insert dummy frame to make 11962 a backtrace object intead of modify backtrace string array. 11963 [Bug #9295] 11964 11965 * test/ruby/test_backtrace.rb: add a test for this patch. 11966 fix test to compare a result of Exception#backtrace with 11967 a result of Exception#backtrace_locations. 11968 11969Wed Dec 25 13:00:54 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11970 11971 * configure.in: let mingw do something black-magic, and check if 11972 _gmtime64_s() is available actually. 11973 11974 * win32/win32.c (gmtime_s, localtime_s): use _gmtime64_s() and 11975 _localtime64_s() if available, not depending on very confusing 11976 mingw variants macros. based on the patch by phasis68 (Heesob 11977 Park) at [ruby-core:58764]. [ruby-core:58391] [Bug #9119] 11978 11979Wed Dec 25 12:33:41 2013 Yusuke Endoh <mame@tsg.ne.jp> 11980 11981 * sample/trick2013/: added the award-winning entries of TRICK 2013. 11982 See https://github.com/tric/trick2013 for the contest outline. 11983 (Matz has approved the attachment.) 11984 11985Wed Dec 25 10:42:02 2013 Yamashita Yuu <yamashita@geishatokyo.com> 11986 11987 * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Declare a constant 11988 `OP_MSIE_SSLV2_RSA_PADDING` only if the macro is defined. The 11989 `SSL_OP_MSIE_SSLV2_RSA_PADDING` has been removed from latest 11990 snapshot of OpenSSL 1.0.1. [Fixes GH-488] 11991 11992Wed Dec 25 01:03:00 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11993 11994 * proc.c (bind_local_variables): allowing binding to list its 11995 local variables. patch by Jack Danger Canty <jackdanger AT 11996 squareup.com> at [ruby-core:56543]. [Feature #8773] 11997 11998Tue Dec 24 23:20:38 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 11999 12000 * test/fileutils/fileasserts.rb (assert_ownership_user): new 12001 assertion for user ownership. 12002 12003 * test/fileutils/test_fileutils.rb (test_chown_error), 12004 (test_chown_without_permission, test_chown_with_root): 12005 based on the patch by vajrasky (Vajrasky Kok) at 12006 [ruby-core:59298]. [Feature #9292] 12007 12008Tue Dec 24 16:28:05 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 12009 12010 * proc.c (rb_mod_define_method): consider visibility only if self 12011 in the caller is same as the receiver, otherwise make public as 12012 well as old behavior. [ruby-core:57747] [Bug #9005] 12013 [ruby-core:58497] [Bug #9141] 12014 12015 * vm.c (rb_vm_cref_in_context): return ruby level cref if self is 12016 same. 12017 12018Tue Dec 24 14:13:14 2013 Koichi Sasada <ko1@atdot.net> 12019 12020 * README.EXT: add a refer to URL. 12021 12022Tue Dec 24 13:48:45 2013 Koichi Sasada <ko1@atdot.net> 12023 12024 * README.EXT: add a document about RGenGC. 12025 Reviewed by havenwood. 12026 [misc #8962] 12027 12028 * README.EXT.ja: ditto. 12029 12030Tue Dec 24 12:11:43 2013 Koichi Sasada <ko1@atdot.net> 12031 12032 * include/ruby/ruby.h (RARRAY_ASET): try to avoid compiler warning. 12033 [Bug #9287] 12034 12035Tue Dec 24 05:04:56 2013 NAKAMURA Usaku <usa@ruby-lang.org> 12036 12037 * test/fileutils/test_fileutils.rb (setup): should not call 12038 Process.groups for Windows. get rid of many errors introduced by 12039 r44364. 12040 12041Mon Dec 23 18:37:16 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 12042 12043 * test/fileutils/fileasserts.rb (assert_ownership_group): new 12044 assertion for group ownership. 12045 12046 * test/fileutils/test_fileutils.rb (test_chown{,_verbose,_noop}): 12047 based on the patch by vajrasky (Vajrasky Kok) at 12048 [ruby-core:59281]. [Feature #9286] 12049 12050Mon Dec 23 15:53:45 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 12051 12052 * hash.c (HAS_EXTRA_STATES): warn extra states only when something 12053 differ. [ruby-core:59254] [Bug #9275] 12054 12055Mon Dec 23 12:42:13 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 12056 12057 * array.c: Have to_h raise on elements that are not key-value pairs 12058 [#9239] 12059 12060 * enum.c: ditto 12061 12062Mon Dec 23 05:01:55 2013 Zachary Scott <e@zzak.io> 12063 12064 * doc/syntax/methods.rdoc: [DOC] Added example for underscore 12065 conventions in method names. Also added doc to clarify encoding 12066 character set support for Ruby programs and elaborated on defining 12067 predicate and bang methods. Based on a patch by @gaurish 12068 [Fixes GH-477] https://github.com/ruby/ruby/pull/477 12069 12070Mon Dec 23 03:18:09 2013 Zachary Scott <e@zzak.io> 12071 12072 * doc/ChangeLog-1.9.3: [DOC] Fix typos by @dvsuresh 12073 [Fixes GH-485] https://github.com/ruby/ruby/pull/485 12074 * ext/openssl/ossl_config.c: ditto 12075 * lib/rss/utils.rb, lib/time.rb: ditto 12076 * test/ruby/envutil.rb: ditto 12077 12078Sun Dec 22 23:56:56 2013 Zachary Scott <e@zzak.io> 12079 12080 * lib/{rake,rdoc,rss}/*, test/rexml/test_listener.rb: [DOC] Fix typos 12081 by @dvsuresh [Fixes GH-486] https://github.com/ruby/ruby/pull/486 12082 12083Sun Dec 22 11:08:47 2013 Eric Hodel <drbrain@segment7.net> 12084 12085 * test/rubygems/test_gem_ext_builder.rb: Fix warning due to ambiguous 12086 expression. 12087 12088Sun Dec 22 11:05:53 2013 Eric Hodel <drbrain@segment7.net> 12089 12090 * lib/rubygems/commands/install_command.rb: Restore gem install 12091 --ignore-dependencies for remote gems 12092 * test/rubygems/test_gem_commands_install_command.rb: Test for the 12093 above. 12094 12095Sun Dec 22 10:23:40 2013 Eric Hodel <drbrain@segment7.net> 12096 12097 * lib/rdoc.rb: Set RDoc to release version. 12098 12099Sun Dec 22 10:19:07 2013 Eric Hodel <drbrain@segment7.net> 12100 12101 * lib/rubygems.rb: Set RubyGems to release version. 12102 12103Sun Dec 22 10:16:08 2013 Eric Hodel <drbrain@segment7.net> 12104 12105 * lib/rubygems.rb (module Gem): Fix comment for 12106 Gem::load_path_insert_index. 12107 12108Sun Dec 22 04:07:55 2013 Koichi Sasada <ko1@atdot.net> 12109 12110 * gc.c (ruby_gc_set_params): don't show obsolete warnings for 12111 RUBY_FREE_MIN/RUBY_HEAP_MIN_SLOTS if 12112 RUBY_GC_HEAP_FREE_SLOTS/RUBY_GC_HEAP_INIT_SLOTS are given. 12113 [Bug #9276] 12114 12115Sat Dec 21 13:00:20 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 12116 12117 * file.c: remove unnecessary the source path from EEXIST error 12118 messages and show the destination path only. [ruby-core:59202] 12119 [Feature #9263] 12120 12121Sat Dec 21 12:37:19 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 12122 12123 * lib/resolv.rb (Resolv::Hosts#lazy_initialize): should not 12124 consider encodings in hosts file. [ruby-core:59239] [Bug #9273] 12125 12126 * lib/resolv.rb (Resolv::Config.parse_resolv_conf): ditto. 12127 12128Sat Dec 21 05:43:27 2013 NAKAMURA Usaku <usa@ruby-lang.org> 12129 12130 * tool/make-snapshot: replace RUBY_PATCHLEVEL_STR in version.h to 12131 show users that this ruby is a preview/rc version. 12132 12133Sat Dec 21 05:03:49 2013 NAKAMURA Usaku <usa@ruby-lang.org> 12134 12135 * win32/Makefile.sub (fake.rb): fixed wrong RUBY_PLATFORM, to correctly 12136 install win32.h. 12137 [ruby-core:58801][Bug #9199] reported by arton. 12138 12139For the changes before 2.1.0, see doc/ChangeLog-2.1.0 12140For the changes before 2.0.0, see doc/ChangeLog-2.0.0 12141For the changes before 1.9.3, see doc/ChangeLog-1.9.3 12142For the changes before 1.8.0, see doc/ChangeLog-1.8.0 12143 12144Local variables: 12145coding: us-ascii 12146add-log-time-format: (lambda () 12147 (let* ((time (current-time)) 12148 (system-time-locale "C") 12149 (diff (+ (cadr time) 32400)) 12150 (lo (% diff 65536)) 12151 (hi (+ (car time) (/ diff 65536)))) 12152 (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t))) 12153indent-tabs-mode: t 12154tab-width: 8 12155change-log-indent-text: 2 12156end: 12157vim: tabstop=8 shiftwidth=2 12158