Closed cowlicks closed 3 days ago
cc @Frando @ttiurani @yoshuawuyts @bltavares please let me know what y'all think about this! Thanks
Thanks for this!
Given hypercore and hypercore-protocol-rs are very closely connected, in order to really test this, both need to work together.
Can you create a corresponding Draft PR for hypercore-protocol-rs so that cargo test --features js_interop_tests
and cargo bench
there can be run and tested?
This removes the generic parameter from
Storage
, which in turn removes the generic parameter formHypercore
. This has been discussed several times (in discord and in referenced issues) so I decided to create this PR to test the idea out.Context
This would close #109 and supersede #113
Semver Changes
Breaks comparability
Performance
compilation
The build of the hypercore crate itself was slightly faster ~3 second vs ~4 seconds. Which is expected since this removes monomorphization.
Dependent crates would also probably have faster compilation times, but I have not tested that.
benchmarks
It looks like there was no significant change in performance. I ran
cargo bench -F cache
onmaster
then on this branch. These were the results: