| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
| |
Code owners are automatically tagged as reviewers on pull requests
|
|
|
|
|
| |
This commit adds support for embedded strings with variable capacity and
uses Variable Width Allocation to allocate strings.
|
|
|
|
|
| |
The allocation functions no longer assume that one RVALUE needs to be
allocated.
|
| |
|
|
|
| |
ast.c: Use kept script_lines data instead of re-open the source file
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As noticed by @nobu https://github.com/rubygems/rubygems/pull/4989#discussion_r735674633
From wikipedia: https://en.wikipedia.org/wiki/SHA-1#SHA-1_pseudocode
> append ml, the original message length in bits, as a 64-bit big-endian integer.
`Q` is native endian, so little-endian on most modern hardware.
The original code from RubyDigest reverses the bytes:
https://github.com/Solistra/ruby-digest/blob/d15f906caf09171f897efc74645c9e31373d7fd1/lib/ruby_digest.rb#L521
But that makes the code non-portable, the correct way is to directly ask
for a big-endian representation.
https://github.com/rubygems/rubygems/commit/ba2be01ea4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In an effort to minimize build issues on non x64 platforms, we can
decide at build time to not build the bulk of YJIT. This should fix
obscure build errors like this one on riscv64:
yjit_asm.c:137:(.text+0x3fa): relocation truncated to fit: R_RISCV_PCREL_HI20 against `alloc_exec_mem'
We also don't need to bulid YJIT on `--disable-jit-support` builds.
One wrinkle to this is that the YJIT Ruby module will not be defined
when YJIT is stripped from the build. I think that's a fair change as
it's only meant to be used for YJIT development.
|
|
|
|
|
|
|
|
|
| |
`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>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Otherwise, the hint is printed whenever fork is called.
http://rubyci.s3.amazonaws.com/debian9/ruby-master/log/20211025T093004Z.log.html.gz
```
[20244/21156] TestThread#test_fork_while_lockedyou may want to add tests for following insns, when you have a chance: checkmatch
you may want to add tests for following insns, when you have a chance: checkmatch
you may want to add tests for following insns, when you have a chance: checkmatch
= 0.19 s
```
|
|
|
|
|
|
| |
OpenSSL includes what we need.
https://github.com/rubygems/rubygems/commit/955f3b72ca
|
|
|
|
|
|
|
|
|
|
| |
We require things inline or autoload them for efficiency and to avoid as
much as possible conflicting with user's choice of gems.
But I removed the require and observed no deadlocks when activating
gems.
https://github.com/rubygems/rubygems/commit/7d6333e842
|
|
|
|
|
|
|
|
|
| |
Some crucial information to ease maintainers work, like the advice of
upgrading rubygems and bundler, was one step away from the issue
template, making it easier for some users to miss.
Now all relevant information is written directly in the bug report
template.
|
|
|
|
|
|
|
|
|
| |
can't be deleted
Instead of showing the bug report template with an error at a random
place.
https://github.com/rubygems/rubygems/commit/882ad3ab57
|
|
|
|
|
|
|
| |
Instead of showing the bug report place with an error at a randome
place.
https://github.com/rubygems/rubygems/commit/241854ce73
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/ae374c1f31
|
|
|
|
|
|
| |
searching it
https://github.com/rubygems/rubygems/commit/d0df25bb0f
|
|
|
|
|
|
|
|
| |
Previously, it was maintained in sync with the standard cache. That was
less efficient, and it caused some error messages to point to non
existent files.
https://github.com/rubygems/rubygems/commit/931f8cb8a9
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/83b2b845b3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can skip most stuff in `Gem::RemoteFetcher#download`, and use
`Gem::RemoteFetcher#update_cache_path` directly.
This has the benefit of allowing us to remove some workarounds to
support several rubygems versions, but also allows us to pass the target
folder where the gem should be downloaded directly and skip the logic
inside `Gem::RemoteFetcher#download` to infer the cache path. This will
be useful later to fix some issues with the `global_gem_cache` feature
flag.
https://github.com/rubygems/rubygems/commit/8fe74a77e4
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/7e1316e454
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/3c93b9fd21
|
|
|
|
|
|
|
|
|
|
|
| |
These methods rescue a constant defined by `rubygems/remote_fetcher`,
so they should technically require it.
The require is provided by `gem_remote_fetcher` anyways but I was
running a unit spec that stubs that method, so I was getting an
undefined constant error hiding another error.
https://github.com/rubygems/rubygems/commit/8bedae4034
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/13b933f49a
|
|
|
|
| |
https://github.com/rubygems/rubygems/commit/8319305d58
|
|
|
|
|
|
|
|
| |
Extract final cache path to a variable and pass that to `download_gem`.
It actually fits better the parameters documentation since it's the
final directory where the downloaded gem will be placed.
https://github.com/rubygems/rubygems/commit/1429db6a04
|
|
|
|
|
|
|
|
|
|
| |
* 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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
http://rubyci.s3.amazonaws.com/centos7/ruby-master/log/20211025T093004Z.log.html.gz
```
[ 4896/21159] TestRubyVM#test_keep_script_lines(none):3: warning: assigned but unused variable - b
(none):6: warning: assigned but unused variable - c
(none):1: warning: assigned but unused variable - a
<compiled>:3: warning: assigned but unused variable - b
(none):3: warning: assigned but unused variable - b
(none):6: warning: assigned but unused variable - c
(none):1: warning: assigned but unused variable - a
<compiled>:3: warning: assigned but unused variable - b
```
|
|
|
|
|
|
|
|
|
| |
http://rubyci.s3.amazonaws.com/centos7/ruby-master/log/20211025T093004Z.log.html.gz
```
/home/chkbuild/chkbuild/tmp/build/20211025T093004Z/ruby/test/ruby/test_refinement.rb:777: warning: Refinement#include is deprecated and will be removed in Ruby 3.2
/home/chkbuild/chkbuild/tmp/build/20211025T093004Z/ruby/test/ruby/test_refinement.rb:840: warning: Refinement#prepend is deprecated and will be removed in Ruby 3.2
/home/chkbuild/chkbuild/tmp/build/20211025T093004Z/ruby/test/ruby/test_refinement.rb:2620: warning: Refinement#include is deprecated and will be removed in Ruby 3.2
```
|
|
|
|
|
|
|
| |
http://rubyci.s3.amazonaws.com/centos7/ruby-master/log/20211025T093004Z.log.html.gz
```
/home/chkbuild/chkbuild/tmp/build/20211025T093004Z/ruby/test/ruby/test_marshal.rb:925: warning: assigned but unused variable - objects
```
|
|
|
|
|
|
|
| |
This allows `Source::Git` to no longer load the `digest` gem as it is causing
issues on Ruby 3.1.
https://github.com/rubygems/rubygems/pull/4989/commits/c19a9f2ff7
|
|
|
|
|
|
|
| |
* Make Coverage suspendable
Add `Coverage.suspend`, `Coverage.resume` and some methods.
[Feature #18176] [ruby-core:105321]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When `install_with_build_args` was added in
https://github.com/rubygems/rubygems/commit/be96283985cb49c023112117b2ac2dea0d9becf1,
there were two versions of the method: the default version in the base class that still
used the locking `with_build_args`, and an override in the `Future`
class (for Rubygems 2.0 and up) that yielded without calling
`with_build_args`.
The `with_build_args` version of the method was removed in
https://github.com/rubygems/rubygems/commit/8a5b71e3e8072c64a0f3cab838ba330f5e87e37a
while removing a bunch of the old Rubygems compatibility code.
This commit removes `with_build_args`, since it no longer appears to be
used (the build args are passed as a keyword argument to
`spec.source.install` instead, since
https://github.com/rubygems/rubygems/commit/be96283985cb49c023112117b2ac2dea0d9becf1).
The commit also removes `install_with_build_args` and the conditional
around it, since the method wasn't doing anything different than
`install`, and it had a comment that was no longer accurate.
https://github.com/rubygems/rubygems/commit/ba543a60eb
|
|
|
|
|
| |
http://ci.rvm.jp/results/trunk@ruby-iga/3690333
> tool/lib/test/unit/parallel.rb:68:in `close': Bad file descriptor (Errno::EBADF)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
parallel test randomly failed with EBADF.
This patch checks wich suite causes this error.
ex) http://ci.rvm.jp/results/trunk@ruby-iga/3690219
```
/tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:88:in `close': Bad file descriptor (Errno::EBADF)
/tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:88:in `ensure in _run_suite'
/tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:89:in `_run_suite'
/tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:30:in `block in _run_suites'
/tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:29:in `map'
/tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:29:in `_run_suites'
/tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:128:in `run'
/tmp/ruby/v3/src/trunk/tool/lib/test/unit/parallel.rb:211:in `<main>'
```
|
| |
|
| |
|
|
|
|
| |
Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
|
| |
|
|
|
|
| |
Code markup in RDoc must not be concatenated with anothr word.
|
| |
|
|
|
|
|
|
|
| |
Now that BN.pseudo_rand{,_range} are alias, those macros are only used
once. Let's expand the macros for better readability.
https://github.com/ruby/openssl/commit/7c2fc00dee
|
|
|
|
|
|
|
|
| |
BN_pseudo_rand() and BN_pseudo_rand_range() are deprecated in
OpenSSL 3.0. Since they are identical to their non-'pseudo' version
anyway, let's make them alias.
https://github.com/ruby/openssl/commit/2d34e85ddf
|
|
|
|
|
|
|
| |
OpenSSL 3.0 renamed EVP_PKEY_cmp() to EVP_PKEY_eq() because that was a
confusing name.
https://github.com/ruby/openssl/commit/d42bd7fcdb
|
|
|
|
|
|
|
|
|
| |
EC_GROUP_clear_free() is deprecated in OpenSSL 3.0.
EC_GROUP does not include any sensitive data, so we can safely use
EC_GROUP_free() instead.
https://github.com/ruby/openssl/commit/e93a5fdffc
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
no-op
It converts the internal representation of the point object to the
affine coordinate system. However, it had no real use case because the
difference in the internal representation has not been visible from
Ruby/OpenSSL at all.
EC_POINT_make_affine() is marked as deprecated in OpenSSL 3.0.
https://github.com/ruby/openssl/commit/e2cc81fef7
|
|
|
|
|
|
|
|
|
|
| |
EVP_MD_CTX_pkey_ctx()
OpenSSL 3.0 renamed EVP_MD_CTX_pkey_ctx() to include "get" in the
function name. Adjust compatibility macro so that we can use the new
function name for all OpenSSL 1.0.2-3.0.
https://github.com/ruby/openssl/commit/c106d888c6
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
if exists
The function was renamed in OpenSSL 3.0 due to the change of the
lifetime of EVP_MD objects. They are no longer necessarily statically
allocated and can be reference-counted -- when an EVP_MD_CTX is free'd,
the associated EVP_MD can also become inaccessible.
Currently Ruby/OpenSSL only handles builtin algorithms, so no special
handling is needed except for adapting to the rename.
https://github.com/ruby/openssl/commit/0a253027e6
|