diff --git a/pallas-crypto/Cargo.toml b/pallas-crypto/Cargo.toml index 9d39acf..4e83767 100644 --- a/pallas-crypto/Cargo.toml +++ b/pallas-crypto/Cargo.toml @@ -13,7 +13,7 @@ authors = [ ] [dependencies] -minicbor = { version = "0.13" } +minicbor = { version = "0.14" } hex = "0.4" cryptoxide = { version = "0.4.1" } thiserror = "1.0" diff --git a/pallas-crypto/src/hash/hash.rs b/pallas-crypto/src/hash/hash.rs index 476fcc4..70ac1c8 100644 --- a/pallas-crypto/src/hash/hash.rs +++ b/pallas-crypto/src/hash/hash.rs @@ -87,7 +87,7 @@ impl<'a, const BYTES: usize> Decode<'a> for Hash { } else { // TODO: minicbor does not allow for expecting a specific size byte array // (in fact cbor is not good at it at all anyway) - Err(minicbor::decode::Error::Message("Invalid hash size")) + Err(minicbor::decode::Error::message("Invalid hash size")) } } } diff --git a/pallas-miniprotocols/Cargo.toml b/pallas-miniprotocols/Cargo.toml index ee09cd3..d0b9589 100644 --- a/pallas-miniprotocols/Cargo.toml +++ b/pallas-miniprotocols/Cargo.toml @@ -14,7 +14,7 @@ authors = [ [dependencies] pallas-multiplexer = { version = "0.5.0", path = "../pallas-multiplexer/" } -minicbor = { version="0.13", features=["half", "std"] } +minicbor = { version="0.14", features=["half", "std"] } log = "0.4.14" hex = "0.4.3" itertools = "0.10.3" diff --git a/pallas-miniprotocols/src/payloads.rs b/pallas-miniprotocols/src/payloads.rs index b8b6c43..99662c9 100644 --- a/pallas-miniprotocols/src/payloads.rs +++ b/pallas-miniprotocols/src/payloads.rs @@ -146,8 +146,8 @@ impl<'a> PayloadDeconstructor<'a> { let downcast = err.downcast::(); match downcast { - Ok(err) => match err.deref() { - minicbor::decode::Error::EndOfInput => { + Ok(err) => match err.deref().is_end_of_input() { + true => { debug!("payload incomplete, fetching next segment"); let payload = self.rx.recv()?; self.remaining.extend(payload); diff --git a/pallas-primitives/Cargo.toml b/pallas-primitives/Cargo.toml index 3f70c0c..e5b8297 100644 --- a/pallas-primitives/Cargo.toml +++ b/pallas-primitives/Cargo.toml @@ -14,8 +14,8 @@ authors = [ ] [dependencies] -minicbor = { version = "0.13", features = ["std", "half"] } -minicbor-derive = "0.8.0" +minicbor = { version = "0.14", features = ["std", "half"] } +minicbor-derive = "0.9.0" hex = "0.4.3" log = "0.4.14" pallas-crypto = { version = "0.5.0", path = "../pallas-crypto" } diff --git a/pallas-primitives/src/alonzo/model.rs b/pallas-primitives/src/alonzo/model.rs index 6aff2b0..2fc081a 100644 --- a/pallas-primitives/src/alonzo/model.rs +++ b/pallas-primitives/src/alonzo/model.rs @@ -131,7 +131,7 @@ impl<'b> minicbor::decode::Decode<'b> for Value { let multiasset = d.decode()?; Ok(Value::Multiasset(coin, multiasset)) } - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "unknown cbor data type for Alonzo Value enum", )), } @@ -197,7 +197,7 @@ impl<'b> minicbor::decode::Decode<'b> for InstantaneousRewardSource { match variant { 0 => Ok(Self::Reserves), 1 => Ok(Self::Treasury), - _ => Err(minicbor::decode::Error::Message("invalid funds variant")), + _ => Err(minicbor::decode::Error::message("invalid funds variant")), } } } @@ -292,7 +292,7 @@ impl<'b> minicbor::decode::Decode<'b> for Relay { 0 => Ok(Relay::SingleHostAddr(d.decode()?, d.decode()?, d.decode()?)), 1 => Ok(Relay::SingleHostName(d.decode()?, d.decode()?)), 2 => Ok(Relay::MultiHostName(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "invalid variant id for Relay", )), } @@ -398,7 +398,7 @@ impl<'b> minicbor::decode::Decode<'b> for StakeCredential { match variant { 0 => Ok(StakeCredential::AddrKeyhash(d.decode()?)), 1 => Ok(StakeCredential::Scripthash(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "invalid variant id for StakeCredential", )), } @@ -507,7 +507,7 @@ impl<'b> minicbor::decode::Decode<'b> for Certificate { let a = d.decode()?; Ok(Certificate::MoveInstantaneousRewardsCert(a)) } - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "unknown variant id for certificate", )), } @@ -716,7 +716,7 @@ impl<'b> minicbor::decode::Decode<'b> for TransactionBodyComponent { 13 => Ok(Self::Collateral(d.decode()?)), 14 => Ok(Self::RequiredSigners(d.decode()?)), 15 => Ok(Self::NetworkId(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "invalid map key for transaction body component", )), } @@ -859,7 +859,7 @@ impl<'b> minicbor::decode::Decode<'b> for NativeScript { 3 => Ok(NativeScript::ScriptNOfK(d.decode()?, d.decode()?)), 4 => Ok(NativeScript::InvalidBefore(d.decode()?)), 5 => Ok(NativeScript::InvalidHereafter(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "unknown variant id for native script", )), } @@ -939,12 +939,12 @@ impl<'b> minicbor::decode::Decode<'b> for BigInt { match tag { minicbor::data::Tag::PosBignum => Ok(Self::BigUInt(d.decode()?)), minicbor::data::Tag::NegBignum => Ok(Self::BigNInt(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "invalid cbor tag for big int", )), } } - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "invalid cbor data type for big int", )), } @@ -996,7 +996,7 @@ impl<'b> minicbor::decode::Decode<'b> for PlutusData { match tag { Tag::Unassigned(121..=127 | 1280..=1400 | 102) => Ok(Self::Constr(d.decode()?)), Tag::PosBignum | Tag::NegBignum => Ok(Self::BigInt(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "unknown tag for plutus data tag", )), } @@ -1015,7 +1015,7 @@ impl<'b> minicbor::decode::Decode<'b> for PlutusData { minicbor::data::Type::Array => Ok(Self::Array(d.decode()?)), minicbor::data::Type::ArrayIndef => Ok(Self::ArrayIndef(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "bad cbor data type for plutus data", )), } @@ -1083,11 +1083,11 @@ where values, }) } - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "bad tag code for plutus data", )), }, - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "bad tag code for plutus data", )), } @@ -1269,7 +1269,7 @@ impl<'b> minicbor::Decode<'b> for Metadatum { minicbor::data::Type::String => Ok(Metadatum::Text(d.decode()?)), minicbor::data::Type::Array => Ok(Metadatum::Array(d.decode()?)), minicbor::data::Type::Map => Ok(Metadatum::Map(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "Can't turn data type into metadatum", )), } @@ -1332,7 +1332,7 @@ impl<'b> minicbor::Decode<'b> for AuxiliaryData { d.tag()?; Ok(AuxiliaryData::Alonzo(d.decode()?)) } - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "Can't infer variant from data type for AuxiliaryData", )), } diff --git a/pallas-primitives/src/byron/model.rs b/pallas-primitives/src/byron/model.rs index dcdf444..90ddf08 100644 --- a/pallas-primitives/src/byron/model.rs +++ b/pallas-primitives/src/byron/model.rs @@ -63,7 +63,7 @@ impl<'b> minicbor::Decode<'b> for AddrDistr { match variant { 0 => Ok(AddrDistr::Variant0(d.decode()?)), 1 => Ok(AddrDistr::Variant1), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "invalid variant for addrdstr", )), } @@ -143,7 +143,7 @@ impl<'b> minicbor::Decode<'b> for AddrAttrProperty { match key { 0 => Ok(AddrAttrProperty::AddrDistr(d.decode()?)), 1 => Ok(AddrAttrProperty::Bytes(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "unknown variant for addrattr property", )), } @@ -411,7 +411,7 @@ impl<'b> minicbor::Decode<'b> for Ssc { 1 => Ok(Ssc::Variant1(d.decode()?, d.decode()?)), 2 => Ok(Ssc::Variant2(d.decode()?, d.decode()?)), 3 => Ok(Ssc::Variant3(d.decode()?)), - _ => Err(minicbor::decode::Error::Message("invalid variant for ssc")), + _ => Err(minicbor::decode::Error::message("invalid variant for ssc")), } } } @@ -476,7 +476,7 @@ impl<'b> minicbor::Decode<'b> for SscProof { 1 => Ok(SscProof::Variant1(d.decode()?, d.decode()?)), 2 => Ok(SscProof::Variant2(d.decode()?, d.decode()?)), 3 => Ok(SscProof::Variant3(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "invalid variant for sscproof", )), } @@ -728,7 +728,7 @@ impl<'b> minicbor::Decode<'b> for BlockSig { 0 => Ok(BlockSig::Signature(d.decode()?)), 1 => Ok(BlockSig::LwdlgSig(d.decode()?)), 2 => Ok(BlockSig::DlgSig(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "unknown variant for blocksig", )), } @@ -916,7 +916,7 @@ impl<'b> minicbor::Decode<'b> for Block { match variant { 0 => Ok(Block::EbBlock(d.decode()?)), 1 => Ok(Block::MainBlock(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "unknown variant for block", )), } diff --git a/pallas-primitives/src/utils.rs b/pallas-primitives/src/utils.rs index b5bb668..7b57c6d 100644 --- a/pallas-primitives/src/utils.rs +++ b/pallas-primitives/src/utils.rs @@ -65,7 +65,7 @@ where match datatype { minicbor::data::Type::Map => Ok(KeyValuePairs::Def(items)), minicbor::data::Type::MapIndef => Ok(KeyValuePairs::Indef(items)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "invalid data type for keyvaluepairs", )), } @@ -134,7 +134,7 @@ where match datatype { minicbor::data::Type::Array => Ok(Self::Def(d.decode()?)), minicbor::data::Type::ArrayIndef => Ok(Self::Indef(d.decode()?)), - _ => Err(minicbor::decode::Error::Message( + _ => Err(minicbor::decode::Error::message( "unknown data type of maybe indef array", )), } @@ -248,7 +248,7 @@ where e: &mut minicbor::Encoder, ) -> Result<(), minicbor::encode::Error> { let buf = minicbor::to_vec(&self.0).map_err(|_| { - minicbor::encode::Error::Message("error encoding cbor-wrapped structure") + minicbor::encode::Error::message("error encoding cbor-wrapped structure") })?; e.tag(Tag::Cbor)?; @@ -345,10 +345,10 @@ where match len { Some(0) => Ok(ZeroOrOneArray(None)), Some(1) => Ok(ZeroOrOneArray(Some(d.decode()?))), - Some(_) => Err(minicbor::decode::Error::Message( + Some(_) => Err(minicbor::decode::Error::message( "found invalid len for zero-or-one pattern", )), - None => Err(minicbor::decode::Error::Message( + None => Err(minicbor::decode::Error::message( "found invalid indefinite len array for zero-or-one pattern", )), }