Граф коммитов

47586 Коммитов

Автор SHA1 Сообщение Дата
nobu 65055fe244 common.mk: make bin directory
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-16 11:50:55 +00:00
hsbt 274c6180b7 To use github url for gemspec.
[Bug #13906][ruby-core:82817]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 23:46:46 +00:00
nobu 4075d71c18 ruby-runner.c: reduce duplicate code
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 19:25:46 +00:00
nobu 84181a6c88 Makefile.in: make wrappers for each name
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 19:25:45 +00:00
nobu 012ed57719 fixup r59927
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 17:47:50 +00:00
nobu 86888f9cec rename ruby-runner as bin/ruby
* Makefile.in, configure.in, tool/runruby.rb: rename ruby-runner
  executable file as $(RUBY_INSTALL_NAME) under bin, to mimic
  dirty `#!/usr/bin/env` hack.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 17:42:00 +00:00
naruse b2996b30d9 Find.find -> Use Dir.children instead of Dir.entries
Dir.children is available since Feature #11302.
Find.find can use of the new list (having no '.' neither '..' entries),
making now superflous an if statement.

This change can improve the performance of Find.find when the path
has lots of entries (thousands?).

https://bugs.ruby-lang.org/issues/11302
patched by Espartaco Palma <esparta@gmail.com>
https://github.com/ruby/ruby/pull/1697 fix GH-1697
[Feature #13896]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 17:00:49 +00:00
naruse 40f3c519d5 Fix test code of kconv
patched by tbpgr <tbpgr@tbpgr.jp>
https://github.com/ruby/ruby/pull/1696 fix GH-1696

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 16:56:16 +00:00
svn 9708af66bf * 2017-09-16
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 16:53:56 +00:00
naruse 16225d823d include query parameters in Net::HTTP.post
patched by Samuel Giddins <segiddins@segiddins.me>
https://github.com/ruby/ruby/pull/1686 fix GH-1686

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 16:53:55 +00:00
kazu 743ab3c783 Fix typos [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 12:03:42 +00:00
kazu dd3b3dd0f3 Remove needless splat array
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 12:03:41 +00:00
nobu f22345427a parse.y: use SET_LEX_STATE
* parse.y (f_arglist, parser_yylex): set lex_state via
  SET_LEX_STATE macro for yydebug messages.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 08:47:46 +00:00
nobu 581be44ede object.c: fix conversion failure message
* object.c (convert_type_with_id): fix failure message for
  explicit conversion.  rb_convert_type_with_id and
  rb_check_convert_type_with_id are not only for implicit
  conversions.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 02:01:59 +00:00
nobu 92e3ffdf78 rubyspec: jobserver fd may not be available
* spec/rubyspec/optional/capi/spec_helper.rb (compile_extension):
  rescue possible EBADF as jobserver fd may not be available.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 00:59:35 +00:00
nobu 3ce856a602 rubyspec: use mock directory
* spec/rubyspec/core/dir/mkdir_spec.rb: the source directory may
  be on a read-only filesystem.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 00:59:34 +00:00
nobu 3948372201 rubyspec: fix types
* spec/rubyspec/optional/capi/ext/fixnum_spec.c: FIX2INT and
  FXI2UINT return long, in spite of their names.

* spec/rubyspec/optional/capi/ext/range_spec.c: err is int.

* spec/rubyspec/optional/capi/ext/st_spec.c: st_index_t is larger
  than int.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 00:59:32 +00:00
yui-knk c7fa2bf568 ext/coverage/coverage.c (rb_coverage_start): Ensure `opt` is a hash
Ensure `opt` is a hash before using `rb_hash_lookup` to `opt`.
This will prevent SEGV when an inappropriate object (i.e. an array)
is passed to `opt`.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-15 00:40:38 +00:00
eregon 6479a0163a Update to ruby/spec@a4bc1d8
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 15:56:33 +00:00
svn 938465beb0 * 2017-09-15
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 15:56:10 +00:00
eregon 49a864ad90 Update to ruby/mspec@5bd9409
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 15:56:09 +00:00
eregon 3efe410dd0 time.c (Time#-): Fix documentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 14:54:29 +00:00
mame 6617c41292 lib/webrick/log.rb: sanitize any type of logs
It had failed to sanitize some type of exception messages.  Reported and
patched by Yusuke Endoh (mame) at https://hackerone.com/reports/223363

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 11:16:23 +00:00
nobu 7df1e45bb6 ripper: add states of scanner
* parse.y (ripper_state): add states of scanner to tokens from
  Ripper.lex and Ripper::Filter#on_*.  based on the patch by
  aycabta (Code Ahss) at [ruby-core:81789].  [Feature #13686]

* ext/ripper/tools/preproc.rb (prelude, usercode): generate EXPR_*
  constants from enums.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 10:53:47 +00:00
nobu a61ae940c6 parse.y: [DOC] fix call-seq [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 10:49:29 +00:00
mame b324a64946 ext/coverage/coverage.c: use long instead of int for coverage site id
Coverage generates unique ID numbers for each branch and each method.
Use long instead of int for the IDs.  I don't want to see 2^32 branches
and methods in one file, but just in case...

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 10:45:04 +00:00
naruse fff6809b30 fix the case High Sierra's mincore(2) may return -128 [Bug #13895]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 09:21:48 +00:00
nobu ea49381e51 compile.c: iseq_pop_newarray
* compile.c (iseq_pop_newarray): optimize array literal in
  condition.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 08:04:30 +00:00
mame db9f36f3fa ext/coverage/coverage.c (method_coverage): `id` was used uninitialized
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 07:45:17 +00:00
mame e43f304478 Measure branch and method coverage for `make test-all`
To measure coverage of C code:
`./configure --enable-gcov && make && make exam && make lcov`

To measure coverage of Ruby code:
`./configure && make && make exam COVERAGE=true && make lcov`

To measure coverage of both languages at a time:
`./configure --enable-gcov && make && make exam COVERAGE=true && make lcov`

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 06:07:05 +00:00
mame 3c8c17d30d Introduce NODE_UNLESS for branch coverage
`unless` statement was a syntactic sugar for `if` statement,
which made the result of branch coverage hard to understand.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 05:27:02 +00:00
mame 78cf46078e Add method coverage
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 05:12:34 +00:00
hsbt a5641cdf7a added workaround for APFS file format.
* TestFileExhaustive#test_atime: It fails with nano-sec precise.
    I changed to use unixtime for this assertion for APFS.
  * TestFileExhaustive#test_expand_path: skip assertion when given
    invalid charactor on APFS.

  [Bug #13816][ruby-core:82383]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59887 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 05:04:38 +00:00
mame 3155da024c Fix the lineno of case statement that has no expression
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 04:42:23 +00:00
mame 1f7abf7283 Add branch coverage for case-when statement
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 04:32:58 +00:00
hsbt c4a64b734c Removed needless operator.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 03:57:22 +00:00
mame 16ab236b88 Add branch coverage for while and until statements
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 03:36:05 +00:00
mame ce570370f0 Add branch coverage for if statement
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 03:25:36 +00:00
mame c171ca1efd ext/coverage/coverage.c: Fix the condition for non-experimental mode
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 02:53:54 +00:00
mame 68394b27ba [EXPERIMENTAL] Extend the API of `Coverage.start` and `result`
The old API:

    Coverage.start
    load "foo.rb"
    p Coverage.result #=> {"foo.rb" => [1, 2, nil]}

The new API:

    ENV["COVERAGE_EXPERIMENTAL_MODE"] = "true"
    Coverage.start(lines: true)
    load "foo.rb"
    p Coverage.result #=> {"foo.rb" => {:lines => [1, 2, nil]}}

This new API allows us to add other measuring target types.

Notes:

* To keep compatibility, the old interface is still remained; passing no
  optional argument makes `Coverage.result` return the old format.
* This feature is still experimental.  So, to enable the new API, the
  environment variable `COVERAGE_EXPERIMENTAL_MODE` must be set.  I plan
  to activate this feature by Ruby 2.5.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59874 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 02:36:26 +00:00
hsbt 4d5c414fcc Update gemspec for gem released versions.
* These are dbm, fcntl, io-console, sdbm, stringio, strscan, zlib,
    cmath, scanf.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 02:01:36 +00:00
ko1 9ea2102e57 remove an unused variable (sometimes it fails test).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 01:55:59 +00:00
mame d1b290d5ba Add a new instruction `trace2` for hooking with custom data
This is needed for passing to the hook function the measuring target
type (line/branch/method) and the site of coverage event fired.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-14 01:55:30 +00:00
nobu a4eedafb13 test_rubyoptions.rb: keep paths if necessary
* test/ruby/test_rubyoptions.rb (TestRubyOptions#test_search):
  PATH must keep library loading paths on a platform where it is
  used for that purpose, for extra libraries.
  [ruby-core:81178] [Bug #13569] [Fix GH-1616]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-13 17:07:19 +00:00
svn e1ada191df * 2017-09-14
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-13 15:28:17 +00:00
nobu 56c61b5cde LIBPATHENV on Windows
* configure.in, win32/Makefile.sub: set LIBPATHENV to PATH on
  Windows, for extra DLLs.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-13 15:28:16 +00:00
suke f10646970b test/win32ole/test_word.rb: word quit without confirmation dialog to save
files. [Bug #13894] Thanks to h.shirosaki.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-13 13:24:59 +00:00
kazu 51de1548f4 Random.urandom raises RuntimeError instead of returning nil
[ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-13 12:46:13 +00:00
hsbt a8c632972f Removed needless magic-comment for encodings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-13 09:06:34 +00:00
hsbt 6336b394ec Fixup r59856. Added workaround for JRuby.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-13 09:06:05 +00:00