Commit Graph

34 Commits

Author SHA1 Message Date
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 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 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 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 51da8bf5c2
HPath.IO: add createSymlink 2016-05-29 17:28:12 +02:00
Julian Ospald ae9a806c2e
Fix to latest sendfile version to simplify imports 2016-05-24 03:13:36 +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 f841a53985
HPath.IO: pretty 2016-05-10 00:36:51 +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 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