42023 Commits

Author SHA1 Message Date
sho-h
d5f4a2ba12 variable.c (rb_mod_deprecate_constant): [DOC] added
documentation for Module#deprecate_constant. [ci skip]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-04 07:08:05 +00:00
sho-h
571fb5b687 thread_sync.c: [DOC] remove SizedQueue#close argument. [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-04 06:38:26 +00:00
ngoto
1c8b8173be * version.h (RUBY_BUILD_VERSION_STR_3): Workaround for old version of
Fujitsu C Compiler (fcc) on Solaris. [Bug #11944] [ruby-dev:49468]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53427 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-04 03:12:44 +00:00
nobu
8fe2421ef1 ChangeLog: remove unnecessary preposition [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-04 01:50:06 +00:00
nobu
09ecfbf3f7 ChangeLog: remove stale log [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53425 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-04 01:46:36 +00:00
hsbt
acc472dd24 * test/coverage/test_coverage.rb: ignored test when enabled to coverage.
It lead to crash with `make test-all`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-04 01:14:45 +00:00
yui-knk
c48abea0c3 Move a comment to the appropriate position.
The position of `/* fall through */` was moved by r52931.

* insns.def (opt_case_dispatch): Move a comment to the
  appropriate position.
  [ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-03 23:14:43 +00:00
nobu
7d117c7046 contributing.rdoc: update [ci skip]
* doc/contributing.rdoc: mention some make targets, check, up, and
  love.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-03 15:24:10 +00:00
svn
c4079eec28 * 2016-01-04
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53421 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-03 15:03:50 +00:00
nobu
94519cbb3e common.mk: up in help
* common.mk (help): mention `up` target briefly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53420 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-03 15:03:49 +00:00
nobu
192b63fd3e Fix defined? expressions
* lib/rubygems/security.rb (DIGEST_ALGORITHM, KEY_ALGORITHM):
  should check same name as the used constants.
  [ruby-core:72674] [Bug #11940]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-03 14:55:25 +00:00
nobu
23529f5d03 Makefile.in: drop dependency
* Makefile.in (aclocal.m4): drop the dependency of aclocal.m4 for
  broken autotools installations.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-03 14:19:09 +00:00
nobu
853ef28af3 aclocal.m4: add
* aclocal.m4: add fallback file for non-aclocal environments.
  [ruby-core:72683] [Bug #11942]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-03 10:22:12 +00:00
yui-knk
5cf9b65aa3 Use rb_method_visibility_t instead of int in rb_print_undef
* eval_error.c (rb_print_undef): Use `rb_method_visibility_t`
  instead of `int`.
* eval_intern.h (rb_print_undef): ditto
* proc.c (mnew_internal): ditto
* vm_method.c (rb_export_method): ditto
  [Misc #11649] [ruby-core:71311] [fix GH-1078]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-03 04:59:54 +00:00
svn
21649a0fcc * 2016-01-03
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-03 03:12:21 +00:00
nobu
e05a853718 acinclude.m4: rename
* acinclude.m4: rename aclocal.m4, which should be generated by
  aclocal.  [ruby-core:72675] [Bug #11941]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-03 03:12:20 +00:00
normal
004bb16ccc thread_sync.c: remove unnecessary casts for queue_sleep
"Qfalse" and "(VALUE)0" are equivalent, and do not matter
for an ignored argument, either.

Additionally, there's no reason to cast the pointer to
rb_thread_sleep_deadly when we already have a queue_sleep
wrapper.

* thread_sync.c (queue_do_pop): avoid cast with Qfalse
  (rb_szqueue_push): ditto, use queue_sleep wrapper

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-02 12:08:34 +00:00
seki
32b4a8b36b Allow ERB subclass to add token easily. [Feature #11936]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-02 07:19:58 +00:00
nobu
123313e205 parse.y: use nd_tag
* parse.y (regexp): set_yylval_num sets u1, should use nd_tag
  instead of nd_state.  [ruby-core:72638] [Bug #11932]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-02 05:44:41 +00:00
naruse
9c54107903 Revert r53409 "parse.y: yylval.num should be u3"
It introduces SEGV

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-02 04:39:56 +00:00
nobu
10c2251add parse.y: yylval.num should be u3
* parse.y (set_yylval_num): should be used as nd_state, set to u3.
  [ruby-core:72638] [Bug #11932]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-02 02:11:09 +00:00
svn
81df39dc77 * 2016-01-02
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-01 23:47:24 +00:00
marcandre
9543908c9f * lib/ostruct.rb: Fix case of frozen object with initializer.
Bug revealed by RubySpec [ruby-core:72639]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-01 17:27:38 +00:00
kazu
428fe14f5e * NEWS: mention about CSV's liberal_parsing option.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53406 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-01 13:02:56 +00:00
hsbt
b8057a5cda * ChangeLog: added missing reference for GitHub
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-01 12:39:29 +00:00
hsbt
b4c1a13dcc * doc/NEWS-2.3.0: fix double words typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-01 10:39:16 +00:00
nobu
910eb9836d compile.c: adjust call_info count
* compile.c (remove_unreachable_chunk): decrease count of
  call_info in removed instructions.  fix up r53402.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-01 06:28:58 +00:00
nobu
0094737575 compile.c: remove unreferred label
* compile.c (remove_unreachable_chunk): remove unreferred label
  to optimize away unreachable chunk.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-01 03:05:55 +00:00
jeg2
f18f940802 Adding a liberal_parsing option to CSV. Patch by Braden Anderson.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-01 02:44:48 +00:00
nobu
7d9342aecd mkconfig.rb: SDKROOT
* tool/mkconfig.rb (RbConfig): prefix SDKROOT to oldincludedir
  not includedir, the latter is outside the ruby installation.
  [ruby-core:72496] [Bug #11881]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-01 01:27:30 +00:00
nobu
bd5d443a56 Add test for Enumerator::Lazy#take
* test/ruby/test_lazy_enumerator.rb (test_take_bad_arg): Add test
  code in case of Enumerator::Lazy#take called with negative number.
  [ruby-dev:49467] [Bug #11933]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-31 23:53:04 +00:00
nobu
b1796737cf parse.y: single-quote indented heredoc
* parse.y (parser_here_document): update indent for each line in
  indented here document with single-quotes.
  [ruby-core:72479] [Bug #11871]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-31 20:06:22 +00:00
svn
d6c769a5fe * 2016-01-01
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53397 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-31 18:26:59 +00:00
nobu
6e5967e2ae ostruct.rb: deferred accessors
* lib/ostruct.rb (freeze): define deferred accessors before
  freezing to get rid of an error when just reading frozen
  OpenStruct.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-31 18:26:46 +00:00
marcandre
2f2a5c3ae9 * lib/ostruct.rb: Fix new_ostruct_member to correctly avoid redefinition
[#11901]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-31 05:37:21 +00:00
nobu
99894e6c82 test_module.rb: sort constants
* test/ruby/test_module.rb (test_classpath): since r53376, all
  results of Module#constants should be sorted to compare.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-31 01:49:27 +00:00
nobu
3e0f09dbe5 ruby-additional.el: escape control code
* misc/ruby-additional.el (ruby-encode-unicode): escape control
  code except for LF.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-31 01:38:28 +00:00
nobu
34167345ac ruby-additional.el: encode non-ASCII code only
* misc/ruby-additional.el (ruby-encode-unicode): encode non-ASCII
  code only, excluding ASCII control code, e.g. \t, \n, etc.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-31 00:39:03 +00:00
naruse
2fad016810 skip if locale is not UTF-8
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 19:06:55 +00:00
naruse
5da0e86396 * test/ruby/test_module.rb (test_classpath): r53376 may change
the order of m.constants.
  `make TESTS='-v ruby/test_class.rb ruby/test_module.rb' test-all`
  may fail after that.
  http://rubyci.s3.amazonaws.com/tk2-243-31075/ruby-trunk/log/20151230T164202Z.log.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 17:47:43 +00:00
svn
6bdfd21d29 * 2015-12-31
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 17:20:50 +00:00
eregon
6ec9331c2a * common.mk (help): Fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53388 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 17:20:28 +00:00
hsbt
95aadb1426 * lib/net/http/responses.rb: Added new response class for 451 status code.
* lib/net/http.rb: documentation for HTTPUnavailableForLegalReasons

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 11:53:15 +00:00
hsbt
27f00a7a22 * lib/webrick/httpstatus.rb: Added HTTP 451 Status Code.
[fix GH-1167] Patch by @MuhammetDilmac
  https://tools.ietf.org/html/draft-tbray-http-legally-restricted-status-00

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 11:45:52 +00:00
hsbt
8f8f92b508 * doc/syntax/calling_methods.rdoc: fix old operator for safe navigation
operator. [ci skip][fix GH-1182] Patch by @dougo

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 11:26:09 +00:00
nobu
f880d5dcd2 Add test for String#ord
* test/ruby/test_string.rb (test_ord): Add test for String#ord.
  [Fix GH-1181]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 07:43:25 +00:00
nobu
6fd18ca51b forwardable.rb: adjust backtrace by tail call
* lib/forwardable.rb (def_instance_delegator): adjust backtrace of
  method body by tail call optimization.  adjusting the delegated
  target is still done by deleting backtrace.
* lib/forwardable.rb (def_single_delegator): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 02:28:59 +00:00
nobu
d8eb5ade4f fix commit miss
* test/test_forwardable.rb: add tests for r53381.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 02:26:15 +00:00
nobu
986fb55961 Forwardable: Fix delegating to 'args' and 'block'
* lib/forwardable.rb (def_instance_delegator) fix delegating to
  'args' and 'block', clashing with local variables in generated
  methods.  [ruby-core:72579] [Bug #11916]

* lib/forwardable.rb (def_single_delegator): ditto.

If you have a class that uses Forwardable to delegate a method to
another object, and the method that returns the delegate object is
called `args` or `block`, then Forwardable will fail to work.

Here's a simple example:

    class ModelCreator
      extend Forwardable

      attr_reader :args

      def_delegator :args, :model_name

      def initialize(args)
        @args = args
      end
    end

    ModelCreator.new.model_name

If you run the last line above, then you'll get:

    NoMethodError: undefined method `model_name' for []:Array

This error occurs because `def_delegator` -- as it is written in Ruby --
uses metaprogramming to add methods to the class that will then delegate
to the delegate object. So it's as if we had written:

    class ModelCreator
      extend Forwardable

      attr_reader :args

      def model_name(*args, &block)
        args.model_name(*args, &block)
      end

      def initialize(args)
        @args = args
      end
    end

As you can see, `def_delegator` will not only forward the method call
onto the delegate object, it will also forward any arguments provided as
well. It is here that the bug arises: it splats all of the arguments
into a variable which is called `args`, and because of how variable
scope works in Ruby, it then attempts to call `model_name` on *this*
variable and *not* our delegate object method.

The fix is to call the delegate object method manually using `__send__`.
(This assumes, of course, that the given receiver is, in fact, the name
of a method and not the name of an instance variable, which is also a
possibility.) We use `__send__` because the delegate object method could
be private.

So, that looks like this:

    def model_name(*args, &block)
      __send__(:args).model_name(*args, &block)
    end

Because `def_delegators` and `delegate` use `def_delegator` internally,
they also get this fix as well.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 02:18:44 +00:00
nobu
a974041b0e object.c: fix prepend cmp
* object.c (rb_class_inherited_p): search the corresponding
  ancestor to prepended module from prepending class itself.
  [ruby-core:72493] [Bug #11878]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53380 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-30 00:58:58 +00:00