Age | Commit message (Collapse) | Author |
|
Extract bundled gems by BASERUBY
---
common.mk | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
Move to tool/lib/bundled_gem.rb
---
common.mk | 6 +++---
defs/gmake.mk | 4 ++--
tool/gem-unpack.rb | 53 -----------------------------------------------
tool/lib/bundled_gem.rb | 55 +++++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 60 insertions(+), 58 deletions(-)
delete mode 100644 tool/gem-unpack.rb
create mode 100644 tool/lib/bundled_gem.rb
|
|
Remove github and git related files from extracted bundled gems
---
common.mk | 3 ++-
defs/gmake.mk | 1 +
2 files changed, 3 insertions(+), 1 deletion(-)
|
|
Exclude LIBPATHENV wrapper from PREP
---
common.mk | 4 ++--
configure.ac | 2 +-
template/Makefile.in | 2 ++
3 files changed, 5 insertions(+), 3 deletions(-)
|
|
Move duplicate dependencies
---
common.mk | 2 ++
template/Makefile.in | 5 -----
win32/Makefile.sub | 2 --
3 files changed, 2 insertions(+), 7 deletions(-)
|
|
Load fake.rb at `BTESTRUBY`
So that `mkmf` checks work from `make run`, and also remove
duplicate `$(MINIRUBYOPT)` which is used in `$(MINIRUBY)`.
---
common.mk | 8 ++++----
template/Makefile.in | 3 +--
template/fake.rb.in | 2 ++
win32/Makefile.sub | 2 +-
4 files changed, 8 insertions(+), 7 deletions(-)
|
|
Kill bundled gem tests when interrupted
---
common.mk | 2 +-
tool/test-bundled-gems.rb | 12 ++++++++++--
2 files changed, 11 insertions(+), 3 deletions(-)
|
|
Copy from bundled gem source for test
---
common.mk | 13 +++++++----
defs/gmake.mk | 4 ++++
tool/gem-unpack.rb | 63 +++++++++++++++++++++++++++++++++++-------------------
3 files changed, 54 insertions(+), 26 deletions(-)
|
|
Use configured GIT
---
common.mk | 4 ++--
defs/gmake.mk | 68 +++++++++++++++++++++++++++++------------------------------
2 files changed, 36 insertions(+), 36 deletions(-)
|
|
Get rid of building main again when test-bundled-gems
---
.github/workflows/ubuntu.yml | 1 +
.github/workflows/yjit-ubuntu.yml | 1 +
common.mk | 3 ++-
defs/gmake.mk | 2 +-
4 files changed, 5 insertions(+), 2 deletions(-)
|
|
Run the prerequisites of test-bundled-gems in order
---
common.mk | 6 +++++-
defs/gmake.mk | 7 ++++++-
2 files changed, 11 insertions(+), 2 deletions(-)
|
|
Define BOOTSTRAPRUBY from HAVE_BASERUBY
---
common.mk | 1 +
configure.ac | 8 --------
template/Makefile.in | 7 +++++--
win32/Makefile.sub | 6 ++++--
4 files changed, 10 insertions(+), 12 deletions(-)
|
|
Use BOOTSTRAPRUBY_COMMAND instead of fake.rb directly
---
common.mk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
builtin.c includes mini_builtin.c when cross-compiling
---
common.mk | 3 +++
1 file changed, 3 insertions(+)
|
|
Ignore fake.rb for snapshot
---
common.mk | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
|
|
fake.rb needs id.h
---
common.mk | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
Fix potential target type confliction [ci skip]
---
common.mk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
Make sources by BASERUBY if available instead of miniruby
---
common.mk | 25 +++++++++++++++----------
configure.ac | 6 +++++-
cygwin/GNUmakefile.in | 4 ++--
template/Makefile.in | 2 +-
win32/Makefile.sub | 10 ++++++++--
5 files changed, 31 insertions(+), 16 deletions(-)
|
|
exts.mk.tmpl: propagate MINIRUBY to enc.mk even though invoking from
exts.mk
This is another attempt to fix out-of-src build with
--with-static-linked-ext. The first attempt was
4f1888bda70981d9f5b1bf55ab692e0ce18e79f4 but reverted because it broke
out-of-src build from pre-generated sources via `make dist`.
This patch fixes the second trans C source gen, mentioned in the
previous commit message, by passing MINIRUBY as well as when invoking
from common.mk
---
common.mk | 2 +-
template/exts.mk.tmpl | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
|
|
`Gem.unpack` extracts gems so able to execute
Creates simple bin stubs to load the extracted executable files.
After only extracted under `gems` directory, the gems are considered
installed but the executable scripts are not found.
Also the second argument is now the parent of the previous second and
third arguments.
---
common.mk | 6 ++----
defs/gmake.mk | 3 +--
tool/gem-unpack.rb | 30 +++++++++++++++++++-----------
3 files changed, 22 insertions(+), 17 deletions(-)
|
|
The "gems" build directory was rename as ".bundle"
---
common.mk | 12 ++++++------
template/Makefile.in | 10 +++++-----
2 files changed, 11 insertions(+), 11 deletions(-)
|
|
Obey spec file locations to rubygems
---
common.mk | 3 ++-
defs/gmake.mk | 2 +-
tool/gem-unpack.rb | 5 +++--
3 files changed, 6 insertions(+), 4 deletions(-)
|
|
035978d7be9bc3819f42f964fe6193d983cce63f,2e324b645e16e67c14de80ea34b1d61165045f22,b6a9e683917745df2822a611fce64df9ae8090a7:
Pass job-server FDs to bundler tests
---
common.mk | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Manage paths for bundler tests
---
common.mk | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
Add noarch-fake.rb target
`yes-fake` depends on it when `arch=noarch` is given, but the rule to
generate it from fake.rb.in is ignored now.
---
common.mk | 3 +++
1 file changed, 3 insertions(+)
|
|
Now test-bundler nees fake.rb
---
common.mk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
Merge RubyGems 3.3.x and Bundler 2.3.x
|
|
This reverts commit a042043487eb4c7d39307b8e784ede1856455c3e.
(cherry picked from commit 8325094177de60d365b2b5507488f0b53d11c736)
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5249
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5314
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5297
|
|
We found that we need to make Ruby objects while locking the environ
to ENV operation atomically, so we decided to use `RB_VM_LOCK_ENTER()`
instead of `env_lock`.
Notes:
Merged: https://github.com/ruby/ruby/pull/5263
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5263
|
|
* YJIT: Implement optimized_method_struct_aref
* YJIT: Implement struct_aref without method call
Struct member reads can be compiled directly into a memory read (with
either one or two levels of indirection).
* YJIT: Implement optimized struct aset
* YJIT: Update tests for struct access
* YJIT: Add counters for remaining optimized methods
* Check for INT32_MAX overflow
It only takes a struct with 0x7fffffff/8+1 members. Also add some
cheap compile time checks.
* Add tests for non-embedded struct aref/aset
Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>
Notes:
Merged-By: jhawthorn <john@hawthorn.email>
|
|
|
|
The implementation of a local variable tables was represented as `ID*`,
but it was very hacky: the first element is not an ID but the size of
the table, and, the last element is (sometimes) a link to the next local
table only when the id tables are a linked list.
This change converts the hacky implementation to a normal struct.
Notes:
Merged: https://github.com/ruby/ruby/pull/5136
|
|
Introduce new optimized method type
`OPTIMIZED_METHOD_TYPE_STRUCT_AREF/ASET` with index information.
Notes:
Merged: https://github.com/ruby/ruby/pull/5131
|
|
* `GC.measure_total_time = true` enables total time measurement (default: true)
* `GC.measure_total_time` returns current flag.
* `GC.total_time` returns measured total time in nano seconds.
* `GC.stat(:time)` (and Hash) returns measured total time in milli seconds.
Notes:
Merged: https://github.com/ruby/ruby/pull/4757
|
|
This provides a significant speedup for symbol, true, false,
nil, and 0-9, class/module, and a small speedup in most other cases.
Speedups (using included benchmarks):
:symbol :: 60%
0-9 :: 50%
Class/Module :: 50%
nil/true/false :: 20%
integer :: 10%
[] :: 10%
"" :: 3%
One reason this approach is faster is it reduces the number of
VM instructions for each interpolated value.
Initial idea, approach, and benchmarks from Eric Wong. I applied
the same approach against the master branch, updating it to handle
the significant internal changes since this was first proposed 4
years ago (such as CALL_INFO/CALL_CACHE -> CALL_DATA). I also
expanded it to optimize true/false/nil/0-9/class/module, and added
handling of missing methods, refined methods, and RUBY_DEBUG.
This renames the tostring insn to anytostring, and adds an
objtostring insn that implements the optimization. This requires
making a few functions non-static, and adding some non-static
functions.
This disables 4 YJIT tests. Those tests should be reenabled after
YJIT optimizes the new objtostring insn.
Implements [Feature #13715]
Co-authored-by: Eric Wong <e@80x24.org>
Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>
Co-authored-by: Yusuke Endoh <mame@ruby-lang.org>
Co-authored-by: Koichi Sasada <ko1@atdot.net>
Notes:
Merged: https://github.com/ruby/ruby/pull/5002
Merged-By: jeremyevans <code@jeremyevans.net>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5084
Merged-By: nobu <nobu@ruby-lang.org>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4621
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4621
|
|
it's start irb on built ruby (not installed ruby).
|
|
`duphash` showed up in the top-20 most frequent exit ops for @jhawthorn's benchmark that renders github.com/about
The implementation was almost exactly the same as `duparray`
Co-authored-by: John Hawthorn <john@hawthorn.email>
Co-authored-by: John Hawthorn <john@hawthorn.email>
Notes:
Merged-By: maximecb <maximecb@ruby-lang.org>
|
|
* process.c: Add Process._fork
This API is supposed for application monitoring libraries to hook fork
event.
[Feature #17795]
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
Notes:
Merged-By: mame <mame@ruby-lang.org>
|
|
For extra options from the `make` command line.
Also add explicit `--install` option to install-nodoc.
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4913
|
|
`RubyVM.keep_script_lines` enables to keep script lines
for each ISeq and AST. This feature is for debugger/REPL
support.
```ruby
RubyVM.keep_script_lines = true
RubyVM::keep_script_lines = true
eval("def foo = nil\ndef bar = nil")
pp RubyVM::InstructionSequence.of(method(:foo)).script_lines
```
Notes:
Merged: https://github.com/ruby/ruby/pull/4913
|
|
|
|
|
|
|
|
The new backend isn't used at the moment and adds to our diff against
upstream so remove it for now. We can reverse the removal later with git
history.
|