| Age | Commit message (Collapse) | Author |
|
(https://github.com/ruby/csv/pull/217)
https://github.com/ruby/csv/commit/744e41130c
Notes:
Merged: https://github.com/ruby/ruby/pull/5010
|
|
https://github.com/ruby/csv/commit/3025070cea
Notes:
Merged: https://github.com/ruby/ruby/pull/5010
|
|
For extra options from the `make` command line.
Also add explicit `--install` option to install-nodoc.
|
|
The Ruby tree disallows assert_raises.
https://github.com/ruby/openssl/commit/9b4f761e74
|
|
a file
SSLSocket#connect eventually calls `GetOpenFile` in order to get the
underlying file descriptor for the IO object passed in on
initialization. `GetOpenFile` assumes that the Ruby object passed in is
a T_FILE object and just casts it to a T_FILE without any checks. If
you pass an object that *isn't* a T_FILE to that function, the program
will segv.
Since we assume the IO object is a file in the `connect` method, this
commit adds a `CheckType` in the initialize method to ensure that the IO
object is actually a T_FILE. If the object *isn't* a T_FILE, this class
will segv on `connect`, so I think this is a backwards compatible
change.
https://github.com/ruby/openssl/commit/919fa44ec2
|
|
OpenSSL 3.0
OpenSSL::PKey::RSA#set_key does not exist when built with OpenSSL 3.0,
so it is not possible to create an RSA object with incomplete state.
https://github.com/ruby/openssl/commit/ca03c9c070
|
|
PKey.generate_parameters tests
OpenSSL 3.0 refuses to generate DSA parameters shorter than 2048 bits,
but generating 2048 bits parameters takes very long time. Let's use EC
in these test cases instead.
https://github.com/ruby/openssl/commit/c732387ee5
|
|
A certificate can only have one SubjectAltName extension. OpenSSL 3.0
performs a stricter validation and certificates containing multiple SANs
will be rejected.
https://github.com/ruby/openssl/commit/558cfbe5f5
|
|
OpenSSL's PKCS12_create() by default uses pbewithSHAAnd40BitRC2-CBC for
encryption of the certificates. However, in OpenSSL 3.0, the algorithm
is part of the legacy provider and is not enabled by default.
Specify another algorithm that is still in the default provider for
these test cases.
https://github.com/ruby/openssl/commit/998406d18f
|
|
message
OpenSSL 3.0 slightly changed the error message for a certificate
verification failure when an untrusted self-signed certificate is found
in the chain.
https://github.com/ruby/openssl/commit/b5a0a19850
|
|
algorithms
Remove availability test for MD4 and RIPEMD160 as they are considered
legacy and may be missing depending on the compile-time options of
OpenSSL. OpenSSL 3.0 by default disables them.
https://github.com/ruby/openssl/commit/a3e59f4c2e
|
|
Disabling ECC support of OpenSSL is impractical nowadays.
We still try to have the C extension compile on no-ec builds (as well
as no-dh or no-engine, etc.) as long as we can, but keeping test cases
for such an extreme scenario is not worth the effort.
https://github.com/ruby/openssl/commit/2cd01d4676
|
|
Current versions of OpenSSL and LibreSSL all support TLS 1.2, so there
is no need for checking the availability.
https://github.com/ruby/openssl/commit/a175a41529
|
|
It uses deprecated PKey::{RSA,DSA,DH}#set_* methods, which will not
work with OpenSSL 3.0. The same can easily be achieved using
PKey#public_to_der regardless of the key kind.
https://github.com/ruby/openssl/commit/7b66eaa2db
|
|
|
|
|
|
|
|
|
|
This reverts commit e22d293e06966733e71a7fd9725eee06c03d0177.
|
|
|
|
While theoretically it's fine to take the lock and then immediately release
it, we don't need to do it when YJIT is off.
Notes:
Merged: https://github.com/ruby/ruby/pull/5007
|
|
|
|
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/5006
|
|
benchmark for a class's ivar setter
Notes:
Merged: https://github.com/ruby/ruby/pull/5006
|
|
if an ivar of a class/module refer to a shareable object, this ivar
can be read from non-main Ractors.
Notes:
Merged: https://github.com/ruby/ruby/pull/5006
|
|
`URI.parse('https://a.b.c/')` needs 'uri/https'.
|
|
844588f9157b364244a7d34ee0fcc70ccc2a7dd9 made it so that trying to call
gc_verify_compaction_references on unsupported platform result in an
exception rather than a crash. Rescue the exception in a YJIT btest
that uses gc_verify_compaction_references.
Notes:
Merged: https://github.com/ruby/ruby/pull/5004
Merged-By: XrXr
|
|
https://github.com/ruby/mutex_m/commit/a839e29d04
|
|
(https://github.com/ruby/uri/pull/30)
https://github.com/ruby/uri/commit/bf13946c32
Co-authored-by: Samuel Williams <samuel.williams@oriontransfer.co.nz>
|
|
https://github.com/ruby/delegate/commit/81a3c32140
|
|
MacOs concurrency on GitHub Actions is limited, and the
performance is relatively poor.
|
|
|
|
|
|
|
|
|
|
|
|
--enable=all didn't work when cppflags=-DMJIT_FORCE_ENABLE was given.
|
|
It seems like `gc_verify_compaction_references` is not protected in case
alignment is wrong. This commit pushes the alignment check down to
`gc_start_internal` so that anyone trying to compact will check page
alignment
I think this method may be getting called on PowerPC and the alignment
might be wrong.
http://rubyci.s3.amazonaws.com/ppc64le/ruby-master/log/20211021T190006Z.fail.html.gz
Notes:
Merged: https://github.com/ruby/ruby/pull/5001
|
|
2d98593bf54a37397c6e4886ccc7e3654c2eaf85 made it so that
attr_accessor methods fire C method tracing events.
Previously, we weren't checking for whether we are tracing before
compiling, leading to missed events.
Since global invalidation invalidates all code, and that attr_accessor
methods can never enable tracing while running, events are only dropped
when YJIT tries to compile when tracing is already enabled.
Factor out the code for checking tracing and check it before generating
code for attr_accessor methods.
This change fixes TestSetTraceFunc#test_tracepoint_attr when it's
ran in isolation.
Notes:
Merged-By: maximecb
|
|
I am not sure why this flag was turned off (it wasn't explained in my commit message in 0365dc852767ae589376a7aad1fb129738e408b0 or in my PR in #4411).
Whatever the reason, without `default_ignores` turned on, most default CI configurations will immediately fail, as they most likely vendor and cache their dependencies under `vendor`, which will cause standard to run against all the vendored gems and (most likely) fail. I think we should remove this before this feature is released.
https://github.com/rubygems/rubygems/commit/677f74be48
|
|
Requested by @nurse
|
|
|
|
TestRubyOptions#test_enable was broken on OpenBSD after the yjit
merge. --yjit (and --enable-all, which enables --yjit) fails on
OpenBSD because yjit uses an insecure mmap call (both writable
and executable), in alloc_exec_mem, which OpenBSD does not allow.
This can probably be reverted if yjit switches to a more secure
mmap design (writable xor executable). This would involve
initially calling mmap with PROT_READ | PROT_WRITE, and after writing
of executable code has finished, using mprotect to switch to
PROT_READ | PROT_EXEC. I believe Firefox uses this approach for
their Javascript engine since Firefox 46.
|
|
|
|
|
|
|
|
https://github.com/ruby/prettyprint/commit/0e8eee5f5f
|
|
https://github.com/ruby/pp/commit/06b839b9ca
|