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

53558 Коммитов

Автор SHA1 Сообщение Дата
samuel dc6908ab44 Ensure x86 stack is fortified, fixed #15335.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 23:49:33 +00:00
svn 20c99b1ff5 * 2018-12-12
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 23:49:32 +00:00
samuel 61c2022595 Add NEWS about coroutine implementation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66339 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 23:49:29 +00:00
hsbt 36d93e831b Merge Bundler 1.17.2 from upstream.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 11:02:41 +00:00
naruse 23ff1abc9c Same as r66334 add Errno::EISDIR
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66337 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 10:55:07 +00:00
normal 0046a4a519 test/dtrace: use TracePoint.__enable
"TracePoint.enable" is implemented in prelude.rb since
r66003 / commit 96990203b7
and not available in miniruby.  I tried using regular "ruby"
for testing, but it proved noisy and caused test failures.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66336 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 09:49:31 +00:00
normal 349f6a3275 test/dtrace: improve diagnostics
These will help us track down test failures more easily
(on FreeBSD 11.2)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 09:49:26 +00:00
naruse 785ace12f9 CentOS-7 (1810)'s header has O_TMPFILE but kernel doesn't support it
http://rubyci.s3.amazonaws.com/centos7/ruby-trunk/log/20181206T080003Z.diff.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 08:44:00 +00:00
ko1 ed2ad8fc1e remove unused (redundant) chapter names
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 07:31:23 +00:00
mame 2b9ad05873 doc/contributing.rdoc: remove IA-64 from active platform list
Now takano32-san has no IA-64 machine for test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66332 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 06:35:40 +00:00
nobu 8c69f7ec44 test/date: removed unnecessaruy `__send__`
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 05:09:35 +00:00
nobu 1a0e374b33 ext/date: Fix !NDEBUG code
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 05:09:34 +00:00
nobu b572705486 date_core.c: moved some methods to DateTime
* ext/date/date_core.c (Init_date_core): moved methods which make
  sense only for DateTime to that class, instead of defining
  private methods in Date and making them public in DateTime.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 04:35:13 +00:00
nobu 73400c01f7 date_core.c: reorder ComplexDateData
* ext/date/date_core.c (ComplexDateData): reordered to adjust
  common part with SimpleDateData.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 04:30:31 +00:00
