-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
A list of breaking changes to consider for v0.6 #268
Comments
The functionality for |
|
@tarcieri , what are your plans regarding the v0.6 release? I can start working on this so that we have time to discuss the planned breaking changes. |
We're getting the ball rolling on another cycle of breaking changes over at https://github.com/rustcrypto/traits I can cut a v0.5.4 release here and we can switch |
This version bump does not signify a release, but that we are starting a new round of breaking changes, as proposed in #268. The first actual prerelease with an associated crate released to crates.io will be versioned v0.6.0-pre.0.
Starting on this in #295 |
This version bump does not signify a release, but that we are starting a new round of breaking changes, as proposed in #268. The first actual prerelease with an associated crate released to crates.io will be versioned v0.6.0-pre.0.
#296 made |
Looking at the division operations, I'm wondering if we should consider Also, since it's only constant time with respect to the dividend and not to the divisor, it should probably be called We already use this approach for various |
It'd be nice to close #70, perhaps with a trait redesign |
This probably can be closed now? |
Indeed! |
There's a lot of small stuff so I decided to put them in one issue:
u32
for shifts #373) The types of the arguments toshl
/shr
methods are inconsistent:std
has them asu32
,Limb
asLimb
, andUint
asusize
. Perhaps we should at least matchLimb
andUint
.std
#395) What shouldUint::shl_limb()
,shl_vartime()
, andshl()
(same forshr()
) do onshift
overflow? Currentlyshl_limb()
panics,shl_vartime()
returnsself
, andshl()
returns zero. Should probably do the same thing. See also Diverging from primitive behavior in overflowing shift #121inv_mod2k(_vartime)
return aCtChoice
#416) Shouldinv_mod2k()
returnCtChoice::FALSE
ifself
is even? Shouldinv_odd_mod()
returnCtChoice::FALSE
ifmodulus
is even?ct_
andconst_
prefixes uniform. One prefix, eitherconst_
orct_
, should be used forconst fn
when there is a non-constfn
with the same functionality (otherwise no prefix needed);ct_
meaning "constant-time" really shouldn't be used at all because that's the default.uint/div.rs
is especially bad in this respect.NonZero
-wrapped divisors #419) Shouldconst fn
division methods take aNonZero
-wrapped modulus? Shoulddiv_rem_limb_with_reciprocal()
take aCtOption
of the reciprocal, or the caller should do the mapping instead?The text was updated successfully, but these errors were encountered: