decorator according to open mode.
* transcode.c (rb_econv_prepare_options): new function, to prepare
econv options with newline flags.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31355 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Random::DEFAULT.rand rather than Kernel#rand.
* random.c (rand_range, random_rand): rand_range function extracted
from random_rand function.
* random.c (rb_f_rand): accept a Range argument as Random#rand
[ruby-dev:43427] #4605
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31340 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
XML-RPC's int is 32bit int, and Fixnum also may be beyond 32bit.
* lib/xmlrpc/create.rb (XMLRPC::Create#conv2value):
XML-RPC doesn't allow Infinity and NaN.
http://www.xmlrpc.com/spec
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
markings.
* test/psych/test_tainted.rb: test for string taint
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
and TestIO#test_cross_thread_close_fd.
The patch was written by Eric Wong. [ruby-core:35669]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31260 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Fix exception message and don't raise immediately if block is not given.
Fixes [ruby-dev:43394].
* test/stringio/test_stringio.rb (test_each_line_limit_0):
Fix test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
limit must not be zero. Fixes [ruby-dev:43392].
* test/stringio/test_stringio.rb: Add tests for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
pop pushed error after each try of reading. fixes#4550
* ext/openssl/ossl_pkey_dsa.c (ossl_dsa_initialize): ditto.
* ext/openssl/ossl_pkey_ec.c (ossl_ec_initialize): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/webrick/cookie.rb (WEBrick::Cookie.parse): 'white space is
permitted between tokens' according to RFC2965. Though 'Netscape
spec' does not define the syntax clearly, make it tolerant as a
server. As a real-world example, rest-client gem sends
'Cookie: foo=1;bar=2'
* test/webrick/test_cookie.rb (test_parse_non_whitespace): test it.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31228 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
the NODE_FL_CREF_PUSHED_BY_EVAL flag to hide constants from
methods defined by class_eval. [ruby-dev:43365]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
(WEBrick::TestFileHandler#test_short_filename): the cgi doesn't exist
on current directory.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
read real short filename by cmd because smb mounted files
have different naming convention.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Instead of checking looking at the platform to determine if the tests
relying on LOG_PERROR should be run, look for the definition of the
constant as this will be robust against all platforms as long as the
underlying syslog.c code sets it up correctly.
This specifically addresses failures on Solaris 9.
Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca>
Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
LOG_PERROR isn't a POSIX option for syslog, so it fails on platforms
that don't define it. Solaris 9 and 10 are examples of this.
Use LOG_PID instead.
Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca>
Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Windows, because this tests a platform specific feature and it'll never be
supported on ruby on Windows.
* test/ruby/test_dir_m17n.rb (TestDir_M17N#test_filename_extutf8_invalid,
TestDir_M17N#test_filename_as_bytes_extutf8): ditto.
* test/open-uri/test_open-uri.rb
(TestOpenURI#test_find_proxy_case_sensitive_env): ditto.
* test/dl/test_handle.rb (DL::TestHandle#test_NEXT,
DL::TestHandle#test_DEFAULT): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/rubygems/test_case.rb: set Gem::TestCase's @@project_dir only
when it is not defined.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
strftime. It has some limitations that is same as Time's
one. [experimental]
* ext/date/date_strftime.c: new.
* ext/date/lib/date/format.c: removed ruby version of strftime.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
to still copy file permissions when :preserve is false (as cp does
this even when -p isn't set).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31123 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
increase path length, because MAXPATHLEN is defined as 4096 on linux.
* test/ruby/test_require.rb (test_require_path_home_1): ditto.
* test/ruby/test_require.rb (test_require_path_home_2): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
is true. Patch by Masaki Matsushita (Glass_saga). [ruby-dev:43337]
* test/test_pstore.rb: Test for above.
Patch by Masaki Matsushita (Glass_saga) [ruby-dev:43337]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31101 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
and Process#maxgroups= now raise NotImplementedError if the
platform don't support supplementary groups concept.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Errno::EINVAL on Windows. long path name errors may causes over
about 1024 bytes, then limit it about 4000 bytes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
people implement the method method. Thanks Lin Jen-Shin.
[ruby-core:35255]
* test/psych/visitors/test_yaml_tree.rb: test for implementation of
method method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
(TestGemSpecFetcher#test_cache_dir_escapes_windows_paths): cache_dir
may have driveletter and `:' for base of cache_dir itself, so need
to skip it for checking.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
environment variables. based on a patch from funny-falcon at
https://gist.github.com/856296, but honors safe level.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
release GVL during calling kernel interface.
Suggested by Eric Wong. [ruby-core:35417][Bug #4463]
* test/ruby/test_io.rb (TestIO#test_fcntl_lock): add new test for
IO.fcntl().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
(test_should_run_all_without_any_leaks): consider that the order of
testcase could change. [ruby-dev:43300] [Bug #4466]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ArgumentError if fd >= 3 on Windows because the feature is not
supported.
* test/ruby/test_process.rb (test_execopts_redirect): remove meaningless
argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
>= 3 is not supported on Windows, so should not specify such options
when calling spawn or others.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
a String which means the name of the encoding.
this partially revert r29646.
* lib/rexml/document.rb: follow above.
* lib/rexml/output.rb: ditto.
* lib/rexml/parsers/baseparser.rb: ditto.
* lib/rexml/source.rb: ditto.
* lib/rexml/xmldecl.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
remove tests for [bug#4396]. because we decided to reject this
ticket.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
original encoding. this also fixes the encoding when the result
shares internal string. [ruby-core:35376]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
double-quote character.
* win32/win32.c (is_internal_cmd): similar, use shell if a commandline
contain caret character.
* test/ruby/test_system.rb (TestSystem#test_system_at): fix
wrong test case. if system() invoke a command by using shell,
system() never return nil. Also, "" quotation must not appear
twice in a command line.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
tr is inverse mode, and a character doesn't much the table, the
character should be replaced by last replacement. Bug #4449
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
whose format is (+/-)hhmm. Thanks Gonçalo Silva!
* test/psych/test_scalar_scanner.rb: test for bug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/test/unit.rb, lib/test/unit/assertions.rb: For this test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Test for r30939.
* lib/test/unit.rb: For test.
* lib/test/parallel.rb: For test.
* lib/test/unit/testcase.rb: For test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
or sequences when emitting JSON.
* ext/psych/lib/psych/json/tree_builder.rb: do not emit custom tags in
sequences when emitting JSON.
* test/psych/json/test_stream.rb: tests for custom stream emits.
* test/psych/test_json_tree.rb: tests for JSON emits.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/testunit/test_rake_integration.rb: adding an integration test
with the rake loader to prevent regressions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
fix a typo of local variable. [Bug #3720] [ruby-dev:42083]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
evaluation order. [Bug #4400] [ruby-core:35237]
* eval_jump.c (rb_mark_end_proc): ditto.
* test/ruby/test_beginendblock.rb (TestBeginEndBlock#test_nested_at_exit):
added a test for nested at_exit.
* test/ruby/test_beginendblock.rb (TestBeginEndBlock#test_beginendblock):
changed the test to adopt new spec.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
an initial encoding.
* array.c (array_join_0): ditto.
* array.c (array_join_1): ditto.
* array.c (inspect_ary): ditto.
* array.c (array_join_1): add an argument to check the appending is
first one or not.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
remove the special treatment of the US-ASCII encoded empty string.
Now Encoding.compatible? usually respect the encoding of the
receiver.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ASCII-8BIT receivers.
* string.c (str_gsub): set initial encoding of the buffer as the
same of the receiver. [ruby-core:35141]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
command instead of find command, because the latter is confusing
another famous Unix command.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30874 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
blocking region with GIL released, for fd.
* thread.c (rb_thread_fd_close): implement. [ruby-core:35203]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
there is no easy way to create owner unreadable file on Windows.
So, skip the test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
expressions can round trip. [ruby-core:34969]
* test/psych/test_yaml.rb: test for ARG_ENCODING_NONE regex
* ext/sych/lib/syck/rubytypes.rb: ARG_ENCODING_NONE regular
expressions can round trip.
* test/syck/test_yaml.rb: test for ARG_ENCODING_NONE regex
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e