Hello community, here is the log from the commit of package ghc-x509-system for openSUSE:Factory checked in at 2016-11-05 21:27:04 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-x509-system (Old) and /work/SRC/openSUSE:Factory/.ghc-x509-system.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "ghc-x509-system" Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-x509-system/ghc-x509-system.changes 2016-07-20 09:20:03.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-x509-system.new/ghc-x509-system.changes 2016-11-05 21:27:05.000000000 +0100 @@ -1,0 +2,5 @@ +Tue Oct 11 08:49:30 UTC 2016 - psimons@suse.com + +- Update to version 1.6.4 with cabal2obs. + +------------------------------------------------------------------- Old: ---- x509-system-1.6.3.tar.gz New: ---- x509-system-1.6.4.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-x509-system.spec ++++++ --- /var/tmp/diff_new_pack.gqumoF/_old 2016-11-05 21:27:06.000000000 +0100 +++ /var/tmp/diff_new_pack.gqumoF/_new 2016-11-05 21:27:06.000000000 +0100 @@ -18,15 +18,14 @@ %global pkg_name x509-system Name: ghc-%{pkg_name} -Version: 1.6.3 +Version: 1.6.4 Release: 0 Summary: Handle per-operating-system X.509 accessors and storage License: BSD-3-Clause -Group: System/Libraries +Group: Development/Languages/Other Url: https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz BuildRequires: ghc-Cabal-devel -# Begin cabal-rpm deps: BuildRequires: ghc-bytestring-devel BuildRequires: ghc-containers-devel BuildRequires: ghc-directory-devel @@ -38,7 +37,6 @@ BuildRequires: ghc-x509-devel BuildRequires: ghc-x509-store-devel BuildRoot: %{_tmppath}/%{name}-%{version}-build -# End cabal-rpm deps %description System X.509 handling. @@ -57,15 +55,12 @@ %prep %setup -q -n %{pkg_name}-%{version} - %build %ghc_lib_build - %install %ghc_lib_install - %post devel %ghc_pkg_recache ++++++ x509-system-1.6.3.tar.gz -> x509-system-1.6.4.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/x509-system-1.6.3/System/X509/Unix.hs new/x509-system-1.6.4/System/X509/Unix.hs --- old/x509-system-1.6.3/System/X509/Unix.hs 2015-12-19 09:08:49.000000000 +0100 +++ new/x509-system-1.6.4/System/X509/Unix.hs 2016-10-03 09:36:01.000000000 +0200 @@ -16,22 +16,12 @@ ( getSystemCertificateStore ) where -import System.Directory (getDirectoryContents, doesFileExist, doesDirectoryExist) import System.Environment (getEnv) -import System.FilePath ((>)) - -import Data.List (isPrefixOf) -import Data.PEM (PEM(..), pemParseBS) -import Data.Either -import qualified Data.ByteString as B -import Data.X509 import Data.X509.CertificateStore import Control.Applicative ((<$>)) -import Control.Monad (filterM) import qualified Control.Exception as E -import Data.Char import Data.Maybe (catMaybes) import Data.Monoid (mconcat) @@ -46,54 +36,11 @@ envPathOverride :: String envPathOverride = "SYSTEM_CERTIFICATE_PATH" --- List all the path susceptible to contains a certificate in a directory --- --- if the parameter is not a directory, hilarity follows. -listDirectoryCerts :: FilePath -> IO [FilePath] -listDirectoryCerts path = - getDirContents >>= filterM doesFileExist - where - isHashedFile s = length s == 10 - && isDigit (s !! 9) - && (s !! 8) == '.' - && all isHexDigit (take 8 s) - isCert x = (not $ isPrefixOf "." x) && (not $ isHashedFile x) - - getDirContents = E.catch (map (path >) . filter isCert <$> getDirectoryContents path) emptyPaths - where emptyPaths :: E.IOException -> IO [FilePath] - emptyPaths _ = return [] - -makeCertStore :: FilePath -> IO (Maybe CertificateStore) -makeCertStore path = do - isDir <- doesDirectoryExist path - isFile <- doesFileExist path - wrapStore <$> (if isDir then makeDirStore else if isFile then makeFileStore else return []) - where - wrapStore :: [SignedCertificate] -> Maybe CertificateStore - wrapStore [] = Nothing - wrapStore l = Just $ makeCertificateStore l - - makeFileStore = readCertificates path - makeDirStore = do - certFiles <- listDirectoryCerts path - concat <$> mapM readCertificates certFiles - - getSystemCertificateStore :: IO CertificateStore -getSystemCertificateStore = mconcat . catMaybes <$> (getSystemPaths >>= mapM makeCertStore) +getSystemCertificateStore = mconcat . catMaybes <$> (getSystemPaths >>= mapM readCertificateStore) getSystemPaths :: IO [FilePath] getSystemPaths = E.catch ((:[]) <$> getEnv envPathOverride) inDefault where inDefault :: E.IOException -> IO [FilePath] inDefault _ = return defaultSystemPaths - --- Try to read certificate from the content of a file. --- --- The file may contains multiple certificates -readCertificates :: FilePath -> IO [SignedCertificate] -readCertificates file = E.catch (either (const []) (rights . map getCert) . pemParseBS <$> B.readFile file) skipIOError - where - getCert = decodeSignedCertificate . pemContent - skipIOError :: E.IOException -> IO [SignedCertificate] - skipIOError _ = return [] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/x509-system-1.6.3/x509-system.cabal new/x509-system-1.6.4/x509-system.cabal --- old/x509-system-1.6.3/x509-system.cabal 2015-12-19 09:08:49.000000000 +0100 +++ new/x509-system-1.6.4/x509-system.cabal 2016-10-03 09:47:13.000000000 +0200 @@ -1,5 +1,5 @@ Name: x509-system -Version: 1.6.3 +Version: 1.6.4 Description: System X.509 handling License: BSD3 License-file: LICENSE @@ -23,7 +23,7 @@ , process , pem >= 0.1 && < 0.3 , x509 >= 1.6 && < 1.7 - , x509-store >= 1.6 && < 1.7 + , x509-store >= 1.6.2 && < 1.7 Exposed-modules: System.X509 System.X509.Unix System.X509.MacOS