Commit graph

45127 commits

Author SHA1 Message Date
shugo
f4b51e69dc Extend timeout for Solaris unstable10s.
20161206T181910Z.fail.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-07 02:41:00 +00:00
nobu
7eb8d74f34 file.c: cygwin behavior
* file.c: recent cygwin hides NTFS specific features.
  [ruby-core:78497] [Bug #13008]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-07 02:19:29 +00:00
svn
2201331de3 * 2016-12-07
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-07 02:03:41 +00:00
usa
3826f17790 const pointer is not able to be free.
* win32/file.c (rb_default_home_dir): should not be marked as const.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-07 02:03:40 +00:00
kazu
adef6efcde untabify [ci skip]
based on the patch by W <wolf@wolfsden.cz>
[Fix GH-1497]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 15:33:49 +00:00
kazu
0f0c388a0e Fix indent [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 15:33:47 +00:00
svn
35573c1891 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57004 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 13:57:57 +00:00
kou
b23eac6958 rexml: REXML::Element#[] accepts String or Symbol as attribute name
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 13:57:56 +00:00
nobu
d71b5394ac Make trace_running an integer flag again
* vm_core.h (rb_vm_struct): trace_running should be a counter but
  not a bit flag.  [ruby-core:78514] [Bug #13011]

Author: David Rodríguez <deivid.rodriguez@gmail.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 13:57:23 +00:00
mrkn
48f5f5915b array.c, enum.c: change sum algorithm
* array.c (rb_ary_sum): change the algorithm to Kahan-Babuska balancing
  summation to be more precise.
  [Feature #12871] [ruby-core:77771]

* enum.c (sum_iter, enum_sum): ditto.

* test_array.rb, test_enum.rb: add an assertion for the above change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 13:40:31 +00:00
mrkn
0cb1a2b812 numeric.c: fix exception message for nil rounding
* numeric.c (rb_num_get_rounding_option): fix exception message
  for the case of nil rounding mode.

* test_float.rb: add an assertion for the above change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 12:54:19 +00:00
kazu
a560add68a Fix typos
Patch by: Koichi ITO <koic.ito@gmail.com>
[Fix GH-1498]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 12:49:46 +00:00
hsbt
769b83f638 Update latest bundled gems.
* Rake 12.0.0
  * minitest 5.10.1

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 11:57:19 +00:00
nobu
2b5287d3e8 EPERM by symlink
* test/ruby/test_file.rb (test_realpath_encoding): EPERM can raise
  on cygwin.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 07:46:14 +00:00
nobu
1f97dd562c file.c: isADS
* file.c (isADS): add macro to tell if Alternate Data Stream
  separator, to distinguish from drive letter.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 07:21:55 +00:00
nobu
a8fff36406 EPERM by symlink
* test/ruby/test_file_exhaustive.rb (symlinkfile): EPERM can raise
  on cygwin.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56995 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 06:16:57 +00:00
rhe
d802149be3 re.c: check that MatchData is initialized
Follow r16757 ("* re.c: fix SEGV by Regexp.allocate.names,
Match.allocate.names, etc.", 2008-06-02). Don't do null dereference if
MatchData#hash or #== is called against an uninitialized instance.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 06:14:17 +00:00
rhe
2a45604772 test/ruby/test_hash.rb: suppress syntax warning
Avoid "ambiguous first argument; put parentheses or a space even after
`-' operator" warning in assert_in_out_err. Fixes r56992.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56993 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 06:14:16 +00:00
nobu
5714a26b90 switching hash removal
* st.h (struct st_hash_type): Remove strong_hash.
  (struct st_table): Remove inside_rebuild_p and curr_hash.
* st.c (do_hash): Use type->hash instead of curr_hash.
  (make_tab_empty): Remove setting up curr_hash.
  (st_init_table_with_size): Remove setting up inside_rebuild_p.
  (rebuild_table): Remove clearing inside_rebuild_p.
  (reset_entry_hashes, HIT_THRESHOULD_FOR_STRONG_HASH): Remove code
  recognizing a denial attack and switching to strong hash.
* hash.c (rb_dbl_long_hash, rb_objid_hash, rb_ident_hash): Use
  rb_hash_start to randomize the hash.
  (str_seed): Remove.
  (any_hash): Remove strong_p and use always rb_str_hash for
  strings.
  (any_hash_weak, rb_any_hash_weak): Remove.
  (st_hash_type objhash): Remove rb_any_hash_weak.

based on the patch by Vladimir N Makarov <vmakarov@redhat.com> at
[ruby-core:78490].  [Bug #13002]

* test/ruby/test_hash.rb (test_wrapper): objects other than special
  constants should be able to be wrapped.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 04:43:48 +00:00
nobu
1e95f9da88 remove unnecessary variable
* st.c (do_hash): remove unnecessary variable and cast.

* hash.c, numeric.c, st.c: adjust style and indent.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 03:36:52 +00:00
nobu
1816e39351 random.c: pack hash seeds
* random.c (seed_keys_t, init_seed): pack seed for rb_hash_start and
  rb_memhash, and fill them at once.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56990 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-06 03:25:21 +00:00
svn
41a7549b8e * 2016-12-06
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56989 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-05 23:37:25 +00:00
shugo
1ac9b2ed5c Add a comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56988 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-05 23:37:25 +00:00
kazu
b1272e93eb Remove closed checks and use &.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-05 12:35:03 +00:00
kazu
956aa0102e NEWS: mention chomp option of String and StringIO
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-05 12:35:02 +00:00
shugo
11f9b8c05c Don't insert an entry to loading_tbl if another thread succeed to load.
If rb_thread_shield_wait() returns Qfalse, the file has been successfully
loaded by another thread, so there is no need to insert a new entry into
loading_tbl.  [ruby-core:78464] [Bug #12999]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-05 11:10:05 +00:00
nobu
74ba0cfc62 random.c: private rand
* random.c (rb_random_ulong_limited): do not call private method
  rand.  [ruby-dev:49892] [Misc #13003]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-05 00:03:45 +00:00
svn
4509b36666 * 2016-12-05
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-04 23:14:47 +00:00
naruse
cc2075cd17 Increase timeout of TestRequire#test_require_with_loaded_features_pop
unstable10s fails it because of timeout
20161201T161908Z.fail.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-04 23:14:46 +00:00
nobu
f5ef84cb5e class.c: missing unknown_keyword_error
* class.c (rb_get_kwargs): when values are stored, corresponding
  keys have been remove from the keyword hash, and the hash should
  be empty in that case.  [ruby-dev:49893] [Bug #13004]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-04 08:50:29 +00:00
nobu
b62e322017 extension.rdoc: fix rb_get_kwargs [ci skip]
* doc/extension.rdoc: [DOC] optional keyword arguments are
  defaulted to Qundef.  ignored keys are kept in the hash but a
  new Hash is not created.  [ruby-dev:49893] [Bug #13004]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56980 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-04 08:50:28 +00:00
ktsj
b16d1968e6 Revert changes on rb_frame_method_id_and_class()
r56593 introduced backwards incompatible changes in the API.
[ruby-core:78471] [Feature #12747]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-04 05:40:18 +00:00
shugo
7a5ad716d0 Specify the socktype explicitly.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-04 05:05:54 +00:00
shugo
94e8036b85 Use 127.0.0.1 if getaddrinfo fails.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-04 04:53:33 +00:00
duerst
8baa73be48 remove special processing for U+03B9/U+03BC/U+A64B
* enc/unicode.c: Remove special processing for U+03B9/U+03BC/U+A64B
  (GREEK SMALL LETTERs IOTA/MU, CYRILLIC SMALL LETTER MONOGRAPH UK)
  from onigenc_unicode_case_map and simplify code.

* enc/unicode/case-folding.rb: Remove check for U+03B9/U+03BC/U+A64B.

This and the previous few related commits make sure that we won't hit
the equivalent of bug #12990 anymore for future updates of Unicode versions.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56976 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-04 01:58:54 +00:00
duerst
31fb4e3ec3 Reorder codepoints in some entries of CaseUnfold_11_Table
* enc/unicode/case-folding.rb: Reorder codepoints so that the upper-case
  mapping comes first.
* enc/unicode/9.0.0/casefold.h: Codepoints reordered, upper-case mapping
  flag added.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-04 01:17:34 +00:00
svn
1fa8bd75a3 * 2016-12-04
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-03 15:41:15 +00:00
shugo
071d3ae301 Use IPv6 if it's preferred.
I hope this fix makes tests faster on Windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-03 15:41:14 +00:00
nobu
d95f5bc81a string.c: chomp option
* string.c (rb_str_enumerate_lines): implement chomp option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-03 14:18:03 +00:00
kazu
9fa8006a01 Cleanup ruby method definitions in hash.c
Always add a space between a comma and the next element. These spaces
were there sometimes, but not always. This keeps to code consistent.

Patch by: Herwin Weststrate <herwin@snt.utwente.nl>

[ruby-core:78297] [Misc #12977] [GH-1492]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-03 11:18:44 +00:00
nobu
35623d779d stringio: chomp option
* ext/stringio/stringio.c (strio_getline): implement chomp option.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-03 11:01:25 +00:00
nobu
856da5b407 test_stringio.rb: paragraph mode
* test/stringio/test_stringio.rb (test_gets, test_each):
  assertions for paragraph mode.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56969 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-03 11:01:24 +00:00
duerst
0d2a4cc551 add tests againts regressions for upcoming codepoint reordering in unfolding table
* test/ruby/enc/test_case_mapping.rb: Add method test_reorder_unfold to test against
  problems when reordering codepoints in some entries in
  CaseUnfold_11_Type CaseUnfold_11_Table.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-03 07:18:41 +00:00
svn
fc410343a1 * 2016-12-03
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-03 05:09:10 +00:00
duerst
56419df9f3 change test class name because it is not only about folding
* test/ruby/enc/test_case_comprehensive.rb: Change test class name from
  TestComprehensiveCaseFold to TestComprehensiveCaseMapping because the
  tests are about mapping in general, not only folding

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-03 05:09:09 +00:00
nobu
4a7c767ed2 test/ruby/test_string.rb: ensure restoring $/
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-02 06:12:56 +00:00
nobu
8130ee5c9d parse.y: simplify parsing utf-8 string
* parse.y (parser_tokadd_codepoint): move error checks and add
  char.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-02 03:33:54 +00:00
nobu
80045bc2a9 parse.y: relax spaces
* parse.y (parser_tokadd_utf8): relax restriction spaces inside
  "\u{...}".

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-02 02:47:11 +00:00
rhe
76bb017ad2 re.c: count associated Regexp object in MatchData#hash
Don't discard the hash value computed for the regexp object. It seems it
was simply missed out in r24754, when MatchData#hash was initially
implemented.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-02 02:24:45 +00:00
svn
cf3ff02e9c * 2016-12-02
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56961 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-01 17:43:42 +00:00