mame eec23088e4 NEWS: add a ticket number
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 04:26:04 +00:00
nobu b91599c48b Fix infinite loop by ensure
* compile.c (iseq_insert_nop_between_end_and_cont): insert nop so
  that the end of rescue and continuing points are not same, to
  get rid of infinite loop.  [Bug #15385]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 04:14:31 +00:00
svn 8e9aa75df1 * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66325 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 04:13:13 +00:00
nobu 28eb147484 Modify insn list only when compiling
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 04:13:09 +00:00
hsbt 91533d9ab1 Downgrade Bundler 1.17.x from 2.0.0.
We have the platform issue on heroku:
    * https://gist.github.com/schneems/26452540f6e2bbbcf2ea144f45f6b305
    * https://github.com/heroku/heroku-buildpack-ruby/issues/833

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66323 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 03:07:37 +00:00
duerst 448e86d796 add clarification about details of update to Unicode 11.0.0 [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66322 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 00:44:24 +00:00
nobu f6e800dab0 ReFix r663197
Stringify after downcase, to restrict arguments.
[Bug#15394]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66321 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 00:36:46 +00:00
nobu 0bdc2287bc Fix r663197
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66320 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11 00:05:53 +00:00
naruse 1bf066dcfa Preserve HTTP header key as string [Bug #15394]
to prevent send Host header twice accidentally.

From: Sangyong Sim <sangyong-sim@cookpad.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 23:54:14 +00:00
kazu 8a758e87f2 Sort [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66318 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 23:52:59 +00:00
nobu 0c0ec3ad21 Add the deprecation of flip-flops to NEWS page [ci skip]
[Fix GH-2047]

From: Junichi Ito <jit@sonicgarden.jp>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 23:40:14 +00:00
svn 8b13cbce7e * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66316 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 23:23:00 +00:00
odaira 3a5cc345f8 Native coroutine implementation for ppc64le Linux
* configure.ac: enable fiber coroutine for powerpc64le-linux

* coroutine/ppc64le/Context.S: coroutine_transfer implementation

* coroutine/ppc64le/Context.h: coroutine implementation

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66315 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 23:22:56 +00:00
duerst dff1e89bfb add a test to make sure some unassigned codepoints do not get converted
In test/ruby/enc/test_case_mapping.rb, add a test to make sure the
unassigned codepoints in the Georgian MTAVRULI range (U+1CBB, U+1CBC)
do not get converted to unrelated codepoints by String#capitalize.
(It turns out that this test was not strictly necessary, because
unassigned codepoints are already excluded by the fact that they are
not found in the onigenc_unicode_fold_lookup table. So this test only
serves to check against future regressions.)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66314 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 23:12:12 +00:00
svn 6e99af1411 * 2018-12-11
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66313 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 15:48:49 +00:00
naruse 2f18a95c4e fix r66311
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66312 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 15:48:45 +00:00
naruse 7405bbda27 Define HAVE_STMT_AND_DECL_IN_EXPR and use it [Bug #15293]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 13:58:36 +00:00
nobu 8bb7c992b8 LEGAL: gathered util.c [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 12:43:16 +00:00
usa 5f91caceea Net::ReadTimeout and Net::WriteTimeout should tell the cause socket
* lib/net/protocol.rb (ReadTimeout, WriteTimeout): Net::ReadTimeout and Net::WriteTimeout should tell the cause socket
  [Feature #14832] [ruby-core:87440]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 07:11:18 +00:00
nobu 2ea54f0c1d win32/Makefile.sub: missing dependency of mjit_config.h
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66307 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 02:58:01 +00:00
nobu 485f3b57bc Initialize bin
* hash.c (linear_update): initialize `bin` just to silence false
  warnings by old gcc 4.8.  [Bug #15299]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66306 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 02:01:21 +00:00
nobu f798ff4c43 Limit uplevel travarsing
* tool/vcs.rb (VCS.detect): limit level of travarsing parent
  directories, 0 by the default.  curretly always detecting at the
  source directory itself.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66305 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 01:58:28 +00:00
nobu fec4b2225e Detection order
* tool/vcs.rb (VCS.detect): detect each VCS while travarsing
  parent directories.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 01:58:27 +00:00
nobu 93cb2b3563 Updated dates in man pages
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 01:57:48 +00:00
svn 0c889c0760 * 2018-12-10
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 00:05:44 +00:00
nobu ce8a8c101a Remove unnecessary require of fileutils
Today I updated my ruby core clone, and I run the usual steps to compile
ruby. When running "make", I run into the following error:

```
(... stuff ...)
encdb.h unchanged
Traceback (most recent call last):
	5: from ./tool/mkconfig.rb:19:in `<main>'
	4: from ./tool/mkconfig.rb:19:in `require'
	3: from /home/deivid/Code/ruby/lib/fileutils.rb:4:in `<top (required)>'
	2: from /home/deivid/Code/ruby/lib/fileutils.rb:4:in `require'
	1: from /home/deivid/Code/ruby/rbconfig.rb:11:in `<top (required)>'
/home/deivid/Code/ruby/rbconfig.rb:13:in `<module:RbConfig>': ruby lib version (2.5.0) doesn't match executable version (2.6.0) (RuntimeError)
uncommon.mk:780: recipe for target '.rbconfig.time' failed
make: *** [.rbconfig.time] Error 1
```

Apparently, the script that generates the root `rbconfig.rb` file requires
`fileutils`, which in turn requires 'rbconfig' (for mjit-headers it says in a
comment), which uses the `rbconfig.rb` config file in the root folder if it
exists. In my case, this file existed but had been generated on 2.5.0, thus
causing the error.

I think we can avoid this sort of circular dependency by not requiring
`fileutils`, since it does not seem to be used anywhere in the
`tool/mkconfig.rb` script since r55338.

[Fix GH-2045]

From: David Rodríguez <deivid.rodriguez@riseup.net>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66301 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-10 00:05:43 +00:00
duerst 3628eae2e7 implement special behavior for Georgian for String#capitalize
The modern Georgian script is special in that it has an 'uppercase'
variant called MTAVRULI which can be used for emphasis of whole words,
for screamy headlines, and so on. However, in contrast to all other
bicameral scripts, there is no usage of capitalizing the first letter
in a word or a sentence. Words with mixed capitalization are not used
at all.

We therefore implement special behavior for String#capitalize. Formally,
we define String#capitalize as first applying String#downcase for the
whole string, then using titlecase on the first letter. Because Georgian
defines titlecase as the identity function both for MTAVRULI ('uppercase')
and Mkhedruli (lowercase), this results in String#capitalize being
equivalent to String#downcase for Georgian. This avoids undesirable
mixed case.

* enc/unicode.c: Actual implementation

* string.c: Add mention of this special case for documentation

* test/ruby/enc/test_case_mapping.rb: Add two tests, a general one
  that uses String#capitalize on some (including nonsensical)
  combinations of MTAVRULI and Mkhedruli, and a canary test to
  detect the potential assignment of characters to the currently
  open slots (holes) at U+1CBB and U+1CBC.

* test/ruby/enc/test_case_comprehensive.rb: Tweak generation of
  expectation data.

Together with r65933, this closes issue #14839.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66300 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-09 23:14:29 +00:00
k0kubun 596d7bdec4 test/rdoc/minitest_helper.rb: partially revert r66286
to resurrect r65613

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-09 12:35:13 +00:00
nobu 0777262b1b Break lines in LEGAL texts [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-09 02:08:56 +00:00
duerst c2d8078e3d delete Unicode 10.0.0 related files, no longer needed [#14802]
This line, and those below, will be ignored--

D    enc/unicode/10.0.0


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66295 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-09 02:02:45 +00:00
nobu bb0b0ec987 Blockquote LEGAL [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-09 01:53:14 +00:00
nobu a2bc831e15 raise instead of rb_bug
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66293 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-09 01:34:23 +00:00
nobu 455dcfa963 Removed never-happening case
get_uniq_filename never returns NULL but raises an exception on
failure.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66292 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-09 01:22:16 +00:00
normal ab73ef6b70 Revert "thread_pthread.c: fix memory leak from fork loop leapfrog (v2)"
This reverts r66290 / commit 043047a8fd.

Still fails on CI, and I'm not able to reproduce the failure, either :<
http://ci.rvm.jp/results/trunk-test@ruby-sky1/1508228

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66291 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 22:04:43 +00:00
normal 043047a8fd thread_pthread.c: fix memory leak from fork loop leapfrog (v2)
Constantly forking a single-threaded process in a loop leads to
a memory leak when using POSIX timers.

v2: disarm before timer_delete

==> fork_leapfrog.rb <==
require 'io/wait'
Dir.chdir '/proc'
prev = 0
loop do
  pid = fork
  exit!(0) if pid

  # show the number of 4K pages used (Linux-only)
  n = File.read("#$$/statm").split(-' ')[1].to_i
  if n > prev
    puts "#{prev} => #{n}"
    prev = n
  end

  # since Ctrl-C from a terminal can't stop this loop,
  # allow the user to just hit any key to stop
  break if STDIN.wait(0)
end

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 21:45:50 +00:00
normal 1a17766e6a Revert "thread_pthread.c: fix memory leak from fork loop leapfrog"
Oops, CI failures...

This reverts r66288 / commit 2b1dcc1dd1.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 20:36:32 +00:00