summaryrefslogtreecommitdiff
path: root/ChangeLog
AgeCommit message (Collapse)Author
2012-12-07Commit ChangeLog from r38249zzak
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07* time.c (time_mdump): dump timezone string to private instance variablenaruse
on marshaling. * time.c (time_mload): load timezone string from private instance variable named 'zone'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38247 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06* ext/fiddle/lib/fiddle/function.rb (Fiddle::Function#name): newngoto
attribute needed to switch Win32::Registry from DL to Fiddle. * ext/fiddle/lib/fiddle/import.rb (import_function, bind_function): set function name to the returned Fiddle::Function object. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06* test/ruby/test_refinement.rb: fix some tests to use neithershugo
Module#using nor Module#module_eval. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06* eval.c (ruby_Init_refinement): a new function to enableshugo
Refinements with a warning "Refinements are experimental...". * ext/refinement/refinement.c, ext/refinement/extconf.rb: a new extension library to enable Refinements. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06* revised r37993 to avoid SEGV/ILL in tests. In r37993, a methodshugo
entry with VM_METHOD_TYPE_REFINED holds only the original method definition, so ci->me is set to a method entry allocated in the stack, and it causes SEGV/ILL. In this commit, a method entry with VM_METHOD_TYPE_REFINED holds the whole original method entry. Furthermore, rb_thread_mark() is changed to mark cfp->klass to avoid GC for iclasses created by copy_refinement_iclass(). * vm_method.c (rb_method_entry_make): add a method entry with VM_METHOD_TYPE_REFINED to the class refined by the refinement if the target module is a refinement. When a method entry with VM_METHOD_TYPE_UNDEF is invoked by vm_call_method(), a method with the same name is searched in refinements. If such a method is found, the method is invoked. Otherwise, the original method in the refined class (rb_method_definition_t::body.orig_me) is invoked. This change is made to simplify the normal method lookup and to improve the performance of normal method calls. * vm_method.c (EXPR1, search_method, rb_method_entry), vm_eval.c (rb_call0, rb_search_method_entry): do not use refinements for method lookup. * vm_insnhelper.c (vm_call_method): search methods in refinements if ci->me is VM_METHOD_TYPE_REFINED. If the method is called by super (i.e., ci->call == vm_call_super_method), skip the same method entry as the current method to avoid infinite call of the same method. * class.c (include_modules_at): add a refined method entry for each method defined in a module included in a refinement. * class.c (rb_prepend_module): set an empty table to RCLASS_M_TBL(klass) to add refined method entries, because refinements should have priority over prepended modules. * proc.c (mnew): use rb_method_entry_with_refinements() to get a refined method. * vm.c (rb_thread_mark): mark cfp->klass for iclasses created by copy_refinement_iclass(). * vm.c (Init_VM), cont.c (fiber_init): initialize th->cfp->klass. * test/ruby/test_refinement.rb (test_inline_method_cache): do not skip the test because it should pass successfully. * test/ruby/test_refinement.rb (test_redefine_refined_method): new test for the case a refined method is redefined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06parse.y: flush string contentnobu
* parse.y (parser_here_document): flush string content between new line and :string_embexpr. [ruby-core:48703] [Bug #7255] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06* test/rake/helper.rb: Load envutil correctly. Removed useless rescuedrbrain
for signal propagation tests * lib/rake/file_utils.rb: Prefer the built ruby. * test/rake/test_rake_functional.rb: ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06* lib/rdoc/context.rb: Don't warn for duplicate methods while loading.drbrain
* test/rdoc/test_rdoc_context.rb: Test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06* lib/rubygems/command_manager.rb: Removed string concatenationdrbrain
syntax. [Bug #6265] * lib/rubygems/commands/install_command.rb: ditto * lib/rubygems/commands/uninstall_command.rb: ditto * lib/rubygems/indexer.rb: ditto * lib/rubygems/security/policy.rb: ditto * lib/rubygems/security.rb: ditto * lib/rubygems/uninstaller.rb: ditto * test/rubygems/test_gem_commands_cert_command.rb: ditto * test/rubygems/test_gem_package.rb: ditto * test/rubygems/test_gem_security.rb: ditto * test/rubygems/test_gem_security_policy.rb: ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06* lib/rubygems/package.rb: Set rubygems_version before validation.drbrain
Fixes issue with bundler. * test/rubygems/test_gem_package.rb: Test for above. * lib/rubygems/remote_fetcher.rb: Only update the cache when we have permission. [ruby-trunk - Bug #7509] * lib/rubygems/source.rb (class Gem): ditto * test/rubygems/test_gem_remote_fetcher.rb: Test for above. * lib/rubygems/test_utilities.rb: ditto * lib/rubygems/specification.rb: Derive base_dir properly for default gems. [ruby-trunk - Bug #7496] * test/rubygems/test_gem_specification.rb: Test for above. * lib/rubygems.rb: Untaint Dir.pwd when searching for gemdeps files for operation under $SAFE=1 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06* vm_trace.c: TracePoint#enable should not cause an errorko1
when it is already enabled. TracePoint#disable is too. [ruby-core:50561] [ruby-trunk - Bug #7513] * test/ruby/test_settracefunc.rb: add tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38227 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* lib/rdoc*: Improved display of ChangeLog files as HTML.drbrain
* test/rdoc*: Test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* thread.c (rb_uninterruptible): helper function for providingkosaki
temporary async_interrupt_timing(Object => :defer) * io.c (rb_f_p): use rb_uninterruptible. * io.c (rb_f_p_internal): helper function for rb_f_p(). * io.c (struct rb_f_p_arg): new struct for rb_f_p_internal. * test/ruby/test_thread.rb (test_async_interrupt_and_p): test for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* io.c (io_binwrite): check interrupt before io issue.kosaki
* test/ruby/test_thread.rb (test_async_interrupt_and_io): test for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05vm_eval.c: public_send does not consider how it is callednobu
* vm_eval.c (rb_method_call_status): use Qundef as no self instead of the current self. * vm_eval.c (send_internal): public_send does not consider how it is called, as mentioned in r14173. patched by charliesome (Charlie Somerville). [ruby-core:50489] [Bug #7499] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 * lib/timeout.rb (Timeout#timeout): specify a exceptiontarui
more strictly at async_interrupt_timing. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05adjust style and fix typo and indentkazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* lib/timeout.rb (Timeout#timeout): setkosaki
async_interrupt_timeing(:on_blocking) by default. [Bug #7503] [ruby-core:50524] * test/test_timeout.rb (#test_timeout_blocking): test for the above. * test/test_timeout.rb (test_timeout_immediate): ditto * test/test_timeout.rb (test_timeout_immediate2): ditto. * NEWS: news for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38216 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05add a contributor namenari
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* gc.c (getrusage_time): uses clock_gettime() withnari
CLOCK_PROCESS_CPUTIME_ID when available, which provides a 1ns precision on linux. [ruby-core:50495] [Bug #7500] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05vm.c: save blockprocvalnobu
* vm.c (rb_vm_make_proc): save the proc made from the given block so that it will not get collected. [ruby-core:50545] [Bug #7507] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05fix typos and remove trailing spaceskazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* ext/dl/lib/dl/func.rb (DL::Function#bind): When Fiddle is used,ngoto
@ptr should be updated. This fixes SEGV raised in DL::Function#call after calling DL::Function#bind. [Bug #7516] [ruby-dev:46708] * test/dl/test_func.rb (test_bind): test for the above git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 * thread.c (rb_thread_s_async_interrupt_timing): have to check ints before ↵tarui
jumpping out. * test/ruby/test_thread.rb (test_async_interrupt_with_return): add test rescue has to catch a queued async exception at the time of return. * test/ruby/test_thread.rb (test_async_interrupt_with_break): add test rescue has to catch a queued async exception at the time of break. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* test/ruby/memory_status.rb: suppress warning.ko1
A patch from NAKAMURA Usaku. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* lib/rdoc/parser/changelog.rb: Parse more ChangeLog file variations.drbrain
* test/rdoc/test_rdoc_parser_changelog.rb: Test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* ext/dl/lib/dl/func.rb (DL::Function#initialize, DL::Function#bind):ngoto
ABI should be set by using CFunc#calltype even when Fiddle is used. When Fiddle is used and a block is given, name shoud not be ignored. [ruby-core:50562] [Bug #7514] * ext/dl/lib/dl/import.rb (DL::Importer#bind_function): should respect abi and name when Fiddle is used. * test/dl/test_func.rb (test_name_with_block): test for "name" method with giving a block. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* doc/shell.rd, doc/shell.rd.ja: Removed stale doc fileszzak
* lib/shell.rb, lib/shell/*: Merge and updates docs from doc/shell.rd* git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* test/ruby/test_settracefunc.rb: disable trace.ko1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05mkmf.rb: different strings from conflict markersnobu
* lib/mkmf.rb (MakeMakefile#macro_defined?): use clearly different strings from conflict markers. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05tabify and fix typoskazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05* ChangeLog: remove conflict marker.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04* lib/README: Add rdoc modeline directive and formatting libszzak
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04typotarui
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 * test/ruby/test_thread.rb (test_async_interrupt_blocking): bugfixtarui
about defared check git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 * vm_core.h (RUBY_VM_CHECK_INTS_BLOCKING): check async queue everytime.tarui
* thread.c (sleep_forever): check RUBY_VM_CHECK_INTS_BLOCKING first. * thread.c (sleep_timeval): ditto. * test/ruby/test_thread.rb (test_async_interrupt_blocking): add a test exceptions are correctly defared and raised on :on_blocking context. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04id.c: generatenobu
* common.mk, defs/id.def, template/id.c.tmpl: generate id.c as well as id.h. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04* thread.c (rb_mutex_owned_p): new method that return currentkosaki
thread have the target mutex or not. [Feature #7505] [ruby-dev:46697] * test/ruby/test_thread.rb (test_mutex_owned, test_mutex_owned2): test for the above. * NEWS: new for the above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04 * lib/erb.rb (make_compiler, add_put_cmd, add_insert_cmd): extractseki
methods. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04* test/ruby/memory_status.rb (Memory): use fiddle/types if available.ngoto
* test/ruby/memory_status.rb (Memory::Win32): :stdcall is needed on x86 WIN32. This commit partly reverts r38054. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04* ext/fiddle/lib/fiddle/types.rb: copied from ext/dl/lib/dl/types.rbngoto
and modified for Fiddle, needed for migration from DL to Fiddle. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04* ext/fiddle/lib/fiddle/import.rb (import_function, bind_function):ngoto
should respect call_type for migration from DL to Fiddle. [Bug #7484] [ruby-core:50405] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04fix typoskazu
unification is uncountable git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04* .document: Added ChangeLog and doc/ChangeLog-* as documentationdrbrain
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38179 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04* lib/rdoc/parser/changelog.rb: Added a ChangeLog parser to RDoc.drbrain
* lib/rdoc/parser.rb: ditto * test/rdoc/test_rdoc_parser_changelog.rb: Test for above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04* properties.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04marshal.c: PRIsVALUEnobu
* marshal.c (path2class, path2module): use PRIsVALUE. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04marshal.c: rb_check_funcallnobu
* marshal.c (w_object, marshal_dump, marshal_load): use rb_check_funcall if possible. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-04marshal.c: GC guardnobu
* marshal.c (w_object, marshal_dump, r_object0, marshal_load): use RB_GC_GUARD() (directly or indirectly) instead of volatile. * variable.c (rb_path_to_class): prevent the arguemnt from GC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e