x509-store 1.6.5 → 1.6.6
raw patch · 2 files changed
+21/−6 lines, 2 filesdep ~basePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: base
API changes (from Hackage documentation)
+ Data.X509.CertificateStore: instance Data.Semigroup.Semigroup Data.X509.CertificateStore.CertificateStore
Files
- Data/X509/CertificateStore.hs +20/−5
- x509-store.cabal +1/−1
Data/X509/CertificateStore.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} module Data.X509.CertificateStore ( CertificateStore , makeCertificateStore@@ -10,7 +11,11 @@ import Data.Char (isDigit, isHexDigit) import Data.Either (rights) import Data.List (foldl', isPrefixOf)-import Data.Monoid+#if MIN_VERSION_base(4,9,0)+import Data.Semigroup+#else+import Data.Monoid+#endif import Data.PEM (pemParseBS, pemContent) import Data.X509 import qualified Data.Map as M@@ -26,12 +31,22 @@ data CertificateStore = CertificateStore (M.Map DistinguishedName SignedCertificate) | CertificateStores [CertificateStore] +#if MIN_VERSION_base(4,9,0)+instance Semigroup CertificateStore where+ (<>) = append+#endif+ instance Monoid CertificateStore where mempty = CertificateStore M.empty- mappend s1@(CertificateStore _) s2@(CertificateStore _) = CertificateStores [s1,s2]- mappend (CertificateStores l) s2@(CertificateStore _) = CertificateStores (l ++ [s2])- mappend s1@(CertificateStore _) (CertificateStores l) = CertificateStores ([s1] ++ l)- mappend (CertificateStores l1) (CertificateStores l2) = CertificateStores (l1 ++ l2)+#if !(MIN_VERSION_base(4,11,0))+ mappend = append+#endif++append :: CertificateStore -> CertificateStore -> CertificateStore+append s1@(CertificateStore _) s2@(CertificateStore _) = CertificateStores [s1,s2]+append (CertificateStores l) s2@(CertificateStore _) = CertificateStores (l ++ [s2])+append s1@(CertificateStore _) (CertificateStores l) = CertificateStores ([s1] ++ l)+append (CertificateStores l1) (CertificateStores l2) = CertificateStores (l1 ++ l2) -- | Create a certificate store out of a list of X509 certificate makeCertificateStore :: [SignedCertificate] -> CertificateStore
x509-store.cabal view
@@ -1,5 +1,5 @@ Name: x509-store-version: 1.6.5+version: 1.6.6 Description: X.509 collection accessing and storing methods for certificate, crl, exception list License: BSD3 License-file: LICENSE