It breaks backward compatibility than I thought. So it's disabled by
default. It means that REXML's XPath processor isn't compatible with
XPath 1.0. But it will be acceptable for users.
We can enable it by specifying "strict: true" to
REXML::XPathParser.new explicitly.
* lib/rexml/xpath.rb,
lib/rexml/xpath_parser.rb: Accept "strict: true" option.
* test/rexml/test_contrib.rb,
test/rexml/xpath/test_base.rb: Use not XPath 1.0 compatible behavior.
* test/rexml/test_jaxen.rb: Use XPath 1.0 compatible behavior.
* test/rss/test_1.0.rb,
test/rss/test_dublincore.rb,
spec/ruby/library/rexml/element/namespace_spec.rb,
spec/ruby/library/rexml/element/namespaces_spec.rb,
spec/ruby/library/rexml/element/prefixes_spec.rb: Enable again.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
r63236 (or r63237) introduces test failures and CI shows errors.
This commit makes skipping these tests. Please revert this commit
after tests (and rubyspec) work fine.
Failure log example:
https://gist.github.com/ko1/8456cf25fe35a696bd33ac86135092e4
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* string.c (rb_str_dump): get rid of an error on evaling with
frozen-string-literal enabled. [ruby-core:86539] [Bug #14687]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/ruby/core/file/ftype_spec.rb: use require_relative which
resolves symbolic links consistently to git rid of constant
re-definition warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/ruby/core/file/fixtures/file_types.rb (configure_types):
try the current standard input terminal device first to get rid
of a race condition. other terminal devices may be used by
other processes and disposed during the test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Ignore prepended modules when looking for already defined methods on a
class to set the visibility on.
[Fix GH-1834]
From: Dylan Thacker-Smith <Dylan.Smith@shopify.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62725 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Fix `test-spec` failures when the build directory is a symbolic
link.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* In Enumerable, Enumerator::Lazy, Array, Hash and Set
[Feature #13784] [ruby-core:82285]
* Share specs for the various #select#select! methods and
reuse them for #filter/#filter!.
* Add corresponding filter tests for select tests.
* Update NEWS.
[Fix GH-1824]
From: Alexander Patrick <adp90@case.edu>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/ruby/core/process/groups_spec.rb: on macOS, getgroups(2)
has a variant which has no limit but not setgroups(2). so the
default groups may exceed the limit. as the call of setgroups
is expected to fail here, the content does not matter.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Also, as it's in the middle of the list of 4 arguments, 3rd and 4th arguments
(trim_mode, eoutvar) are changed to keyword arguments.
Old ways to specify arguments are deprecated and warned now.
bin/erb: deprecate -S option.
We'll remove all of deprecated ones at Ruby 2.7+.
enc/make_encmake.rb: stopped using deprecated interface
ext/etc/mkconstants.rb: ditto
ext/socket/mkconstants.rb: ditto
sample/ripper/ruby2html.rb: ditto
spec/ruby/library/erb/defmethod/def_erb_method_spec.rb: ditto
spec/ruby/library/erb/new_spec.rb: ditto
test/erb/test_erb.rb: ditto
test/erb/test_erb_command.rb: ditto
tool/generic_erb.rb: ditto
tool/ruby_vm/helpers/dumper.rb: ditto
tool/transcode-tblgen.rb: ditto
lib/rdoc/erbio.rb: ditto
lib/rdoc/generator/darkfish.rb: ditto
[Feature #14256]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Instead assert that too large values raise RangeError.
* [Bug #14375] [ruby-core:84933]
* See https://github.com/ruby/ruby/pull/1797
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Follow up of r61757, This change makes `sudo make test-spec` pass on my
machine.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
It had used `id -un`, but it is not always equal to `Etc.getlogin`.
`id` returns the current user of the process, and `Etc.getlogin` returns
the user name logged in on the controlling terminal of the process.
This change uses `logname` by default. `id` remains as a fallback since
there seem to be some platforms where `logname` is not available:
49576b417c
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_core.h (rb_vm_t): move `rb_execution_context_t::safe_level` to
`rb_vm_t::safe_level_` because `$SAFE` is a process (VM) global state.
* vm_core.h (rb_proc_t): remove `rb_proc_t::safe_level` because `Proc`
objects don't need to keep `$SAFE` at the creation.
Also make `is_from_method` and `is_lambda` as 1 bit fields.
* cont.c (cont_restore_thread): no need to keep `$SAFE` for Continuation.
* eval.c (ruby_cleanup): use `rb_set_safe_level_force()` instead of access
`vm->safe_level_` directly.
* eval_jump.c: End procs `END{}` doesn't keep `$SAFE`.
* proc.c (proc_dup): removed and introduce `rb_proc_dup` in vm.c.
* safe.c (rb_set_safe_level): don't check `$SAFE` 1 -> 0 changes.
* safe.c (safe_setter): use `rb_set_safe_level()`.
* thread.c (rb_thread_safe_level): `Thread#safe_level` returns `$SAFE`.
It should be obsolete.
* transcode.c (load_transcoder_entry): `rb_safe_level()` only returns
0 or 1 so that this check is not needed.
* vm.c (vm_proc_create_from_captured): don't need to keep `$SAFE` for Proc.
* vm.c (rb_proc_create): renamed to `proc_create`.
* vm.c (rb_proc_dup): moved from proc.c.
* vm.c (vm_invoke_proc): do not need to set and restore `$SAFE`
for `Proc#call`.
* vm_eval.c (rb_eval_cmd): rename a local variable to represent clearer
meaning.
* lib/drb/drb.rb: restore `$SAFE`.
* lib/erb.rb: restore `$SAFE`, too.
* test/lib/leakchecker.rb: check `$SAFE == 0` at the end of tests.
* test/rubygems/test_gem.rb: do not set `$SAFE = 1`.
* bootstraptest/test_proc.rb: catch up this change.
* spec/ruby/optional/capi/string_spec.rb: ditto.
* test/bigdecimal/test_bigdecimal.rb: ditto.
* test/fiddle/test_func.rb: ditto.
* test/fiddle/test_handle.rb: ditto.
* test/net/imap/test_imap_response_parser.rb: ditto.
* test/pathname/test_pathname.rb: ditto.
* test/readline/test_readline.rb: ditto.
* test/ruby/test_file.rb: ditto.
* test/ruby/test_optimization.rb: ditto.
* test/ruby/test_proc.rb: ditto.
* test/ruby/test_require.rb: ditto.
* test/ruby/test_thread.rb: ditto.
* test/rubygems/test_gem_specification.rb: ditto.
* test/test_tempfile.rb: ditto.
* test/test_tmpdir.rb: ditto.
* test/win32ole/test_win32ole.rb: ditto.
* test/win32ole/test_win32ole_event.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/ruby/optional/capi/spec_helper.rb (compile_extension): if
libruby.so should have been built but is not found, fail early.
get mtime of the library just once.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
I faced a big issue about Bundler with ruby core.
I have no time to resolve it issue before 2.5 final release.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/ruby/core/thread/element_set_spec.rb: `t` can be uninitialized.
Use `Thread.current` explicitly.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Adapt test and add specs.
* See [Feature #14143] [ruby-core:84227]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* [Feature #14143] [ruby-core:83979]
* vm.c (vm_init2): Set Thread.report_on_exception to true.
* thread.c (thread_start_func_2): Add indication the message is caused
by report_on_exception = true.
* spec/ruby: Specify the new behavior.
* test/ruby/test_thread.rb: Adapt and improve tests for
Thread.report_on_exception and Thread#report_on_exception.
* test/ruby/test_thread.rb, test/ruby/test_exception.rb: Unset
report_on_exception for tests expecting no extra output.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
It's rc version for bundler-1.16.1. I'm going to update it version
after official release from bundler team.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/ruby/core/kernel/autoload_spec.rb: should use FrozenError.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61132 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
and specialized Array#any? and Hash#any?
Based on patch by D.E. Akers [#11286]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61098 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
r60970 break Gemfile.lock format with file protocol after bundle
install/update. I addd hostname to these examples.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
It was ignored with Bundler-1.15.x. It's regression at r60603.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* When the file does not exist or the constant is not set.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60851 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* parse.y (k_return): prohibit return in class/module body except
for singleton class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/ruby/library/pathname/empty_spec.rb: load spec_helper from
relative path to `__FILE__` same as other spec files, instead of
`__dir__` in which symlinks are resolved, to get rid of constant
redefinition warning when `srcdir` contains symlinks.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/bundler/spec_helper.rb: there are no reason to refuse ':' and '-' in the
path of spec files. especially, ':' is always contained on Windows.
* spec/bundler/spec/helper.rb: open3.rb is also supported on Windows.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ENV['RUBY_EXE'] can be just 'ruby' and is not an absolute path.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This reverts commit r60341,r60342,r60344,r60345.
Breaking compabitility of the order of result breaks many tests.
To avoid such effort to fix tests, the order should be kept.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60478 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c (rb_io_puts): write a newline together at once for each
argument. based on the patch by rohitpaulk (Rohit Kuruvilla) at
[ruby-core:83508]. [Feature #14042]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/mspec/lib/mspec/mocks/mock.rb (Mock.verify_call): should
pass arguments to as given, not packed in an array.
mock_respond_to? expects 2 or 3 arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
[Feature #13884]
Reduce number of memory allocations for "and", "or" and "diff"
operations on small arrays
Very often, arrays are used to filter parameters and to select
interesting items from 2 collections and very often these
collections are small enough, for example:
```ruby
SAFE_COLUMNS = [:id, :title, :created_at]
def columns
@all_columns & SAFE_COLUMNS
end
```
In this patch, I got rid of unnecessary memory allocations for
small arrays when "and", "or" and "diff" operations are performed.
name | HEAD | PATCH
-----------------+------:+------:
array_small_and | 0.615 | 0.263
array_small_diff | 0.676 | 0.282
array_small_or | 0.953 | 0.463
name | PATCH
-----------------+------:
array_small_and | 2.343
array_small_diff | 2.392
array_small_or | 2.056
name | HEAD | PATCH
-----------------+------:+------:
array_small_and | 1.429 | 1.005
array_small_diff | 1.493 | 0.878
array_small_or | 1.672 | 1.152
name | PATCH
-----------------+------:
array_small_and | 1.422
array_small_diff | 1.700
array_small_or | 1.452
Author: Dmitry Bochkarev <dimabochkarev@gmail.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/net/ftp.rb (Net::FTP#initialize): simplify as per
the original intent.
* spec/ruby/library/net/ftp/initialize_spec.rb: adapt specs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Other ruby implementations use the spec/ruby directory.
[Misc #13792] [ruby-core:82287]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
These are fails when merging at r59779. But these are
working now.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/optional/capi/spec_helper.rb (compile_extension):
rescue possible EBADF as jobserver fd may not be available.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/core/dir/mkdir_spec.rb: the source directory may
be on a read-only filesystem.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/optional/capi/ext/fixnum_spec.c: FIX2INT and
FXI2UINT return long, in spite of their names.
* spec/rubyspec/optional/capi/ext/range_spec.c: err is int.
* spec/rubyspec/optional/capi/ext/st_spec.c: st_index_t is larger
than int.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/bundler/bundler/cli_spec.rb: prefer BUNDLE_RUBY over env
hack. on macOS 10.11 or later, some system commands, e.g.
/bin/sh and /usr/bin/env, clear DYLD_LIBRARY_PATH environment
variable which is necessary to run not-yet installed command.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/bundler/support/rubygems_ext.rb (install_gems): use
BUNDLE_GEM set in Makefile.in instead of the installed command.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
rubygems 2.7.x depends bundler-1.15.x. This is preparation for
rubygems and bundler migration.
* lib/bundler.rb, lib/bundler/*: files of bundler-1.15.4
* spec/bundler/*: rspec examples of bundler-1.15.4. I applied patches.
* https://github.com/bundler/bundler/pull/6007
* Exclude not working examples on ruby repository.
* Fake ruby interpriter instead of installed ruby.
* Makefile.in: Added test task named `test-bundler`. This task is only
working macOS/linux yet. I'm going to support Windows environment later.
* tool/sync_default_gems.rb: Added sync task for bundler.
[Feature #12733][ruby-core:77172]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/default.mspec: suppress tons of useless use of == in void
context warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/mspec/lib/mspec/utils/script.rb (entries): skip empty
directories so that at least one file would run.
Merged https://github.com/ruby/spec/issues/459
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/optional/capi/spec_helper.rb (compile_extension):
pass jobserver fds explicitly, because other specs might have
set close_on_exec flags on these fds.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/optional/capi/ext/io_spec.c (io_spec_rb_io_wait_readable):
fix type of read(2).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/delegate.rb (eql?): Delegate to `eql?` of the inner object.
based on the patch by giginet <giginet.net@gmail.com>.
[ruby-core:76950] [Bug #12684]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59167 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/mspec/lib/mspec/commands/mspec.rb (MSpecMain#run): do not
close jobserver FDs for mspec-run.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* The source file path could have pre-existing symlinks.
* See https://github.com/ruby/spec/issues/445.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59123 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/optional/capi/spec_helper.rb (compile_extension):
suppress logo of nmake.exe to stderr. we want to show compiler
warnings only.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/mspec/lib/mspec/commands/mspec.rb (MSpecMain#multi_exec):
do not close GNU make jobserver auth fds.
* spec/rubyspec/optional/capi/spec_helper.rb (compile_extension):
ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/optional/capi/spec_helper.rb (compile_extension):
prefer MAKE environment variable to hardcoded name if set by
parent make.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/default.mspec (MSpecScript::JobServer#cores): limit max
number of processors, not to acquire tokens more than necessary.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/optional/capi/spec_helper.rb (compile_extension): `DESTDIR` is
the drive letter of the ruby installed path as default on mswin, but not
builddir of the ruby. this causes spec errors if the drive letter is
different in the installed path and builddir.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* A system port might be taken by another process at any time.
* There are no useful expectations in this spec.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* See https://bugs.ruby-lang.org/issues/13570.
* Found by MSP-Greg (Greg L).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
ruby/spec/rubyspec/library/erb/run_spec.rb:63: warning: method redefined; discarding old main
ruby/spec/rubyspec/library/erb/result_spec.rb:53: warning: previous definition of main was here
ruby/spec/rubyspec/library/erb/run_spec.rb:76: warning: method redefined; discarding old main1
ruby/spec/rubyspec/library/erb/result_spec.rb:67: warning: previous definition of main1 was here
ruby/spec/rubyspec/library/erb/run_spec.rb:81: warning: method redefined; discarding old main2
ruby/spec/rubyspec/library/erb/result_spec.rb:72: warning: previous definition of main2 was here
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/mspec/lib/mspec/helpers/fs.rb (Object#mkdir_p): rescue
File.stat when the target does not exist.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/default.mspec: removed -I options for useless or non-
existent paths from flags. there is no library scripts and .ext
directory in the source directory.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/mspec/lib/mspec/commands/mspec.rb (MSpecMain#multi_exec):
as multi_exec children must run with yaml formatter, append the
option for it after other options to override another formatter
option with a warning if it is given.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add tests and specs. See ruby/spec#401.
Patch by Yuta Iwama and Shintaro Morikawa.
[ruby-core:80153] [Bug #13315] [Fix GH-1560]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
The ruby_cmd helper blindly escapes code blocks passed to it,
causing "sleep" to be quoted in the command-line. This quoting
results in IO.popen using a subshell (/bin/sh) to run the given
string command instead of invoking the Ruby executable directly.
Thus, IO.popen would only see the PID of the subshell via
IO#pid, and merely sending SIGKILL to the subshell would not
result in the child ("ruby -e sleep") being killed.
This problem with lingering ruby processes was easier to
reproduce on slow or heavily-loaded systems using low-scheduling
priority (e.g. "chrt -i 0 make test-rubyspec")
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/command_line/dash_upper_s_spec.rb: enable tests on vboxsf
(VirtualBox shared directory) and change tests to match /success$/ to
ignore warnings. This technique is suggested by @unak.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
for future backport to ruby/spec repository.
See r58772 r58773 r58774.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58775 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/core/dir/home_spec.rb: ENV["HOME"] is prior as home on Windows.
reported by ko1.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/library/win32ole/fixtures/classes.rb: should require WIN32OLE
here because this file causes NameError in parallel spec.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Avoids a race between finding an available port and another process starting a server on it.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/optional/capi/spec_helper.rb (compile_extension):
use LIBRUBYARG_SHARED for LDSHARED.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/core/kernel/itself_spec.rb: `object_id` may return
different objects for each calls, and the expectation of object
identity is done by `equal` matcher which uses `equal?` method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58704 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Use `%WINDIR%\system32\drivers\etc\services` instead of `notepad.exe`.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
because Windows does not support nonblocking mode except sockets.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/library/win32ole/win32ole/_invoke_spec.rb: the title of
"Desktop" may be localized. then, use "System32" because it seems not to be
localized.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
On Windows, when invoking ruby via runruby.rb, the pid of invoker and of invokee
are diffrent. Therefore, this spec always fails.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/optional/capi/spec_helper.rb (compile_extension):
remove code old versions. `RbConfig::CONFIG["rubyhdrdir"]` is
since 1.9, and `RbConfig::CONFIG["rubyarchhdrdir"]` is since
2.0.0.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/rubyspec/optional/capi/spec_helper.rb: building command of extensions on
mswin differs from Unixen's one.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58671 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* For easier modifications of ruby/spec by MRI developers.
* .gitignore: track changes under spec.
* spec/mspec, spec/rubyspec: add in-tree mspec and ruby/spec.
These files can therefore be updated like any other file in MRI.
Instructions are provided in spec/README.
[Feature #13156] [ruby-core:79246]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/default.mspec (MSpecScript::JobServer#cores): defer getting
job tokens until required. when running only one spec file,
`-j` option has no effect.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/default.mspec: override MSpecScript#cores by the tokens
from the parent make job server.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/default.mspec (MSpecScript): add the end of options to
runruby.rb, to fix failure at ruby/spec@a0e55db.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56682 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/default.mspec: set object directory for optional/capi, not
to pollute the source directory.
https://github.com/ruby/spec/pull/247
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* spec/default.mspec (flags): -I- has been no longer used since
long ago, and "." has not been in the default load path list too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
them with Dir.chdir; it breaks relative paths, for example
core/kernel/exec_spec.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35349 b2dd03c8-39d4-4d8f-98ff-823fe69b080e