Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Nov 22, 2025

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

byroot and others added 5 commits November 22, 2025 13:12
We can then pass them to the decoder to save having to parse
the string again.

```
== Parsing activitypub.json (58160 bytes)
ruby 3.4.6 (2025-09-16 revision ruby/json@dbd83256b1) +YJIT +PRISM [arm64-darwin24]
Warming up --------------------------------------
               after     1.275k i/100ms
Calculating -------------------------------------
               after     12.774k (± 0.8%) i/s   (78.29 μs/i) -     65.025k in   5.090834s

Comparison:
              before:    12314.3 i/s
               after:    12773.8 i/s - 1.04x  faster

== Parsing twitter.json (567916 bytes)
ruby 3.4.6 (2025-09-16 revision ruby/json@dbd83256b1) +YJIT +PRISM [arm64-darwin24]
Warming up --------------------------------------
               after   143.000 i/100ms
Calculating -------------------------------------
               after      1.441k (± 0.2%) i/s  (693.86 μs/i) -      7.293k in   5.060345s

Comparison:
              before:     1430.1 i/s
               after:     1441.2 i/s - 1.01x  faster

== Parsing citm_catalog.json (1727030 bytes)
ruby 3.4.6 (2025-09-16 revision ruby/json@dbd83256b1) +YJIT +PRISM [arm64-darwin24]
Warming up --------------------------------------
               after    69.000 i/100ms
Calculating -------------------------------------
               after    695.919 (± 0.4%) i/s    (1.44 ms/i) -      3.519k in   5.056691s

Comparison:
              before:      687.8 i/s
               after:      695.9 i/s - 1.01x  faster
```

ruby/json@4f4551f993
…nknown curves

EC_GROUP_get_curve_name() returns NID_undef when OpenSSL does not
recognize the curve and there is no associated OID.

Handle this case explicitly and return nil instead of the string
"UNDEF", which should not be exposed outside the extension.

ruby/openssl@2c16821c07
obj_to_asn1obj() in ossl_ts.c and ossl_asn1.c are identical. Let's
remove one in ossl_ts.c.

eASN1Error can now be made static to ossl_asn1.c.

ruby/openssl@dcb05c40c2
ruby/openssl exposes OIDs to Ruby as strings in many places, but the
conversion logic has been duplicated and the behavior is inconsistent.
There are mainly two patterns:

 - Returns the short name associated with the OID/NID, or the dotted
   decimal notation if it is unknown to OpenSSL.
 - Returns the long name, or the dotted decimal notation.

These patterns are implemented using different OpenSSL APIs and that
caused subtle differences. Add helper functions ossl_asn1obj_to_string()
and ossl_asn1obj_to_string_long_name() to unify the logic.

Also, document the current behaviors where it is not yet done. The
inconsistency was likely unintentional, but since it dates back to the
original implementations, standardizing it now would cause more issues
than it resolves.

ruby/openssl@2ea36c21a4
@pull pull bot locked and limited conversation to collaborators Nov 22, 2025
@pull pull bot added the ⤵️ pull label Nov 22, 2025
@pull pull bot merged commit dd489ee into turkdevops:master Nov 22, 2025
1 check failed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants