Commit graph

6433 commits

Author SHA1 Message Date
drbrain
310d77d4b0 * lib/rubygems: Import RubyGems from master as of commit 523551c
* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-30 22:10:21 +00:00
glass
d82e5cc4cc * test/ruby/test_hash.rb: add a test for enumeration order of Hash.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42256 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-30 13:25:40 +00:00
naruse
1c3ea43f1b rescue NoMemoryError
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-30 12:30:30 +00:00
knu
038f82d293 Add some more tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-30 10:21:55 +00:00
knu
bd304ed85b Add Set#intersect? and #disjoint?.
* lib/set.rb (Set#intersect?, Set#disjoint?): Add new methods for
  testing if two sets have any element in common.
  [ruby-core:45641] [Feature #6588] Based on the code by marcandre.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-30 09:58:13 +00:00
nobu
09adba0dc1 sprintf.c: QUOTE flag
* sprintf.c (ruby__sfvextra): add QUOTE flag to escape unprintable
  characters.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-30 08:16:20 +00:00
naruse
6be21c1de0 remove debugging raise in previous commit
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-30 07:08:28 +00:00
naruse
7b53830aea Show ObjectSpace.count_objects to debug NoMemoryError
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-30 06:52:48 +00:00
naruse
a0320f8e26 skip if ENV['USER'] is nil
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42247 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-30 01:02:45 +00:00
nobu
6c9cd508e7 * test/ruby/test_hash.rb: use @cls.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-29 13:34:05 +00:00
glass
eb8f91866e * hash.c (rb_hash_assoc): performance improvement by replacing
compare function in RHASH(hash)->ntbl->type temporarily like r42224.
  it falls back to rb_hash_foreach() if st_lookup() doesn't find the key.

* test/ruby/test_hash.rb: add a test for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-29 12:39:21 +00:00
knu
952e444877 Add a frozenness check test for Enumerator::Lazy#initialize.
* test/ruby/test_lazy_enumerator.rb
  (TestLazyEnumerator#test_initialize): Make sure
  Enumerator::Lazy#initialize raises error if the object is
  frozen.  The check was performed by rb_ivar_set() before
  rb_check_frozen() was added to enumerator_init().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-29 12:20:19 +00:00
knu
075752a836 Add a frozenness check to Enumerator::Generator#initialize.
* enumerator.c (generator_init): Ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-29 12:06:42 +00:00
knu
8cb0de91c4 Add a frozenness check to Enumerator#initialize.
* enumerator.c (enumerator_init): Add a frozenness check to
  prevent a frozen Enumerator object from being reinitialized with
  a different enumerable object.  This is the least we should do,
  and more fixes will follow. [Fixes GH-368] Patch by Kenichi
  Kamiya.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42233 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-29 12:06:39 +00:00
glass
ef01a5a649 * hash.c (rb_hash_assoc): revert r42224. table->type->compare is
called only if hashes are matched.

* test/ruby/test_hash.rb: add a test to check using #== to compare.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-29 11:24:08 +00:00
nobu
aa2a845168 parse.y, vm_eval.c: file encoding in eval
* parse.y (yycompile): store file name as String to keep the encoding.

* parse.y (rb_parser_compile_string_path, rb_parser_compile_file_path):
  new functions to pass file name as a String.

* parse.y (gettable_gen): return a copy of the original file name, not
  a copy in filesystem encoding.

* vm_eval.c (eval_string_with_cref): use Qundef instead of "(eval)".

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-29 08:00:34 +00:00
nobu
be24b385ff ChangeLog: commit miss
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42228 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-29 07:51:23 +00:00
nobu
fcb58bdb38 mkmf.rb: expand all macros
* lib/mkmf.rb (xsystem): expand environment variable in all macros not
  expanded with RbConfig.  [Bug #8702]
* test/mkmf/test_framework.rb (create_framework): replace all $@ not
  only once.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-29 05:52:53 +00:00
naruse
fc0511f412 add assert_not_empty ENV['USER']
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-28 20:27:50 +00:00
glass
e4b0852ae4 * io.c (io_getpartial): use rb_str_locktmp_ensure().
[ruby-core:56121] [Bug #8669]

* io.c (rb_io_sysread): ditto.

* test/ruby/test_io.rb: add tests for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-28 11:31:58 +00:00
glass
dd8f7a6cfd * string.c: add internal API rb_str_locktmp_ensure().
* io.c (io_fread): use rb_str_locktmp_ensure().
  [ruby-core:56121] [Bug #8669]

* test/ruby/test_io.rb: add a test for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-28 08:49:25 +00:00
glass
0a7785431c * io.c (interpret_seek_whence): support SEEK_DATA and SEEK_HOLE.
These are whences for lseek(2) supported by Linux since version 3.1.
  [ruby-core:56123] [Feature #8671]

* test/ruby/test_io.rb: Add tests for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-28 04:06:14 +00:00
akr
e5ff9d58ef * include/ruby/intern.h (rb_absint_size): Declaration moved from
internal.h to calculate required buffer size to pack integers.
  (rb_absint_numwords): Ditto.
  (rb_absint_singlebit_p): Ditto.
  [ruby-core:42813] [Feature #6065]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-28 02:14:58 +00:00
naruse
b592a740fc Show TERM environment variable on failure
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-27 19:37:33 +00:00
nobu
f1312bc038 test_rubyoptions.rb: split test_segv_test
* test/ruby/test_rubyoptions.rb (test_segv_test): split assertions to
  each tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-27 18:10:36 +00:00
kou
75a138732e * lib/rexml/parsers/streamparser.rb
(REXML::Parsers::StreamParser#parse): Add "entity" event support to
  listener. [Bug #8689] [ruby-dev:47542]
  Reported by Ippei Obayashi.
* test/rexml/test_stream.rb (StreamTester#entity): Add a test for
  the above case.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-26 14:17:24 +00:00
nobu
41f864faab parse.y: separate numeric literal
* parse.y (parser_yylex): separate numeric literal from succeeding
  token, and treat 'e' as floating point number only if followed by
  exponent part.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-26 14:05:34 +00:00
knu
9d00f3f536 Add facility to Syslog::Logger.
* ext/syslog/lib/syslog/logger.rb (Syslog::Logger): Add facility
  to Syslog::Logger. [Fixes GH-305] patch by Max Shytikov
  https://github.com/ruby/ruby/pull/305

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-26 11:15:06 +00:00
nobu
45c4d82823 test_require.rb: same process
* test/ruby/test_require.rb (assert_require_nonascii_path): run in
  same process.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-26 04:19:56 +00:00
nobu
4af852faa2 test_require.rb: use assert_separately
* test/ruby/test_require.rb: use assert_separately preferably to
  assert_in_out_err for clear messages.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42185 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-26 04:19:51 +00:00
nobu
8948280c67 load.c: search in OS path encoding
* load.c (rb_load_internal): use rb_load_file_str() to keep path
  encoding.
* load.c (rb_require_safe): search in OS path encoding for Windows.
* ruby.c (rb_load_file_str): load file with keeping path encoding.
* win32/file.c (rb_file_load_ok): use WCHAR type API assuming incoming
  path is encoded in UTF-8.  [ruby-core:56136] [Bug #8676]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-26 04:04:23 +00:00
nobu
2c181b6d1a test_require.rb: split
* test/ruby/test_require.rb (TestRequire#test_require_nonascii_path):
  split test body.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-26 04:04:18 +00:00
nobu
8974d5aaa7 rational.c: ensure to be Rational
* rational.c (f_round_common): Rational is expected to be returned by
  Rational#*, but mathn.rb breaks that assumption.  [ruby-core:56177]
  [Bug #8687]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-26 02:42:26 +00:00
naruse
0f12658995 fix missing assignment in r42174
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-26 00:06:45 +00:00
naruse
0779f743d7 fix warning: shadowing outer local variable - path
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-26 00:05:20 +00:00
nobu
ad859f3125 envutil.rb: encoding
* test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately):
  specify the encoding of source.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-25 20:54:54 +00:00
naruse
7f6ef1f3d6 Somehow Debian 6.0.7 needs ifname for IPv6 multicast connect
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-25 20:49:36 +00:00
naruse
f86be91b56 * file.c (rb_file_expand_path_internal): fix r42160; skip '~'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-25 16:33:57 +00:00
naruse
6be6666fba * re.c (rb_reg_to_s): convert closing parenthes to the target encoding
if it is ASCII incompatible encoding. [ruby-core:56063] [Bug #8650]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42167 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-25 08:52:32 +00:00
naruse
501c12a6b2 Add a test for r42162
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-25 07:24:12 +00:00
nobu
7ec4a44762 file.c: split rb_home_dir
* dir.c (dir_s_home): use rb_home_dir_of and rb_default_home_dir.
* file.c (rb_home_dir_of): split from rb_home_dir() for the home
  directry of the given user, and the user name is a VALUE, not a bare
  pointer.  should raise if the user does not exist.
* file.c (rb_default_home_dir): split from rb_home_dir() for the home
  directry of the current user.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-25 04:06:50 +00:00
drbrain
d6e3ee55ba * lib/rubygems: Import RubyGems from master as of commit 4ff70cc
* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-24 22:16:11 +00:00
naruse
6398f79853 * lib/uri/generic.rb (find_proxy): raise BadURIError if the URI is
a relative URI. [Bug #8645]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-24 10:52:15 +00:00
nobu
1758ff0381 file.c: exception message encoding
* file.c (rb_file_expand_path_internal): preserve the file name
  encoding in an exception message.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42150 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-24 08:38:01 +00:00
ko1
e93e38d165 * test/-ext-/tracepoint/test_tracepoint.rb: add GC on/off to count
GC events strictly.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-23 23:08:48 +00:00
naruse
182cf90d30 fix test of r42101 [Feature #6626]
rl_delete_text removes characters in line_buffer, but it doesn't move rl_point.
Therefore it may cause invalid rl_point.

On following case, test_input_metachar causes test_insert_text failure.
(test_input_metachar_multibyte) is skipped because of locale)
20130723T133302Z.log.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-23 18:00:26 +00:00
naruse
7bbe99cb74 fix typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-23 16:20:03 +00:00
naruse
1a61e05d01 it may stuck with console on readline 5.1 + CentOS 5
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42142 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-23 16:17:58 +00:00
drbrain
bdbef403a1 * ext/openssl/ossl_asn1.c (asn1time_to_time): Implement YYMMDDhhmmZ
format for ASN.1 UTCTime.  [ruby-trunk - Bug #8664]
* test/openssl/test_asn1.rb:  Test for the above.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-22 23:44:53 +00:00
drbrain
4c2304f000 * lib/rubygems: Import RubyGems from master as of commit b165260
* test/rubygems:  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-22 22:46:50 +00:00