packages feed

filestore 0.6.1 → 0.6.2

raw patch · 4 files changed

+23/−10 lines, 4 filesdep ~HUnitdep ~processdep ~timePVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: HUnit, process, time

API changes (from Hackage documentation)

- Data.FileStore.Types: authorEmail :: Author -> String
- Data.FileStore.Types: authorName :: Author -> String
- Data.FileStore.Types: delete :: FileStore -> FilePath -> Author -> Description -> IO ()
- Data.FileStore.Types: directory :: FileStore -> FilePath -> IO [Resource]
- Data.FileStore.Types: history :: FileStore -> [FilePath] -> TimeRange -> Maybe Int -> IO [Revision]
- Data.FileStore.Types: idsMatch :: FileStore -> RevisionId -> RevisionId -> Bool
- Data.FileStore.Types: index :: FileStore -> IO [FilePath]
- Data.FileStore.Types: initialize :: FileStore -> IO ()
- Data.FileStore.Types: instance Contents ByteString
- Data.FileStore.Types: instance Contents String
- Data.FileStore.Types: instance Eq Author
- Data.FileStore.Types: instance Eq Change
- Data.FileStore.Types: instance Eq FileStoreError
- Data.FileStore.Types: instance Eq MergeInfo
- Data.FileStore.Types: instance Eq Resource
- Data.FileStore.Types: instance Eq Revision
- Data.FileStore.Types: instance Eq SearchMatch
- Data.FileStore.Types: instance Eq SearchQuery
- Data.FileStore.Types: instance Eq TimeRange
- Data.FileStore.Types: instance Exception FileStoreError
- Data.FileStore.Types: instance Ord Resource
- Data.FileStore.Types: instance Read Author
- Data.FileStore.Types: instance Read Change
- Data.FileStore.Types: instance Read FileStoreError
- Data.FileStore.Types: instance Read MergeInfo
- Data.FileStore.Types: instance Read Resource
- Data.FileStore.Types: instance Read Revision
- Data.FileStore.Types: instance Read SearchMatch
- Data.FileStore.Types: instance Read SearchQuery
- Data.FileStore.Types: instance Read TimeRange
- Data.FileStore.Types: instance Show Author
- Data.FileStore.Types: instance Show Change
- Data.FileStore.Types: instance Show FileStoreError
- Data.FileStore.Types: instance Show MergeInfo
- Data.FileStore.Types: instance Show Resource
- Data.FileStore.Types: instance Show Revision
- Data.FileStore.Types: instance Show SearchMatch
- Data.FileStore.Types: instance Show SearchQuery
- Data.FileStore.Types: instance Show TimeRange
- Data.FileStore.Types: instance Typeable Author
- Data.FileStore.Types: instance Typeable Change
- Data.FileStore.Types: instance Typeable FileStoreError
- Data.FileStore.Types: instance Typeable MergeInfo
- Data.FileStore.Types: instance Typeable Resource
- Data.FileStore.Types: instance Typeable Revision
- Data.FileStore.Types: instance Typeable SearchMatch
- Data.FileStore.Types: instance Typeable SearchQuery
- Data.FileStore.Types: instance Typeable TimeRange
- Data.FileStore.Types: latest :: FileStore -> FilePath -> IO RevisionId
- Data.FileStore.Types: matchLine :: SearchMatch -> String
- Data.FileStore.Types: matchLineNumber :: SearchMatch -> Integer
- Data.FileStore.Types: matchResourceName :: SearchMatch -> FilePath
- Data.FileStore.Types: mergeConflicts :: MergeInfo -> Bool
- Data.FileStore.Types: mergeRevision :: MergeInfo -> Revision
- Data.FileStore.Types: mergeText :: MergeInfo -> String
- Data.FileStore.Types: queryIgnoreCase :: SearchQuery -> Bool
- Data.FileStore.Types: queryMatchAll :: SearchQuery -> Bool
- Data.FileStore.Types: queryPatterns :: SearchQuery -> [String]
- Data.FileStore.Types: queryWholeWords :: SearchQuery -> Bool
- Data.FileStore.Types: rename :: FileStore -> FilePath -> FilePath -> Author -> Description -> IO ()
- Data.FileStore.Types: retrieve :: FileStore -> forall a. Contents a => FilePath -> Maybe RevisionId -> IO a
- Data.FileStore.Types: revAuthor :: Revision -> Author
- Data.FileStore.Types: revChanges :: Revision -> [Change]
- Data.FileStore.Types: revDateTime :: Revision -> UTCTime
- Data.FileStore.Types: revDescription :: Revision -> Description
- Data.FileStore.Types: revId :: Revision -> RevisionId
- Data.FileStore.Types: revision :: FileStore -> RevisionId -> IO Revision
- Data.FileStore.Types: save :: FileStore -> forall a. Contents a => FilePath -> Author -> Description -> a -> IO ()
- Data.FileStore.Types: search :: FileStore -> SearchQuery -> IO [SearchMatch]
- Data.FileStore.Types: timeFrom :: TimeRange -> Maybe UTCTime
- Data.FileStore.Types: timeTo :: TimeRange -> Maybe UTCTime
+ Data.FileStore.Types: [authorEmail] :: Author -> String
+ Data.FileStore.Types: [authorName] :: Author -> String
+ Data.FileStore.Types: [delete] :: FileStore -> FilePath -> Author -> Description -> IO ()
+ Data.FileStore.Types: [directory] :: FileStore -> FilePath -> IO [Resource]
+ Data.FileStore.Types: [history] :: FileStore -> [FilePath] -> TimeRange -> Maybe Int -> IO [Revision]
+ Data.FileStore.Types: [idsMatch] :: FileStore -> RevisionId -> RevisionId -> Bool
+ Data.FileStore.Types: [index] :: FileStore -> IO [FilePath]
+ Data.FileStore.Types: [initialize] :: FileStore -> IO ()
+ Data.FileStore.Types: [latest] :: FileStore -> FilePath -> IO RevisionId
+ Data.FileStore.Types: [matchLineNumber] :: SearchMatch -> Integer
+ Data.FileStore.Types: [matchLine] :: SearchMatch -> String
+ Data.FileStore.Types: [matchResourceName] :: SearchMatch -> FilePath
+ Data.FileStore.Types: [mergeConflicts] :: MergeInfo -> Bool
+ Data.FileStore.Types: [mergeRevision] :: MergeInfo -> Revision
+ Data.FileStore.Types: [mergeText] :: MergeInfo -> String
+ Data.FileStore.Types: [queryIgnoreCase] :: SearchQuery -> Bool
+ Data.FileStore.Types: [queryMatchAll] :: SearchQuery -> Bool
+ Data.FileStore.Types: [queryPatterns] :: SearchQuery -> [String]
+ Data.FileStore.Types: [queryWholeWords] :: SearchQuery -> Bool
+ Data.FileStore.Types: [rename] :: FileStore -> FilePath -> FilePath -> Author -> Description -> IO ()
+ Data.FileStore.Types: [retrieve] :: FileStore -> forall a. Contents a => FilePath -> Maybe RevisionId -> IO a
+ Data.FileStore.Types: [revAuthor] :: Revision -> Author
+ Data.FileStore.Types: [revChanges] :: Revision -> [Change]
+ Data.FileStore.Types: [revDateTime] :: Revision -> UTCTime
+ Data.FileStore.Types: [revDescription] :: Revision -> Description
+ Data.FileStore.Types: [revId] :: Revision -> RevisionId
+ Data.FileStore.Types: [revision] :: FileStore -> RevisionId -> IO Revision
+ Data.FileStore.Types: [save] :: FileStore -> forall a. Contents a => FilePath -> Author -> Description -> a -> IO ()
+ Data.FileStore.Types: [search] :: FileStore -> SearchQuery -> IO [SearchMatch]
+ Data.FileStore.Types: [timeFrom] :: TimeRange -> Maybe UTCTime
+ Data.FileStore.Types: [timeTo] :: TimeRange -> Maybe UTCTime
+ Data.FileStore.Types: instance Data.FileStore.Types.Contents Data.ByteString.Lazy.Internal.ByteString
+ Data.FileStore.Types: instance Data.FileStore.Types.Contents GHC.Base.String
+ Data.FileStore.Types: instance GHC.Classes.Eq Data.FileStore.Types.Author
+ Data.FileStore.Types: instance GHC.Classes.Eq Data.FileStore.Types.Change
+ Data.FileStore.Types: instance GHC.Classes.Eq Data.FileStore.Types.FileStoreError
+ Data.FileStore.Types: instance GHC.Classes.Eq Data.FileStore.Types.MergeInfo
+ Data.FileStore.Types: instance GHC.Classes.Eq Data.FileStore.Types.Resource
+ Data.FileStore.Types: instance GHC.Classes.Eq Data.FileStore.Types.Revision
+ Data.FileStore.Types: instance GHC.Classes.Eq Data.FileStore.Types.SearchMatch
+ Data.FileStore.Types: instance GHC.Classes.Eq Data.FileStore.Types.SearchQuery
+ Data.FileStore.Types: instance GHC.Classes.Eq Data.FileStore.Types.TimeRange
+ Data.FileStore.Types: instance GHC.Classes.Ord Data.FileStore.Types.Resource
+ Data.FileStore.Types: instance GHC.Exception.Exception Data.FileStore.Types.FileStoreError
+ Data.FileStore.Types: instance GHC.Read.Read Data.FileStore.Types.Author
+ Data.FileStore.Types: instance GHC.Read.Read Data.FileStore.Types.Change
+ Data.FileStore.Types: instance GHC.Read.Read Data.FileStore.Types.FileStoreError
+ Data.FileStore.Types: instance GHC.Read.Read Data.FileStore.Types.MergeInfo
+ Data.FileStore.Types: instance GHC.Read.Read Data.FileStore.Types.Resource
+ Data.FileStore.Types: instance GHC.Read.Read Data.FileStore.Types.Revision
+ Data.FileStore.Types: instance GHC.Read.Read Data.FileStore.Types.SearchMatch
+ Data.FileStore.Types: instance GHC.Read.Read Data.FileStore.Types.SearchQuery
+ Data.FileStore.Types: instance GHC.Read.Read Data.FileStore.Types.TimeRange
+ Data.FileStore.Types: instance GHC.Show.Show Data.FileStore.Types.Author
+ Data.FileStore.Types: instance GHC.Show.Show Data.FileStore.Types.Change
+ Data.FileStore.Types: instance GHC.Show.Show Data.FileStore.Types.FileStoreError
+ Data.FileStore.Types: instance GHC.Show.Show Data.FileStore.Types.MergeInfo
+ Data.FileStore.Types: instance GHC.Show.Show Data.FileStore.Types.Resource
+ Data.FileStore.Types: instance GHC.Show.Show Data.FileStore.Types.Revision
+ Data.FileStore.Types: instance GHC.Show.Show Data.FileStore.Types.SearchMatch
+ Data.FileStore.Types: instance GHC.Show.Show Data.FileStore.Types.SearchQuery
+ Data.FileStore.Types: instance GHC.Show.Show Data.FileStore.Types.TimeRange
- Data.FileStore.Utils: hashsMatch :: Eq a => [a] -> [a] -> Bool
+ Data.FileStore.Utils: hashsMatch :: (Eq a) => [a] -> [a] -> Bool

