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

42551 Коммитов

Автор SHA1 Сообщение Дата
nobu 2c9274eff2 ruby.c: EACH_FEATURES
* ruby.c (EACH_FEATURES): define the list of feature names.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-07 10:21:27 +00:00
duerst e40d117339 * enc/unicode/case-folding.rb: Fixing parameter passing.
(with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-07 05:12:44 +00:00
duerst 5cbe9fe5c4 * enc/unicode/case-folding.rb: New classes CaseMapping/CaseMappingDummy
to pass as parameters; not yet implemented or used.
(with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-07 02:44:14 +00:00
nobu 3890bb60a9 ruby.c: show feature names
* ruby.c (feature_option): show possible feature names when
  unknown argument is given.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-07 02:40:52 +00:00
duerst ee696372a8 * common.mk: using new option in recipe for enc/unicode/casefold.h
* enc/unicode/case-folding.rb: Correctly specify argument to new option.
(with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-07 02:16:12 +00:00
duerst 1e7770d372 (this commit message applies to the previous commit)
* common.mk: explicit recipe for enc/unicode/casefold.h
* enc/unicode/case-folding.rb: Adding -m option to prepare for using
  multiple data files.
(with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-07 01:43:39 +00:00
svn b0b7cb5a46 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-07 01:39:27 +00:00
duerst 07ad033850 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e 2016-02-07 01:39:26 +00:00
svn b6d25f03a8 * 2016-02-07
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 17:56:47 +00:00
naruse 0a3fc607c1 Revert "check __int64_t and __int128_t"
This reverts commit r53750.
Those types seems to be for C++, and breaks old GCC.
http://rubyci.s3.amazonaws.com/c64b/ruby-trunk/log/20160206T130202Z.diff.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 17:56:47 +00:00
naruse 325890497e Fix r53748; the datafile includes non ASCII
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 14:45:49 +00:00
nobu 6a6993cfa5 fix types order
* configure.in: types without _t have prior than types with _t.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53755 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 14:23:26 +00:00
nobu 8e46f401b2 ASCII-incompatible escape
* lib/cgi/util.rb (escapeHTML, unescapeHTML): consider
  ASCII-incompatible encodings.  [Fix GH-1239]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 13:31:07 +00:00
nobu 16e613fcc3 lex.c.blt: update
* lex.c.blt: follows r52429, not removing casts to int.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 12:02:09 +00:00
nobu 6860034546 get rid of ruby-mode.el bugs
* lib/optparse.rb: get rid of confusing ruby-mode.el of Emacs 24,
  - if-end expression inside an expression
  - a comma just followed by a bar

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53752 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 11:51:40 +00:00
svn 6354a08dc8 * 2016-02-06
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 11:44:34 +00:00
nobu 7475d8048e check __int64_t and __int128_t
* configure.in: check __int64_t and __int128_t for RUBY_DEFINT on
  OS X.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 11:44:33 +00:00
duerst e8dde46b60 * test/ruby/enc/test_regex_casefold.rb: Added data-based testing for
String#downcase :fold.
* enc/unicode.c: Fixed a range error (lowest non-ASCII character affected
  by case operations is U+00B5, MICRO SIGN)
* test/ruby/enc/test_case_mapping.rb: Explicit test for case folding of
  MICRO SIGN to Greek mu.
(with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53749 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 06:18:38 +00:00
duerst b217dc81f3 * test/ruby/enc/test_regex_casefold.rb: Tests for three case folding
primitives (mbc_case_fold, get_case_fold_codes_by_str,
  apply_all_case_fold) in the various encodings. Currently only known
  good encodings are tested to avoid test failures. For bug hunting,
  start by adding more encodings with
      generate_test_casefold encoding
  (with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53748 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-06 05:51:33 +00:00
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 cadf8058d3 configure.in: fix doc [ci skip]
* configure.in (RUBY_CHECK_SIGNEDNESS): [DOC] fix function name.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-05 07:45:39 +00:00
naruse 016e6db57e improve r53741
* Remove branching by a==0 case

Before r53741:
% perf stat ./miniruby -e'a=100;i=0;while i<0xfffffff;i+=1;a=(a*557+2)%100000;end'

 Performance counter stats for './miniruby -vea=100;i=0;while
i<0xfffffff;i+=1;a=(a*557+2)%100000;end':

      16412.994492 task-clock (msec)         #    0.999 CPUs utilized
               195 context-switches          #    0.012 K/sec
                 2 cpu-migrations            #    0.000 K/sec
               876 page-faults               #    0.053 K/sec
       48488588328 cycles                    #    2.954 GHz
       18464835712 stalled-cycles-frontend   #   38.08% frontend cycles
idle
   <not supported> stalled-cycles-backend
       85665428518 instructions              #    1.77  insns per cycle
                                             #    0.22  stalled cycles
                                             #    per insn
       10207419707 branches                  #  621.911 M/sec
           6334713 branch-misses             #    0.06% of all branches

      16.426858699 seconds time elapsed

After this:
% perf stat ./miniruby -ve'a=100;i=0;while i<0xfffffff;i+=1;a=(a*557+2)%100000;end'

 Performance counter stats for './miniruby -vea=100;i=0;while i<0xfffffff;i+=1;a=(a*557+2)%100000;end':

      13363.540634 task-clock (msec)         #    0.999 CPUs utilized
               137 context-switches          #    0.010 K/sec
                 2 cpu-migrations            #    0.000 K/sec
               874 page-faults               #    0.065 K/sec
       39477429278 cycles                    #    2.954 GHz
       14615402375 stalled-cycles-frontend   #   37.02% frontend cycles idle
   <not supported> stalled-cycles-backend
       83514678452 instructions              #    2.12  insns per cycle
                                             #    0.18  stalled cycles per insn
        9401528135 branches                  #  703.521 M/sec
            432567 branch-misses             #    0.00% of all branches

      13.371484310 seconds time elapsed

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-05 06:52:41 +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
svn 281f090bf1 * 2016-02-05
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-05 04:31:28 +00:00
naruse 1f57a334da * insns.def (opt_mult): Use int128_t for overflow detection.
* bignum.c (rb_uint128t2big): added for opt_mult.

* bignum.c (rb_uint128t2big): added for rb_uint128t2big..

* configure.in: define int128_t, uint128_t and related MACROs.
  Initially introduced by r41379 but reverted by r50749.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-05 04:31:27 +00:00
duerst b658249cef * enc/unicode.c: Activated :ascii flag for ASCII-only case conversion
(with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53740 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 12:05:23 +00:00
nobu 445b015c3a fstring without copy
* re.c (reg_set_source): make source string frozen without
  copying.
* re.c (rb_reg_initialize_m): refactor initialization with
  encoding.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 08:38:06 +00:00
nobu 09c9110896 revert re.c in r53736
* re.c (rb_reg_initialize): must copy the source string content,
  it is not a static literal.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 06:46:28 +00:00
nobu 25fd278459 return shared string
* re.c (rb_reg_source): return shared string without copying.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 06:44:55 +00:00
nobu 94c70c7d72 fstring_enc_new
* string.c (rb_fstring_enc_new, rb_fstring_enc_cstr): functions to
  make fstring with encoding.
* re.c (rb_reg_initialize): make fstring without copying.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53736 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 06:35:34 +00:00
nobu 10ff672a30 end of UNICODE_FILES
* common.mk (UNICODE_FILES): append empty END-OF-LIST to put
  backslashes uniformly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53735 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 06:34:10 +00:00
duerst bb4f87127f * common.mk: Added Unicode data file SpecialCasing.txt to be additionally
downloaded (with Kimihito Matsui)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 05:42:35 +00:00
nobu a320f811cf mask upper nibble
* ext/cgi/escape/escape.c (optimized_escape): move c and use it
  instead of cstr[i].  mask upper nibble for the platforms where
  CHAR_BIT > 8.  [Fix GH-1238]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 05:10:36 +00:00
nobu 7d1dd7cad8 initialize dest to 0
* ext/cgi/escape/escape.c (optimized_escape_html): initialize dest
  to 0 and tell the result to be modified, instead of a separate
  flag.

* ext/cgi/escape/escape.c (optimized_escape): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 03:40:41 +00:00
nobu 217ad664ab cgi/escape: Optimize CGI.escape
* cgi/escape/escape.c: Optimize CGI.escape performance by C ext
  for ASCII-compatible encodings.  [Fix GH-1238]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 03:39:12 +00:00
nobu 383555fe44 encoding.h: rb_enc_asciicompat_inline
* include/ruby/encoding.h (rb_enc_asciicompat): turn into an
  inline function to get rid of evalucating the argument twice.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53730 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 03:16:50 +00:00
svn 336fedc1ed * 2016-02-04
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 02:54:03 +00:00
duerst 6ec7e30ce0 * common.mk: Introduce two variables (UNICODE_DATA_DIR and
UNICODE_SRC_DATA_DIR) to eliminate repetitions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-04 02:54:02 +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
nobu 6bc6708b97 vm_eval.c: argument names
* vm_eval.c (make_no_method_exception): enumerate argument
  meanings instead of a magic number.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-03 07:21:48 +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 e14c9f1048 Fix typo on OpenSSL::PKey doc [ci skip]
* ext/openssl/ossl_pkey.c (Init_ossl_pkey): [DOC] Fix typo
  "encrypted" to "decrypted".  [Fix GH-1235]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-02 23:25:40 +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
svn 922d359e65 * 2016-02-03
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53721 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-02 17:38:01 +00:00
naruse 7aefa7b89f * re.c (rb_reg_prepare_enc): use already compiled US-ASCII regexp
if given string is ASCII only.
  121.2s to 113.9s on my x86_64-freebsd10.2 Intel Core i5 661

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-02 17:38:00 +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
nobu df64c27ef8 downloader.rb: https setter
* tool/downloader.rb (Downloader.https): define class variable
  setter for 1.8, class_variable_set was private.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53717 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-02 07:08:13 +00:00