Commit graph

9543 commits

Author SHA1 Message Date
duerst
81515b2381 * enc/unicode.c, test/ruby/enc/test_case_mapping.rb: Implemented :fold
option for String#downcase by using case folding data from
  regular expression engine, and added a few simple tests.
  (with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 05:37:29 +00:00
duerst
6ab70ad72a * test/ruby/enc/test_case_mapping.rb: added tests for :ascii option.
(with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-05 11:09:07 +00:00
nobu
eecfa1fc7a incompatible encoding workaround
* test/lib/minitest/unit.rb (puke): workaround incompatible
  encoding error messages.

* test/lib/test/unit/assertions.rb (AllFailures.message): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53743 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-05 04:45:10 +00:00
naruse
b7503d03ca Remove debug print introduced in r52386
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-03 10:08:49 +00:00
nobu
fc6073bde4 test_exception.rb: NameError at FCALL
* test/ruby/test_exception.rb (test_name_error_info): add
  assertions for FCALL.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53726 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-03 07:37:19 +00:00
naruse
040ce05610 * string.c (str_new_frozen): if the given string is embeddedable
but not embedded, embed a new copied string. [Bug #11946]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-03 04:52:13 +00:00
nobu
a43f2cbaa1 Fix Ripper.lex error in dedenting squiggly heredoc
* ext/ripper/lib/ripper/lexer.rb (on_heredoc_dedent): Fix
  Ripper.lex error in dedenting squiggly heredoc.  heredoc tree is
  also an array of Elem in the outer tree.  [Fix GH-1234]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-02 23:21:34 +00:00
kazu
59e8cd3ea0 follow r53691
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53719 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-02 13:01:09 +00:00
naruse
10eef96df4 Skip SHA from test_digest_constants for LibreSSL 2.3
The first one of ruby/openssl#40
https://github.com/ruby/openssl/issues/40#issuecomment-159839338

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-02 11:02:10 +00:00
svn
7a06afa9b3 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-01 12:43:30 +00:00
hsbt
a21d403f21 * lib/rubygems.rb, lib/rubygems/*, test/rubygems/*: Update rubygems-2.5.2.
It supports to enable frozen string literal and add `--norc` option for
  disable to `.gemrc` configuration.
  See 2.5.2 release notes for other fixes and enhancements.
  a8aa3bac72/History.txt (L3)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-01 12:43:26 +00:00
nobu
28a7199ae0 r53688 test
* test/ruby/test_file_exhaustive.rb (test_realpath_mount_point):
  test for r53688.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-31 09:43:22 +00:00
nobu
c2e998d6a3 additional math operations
* test/drb/ut_large.rb (multiply, avg, median): add additional
  math operations to DRbLarge.  [Fix GH-1086]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53701 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-31 03:34:21 +00:00
nobu
8b9cd1dbb2 test for File#lstat.
* test/ruby/test_file_exhaustive.rb (test_lstat): Add lacking test
  for File#lstat.  [Fix GH-1231]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-31 03:20:22 +00:00
nobu
6ee8ec7069 vm_eval.c: fix hook call
* vm_eval.c (rb_check_funcall_with_hook): also should call the
  given hook before returning Qundef when overridden respond_to?
  method returned false.  [ruby-core:73556] [Bug #12030]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-30 06:19:13 +00:00
naruse
563706fa19 suppress warning: assigned but unused variable
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-29 15:21:52 +00:00
nobu
1e22638295 r53689 test
* test/ruby/test_file_exhaustive.rb (test_readlink_junction): test
  for r53689.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-29 09:32:57 +00:00
nobu
4f8245b703 erb.rb: fronzen-string-literal in comment [Fix GH-1229]
* lib/erb.rb (ERB::Compiler#detect_magic_comment): allow
  fronzen-string-literal in comment as well as encoding.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-29 05:16:29 +00:00
nobu
f54b960d30 test_erb.rb: improve assertions
* test/erb/test_erb.rb: improve failure messages with
  assert_respond_to and assert_not_respond_to.

* test/erb/test_erb.rb: use assert_raise instead of assert(false).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-29 03:18:05 +00:00
nobu
c55ad90a6e erb.rb: frozen-string-literal safe
* lib/erb.rb (ERB#set_eoutvar): explicitly make mutable string as
  a buffer to make ERB work with --enable-frozen-string-literal.
  [ruby-core:73561] [Bug #12031]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-29 02:14:36 +00:00
nobu
1c3a3f47dc test_erb.rb: escape
* test/erb/test_erb.rb (test_token_extension): escape % in
  dedented heredoc for editors which do not support this syntax
  yet.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53681 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-29 02:13:38 +00:00
hsbt
809d3770e6 * lib/net/http/header.rb: Warn nil variable on HTTP Header.
It caused to NoMethodError. [fix GH-952][fix GH-641] Patch by @teosz
* test/net/http/test_httpheader.rb: Added test for nil HTTP Header.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-29 01:46:02 +00:00
hsbt
b7b5692aea * test/-ext-/string/test_capacity.rb: Added missing library.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-27 12:04:47 +00:00
usa
cf3c1bfead * test/ruby/test_file.rb (TestFile#test_realpath_encoding): rescue Errno::EACCES
and skip the testcase because it'll be raised on Windows always unless the
  runner doesn't have the administrator privilege.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-27 12:00:07 +00:00
naruse
d14f0cfd16 Add tests about String's internal capacity
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-27 11:37:02 +00:00
nobu
a82d27281b test_require.rb: fix temporary library directory
* test/rubygems/test_require.rb (test_dash_i_beats_gems): create
  temporary library directory under the temporary directory
  created by Gem::TestCase#setup, not to leave garbages in the
  default temporary directory.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-27 04:11:53 +00:00
naruse
2743c491a7 increase timeout for Solaris 10 SPARC
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-26 17:19:36 +00:00
nobu
f4ca0739ec compile.c: fix tailcall optimization
* compile.c (iseq_peephole_optimize): don't apply tailcall
  optimization to send/invokesuper instructions with blockiseq.
  This is a follow-up to the changes in r51903; blockiseq is now
  the third operand of send/invokesuper instructions.
  [ruby-core:73413] [Bug #12018]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-26 06:14:59 +00:00
normal
667c0a3a8c Signal.list deduplicates keys
This allows us to reuse string objects used in symbols as well
as any string representations of signal names in source code.

* signal.c (sig_list): use fstring for hash key
* test/ruby/test_signal.rb (test_signal_list_dedupe_keys): added

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-26 05:33:28 +00:00
nobu
dfca38eaa2 symbol.c: more informative error message
* symbol.c (sym_check_asciionly): more informative error message
  with the encoding name and the inspected content.
  [ruby-core:73398] [Feature #12016]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-25 06:56:26 +00:00
hsbt
390f087d87 * test/ruby/test_string.rb: added testcase for next!, succ and succ!
[fix GH-1213] Patch by @K0mAtoru

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-25 00:39:26 +00:00
nobu
c0a7c89303 test_class.rb: fix encoding
* test/ruby/test_class.rb (test_namescope_error_message): fix
  encoding to UTF-8.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-24 15:00:57 +00:00
nobu
63cd3e2b3a test_class.rb: test_namescope_error_message
* test/ruby/test_class.rb (test_namescope_error_message): test for
  r53644.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-24 14:59:16 +00:00
nobu
b58fac9a97 wait readable/writable
* ext/io/wait/wait.c (io_wait_readwrite): [EXPERIMENTAL] allow to
  wait for multiple modes, readable and writable, at once.  the
  arguments may change in the future.  [Feature #12013]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53642 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-24 07:55:05 +00:00
nobu
5320f8846b test_io_wait.rb: wait_readable
* test/io/wait/test_io_wait.rb: add tests for IO#wait_readable,
  same as IO#wait.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-24 05:30:54 +00:00
nobu
be8b517f52 Add test for Array#keep_if
* test/ruby/test_array.rb (test_keep_if): Add test for
  Array#keep_if separate from Array#select!  [Fix GH-1218]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-23 13:31:51 +00:00
shugo
62b750bb55 * range.c (range_eqq): revert r11113 because rb_call_super() is
called in range_include() and thus r11113 doesn't work when the
  receiver Range object consists of non linear objects such as Date
  objects.
  [ruby-core:72908] [Bug #12003]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-23 11:16:09 +00:00
naruse
782fd488d7 * regparse.c (fetch_name_with_level): allow non word characters
at the first character.  [Feature #11949]

* regparse.c (fetch_name): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-21 16:09:09 +00:00
naruse
826f2ee306 * marshal.c (r_object0): honor Marshal.load post proc
value for TYPE_LINK.  by Hiroshi Nakamura <nahi@ruby-lang.org>
  https://github.com/ruby/ruby/pull/1204 fix GH-1204

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-21 08:36:01 +00:00
nobu
c3bd53b167 test_io_m17n.rb: BOM with non-UTF
* test/ruby/test_io_m17n.rb (test_bom_non_utf): assert BOM with
  non-UTF encoding in encoding option, for r53084.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-21 06:23:18 +00:00
nobu
866ac8d91c TestISeq.rb: exclude time consuming GC test
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-19 02:55:34 +00:00
naruse
35568b4169 increase timeout for ARMv7
20160113T091704Z.diff.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-19 02:52:37 +00:00
nobu
45acdf4df4 parse.y: escaped newline in dedenting heredoc
* parse.y (parser_here_document): an escaped newline is not an
  actual newline, and the rest part should not be dedented.
  [ruby-core:72855] [Bug #11989]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-18 05:37:48 +00:00
hsbt
c626cb6904 * test/ruby/test_string.rb: Added extra testcase for test_rstrip_bang
and test_lstrip_bang. [fix GH-1178] Patch by @Matrixbirds

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-18 03:05:20 +00:00
nobu
af18eafc44 test_syntax.rb: try all
* test/ruby/test_syntax.rb (assert_dedented_heredoc): try all
  terminators regardless failures.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-17 16:14:44 +00:00
nobu
5aabf722a9 remove extra dot
* test/lib/test/unit/assertions.rb (all_assertions): remove tail
  dot as it is added in message again.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-17 16:11:57 +00:00
duerst
e580847ce8 * string.c: Any kind of option is now taking the new code path for
upcase/downcase/capitalize/swapcase. :lithuanian can be used for
  testing if no specific option is desired.
* test/ruby/enc/test_case_mapping.rb: Adjusted to above.
  (with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-17 11:40:46 +00:00
duerst
f307d1fe21 * enc/unicode.c: Fixed a logical error and some comments.
* test/ruby/enc/test_case_mapping.rb: Made tests more general.
  (with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-17 11:10:45 +00:00
duerst
959bbb6f72 * enc/unicode.c: Removed artificial expansion for Turkic,
added hand-coded support for Turkic, fixed logic for swapcase.
* string.c: Made use of new case mapping code possible from upcase,
  capitalize, and swapcase (with :lithuanian as a guard).
* test/ruby/enc/test_case_mapping.rb: Adjusted for above.
  (with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-17 08:42:16 +00:00
nobu
0bc5341690 option.c: single byte boolean
* ext/socket/option.c (sockopt_bool): relax boolean size to be one
  too not only sizeof(int).  Winsock getsockopt() returns a single
  byte as a boolean socket option.  [ruby-core:72730] [Bug #11958]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-01-17 06:31:36 +00:00