Commit graph

29400 commits

Author SHA1 Message Date
zzak
a756aa75ea * doc/etc.rd: Removed stale documentation file
* ext/etc/etc.c:  Merged documentation from doc/etc.rd and updated
  rdoc, added documentation for Etc::Passwd and Etc::Group


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 07:08:06 +00:00
usa
8b2a4e68c3 * lib/test/unit.rb (Test::Unit::Runner#_run_parallel): no need to
retry skipped test.  this fix makes 40% faster the whole test-all
  with -j5 on Windows.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 07:03:45 +00:00
drbrain
85e3560a3b * lib/rdoc/markup/to_joined_paragraph.rb: Completed documentation
* lib/rdoc/parser/c.rb:  ditto
* lib/rdoc/parser/changelog.rb:  ditto
* lib/rdoc/servlet.rb:  ditto
* lib/rdoc/store.rb:  ditto

* lib/rdoc/store.rb:  Improved HTML error page.  Completed
  documentation

* lib/rdoc/parser/ruby.rb:  Fixed bug attaching a comment to A::B = 42
* test/rdoc/test_rdoc_parser_ruby.rb:  Test for above

* test/rdoc/test_rdoc_comment.rb:  Removed garbage


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38256 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 05:22:50 +00:00
nobu
08f0db2c68 timeout.rb: replace deferred exception after async_interrupt_timing
* lib/timeout.rb (Timeout#timeout): since async_interrupt_timing
  re-raises a deferred exception, replace the timeout exception with
  Timeout::Error after it.  [Bug #7503]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 05:04:02 +00:00
nobu
9dd64b6053 * test/ruby/test_refinement.rb: suppress warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 05:02:21 +00:00
nobu
13d3f023c6 test: remove or replace trailing spaces
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 05:02:18 +00:00
ngoto
97de2b36e9 * ext/fiddle/closure.c (Fiddle::Closure.new): fix typo in documentation
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 04:39:39 +00:00
ngoto
a297576c37 * ext/fiddle/function.c (Fiddle::Function.new): fix typo in documentation
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 04:35:43 +00:00
zzak
2db4ac6e2b Commit ChangeLog from r38249
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 04:21:20 +00:00
zzak
5452c2d625 * doc/forwardable.rd: Remove stale documentation file
* lib/forwardable.rb: Merge documentation from doc/forwardable.rd


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 04:08:29 +00:00
naruse
3c0f66570c Use more portable value for ENV['TZ']
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 02:58:55 +00:00
naruse
1bb1d096fb * time.c (time_mdump): dump timezone string to private instance variable
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-07 02:55:35 +00:00
naruse
68300e9554 Add freebsd to force_tz_test
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 02:55:33 +00:00
naruse
b03c751e94 Canada/Newfoundland was renamed to America/St_Johns
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 02:55:30 +00:00
naruse
811efc8276 Add declaration of rb_warn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-07 02:55:28 +00:00
ngoto
0bc733d9e3 * ext/fiddle/lib/fiddle/function.rb (Fiddle::Function#name): new
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 16:21:43 +00:00
svn
5f912e7e2f * 2012-12-07
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 15:12:41 +00:00
shugo
d87b56c411 * test/ruby/test_refinement.rb: fix some tests to use neither
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 15:12:36 +00:00
nobu
2b0af28589 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 14:33:09 +00:00
shugo
328e0ff5ad * eval.c (ruby_Init_refinement): a new function to enable
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 14:31:43 +00:00
ngoto
34592fb5b6 * ext/dl/lib/dl/func.rb (CALL_TYPE_TO_ABI, FiddleClosureCFunc): exclude private constants and methods from rdoc
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 14:30:24 +00:00
ngoto
382217c8b6 * ext/fiddle/lib/fiddle/import.rb (CALL_TYPE_TO_ABI): exclude private constant from RDoc
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 14:27:38 +00:00
shugo
60d6038dda * revised r37993 to avoid SEGV/ILL in tests. In r37993, a method
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-06 13:08:41 +00:00
nobu
bd0c636211 parse.y: flush string content
* 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 08:29:16 +00:00
nobu
68a44cd169 test_scanner_events.rb: ruby-mode highlight by heredoc
* test/ripper/test_scanner_events.rb (TestRipper::ScannerEvents): get
  rid of make ruby-mode highlight confused by heredoc.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 08:25:50 +00:00
nobu
d3a2aa4004 memory_status.rb: EnvUtil
* test/ruby/memory_status.rb (Memory): suppress_warning is in EnvUtil.
  [ruby-core:50599] [Bug #7523]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38233 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 08:25:45 +00:00
drbrain
9b76b5057c * test/rake/helper.rb: Load envutil correctly. Removed useless rescue
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 07:35:45 +00:00
drbrain
854758c464 * lib/rdoc/context.rb: Don't warn for duplicate methods while loading.
* 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 06:20:50 +00:00
drbrain
80ba379c24 * lib/rubygems/command_manager.rb: Removed string concatenation
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 05:26:46 +00:00
drbrain
afae107a4c * lib/rubygems/package.rb: Set rubygems_version before validation.
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 05:13:08 +00:00
zzak
5ffc1a3aaa Fix typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38228 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-06 04:57:20 +00:00
ko1
c2f5a57403 * vm_trace.c: TracePoint#enable should not cause an error
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-06 03:13:50 +00:00
drbrain
54c40f3db5 * lib/rdoc*: Improved display of ChangeLog files as HTML.
* 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 22:20:15 +00:00
kosaki
fe6b2e20e9 * thread.c (rb_uninterruptible): helper function for providing
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 19:37:49 +00:00
kosaki
def63c3466 * io.c (io_binwrite): check interrupt before io issue.
* 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-05 19:37:37 +00:00
nobu
84cfe8f8d6 vm_eval.c: public_send does not consider how it is called
* 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 16:10:41 +00:00
nobu
cfc2103108 test_object.rb: test for public_send
* test/ruby/test_object.rb (TestObject#test_public_send): add test for
  public_send.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38222 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 16:07:27 +00:00
tarui
ce48e9a930 * lib/timeout.rb (Timeout#timeout): specify a exception
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-05 15:53:27 +00:00
kazu
61f46bafa4 adjust style and fix typo and indent
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 15:48:11 +00:00
naruse
1b648d0467 Suppress warnings
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 15:34:11 +00:00
naruse
05db61c25d Use underscore-begging name for dummy variables to suppress warning
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38218 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 15:12:58 +00:00
svn
7424e9e8dd * 2012-12-06
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 15:04:16 +00:00
kosaki
a400c94d72 * lib/timeout.rb (Timeout#timeout): set
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-05 15:04:09 +00:00
nari
4a572d5bb4 add a contributor name
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 14:56:58 +00:00
nari
ab012bda4a * gc.c (getrusage_time): uses clock_gettime() with
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-05 14:53:16 +00:00
nobu
31e6f72c8e vm.c: save blockprocval
* 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-05 13:46:11 +00:00
kazu
1bddcc72f6 fix typos and remove trailing spaces
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-05 13:35:05 +00:00
ngoto
9920da5593 * ext/dl/lib/dl/func.rb (DL::Function#bind): When Fiddle is used,
@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 13:24:19 +00:00
tarui
17a11774ca * thread.c (rb_thread_s_async_interrupt_timing): have to check ints before 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 09:54:58 +00:00
ko1
592e87e1f8 * test/ruby/memory_status.rb: suppress warning.
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 07:56:07 +00:00