diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..1cea4f29b4afa28d5ae72c7f9b1e51a3418d7363 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +cabal.project.local +.direnv +.pre-commit-config.yaml +*~ diff --git a/src/Tahoe/SDMF/Internal/Capability.hs b/src/Tahoe/SDMF/Internal/Capability.hs index 0e6249bc2d6a5ab1440d1e2ff68e9426b967a620..a0a194347d4f42dd944eef0d580c5f6f9d31dd63 100644 --- a/src/Tahoe/SDMF/Internal/Capability.hs +++ b/src/Tahoe/SDMF/Internal/Capability.hs @@ -53,6 +53,9 @@ data Verifier = Verifier } deriving (Eq, Show) +instance Ord Verifier where + a <= b = verifierStorageIndex a <= verifierStorageIndex b + instance ConfidentialShowable Verifier where confidentiallyShow = dangerRealShow . SDMFVerifier @@ -63,6 +66,9 @@ data Reader = Reader } deriving (Eq, Show) +instance Ord Reader where + a <= b = readerVerifier a <= readerVerifier b + instance ConfidentialShowable Reader where confidentiallyShow = dangerRealShow . SDMFReader @@ -73,6 +79,9 @@ data Writer = Writer } deriving (Eq, Show) +instance Ord Writer where + a <= b = writerReader a <= writerReader b + instance ConfidentialShowable Writer where confidentiallyShow = dangerRealShow . SDMFWriter diff --git a/src/Tahoe/SDMF/Internal/Keys.hs b/src/Tahoe/SDMF/Internal/Keys.hs index fbe3068211e516a502c7c6f0708ad9130ad2de79..db8d71dddd8e428c8b85cfeaf5ec018bbbc6cc94 100644 --- a/src/Tahoe/SDMF/Internal/Keys.hs +++ b/src/Tahoe/SDMF/Internal/Keys.hs @@ -86,7 +86,7 @@ instance Binary Read where let (CryptoPassed unRead) = cipherInit readKeyBytes pure Read{..} -newtype StorageIndex = StorageIndex {unStorageIndex :: B.ByteString} deriving newtype (Eq) +newtype StorageIndex = StorageIndex {unStorageIndex :: B.ByteString} deriving newtype (Eq, Ord) instance Show StorageIndex where show (StorageIndex si) = diff --git a/tahoe-ssk.cabal b/tahoe-ssk.cabal index 380aeb6b7b7ed3a40dd74448def01014ceb33514..680c2a2c100e91d0819f393a2b31958f4b47ae81 100644 --- a/tahoe-ssk.cabal +++ b/tahoe-ssk.cabal @@ -21,7 +21,7 @@ name: tahoe-ssk -- PVP summary: +-+------- breaking API changes -- | | +----- non-breaking API additions -- | | | +--- code changes with no API change -version: 0.2.0.0 +version: 0.2.1.0 -- A short (one-line) description of the package. synopsis: