ecdsa: simplify serde feature (#874)

To get `serde` support for `VerifyingKey`, confusingly the `pem` feature
previously needed to be enabled (even though PEM is not actually used).

This changed the `serde` feature to auto-enable `pkcs8`, similar to
what was done in the `elliptic-curve` crate.
This commit is contained in:
Tony Arcieri
2024-10-18 10:17:06 -06:00
committed by GitHub
parent 5109516d21
commit f46f4a32ac
2 changed files with 6 additions and 6 deletions
+1 -1
View File
@@ -44,7 +44,7 @@ digest = ["dep:digest", "signature/digest"]
hazmat = []
pkcs8 = ["digest", "elliptic-curve/pkcs8", "der"]
pem = ["elliptic-curve/pem", "pkcs8"]
serde = ["elliptic-curve/serde", "serdect"]
serde = ["elliptic-curve/serde", "pkcs8", "serdect"]
signing = ["arithmetic", "digest", "hazmat", "rfc6979"]
verifying = ["arithmetic", "digest", "hazmat"]
+5 -5
View File
@@ -37,6 +37,9 @@ use elliptic_curve::pkcs8::{
AssociatedOid, ObjectIdentifier,
};
#[cfg(feature = "serde")]
use serdect::serde::{de, ser, Deserialize, Serialize};
#[cfg(feature = "sha2")]
use {
crate::{
@@ -48,9 +51,6 @@ use {
#[cfg(all(feature = "alloc", feature = "pkcs8"))]
use elliptic_curve::pkcs8::EncodePublicKey;
#[cfg(all(feature = "pem", feature = "serde"))]
use serdect::serde::{de, ser, Deserialize, Serialize};
/// ECDSA public key used for verifying signatures. Generic over prime order
/// elliptic curves (e.g. NIST P-curves).
///
@@ -453,7 +453,7 @@ where
}
}
#[cfg(all(feature = "pem", feature = "serde"))]
#[cfg(feature = "serde")]
impl<C> Serialize for VerifyingKey<C>
where
C: EcdsaCurve + AssociatedOid + CurveArithmetic + PointCompression,
@@ -468,7 +468,7 @@ where
}
}
#[cfg(all(feature = "pem", feature = "serde"))]
#[cfg(feature = "serde")]
impl<'de, C> Deserialize<'de> for VerifyingKey<C>
where
C: EcdsaCurve + AssociatedOid + CurveArithmetic + PointCompression,