aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* marshal.c: rb_check_funcall_with_hooknobu2012-12-234-45/+136
| | | | | | | | | | * vm_eval.c (rb_check_funcall_with_hook): rb_check_funcall with hook which is called before calling method_missing or target method. * marshal.c (w_object, r_object0): use rb_check_funcall_with_hook instead of respond_to? and call. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * re.c (rb_reg_eqq): doc: #=== is not a synonym for #=~, added examplezzak2012-12-232-3/+11
| | | | | | | [ruby-dev:46746] [Bug #7571] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* marshal.c: use RB_TYPE_Pnobu2012-12-231-1/+1
| | | | | | | * marshal.c (r_entry0): use RB_TYPE_P. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread.c: ignore result of blocking_region_beginnobu2012-12-232-1/+14
| | | | | | | | | * thread.c (BLOCKING_REGION): if fail_if_interrupted is false ignore the result of blocking_region_begin(), since it always is true in that case. suppress "uninitialized" warnings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/rubygems/commands/check_command.rb: Added --doctor and --dry-rundrbrain2012-12-2314-153/+739
| | | | | | | | | | | | | | | | | | | | | | | | | | | options to clean up after failed uninstallation. * test/rubygems/test_gem_commands_check_command.rb: Test for above. * lib/rubygems/commands/push_command.rb: Allow pushes from RubyGems 2.0.0.preview3 * lib/rubygems/commands/update_command.rb: Use Gem.ruby_version * lib/rubygems/dependency.rb: Update style. * lib/rubygems/installer.rb: Ensure installed gem specifications will be useable. Refactor. * test/rubygems/test_gem_installer.rb: ditto. * lib/rubygems/validator.rb: Fixed bug with unreadable files. * lib/rubygems.rb: Fixed broken methods. * test/rubygems/test_gem.rb: Test for above. * test/rubygems/test_gem_commands_push_command.rb: Fixed overridden Gem.latest_rubygems_version git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Deprecate #{lines,bytes,chars,codepoints} of IO-likes.knu2012-12-227-55/+299
| | | | | | | | | | | | | | | * io.c (rb_io_lines, rb_io_bytes, rb_io_chars, rb_io_codepoints): Deprecate IO#{lines,bytes,chars,codepoints} and those of ARGF. [Feature #6670] * ext/stringio/stringio.c (strio_lines, strio_bytes, strio_chars) (strio_codepoints): Deprecate StringIO#{lines,bytes,chars,codepoints}. [Feature #6670] * ext/zlib/zlib.c (rb_gzreader_lines, rb_gzreader_bytes): Deprecate Zlib::GzipReader#{lines,bytes}. [Feature #6670] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: srcs-extnobu2012-12-221-1/+7
| | | | | | | * common.mk (ext/dl/callback/callback.c): include in srcs-ext for snapshot. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/optparse.rb: Documentation for OptionParser to remove 'shadowedzzak2012-12-222-2/+13
| | | | | | | | | outer local variable' from example and make obvious ARGV with non-option arguments. Patch by Marcus Stollsteimer [ruby-core:47460] [Bug #6997] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/intern.h: add the prototype declaration ofmrkn2012-12-226-35/+164
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rb_num_coerce_bit. * numeric.c (rb_num_coerce_bit): the new coerce function for bitwise binary operation. * bignum.c (rb_big_and): use coerce to convert the argument, which isn't a Fixnum nor a Bignum, to the corresponding Integer object so that bitwise operations can support Integer-mimic objects. [Bug #1792] [ruby-core:39491] * bignum.c (rb_big_or): ditto. * bignum.c (rb_big_xor): ditto. * numeric.c (bit_coerce): ditto. * numeric.c (fix_and): ditto. * numeric.c (fix_or): ditto. * numeric.c (fix_xor): ditto. * test/ruby/test_integer.rb: add tests for the above changes. * test/ruby/test_bignum.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2012-12-23svn2012-12-221-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* internal.h: quote unprintablenobu2012-12-229-96/+168
| | | | | | | | | * internal.h (QUOTE, QUOTE_ID): quote unprintable chars in strings and IDs. [Bug #7574] [ruby-dev:46749] * string.c (rb_str_quote_unprintable): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* error.c: PRIsVALUEnobu2012-12-222-71/+53
| | | | | | | | * error.c (rb_compile_error, rb_compile_warn, rb_compile_warning), (rb_warn, rb_warning): support PRIsVALUE. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * cont.c (rb_fiber_start): unify conditions.nagachika2012-12-222-4/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (rb_io_wait_writable): use rb_thread_check_ints() insteadkosaki2012-12-222-0/+21
| | | | | | | of rb_thread_fd_writable(). * io.c (rb_io_wait_readable): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* revert r38549. this typo in ChangeLog is intentional.nagachika2012-12-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: no nested symbolnobu2012-12-223-2/+11
| | | | | | * object.c (rb_mod_const_get): symbol cannot be nested constant name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: defer creating stringnobu2012-12-221-43/+26
| | | | | | | * object.c (rb_mod_const_get): defer creating partinal name string until needed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* object.c: check more strictlynobu2012-12-223-5/+11
| | | | | | | * object.c (rb_mod_const_get): check more strictly. [ruby-dev:46748] [Bug #7573] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * cont.c (rb_fiber_start): in case of jump with TAG_FATAL,nagachika2012-12-225-8/+23
| | | | | | | | | | | | | | | | | enqueue error into async_errinfo_queue, because you cannot call TH_TAG_JUMP() in this function. [ruby-dev:45218] [Bug #5993] * thread.c (rb_threadptr_execute_interrupts): now INT2FIX(TAG_FATAL) can be popped from async_errinfo_queue. * vm.c (rb_vm_make_jump_tag_but_local_jump): revert r38441. rb_vm_make_jump_tag_but_local_jump() shouldn't return exception in case of state == TAG_FATAL. * test/ruby/test_fiber.rb (test_exit_in_fiber): fix a test to illuminate Thread.exit should terminate current Thread. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix a typokazu2012-12-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (obj_id_to_ref): add a macro to treat Bignum object id.shirosaki2012-12-222-2/+14
| | | | | | | | | | This follows the change r38493. * gc.c (id2ref): fix for working fine with Bignum object id on x64 Windows. * gc.c (wmap_finalize): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * struct.c (make_struct): remove junk ID check to allow members whoglass2012-12-223-8/+20
| | | | | | | | have junk name like "foo\000". * test/ruby/test_struct.rb: Test for above. [Bug #7575] [ruby-dev:46750] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/net/http.rb: Requests may be created with a URI which sets thedrbrain2012-12-217-12/+149
| | | | | | | | | | | | | | Host header. Responses contain the requested URI for easier redirect following. [ruby-trunk - Feature #6482] * lib/net/http/generic_request.rb: ditto. * lib/net/http/response.rb: ditto.j * NEWS (net/http): Updated for above. * test/net/http/test_http.rb: Tests for above. * test/net/http/test_http.rb: ditto. * test/net/http/test_httpresponse.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/irb/slex.rb(#match): Typo, should be D_DETAILzzak2012-12-212-1/+6
| | | | | | | [ruby-core:51071] [Bug#7600] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/irb/input-method.rb, lib/irb.rb: Typo in zzak2012-12-213-4/+10
| | | | | | | | InputMethod#readable_atfer_eof? to #readable_after_eof? [ruby-core:51069] [Bug #7599] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_dump.c (rb_vm_bugreport): revert r38533.kosaki2012-12-213-6/+20
| | | | | | | * addr2line.c (fill_lines): add ELF sanity check. [Bug #7597] [ruby-dev:46786] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/irb/inspector.rb, lib/irb/context.rb: Move IRB::INSPECTORS and zzak2012-12-213-67/+72
| | | | | | | class methods to IRB::Inspector [ruby-core:51067][Bug #7598] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2012-12-22svn2012-12-211-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * object.c (rb_obj_hash): shouldn't assume object_id can be long.usa2012-12-212-1/+14
| | | | | | | | based on a patch by Heesob Park at [ruby-core:51060]. cf. [Backport #7454] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/fiddle/lib/fiddle/struct.rb (Fiddle::CStructEntity#set_ctypes):kou2012-12-213-1/+18
| | | | | | | | | | CPtr -> Pointer. * test/fiddle/test_c_struct_entry.rb (Fiddle::TestCStructEntity#test_aref_pointer): Added the test for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/fiddle/lib/fiddle/struct.rb (Fiddle::CStructEntity#set_ctypes):kou2012-12-213-1/+20
| | | | | | | | | | CPtr -> Pointer. * test/fiddle/test_c_struct_entry.rb (Fiddle::TestCStructEntity#test_aref_pointer_array): Added the test for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/fiddle/lib/fiddle/import.rb (Fiddle::Importer#sizeof):kou2012-12-213-1/+9
| | | | | | | | | CPtr -> Pointer. * test/fiddle/test_import.rb (Fiddle::TestImport#test_sizeof): Added the test for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_iseq.rb: disable a test which checks featuresko12012-12-212-1/+6
| | | | | | | | removed at r38532. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/{dir.h,win32.c} (rb_w32_readdir): removed old rb_w32_readdir()usa2012-12-214-18/+18
| | | | | | | | | | and renamed from rb_w32_readdir_with_enc(). [ruby-core:24864] [Feature #1927] * dir.c (READDIR): follow above change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_dump.c (rb_vm_bugreport): commentout addr2line call temporarilytarui2012-12-212-4/+11
| | | | | | | | in order to avoid segv. anyone can fix addr2line? [Bug #7597] [ruby-dev:46786] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * iseq.c (Init_ISeq): remove definition of the following methods:ko12012-12-212-1/+16
| | | | | | | | | | | | ISeq#line_trace_all and ISeq#line_trace_specify because they are half baked. C APIs are remained as experimental. These functions will be renamed, removed their parameters may be changed. You can use these methods by C exts. Please give us your comments. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_trace.c (tracepoint_new): add code to support specified thread.ko12012-12-212-3/+11
| | | | | | | | But not tested and this feature is not supported officially. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add test for r38529 [Bug #7536]naruse2012-12-211-0/+13
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ruby.c (process_options): need to acquire env from TOPLEVEL_BINDINGko12012-12-212-5/+13
| | | | | | | | | | each time. `bind->env' may update after `eval()'. [Bug #7536] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix ChangeLogko12012-12-211-3/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/debug.h: define rb_trace_arg_t.ko12012-12-213-16/+22
| | | | | | | | * vm_core.h: catch up above changes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add a ticket numberko12012-12-211-0/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_core.h, vm_trace.c: fix multi-threading bug for tracing.ko12012-12-215-87/+108
| | | | | | | | | | | | | | | | | | | | | | | Move `trace_arg' from rb_tp_t::trace_arg to rb_thread_t::trace_arg. `trace_arg' may changed by multiple threads. rb_thread_t::trace_arg can represent rb_thread_t::trace_running (null or non-null) and rb_thread_t::trace_running is removed. After that, `rb_tp_t' is not needed to check tracing or not (A running thread knows tracing or not). This is why I remove tp_attr_check_active() and make new function get_trace_arg(). And this modification disable to work the following code: TracePoint.trace{|tp| Thread.new{p tp.event} # access `tp' from other threads. } I believe nobody mix threads at trace procedure. This is current limitation. * cont.c (fiber_switch, rb_cont_call): use rb_thread_t::trace_arg instead of rb_thread_t::trace_running. * test/ruby/test_settracefunc.rb: add a multi-threading test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* id.h.tmpl: ID2ATTRSETnobu2012-12-213-1/+8
| | | | | | | * template/id.h.tmpl (ID2ATTRSET): compile time constant macro for ID_ATTRSET. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* id.def: check duplicationnobu2012-12-214-3/+18
| | | | | | * defs/id.def (KeywordError): check duplication. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* id.def: other scope IDnobu2012-12-214-16/+47
| | | | | | | * defs/id.def: support for other scope IDs, ID_{INSTANCE,GLOBAL,CONST,CLASS}. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_thread.rb: descriptive assertionsnobu2012-12-211-14/+18
| | | | | | | | * test/ruby/test_thread.rb: (test_local_barrier), (test_status_and_stop_p, test_recursive_outer, test_stack_size): use more descriptive assertions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_thread.rb: flush before SystemStackErrornobu2012-12-211-2/+3
| | | | | | | * test/ruby/test_thread.rb (TestThread#test_stack_size): need to flush before SystemStackError. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_trace.c: stylenobu2012-12-211-2/+2
| | | | | | * vm_trace.c (rb_suppress_tracing): adjust style. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * properties.nobu2012-12-210-0/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e