filepather 0.5.2 → 0.5.3
raw patch · 3 files changed
+58/−4 lines, 3 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
+ System.FilePath.FilePather.Directory: setCurrentDirectory :: Exception e => ReadFilePathT e IO ()
- System.FilePath.FilePather.Directory: getCurrentDirectory :: IO FilePath
+ System.FilePath.FilePather.Directory: getCurrentDirectory :: Exception e => ReadFilePathT e IO FilePath
- System.FilePath.FilePather.Directory: getHomeDirectory :: IO FilePath
+ System.FilePath.FilePather.Directory: getHomeDirectory :: Exception e => ReadFilePathT e IO FilePath
- System.FilePath.FilePather.Directory: getTemporaryDirectory :: IO FilePath
+ System.FilePath.FilePather.Directory: getTemporaryDirectory :: Exception e => ReadFilePathT e IO FilePath
- System.FilePath.FilePather.Directory: getUserDocumentsDirectory :: IO FilePath
+ System.FilePath.FilePather.Directory: getUserDocumentsDirectory :: Exception e => ReadFilePathT e IO FilePath
- System.FilePath.FilePather.Directory: getXdgDirectoryList :: XdgDirectoryList -> IO [FilePath]
+ System.FilePath.FilePather.Directory: getXdgDirectoryList :: Exception e => XdgDirectoryList -> ReadFilePathT e IO [FilePath]
Files
- changelog.md +4/−0
- filepather.cabal +1/−1
- src/System/FilePath/FilePather/Directory.hs +53/−3
changelog.md view
@@ -1,3 +1,7 @@+0.5.3++* Re-export some `System.Directory` functions as `ReadFilePathT`+ 0.5.2 * Add `ReadFilePathsT` to read a list of `FilePath`
filepather.cabal view
@@ -1,5 +1,5 @@ name: filepather-version: 0.5.2+version: 0.5.3 synopsis: Functions on System.FilePath description: Functions over @System.FilePath@ including a find function for recursing down directories.
src/System/FilePath/FilePather/Directory.hs view
@@ -10,9 +10,15 @@ , renameDirectory , listDirectory , getDirectoryContents+, getCurrentDirectory+, setCurrentDirectory+, getHomeDirectory , withCurrentDirectory , getXdgDirectory , getAppUserDataDirectory+, getUserDocumentsDirectory+, getTemporaryDirectory+, getXdgDirectoryList , removeFile , renameFile , renamePath@@ -47,6 +53,7 @@ , module SD ) where +import Control.Applicative ( Applicative(pure) ) import Control.Category ( Category((.)) ) import Control.Exception ( Exception ) import Control.Lens ( over, _Wrapped )@@ -57,7 +64,7 @@ import Data.Time ( UTCTime ) import GHC.Num( Integer ) import qualified System.Directory as D-import System.Directory as SD(getCurrentDirectory, getHomeDirectory, XdgDirectory(..), XdgDirectoryList(..), getXdgDirectoryList, getUserDocumentsDirectory, getTemporaryDirectory, exeExtension, Permissions(..), emptyPermissions, readable, writable, executable, searchable, setOwnerReadable, setOwnerWritable, setOwnerExecutable, setOwnerSearchable)+import System.Directory as SD( XdgDirectory(..), XdgDirectoryList(..), exeExtension, Permissions(..), emptyPermissions, readable, writable, executable, searchable, setOwnerReadable, setOwnerWritable, setOwnerExecutable, setOwnerSearchable) import System.FilePath.FilePather.ReadFilePath ( ReadFilePathT1, ReadFilePathT,@@ -124,6 +131,27 @@ tryReadFilePath D.listDirectory {-# INLINE getDirectoryContents #-} +getCurrentDirectory ::+ Exception e =>+ ReadFilePathT e IO FilePath+getCurrentDirectory =+ tryReadFilePath (pure D.getCurrentDirectory)+{-# INLINE getCurrentDirectory #-}++setCurrentDirectory ::+ Exception e =>+ ReadFilePathT e IO ()+setCurrentDirectory =+ tryReadFilePath D.setCurrentDirectory+{-# INLINE setCurrentDirectory #-}++getHomeDirectory ::+ Exception e =>+ ReadFilePathT e IO FilePath+getHomeDirectory =+ tryReadFilePath (pure D.getHomeDirectory)+{-# INLINE getHomeDirectory #-}+ withCurrentDirectory :: Exception e => IO a@@ -136,8 +164,8 @@ Exception e => XdgDirectory -> ReadFilePathT e IO FilePath-getXdgDirectory xdg =- tryReadFilePath (D.getXdgDirectory xdg)+getXdgDirectory =+ tryReadFilePath . D.getXdgDirectory {-# INLINE getXdgDirectory #-} getAppUserDataDirectory ::@@ -146,6 +174,28 @@ getAppUserDataDirectory = tryReadFilePath D.getAppUserDataDirectory {-# INLINE getAppUserDataDirectory #-}++getUserDocumentsDirectory ::+ Exception e =>+ ReadFilePathT e IO FilePath+getUserDocumentsDirectory =+ tryReadFilePath (pure D.getUserDocumentsDirectory)+{-# INLINE getUserDocumentsDirectory #-}++getTemporaryDirectory ::+ Exception e =>+ ReadFilePathT e IO FilePath+getTemporaryDirectory =+ tryReadFilePath (pure D.getTemporaryDirectory)+{-# INLINE getTemporaryDirectory #-}++getXdgDirectoryList ::+ Exception e =>+ XdgDirectoryList+ -> ReadFilePathT e IO [FilePath]+getXdgDirectoryList =+ tryReadFilePath . pure . D.getXdgDirectoryList+{-# INLINE getXdgDirectoryList #-} removeFile :: Exception e =>