Files

CHANGES view
@@ -1,3 +1,9 @@+Version 0.6.2 released 13 Jun 2016++* Set committer name and email when committing (#19, Phil Ruffwind).++* Fixes for compatibility with ghc 8 (Sergei Trofimovich).+ Version 0.6.1 released 27 July 2015  * Create `.git/hooks` directory if missing on initialize
Data/FileStore/Git.hs view
@@ -54,8 +54,13 @@ -- | Run a git command and return error status, error output, standard output.  The repository -- is used as working directory. runGitCommand :: FilePath -> String -> [String] -> IO (ExitCode, String, B.ByteString)-runGitCommand repo command args = do-  let env = Just [("GIT_DIFF_OPTS","-u100000")]+runGitCommand = runGitCommandWithEnv []++-- | Run a git command with the given environment and return error status, error output, standard+-- output.  The repository is used as working directory.+runGitCommandWithEnv :: [(String, String)] -> FilePath -> String -> [String] -> IO (ExitCode, String, B.ByteString)+runGitCommandWithEnv givenEnv repo command args = do+  let env = Just ([("GIT_DIFF_OPTS", "-u100000")] ++ givenEnv)   (status, err, out) <- runShellCommand repo env "git" (command : args)   return (status, toString err, out) @@ -89,7 +94,9 @@ -- no changes. gitCommit :: FilePath -> [FilePath] -> Author -> String -> IO () gitCommit repo names author logMsg = do-  (statusCommit, errCommit, _) <- runGitCommand repo "commit" $ ["--author", authorName author ++ " <" +++  let env = [("GIT_COMMITTER_NAME", authorName author),+             ("GIT_COMMITTER_EMAIL", authorEmail author)]+  (statusCommit, errCommit, _) <- runGitCommandWithEnv env repo "commit" $ ["--author", authorName author ++ " <" ++                                     authorEmail author ++ ">", "-m", logMsg] ++ names   if statusCommit == ExitSuccess      then return ()
Data/FileStore/Types.hs view
@@ -150,7 +150,7 @@     initialize     :: IO ()      -- | Save contents in the filestore.-  , save           :: Contents a+  , save           :: forall a . Contents a                    => FilePath          -- Resource to save.                    -> Author            --  Author of change.                    -> Description       --  Description of change.@@ -158,7 +158,7 @@                    -> IO ()      -- | Retrieve the contents of the named resource.-  , retrieve       :: Contents a+  , retrieve       :: forall a . Contents a                    => FilePath          -- Resource to retrieve.                    -> Maybe RevisionId  -- @Just@ a particular revision ID,                                         -- or @Nothing@ for latest
filestore.cabal view
@@ -1,5 +1,5 @@ Name:                filestore-Version:             0.6.1+Version:             0.6.2 Cabal-Version:       >= 1.10 Build-type:          Custom Synopsis:            Interface for versioning file stores.@@ -35,8 +35,8 @@                          filepath >= 1.1 && < 1.5,                          directory >= 1.0 && < 1.3,                          parsec >= 2 && < 3.2,-                         process >= 1.0 && < 1.3,-                         time >= 1.1 && < 1.6,+                         process >= 1.0 && < 1.5,+                         time >= 1.1 && < 1.7,                          xml >= 1.3 && < 1.4,                          split >= 0.1 && < 0.3,                          Diff >= 0.2 && < 0.4,@@ -57,7 +57,7 @@       Ghc-Options:       -Wall -fno-warn-unused-do-bind     else       Ghc-Options:       -Wall-    Ghc-Prof-Options:    -auto-all+    Ghc-Prof-Options:    -fprof-auto-exported  Test-suite test-filestore     Type:           exitcode-stdio-1.0@@ -65,7 +65,7 @@     Main-is:        Tests.hs     Default-Language:  Haskell98     Build-depends:  base >= 4 && < 5,-                    HUnit >= 1.2 && < 1.3,+                    HUnit >= 1.2 && < 1.4,                     mtl,                     time,                     Diff >= 0.2 && < 0.4,