Julian Ospald
3e6d93182a
Abstract over Path more properly
...
We don't expect "Path Abs" everywhere anymore. The functions
have been made to be more generic. A user can still pass
absolute paths, so we don't lose any safety. However, some
function implementations may be more tricky.
2018-04-11 01:11:00 +02:00
Julian Ospald
0ec2cf8ca5
Add writeFile and appendFile
2018-04-06 17:22:38 +02:00
Julian Ospald
9ac10a6a7d
Add file reading functions
2018-04-06 16:42:40 +02:00
Julian Ospald
5d5b0ae3c1
Add missing language pragma
2016-06-14 19:32:14 +02:00
Julian Ospald
f47c8edb42
Fix build for GHC < 7.10
2016-06-14 19:21:03 +02:00
Julian Ospald
ef66a24f87
Improve error handling
...
* remove some obsolete functions and error types from HPath.IO.Errors
that are completely unused
* reworked the RecursiveFailure type to contain more information,
so we can use it to programmatically make useful choices
without examining the weakly types IO error attributes (like
'ioGetFileName')
2016-06-14 19:13:25 +02:00
Julian Ospald
4dec385332
Improve createDirRecursive
2016-06-13 01:38:44 +02:00
Julian Ospald
5b08e14b55
Add createDirRecursive, fixes #6
2016-06-13 01:28:55 +02:00
Julian Ospald
ac381cbf60
Improve documentation
2016-06-05 22:19:30 +02:00
Julian Ospald
ce7fdcdcd6
Move documentation note about RecursiveFailure where it belongs
2016-06-05 22:04:16 +02:00
Julian Ospald
a31c9d1e88
Improve documentation and tests for file creation
2016-06-05 21:59:31 +02:00
Julian Ospald
a5942ff026
Use IfElse package for whenM/unlessM
2016-06-05 21:52:52 +02:00
Julian Ospald
92017ab630
Make createRegularFile and createDir accept FileMode parameter
2016-06-05 17:46:25 +02:00
Julian Ospald
16af98b32d
Be more specific about Overwrite mode
2016-06-05 16:38:54 +02:00
Julian Ospald
6da01e382f
Improve documentation
2016-06-05 16:31:08 +02:00
Julian Ospald
d3eb2fc254
Fix build with GHC-7.8
2016-06-05 16:12:51 +02:00
Julian Ospald
d12ce30f57
Fix docs and rename RecursiveMode to RecursiveErrorMode
2016-06-05 16:07:46 +02:00
Julian Ospald
7a6f0e8728
Fix spelling
2016-06-05 16:00:15 +02:00
Julian Ospald
7ed5829d47
Fix documentation
2016-06-05 15:57:41 +02:00
Julian Ospald
a27d4ed55d
Improve documentation
2016-06-05 03:22:11 +02:00
Julian Ospald
64ae6db83a
New API: use CopyMode for overwriting and introduce RecursiveMode
...
This allows to specify the behavior on recursive operations,
such that one can collect failures instead of dying on the first
failure.
2016-06-05 03:13:33 +02:00
Julian Ospald
69dbf6714d
Relicense to BSD3
2016-06-04 00:39:03 +02:00
Julian Ospald
bb590a7692
Improve documentation
2016-05-31 16:21:14 +02:00
Julian Ospald
82ea75cc88
Small documentation fix
2016-05-30 17:16:24 +02:00
Julian Ospald
08de2ebefb
Move RelC class from HPath.Internal to HPath
2016-05-30 13:02:34 +02:00
Julian Ospald
51da8bf5c2
HPath.IO: add createSymlink
2016-05-29 17:28:12 +02:00
Julian Ospald
4032629407
Add TODO
2016-05-24 03:26:07 +02:00
Julian Ospald
ae9a806c2e
Fix to latest sendfile version to simplify imports
2016-05-24 03:13:36 +02:00
Julian Ospald
47dd729e8a
Small documentation improvements
2016-05-22 13:41:39 +02:00
Julian Ospald
620550dab4
Minor documentation fixes
2016-05-22 13:28:20 +02:00
Julian Ospald
8fec862304
Rm redundant import
2016-05-18 13:48:38 +02:00
Julian Ospald
797dcaf725
Backport changes from posix-paths PR:
...
* add isFileName
* add hasParentDir
* add hiddenFile
* add our own openFd version for more control
* small documentation improvements
* add a getDirectoryContents' version that works on Fd
* fix linting warnings
* lift version constraints in benchmark
Also adjust HPath.IO to work with the new API.
2016-05-18 04:11:40 +02:00
Julian Ospald
0fa66cd581
Use sendfile for copying and read/write as fallback
2016-05-18 03:47:39 +02:00
Julian Ospald
ee3ace362b
HPath.IO: minor doc fix
2016-05-10 12:05:55 +02:00
Julian Ospald
05fcad14f1
HPath.IO.Errors: minor documentation fix
2016-05-10 02:02:05 +02:00
Julian Ospald
f841a53985
HPath.IO: pretty
2016-05-10 00:36:51 +02:00
Julian Ospald
eb27c368e6
HPath.IO.Errors: explicit exports, improve haddock compat
2016-05-10 00:35:33 +02:00
Julian Ospald
c76df7f159
HPath.IO: small cleanup
2016-05-10 00:28:04 +02:00
Julian Ospald
613754c58f
HPath.IO: just do 'return ()' on unsupported file types where possible
...
Breaking the callstack with an ioError seems a bit harsh here.
2016-05-10 00:27:46 +02:00
Julian Ospald
d8b0b99edf
HPath.IO.Errors: provide all exception constructor checkers
2016-05-10 00:13:14 +02:00
Julian Ospald
794c3a2fc4
HPath.IO.Errors: remove obsolete HPathIOException constructors
2016-05-10 00:12:43 +02:00
Julian Ospald
8a28a5dd0f
HPath.IO.Errors: fix throwDestinationInSource
...
'canonicalizePath' was missing, making this function far less reliable.
In order for this to work we have to work around circular imports
with a IO.hs-boot file.
2016-05-10 00:11:42 +02:00
Julian Ospald
930b021a32
Add missing (<$>) imports
2016-05-09 18:53:26 +02:00
Julian Ospald
14b48515a2
Add TODO to _copyFile
2016-05-09 18:15:05 +02:00
Julian Ospald
820bf8814d
Fix build with GHC versions prior 7.10.x
2016-05-09 18:14:08 +02:00
Julian Ospald
f27becc4df
Cleanup, improve docs
2016-05-09 17:37:16 +02:00
Julian Ospald
86a4b9ade2
Add IO modules, previously from HSFM
2016-05-09 16:53:31 +02:00
Julian Ospald
6638cd8cc1
Create HPath.IO module, adding canonicalizePath again
2016-05-09 14:40:30 +02:00
Julian Ospald
7e8c745e35
Clean up, rewrite stuff
2016-04-16 18:17:44 +02:00
Julian Ospald
491efe44a3
Use ByteString for paths instead of String
2016-04-04 17:29:35 +02:00