| Age | Commit message (Collapse) | Author |
|
|
|
https://github.com/ruby/psych/commit/c3b5183f42
|
|
3.1 gem install
https://github.com/ruby/psych/commit/2fa5e190b5
|
|
|
|
https://github.com/ruby/irb/commit/af99c01b0d
|
|
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
during GC. (#5911)
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
|
|
|
|
|
|
https://github.com/ruby/set/commit/71a876ae81
|
|
* Update naming of critical section assertions macros.
* Improved locking for autoload.
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
And hopefully for other Linux. Since it is not run on the build os,
`TEST_RUNNABLE` is not suitable for this case.
|
|
On `rails/rails` repository Gemfile, running the following script
```
# script.rb
require "bundler/setup"
```
#### Before
```
➜ rails git:(main) ✗ BUNDLER_VERSION=2.4.0.dev ruby-memory-profiler --pretty --no-detailed --allocated-strings=0 --retained-strings=0 script.rb
Total allocated: 24.37 MB (207937 objects)
Total retained: 2.98 MB (34152 objects)
```
#### After
```
➜ rails git:(main) ✗ BUNDLER_VERSION=2.4.0.dev ruby-memory-profiler --pretty --no-detailed --allocated-strings=0 --retained-strings=0 script.rb
Total allocated: 22.27 MB (206856 objects)
Total retained: 2.98 MB (34152 objects)
```
https://github.com/rubygems/rubygems/commit/2ea2523afd
Co-authored-by: Josh Nichols <josh.nichols@gusto.com>
|
|
On a different patch, it was noticed Ngam Pham that we are calling
`LazySpecification#hash` many times, and simply memoizing that led to a
very considerable performance improvement in his app.
I noticed though that we shouldn't be calling `LazySpecification#hash`
that many times, and I located the culprit at `SpecSet#for` where we
were deduplicating the partial aggregated result on every iteration. It
is enough to do it just once at the end.
This leads on a 12% speedup on Rails repository Gemfile vs the previous
8% I was getting from memoizing `LazySpecification#hash`. Also, after
this patch memoizing `LazySpecification#hash` has no effect in
performance anymore.
https://github.com/rubygems/rubygems/commit/68d00a9edd
Co-authored-by: Ngan Pham <ngan@users.noreply.github.com>
|
|
* Note that as the annocheck binary package is not available on Ubuntu, and it
is working in progress in Debian, the script uses Fedora container, and
it requires docker or podman command.
https://www.debian.org/devel/wnpp/itp.en.html
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=926470
* .github/workflows/compilers.yml: Add "gcc-11 annocheck" case.
To pass the CI, set `TEST_ANNOCHECK_OPTS: "--skip-pie --skip-notes"` for now.
See <https://bugs.ruby-lang.org/issues/18061>.
* Skip MJIT tests in case of annocheck case.
The MJIT tests fail in the annocheck case.
See <https://bugs.ruby-lang.org/issues/18781>.
Notes:
Merged: https://github.com/ruby/ruby/pull/5900
|
|
|
|
https://github.com/ruby/racc/commit/4ecc13c9cb
|
|
|
|
* Add RUBY_VM_CRITICAL_SECTION for detecting unexpected context switch.
* Prevent race between GC mark and autoload setup.
* Protect race on autoload state.
* Avoid potential race condition when allocating `autoload_featuremap`.
* Add NEWS entry for autoload fixes.
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
(https://github.com/ruby/fileutils/pull/69)
Enhanced RDoc for #ln
https://github.com/ruby/fileutils/commit/79fc67f03f
Co-authored-by: Peter Zhu <peter@peterzhu.ca>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5909
|
|
|
|
(https://github.com/ruby/logger/pull/77)
Enhanced RDoc for Logger
https://github.com/ruby/logger/commit/c601ed0370
Co-authored-by: Peter Zhu <peter@peterzhu.ca>
|
|
If we don't have `saddr` but have `sname` we should output `sname`.
Notes:
Merged: https://github.com/ruby/ruby/pull/5906
|
|
https://github.com/ruby/logger/commit/a5a2f2da4a
Co-authored-by: Peter Zhu <peter@peterzhu.ca>
|
|
https://github.com/ruby/logger/commit/e6f2c64fc6
Co-authored-by: Peter Zhu <peter@peterzhu.ca>
|
|
https://github.com/ruby/logger/commit/3dc5a8d7a4
Co-authored-by: Peter Zhu <peter@peterzhu.ca>
|
|
https://github.com/ruby/logger/commit/98919e09e5
Co-authored-by: Peter Zhu <peter@peterzhu.ca>
|
|
https://github.com/ruby/logger/commit/073a892ad9
Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>
|
|
https://github.com/ruby/logger/commit/6d91281f7f
Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>
|
|
https://github.com/ruby/logger/commit/34c0ba8baa
Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>
|
|
https://github.com/ruby/logger/commit/16556d06d1
|
|
install output
The lockfile is completely ignored in inline mode, yet the previous
output would suggest it wasn't.
https://github.com/rubygems/rubygems/commit/763125a745
|
|
The other sources use `options` which reads better.
https://github.com/rubygems/rubygems/commit/a672f9d602
|
|
Try to fix `make install without root privilege` failures on snapshot CIs.
example: https://github.com/ruby/actions/actions/runs/2315349280
|
|
This implements the getblockparam instruction.
There are two cases we need to handle depending on whether or not
VM_FRAME_FLAG_MODIFIED_BLOCK_PARAM is set in the environment flag.
When the modified flag is unset, we need to call rb_vm_bh_to_procval to
get a proc from our passed block, save the proc in the environment, and
set the modified flag.
In the case that the modified flag is set we are able to just use the
existing proc in the environment.
One quirk of this is that we need to call jit_prepare_routine_call early
and ensure we update PC and SP regardless of the branch taken, so that
we have a consistent SP offset at the start of the next instruction.
We considered using a chain guard to generate these two paths
separately, but decided against it because it's very common to see both
and the modified case is basically a subset of the instructions in the
unmodified case.
This includes tests for both getblockparam and getblockparamproxy which
was previously missing a test.
Notes:
Merged: https://github.com/ruby/ruby/pull/5881
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5904
|
|
|
|
Before this commit we were accidentally clobbering RAX. Additionally,
since this function had RAX hardcoded then the function may not have
worked with registers other than RAX.
Co-authored-by: John Hawthorn <john@hawthorn.email>
Notes:
Merged-By: jhawthorn <john@hawthorn.email>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5879
|
|
Note this change is only for `configure.ac`, not for Windows using
`win32/configure.bat`.
```
$ ./configure --help | grep mkmf
--enable-mkmf-verbose enable verbose in mkmf
```
Run the following command to enable the mkmf verbose mode.
```
$ ./configure --enable-mkmf-verbose
$ grep MKMF_VERBOSE config.status
S["MKMF_VERBOSE"]="1"
```
In this mkmf verbose mode, when compiling a native extension, the
`rake compile` prints the compiling commands such as
"gcc -I. <...> path/to/file" instead of "compiling path/to/file".
```
$ git clone https://github.com/deivid-rodriguez/byebug.git
$ cd byebug
$ bundle install --standalone
$ bundle exec rake compile
...
gcc -I. <...> path/to/file
...
```
Notes:
Merged: https://github.com/ruby/ruby/pull/5879
|
|
given scheme
* Also add docs and mention current limitations.
* For reference, https://stackoverflow.com/a/3641782/388803 mentions the
valid characters in schemes.
https://github.com/ruby/uri/commit/4346daac75
|
|
URI::Generic#{user,password} return the encoded values, which are
not that useful if you want to do authentication with them.
Automatic decoding by default would break backwards compatibility.
Optional automatic decoding via a keyword to URI.parse would
require threading the option through at least 3 other methods, and
would make semantics confusing (user= takes encoded or unencoded
password?) or require more work. Thus, adding this as a separate
method seemed the simplest approach.
Unfortunately, URI lacks a method for correct decoding. Unlike in
www form components, + in earlier parts of the URI such as the
userinfo section is treated verbatim and not as an encoded space.
Add URI.#{en,de}code_uri_component methods, which are almost the
same as URI.#{en,de}code_www_form_component, but without the
special SP => + handling.
Implements [Feature #9045]
https://github.com/ruby/uri/commit/16cfc4e92f
|
|
The module here is called `URI`, so it's probably reasonable to expect a requirement for the path to be RFC3986-compliant, but on the other hand, the class is called `File`, so it might be reasonable to expect that a path produced by e.g. the `File` class would be consumable by its `build` method (this fails if the filename contains e.g. a space).
https://github.com/ruby/uri/commit/ef79789b83
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5902
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5903
|
|
co-authored-by: Peter Zhu <peter@peterzhu.ca>
Notes:
Merged: https://github.com/ruby/ruby/pull/5901
|
|
https://github.com/ruby/fileutils/commit/4771925fee
Co-authored-by: Peter Zhu <peter@peterzhu.ca>
|