1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
Commit graph

53548 commits

Author SHA1 Message Date
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 ]

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 ]
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 ]
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 ] [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 ]

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 .

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 []
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
normal
2b1dcc1dd1 thread_pthread.c: fix memory leak from fork loop leapfrog
Constantly forking a single-threaded process in a loop leads to
a memory leak when using POSIX timers.

==> 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@66288 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 19:25:37 +00:00
svn
726ea30ac2 * 2018-12-09
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66287 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 17:39:54 +00:00
aycabta
18911e99d2 Merge RDoc 6.1.0.beta3 from upstream
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 17:39:52 +00:00
nobu
f6a38e180e Duplicate header name only if found
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 06:52:21 +00:00
nobu
0b343021da Fix compile error at r66280
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 03:32:39 +00:00
nobu
7aea1e657d Honor configured ruby header locations as the MJIT header path
[Bug ]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 02:20:14 +00:00
nobu
96339a9e1f Removed unnecessary dependency on mjit_config.h
MJIT_MIN_HEADER is passed via a command line option for
mjit_build_dir.so.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 02:05:06 +00:00
nobu
e15d9d86df Give the MJIT header path name
Give the whole MJIT header path name by preloaded shared library
mjit_build_dir.so, than building the path from a given directory
name and the embedded base name.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66280 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 01:50:39 +00:00
nobu
2301054a99 Use BUILDDIR in ruby-runner.h from config.status
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-08 01:49:02 +00:00
svn
3458e8241c * 2018-12-08
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-07 16:48:23 +00:00