-
Notifications
You must be signed in to change notification settings - Fork 14
Description
do you have a roadmap to releasing a v1.0.0? it would be cool if you could create the tickets for what you think is missing for v1.0.0 and assign them to a v1.0.0 milestone.
rationale: theoretically, one should only build on released software, so using 0.x pre-releases for production software isn't looked on too well. in the rust eco-system there are sadly a lot of crates which stay on 0.x for years but are heavily used. having a roadmap helps in understanding why a crate is not yet released as 1.x (or higher) and allows analysing the trade-offs (is it acceptable to use the crate in production even though these features are missing?).
furthermore, this would help with contributors: they know where work still needs to be done and they can offer their help focused on these topics.
specifically this seems to block the heapless
crate from releasing an 1.0.0 release: rust-embedded/heapless#410 (comment)
with over 9 million downloads the hash32
crate is heavily used in the (embedded) rust ecosystem (see also the dependent crates, primarily through heapless
) and having a stable release would be beneficial for all of them.
this crate seems to be very stable (no open issues, only one open PR, no commits since a year), indicating that it'd be a good candidate for an 1.0.0 release (either just re-release the last release as 1.0.0 or optionally include some cleanups along with it if needed).
Activity
newAM commentedon Mar 25, 2025
Similar to heapless 1.0 I would like to go through a checklist: rust-embedded/heapless#535
I'm very busy with work recently, but I'll try to get started this week. I don't expect this to take long, as mentioned this crate is very stable without a lot of activity.
Checklist
hash32/src/murmur3.rs
Line 211 in a49d0a4
-W clippy::pedantic -W clippy::nursery
)fixme
,todo
,xxx
, ect.hash32/src/murmur3.rs
Line 189 in a49d0a4
Rust API Guidelines Checklist
as_
,to_
,into_
conventions (C-CONV)iter
,iter_mut
,into_iter
(C-ITER)Copy
,Clone
,Eq
,PartialEq
,Ord
,PartialOrd
,Hash
,Debug
,Display
,Default
std::hash::DefaultHasher
implementsDebug
andClone
.From
,AsRef
,AsMut
(C-CONV-TRAITS)FromIterator
andExtend
(C-COLLECT)Serialize
,Deserialize
(C-SERDE)Send
andSync
where possible (C-SEND-SYNC)Hex
,Octal
,Binary
formatting (C-NUM-FMT)R: Read
andW: Write
by value (C-RW-VALUE)?
, nottry!
, notunwrap
(C-QUESTION-MARK)keywords, categories
Deref
andDerefMut
(C-DEREF)bool
orOption
(C-CUSTOM-TYPE)bitflags
, not enums (C-BITFLAG)Debug
(C-DEBUG)Debug
representation is never empty (C-DEBUG-NONEMPTY)Dependencies
Questions
rursprung commentedon Mar 25, 2025
i'd add one more point to the checklist: add test coverage. currently there's 0 test coverage. i'd expect a 1.0 crate to come with a reasonable set of tests to ensure that there won't be any unexpected breakage in the future.
(note: i have no stake in this library and have never used it directly. i came across this because of
heapless
, which has it as a dependency and i was interested in that reaching 1.0)eldruin commentedon May 27, 2025
It is now published! Thank you everybody! 🎉