Description
For a while I felt uneasy about stabilizing the whole crate. It takes from our time to stabilize more urgent things like units
and primitives
and the only types we know for sure we need are the errors. Up until this point I have tolerated it thinking it would resolve easily. However I remembered I wanted DisplayHex
to have GAT.
Our options are:
- Wait until Debian stable releases which will have GAT-capable compiler
- Bump MSRV against our policy
- Accept ugly API
- Only stabilize parts that are directly required to have stable error types
I find the first three options highly annoying, which leaves us with the last one which also has its other advantages - relieving pressure to work on hex too much.
I suggest moving everything except decoding to hex-conservative-unstable
crate, which will reexport everything such that it'd become a drop-in replacement for the hex-conservative
crate (people will usually only need to change name in Cargo.toml
and it should work for most code). Then we can stabilize hex-conservative
pretty much immediately (but practically, I'd wait until we actually have something that depends on it close to stabilization). Then shift our focus on units
and primitives
.