Age | Commit message (Collapse) | Author |
|
|
|
|
|
Auto runner should not run in forked processes in separated tests.
|
|
As SystemExit is ignored, it is just useless.
|
|
This reverts commit d767da428c28b7b9fec56b383bb32f6f76c6ad26.
It fails with spec/ruby/core/kernel/require_spec.rb:5
|
|
The original commit was https://github.com/rubygems/rubygems/pull/3119
|
|
If `require "a"` is run when two folders have been specified in the -I
option including a "a.rb" file and a "a.so" file respectively, the ruby
spec says that the ".rb" file should always be preferred. However, the
logic we added in https://github.com/rubygems/rubygems/commit/6b81076d9
to make the -I option always beat default gems does not respect this
spec, creating a difference from the original ruby-core's require.
[the ruby spec says]: https://github.com/ruby/spec/blob/d80a6e2b221d4f17a8cadcac75ef950c59cba901/core/kernel/shared/require.rb#L234-L246
https://github.com/rubygems/rubygems/commit/b3944384f4
|
|
https://github.com/rubygems/rubygems/commit/912d141a35
|
|
This condition is too restrictive in my opinion. If a user has a pre
version of rubygems installed, she should be fully responsible for it,
and we shouldn't restrict any functionality.
Also, why is a new prerelease disallowed but an old prelease allowed, or
why is 2.0.0.rc2 explictly whitelisted? I believe this kind of
exceptions are one more reason to actually permit this.
https://github.com/rubygems/rubygems/commit/7f77a77620
|
|
|
|
Redirect the output of separated child process to
`MiniTest::Unit.output`.
|
|
|
|
RDoc says nothing about them. Added an example that
ConditionVariable#wait can be woken up by
ConditionVariable#signal, instead.
|
|
|
|
Check if threads are stopped by Thread#stop? instead of the status
name.
|
|
Pointer to this field is passed to ATOMIC_CAS. We have to use
rb_atomic_t for that purpose.
Notes:
Merged: https://github.com/ruby/ruby/pull/2885
|
|
The same as 8427fca49bd85205f5a8766292dd893f003c0e48.
Notes:
Merged: https://github.com/ruby/ruby/pull/2885
|
|
Let me quote ISO/IEC 9899:2018 section 6.5.15:
> Constraints
>
> The first operand shall have scalar type.
> One of the following shall hold for the second and third operands:
> — both operands have arithmetic type;
> — both operands have the same structure or union type;
> — both operands have void type;
(snip)
Here, `*option` is a const struct rb_compile_option_struct. OTOH
`COMPILE_OPTION_DEFAULT` is a struct rb_compile_option_struct, without
const. These two are _not_ the "same structure or union type". Hence
the expression renders undefined behaviour. COMPILE_OPTION_DEFAULT is
not a const because `RubyVM::InstructionSequence.compile_option=`
touches its internals on-the-fly. There is no way to meet the
constraints quoted above.
Using ternary operator here was a mistake at the first place. Let's
just replace it with a normal `if` statement.
Notes:
Merged: https://github.com/ruby/ruby/pull/2885
|
|
There are cases when sizeof(int) == sizeof(long) == sizeof(size_t). On
such cases however int and long are incompatible types in theory. We
should not assume typedef long size_t, because on Solaris size_t is
actually a typedef of int.
This reduces compiler warnings on such situations.
Notes:
Merged: https://github.com/ruby/ruby/pull/2885
|
|
Namely recent Sun C compiler has this function, and is not a GCC.
Meanwhile the code without RUBY_JMP_BUF assumes GCC. We have to define
the macro when we detect __builtin_setjmp for non-GCC compilers.
Notes:
Merged: https://github.com/ruby/ruby/pull/2885
|
|
Predefined macros are practices not very well recommended, but can be
better than having no documents at all. Without those predefined
macros, Doxygen confused for instace PUREFUNC(int foo()) to be a
declaration of PUREFUNC, not foo.
Notes:
Merged: https://github.com/ruby/ruby/pull/2885
|
|
Now that we have C++ header files, why not let their indents follow our
way.
Notes:
Merged: https://github.com/ruby/ruby/pull/2885
|
|
|
|
It was set to 1000 in a4a2b9be7a55bb61d17cf9673ed0d2a93bb52d31.
However on ruby-2.7.0p0, there are much more than 1k frozen string right after boot:
```
$ ruby -robjspace -e 'p ObjectSpace.each_object(String).select { |s| s.frozen? && ObjectSpace.dump(s).include?(%{"fstring":true})}.uniq.count'
5948
```
Notes:
Merged: https://github.com/ruby/ruby/pull/2841
|
|
|
|
To output to the STDOUT of the parent process according to the
parallel test protocol, should send to the `MiniTest::Unit.output`
instead of each own STDOUT.
|
|
|
|
|
|
|
|
before:
```
open(p1 = v1, p2 = v2, p3 = v3)
```
|
|
|
|
|
|
Retrying after rescued `require` should try to load the same
library again. [Bug #16607]
Notes:
Merged: https://github.com/ruby/ruby/pull/2879
|
|
|
|
These tests assume
Encoding.find('locale') == Encoding.find('external')
and fail if they are distinct.
|
|
DEBUG: BUILDSTDERR: /usr/bin/ld: infinite_loop_dlsym.o: in function `native_loop_dlsym':
DEBUG: BUILDSTDERR: /builddir/build/BUILD/ruby-2.7.0/ext/-test-/popen_deadlock/infinite_loop_dlsym.c:16: undefined reference to `dlsym'
DEBUG: BUILDSTDERR: collect2: error: ld returned 1 exit status
Ruby was built with LibreSSL.
Notes:
Merged: https://github.com/ruby/ruby/pull/2862
|
|
Data written to files is not transcoded per default, but only
when default_internal is set.
The default for default_internal is nil and doesn't depend on the
source file encoding.
Notes:
Merged: https://github.com/ruby/ruby/pull/2878
|
|
|
|
In 2.6, SimpleDelegator would always use the target `respond_to?`
In 2.7.0 it doesn't if the target does not inherit from Object.
This breaks compatibility for delegated objects that inherit
from BasicObject and redefine `respond_to?`.
Notes:
Merged: https://github.com/ruby/ruby/pull/2875
|
|
Co-authored-by: Yusuke Endoh <mame@ruby-lang.org>
Notes:
Merged: https://github.com/ruby/ruby/pull/2874
|
|
VM_CHECK_MODE > 0 with optflags=-O0 can not run JIT tests because
of link problems. This patch fix them.
|
|
|
|
|
|
Separate assignemnts of dynamically given runtime values in
`rb_scan_args_assign` from parsing statically given format in
`rb_scan_args_parse`.
|
|
https://rubyci.org/logs/rubyci.s3.amazonaws.com/ubuntu1604/ruby-master/log/20200203T003005Z.log.html.gz
```
/home/hsbt/chkbuild/tmp/build/20200203T003005Z/ruby/test/rubygems/test_gem_remote_fetcher.rb:485: warning: method redefined; discarding old test_fetch_path_socket_error
/home/hsbt/chkbuild/tmp/build/20200203T003005Z/ruby/test/rubygems/test_gem_remote_fetcher.rb:167: warning: previous definition of test_fetch_path_socket_error was here
```
|
|
|
|
|
|
1. By substituting `n_var` with its initializer, `0 < n_var` is
equivalent to `argc > argi + n_trail`.
2. As `argi` is non-negative, so `argi + n_trail >= n_trail`, and
the above expression is equivalent to `argc > n_trail`.
3. Therefore, `f_last` is always false, and `last_hash` is no
longer used.
Notes:
Merged: https://github.com/ruby/ruby/pull/2873
Merged-By: nobu <nobu@ruby-lang.org>
|
|
|
|
A newline is automatically inserted if a character is rendered at eol on
Windows command prompt.
https://github.com/ruby/reline/commit/4bfea07e4a
|