EspressoSystems / EspressoSystems/espresso-network

feature gate HotShot trait implementations in `espresso-types` crate

Open
#2,159 0 comments 1 reaction 1 assignee Claimed by @imabdulbasit View on GitHub
Dominant language
Rust
Stars
193
Forks
177
Avg merge
2d 4h
Merged PRs (30d)
60

Description

The `espresso-types` crate currently compiles everything, including the HotShot trait implementations, which brings in a significant number of dependencies. However, not all external crates may require the HotShot trait functionality. Some might only need the core types, without the HotShot trait implementations or the `SeqTypes` (which implements the Hotshot NodeType trait).

To address this, we should introduce a feature (e.g., `full` or `hotshot-impls`) that allows users to optionally compile the HotShot trait implementations. By default, these would be excluded unless the feature is explicitly enabled, reducing compilation time and dependencies for users who don’t need them.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.