ChainSafe / blst-ts

Typescript wrapper for https://github.com/supranational/blst native bindings, a highly performant BLS12-381 signature library
Other
18 stars 13 forks source link

feat: support esm and cjs #136

Closed matthewkeil closed 5 months ago

matthewkeil commented 5 months ago

Adds support for ESM modules in addition to CommonJS

Inclusions

github-actions[bot] commented 5 months ago

Performance Report

✔️ no performance regression detected

Full benchmark results | Benchmark suite | Current: b7e1c0a34b79166ea52158f53ec126282ffe09d5 | Previous: - | Ratio | |-|-|-|-| | PublicKey serialization | 1.1880 us/op | | PublicKey deserialize | 22.779 us/op | | PublicKey deserialize and validate - 1 keys | 83.880 us/op | | PublicKey deserialize and validate - 100 keys | 8.3057 ms/op | | PublicKey deserialize and validate - 10000 keys | 831.60 ms/op | | SecretKey.fromKeygen | 3.6630 us/op | | SecretKey serialization | 1.0610 us/op | | SecretKey deserialization | 1.5150 us/op | | SecretKey.toPublicKey | 138.17 us/op | | SecretKey.sign | 531.31 us/op | | Signature serialization | 1.2440 us/op | | Signature deserialize | 44.067 us/op | | Signatures deserialize and validate - 1 sets | 120.28 us/op | | Signatures deserialize and validate - 100 sets | 12.218 ms/op | | Signatures deserialize and validate - 10000 sets | 1.2013 s/op | | aggregatePublicKeys - 1 sets | 2.3980 us/op | | aggregatePublicKeys - 8 sets | 10.652 us/op | | aggregatePublicKeys - 32 sets | 38.076 us/op | | aggregatePublicKeys - 128 sets | 149.26 us/op | | aggregatePublicKeys - 256 sets | 298.19 us/op | | aggregateSignatures - 1 sets | 4.1430 us/op | | aggregateSignatures - 8 sets | 23.744 us/op | | aggregateSignatures - 32 sets | 91.177 us/op | | aggregateSignatures - 128 sets | 361.07 us/op | | aggregateSignatures - 256 sets | 723.75 us/op | | aggregateVerify - 1 sets | 1.5828 ms/op | | aggregateVerify - 8 sets | 5.7740 ms/op | | aggregateVerify - 32 sets | 20.490 ms/op | | aggregateVerify - 128 sets | 79.187 ms/op | | aggregateVerify - 256 sets | 157.42 ms/op | | verifyMultipleAggregateSignatures - 1 sets | 1.6306 ms/op | | verifyMultipleAggregateSignatures - 8 sets | 6.1726 ms/op | | verifyMultipleAggregateSignatures - 32 sets | 22.165 ms/op | | verifyMultipleAggregateSignatures - 128 sets | 85.849 ms/op | | verifyMultipleAggregateSignatures - 256 sets | 170.70 ms/op | | Same message - 1 sets | 1.7178 ms/op | | Same message - 8 sets | 2.5799 ms/op | | Same message - 32 sets | 5.5320 ms/op | | Same message - 128 sets | 17.373 ms/op | | Same message - 256 sets | 33.061 ms/op | | libuv multithreading - addVerificationRandomness true | 20.643 s/op | | libuv multithreading - addVerificationRandomness false | 20.659 s/op |

by benchmarkbot/action