| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
| |
https://github.com/ruby/ruby-commit-hook/commit/ddc83bea6fe6f4696e140b605db10ef0c922bba6
|
|
|
|
|
| |
`.mailmap` can be used To show canonical names and email addresses.
It is helpful for statistics of committers.
|
|
|
|
|
|
|
| |
Now, C functions written by __builtin_cexpr!(code) and others are
named as "__builtin_inline#{n}". However, it is difficult to know
what the function is. This patch rename them into
"__builtin_foo_#{lineno}" when cexpr! is in 'foo' method.
|
|
|
|
|
|
| |
79eb5e1acac2339c6ec71db723298bdfcd92b233 implemented
RUBY_TEST_GC_COMPACT=1 so why not make it also possible via the command
line argument.
|
| |
|
| |
|
|
|
|
|
| |
RUBY_TEST_GC_COMPACT=1 enables GC.compact checker which calls
GC.compact after each test.
|
|
|
|
| |
because commit info are not necessary in env.
|
|
|
| |
Co-Authored-By: Sutou Kouhei <kou@cozmixng.org>
|
|
|
|
|
|
|
|
| |
On cross-compilation, compiled binary can no be created because
compiled binary should be created by same interpreter (on cross-
compilation, host ruby is used to build ruby (BASERUBY)).
So that cross-compilation system loads required scripts in text.
It is same as miniruby.
|
|
|
|
|
|
|
|
|
| |
prelude.c is an automatically generated file by template/prelude.c.tmpl.
However it does not contain any required functions. So remove it from
dependency.
Also miniprelude.c is included by mini_builtin.c and does not need
to make miniprelude.o.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This commit introduces an "inline ivar cache" struct. The reason we
need this is so compaction can differentiate from an ivar cache and a
regular inline cache. Regular inline caches contain references to
`VALUE` and ivar caches just contain references to the ivar index. With
this new struct we can easily update references for inline caches (but
not inline var caches as they just contain an int)
|
|
|
|
|
| |
0b19e15a1239bff9ae854f522f954206ec910cf8 was also for "MJIT_SUPPORT"
too.
|
|
|
|
|
| |
because Solaris might have CC=cc and we'd like to check full path
MJIT_CC=/opt/developerstudio12.5/bin/cc instead.
|
|
|
| |
[Bug #16399]
|
|
|
|
|
|
|
| |
`(ulimit -n 30; make test-tool)` fails with unexplicit message:
"undefined method `write' for nil:NilClass" due to lack of stdout.
This change makes it explicit. [Bug #5577]
|
|
|
|
| |
At the moment, there are some problems with regard to bundler + did_you_mean because of did_you_mean being a bundled gem. Since the vendored version of thor inside bundler and ruby itself explicitly requires did_you_mean, it can become difficult to load it when using Bundler.setup. See this issue: https://github.com/yuki24/did_you_mean/issues/117#issuecomment-482733159 for more details.
|
|
|
|
|
|
| |
`Exception#full_message` is only defined on ruby 2.5.0 and above.
https://github.com/ruby/fileutils/commit/a8968f41ed
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`exception_details` is not defined anywhere.
This commit fixes the following test crash in ruby 2.4
```
Error: test_assert_output_lines(TestFileUtils): NoMethodError: undefined method `exception_details' for #<TestFileUtils:0x00005556ef699178>
```
And replaces it with an actual test failure:
```
[Test::Unit::CoreAssertions::MiniTest::Assertion] exception expected, not #<NoMethodError: undefined method `full_message' for #<RuntimeError: ok>
Did you mean? message>.
```
https://github.com/ruby/fileutils/commit/2f38ba6e82
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
rename __builtin_inline!(code) to __builtin_cstmt(code).
Also this commit introduce the following inlining C code features.
* __builtin_cstmt!(STMT)
(renamed from __builtin_inline!)
Define a function which run STMT implicitly and call this function at
evatuation time. Note that you need to return some value in STMT.
If there is a local variables (includes method parameters), you can
read these values.
static VALUE func(ec, self) {
VALUE x = ...;
STMT
}
Usage:
def double a
# a is readable from C code.
__builtin_cstmt! 'return INT2FIX(FIX2INT(a) * 2);'
end
* __builtin_cexpr!(EXPR)
Define a function which invoke EXPR implicitly like `__builtin_cstmt!`.
Different from cstmt!, which compiled with `return EXPR;`.
(`return` and `;` are added implicitly)
static VALUE func(ec, self) {
VALUE x = ...;
return EXPPR;
}
Usage:
def double a
__builtin_cexpr! 'INT2FIX(FIX2INT(a) * 2)'
end
* __builtin_cconst!(EXPR)
Define a function which invoke EXPR implicitly like cexpr!.
However, the function is called once at compile time, not evaluated time.
Any local variables are not accessible (because there is no local variable
at compile time).
Usage:
GCC = __builtin_cconst! '__GNUC__'
* __builtin_cinit!(STMT)
STMT are writtein in auto-generated code.
This code does not return any value.
Usage:
__builtin_cinit! '#include <zlib.h>'
def no_compression?
__builtin_cconst! 'Z_NO_COMPRESSION ? Qtrue : Qfalse'
end
|
|
|
|
|
| |
Update the target file itself of the dependency on this script.
Fall back to the current working directory if unwritable.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Try to fix download error on Solaris CI
https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11x/ruby-master/log/20191121T162422Z.fail.html.gz
```
tool/downloader.rb:243:in `rescue in download': failed to download config.guess (RuntimeError)
Net::HTTPFatalError: 503 "Service Unavailable": https://raw.githubusercontent.com/gcc-mirror/gcc/master/config.guess
```
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This removes the security features added by $SAFE = 1, and warns for access
or modification of $SAFE from Ruby-level, as well as warning when calling
all public C functions related to $SAFE.
This modifies some internal functions that took a safe level argument
to no longer take the argument.
rb_require_safe now warns, rb_require_string has been added as a
version that takes a VALUE and does not warn.
One public C function that still takes a safe level argument and that
this doesn't warn for is rb_eval_cmd. We may want to consider
adding an alternative method that does not take a safe level argument,
and warn for rb_eval_cmd.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes [Bug #16332]
Constant access was changed to no longer allow top-level constant access
through `nil`, but `defined?` wasn't changed at the same time to stay
consistent.
Use a separate defined type to distinguish between a constant
referenced from the current lexical scope and one referenced from
another namespace.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
by using ObjectSpace.trace_object_allocations.
`make test-all LEAK_CHECKER_TRACE_OBJECT_ALLOCATION=true` will print not
only leaked fds but also where it was created.
|
| |
|
|
|
|
|
| |
naruse sets remote.origin.pushUrl = nonexistent as fail-safe
configuration to avoid accidentally push a new branch to origin.
|
|
|
|
|
|
| |
This reverts commit fdfad905227a0e2e4c224d87181041fb75d5082e.
f1f27da6c457684fdbfc0352297e6847f675ce4c resolved this.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add an experimental `__builtin_inline!(c_expression)` special intrinsic
which run a C code snippet.
In `c_expression`, you can access the following variables:
* ec (rb_execution_context_t *)
* self (const VALUE)
* local variables (const VALUE)
Not that you can read these variables, but you can not write them.
You need to return from this expression and return value will be a
result of __builtin_inline!().
Examples:
`def foo(x) __builtin_inline!('return rb_p(x);'); end` calls `p(x)`.
`def double(x) __builtin_inline!('return INT2NUM(NUM2INT(x) * 2);')`
returns x*2.
|
|
|
|
|
| |
And revert "Relaxed warning assertions",
6f9be8505d172b110ec449478a791d70b9b74afb.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I noticed that some files in rubygems were executable, and I could think
of no reason why they should be.
In general, I think ruby files should never have the executable bit set
unless they include a shebang, so I run the following command over the
whole repo:
```bash
find . -name '*.rb' -type f -executable -exec bash -c 'grep -L "^#!" $1 || chmod -x $1' _ {} \;
```
|
|
|
|
|
|
|
| |
This reverts commit c5b4d2a2592942766dc2789f46105b91eba7026a.
This commit affects with activation feature of RubyGems.
[Bug #16337][ruby-core:95768]
|
| |
|
|
|
|
|
|
|
|
|
|
| |
http://ci.rvm.jp/results/trunk-mjit@silicon-docker/2380788
```
test_all #<Thread:0x000055b6c8e9fca8@/tmp/ruby/v2/src/trunk-mjit/tool/lib/test/unit/parallel.rb:42 run> terminated with exception (report_on_exception is true):
<internal:pack>:134:in `pack': no implicit conversion of false into String (TypeError)
from /tmp/ruby/v2/src/trunk-mjit/tool/lib/test/unit/parallel.rb:160:in `_report'
from /tmp/ruby/v2/src/trunk-mjit/tool/lib/test/unit/parallel.rb:45:in `block in _run_suite'
```
|