Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
47450b5dd6 | ||
|
|
540c24f3a5 |
@@ -1,3 +1,5 @@
|
|||||||
|
0.5.5:
|
||||||
|
* Use filepath's isValid function for additional sanity checks
|
||||||
0.5.4:
|
0.5.4:
|
||||||
* Disable parsing of path consisting only of "."
|
* Disable parsing of path consisting only of "."
|
||||||
* Add NFData instance for Path
|
* Add NFData instance for Path
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
name: path
|
name: path
|
||||||
version: 0.5.4
|
version: 0.5.5
|
||||||
synopsis: Support for well-typed paths
|
synopsis: Support for well-typed paths
|
||||||
description: Support for will-typed paths.
|
description: Support for will-typed paths.
|
||||||
license: BSD3
|
license: BSD3
|
||||||
|
|||||||
12
src/Path.hs
12
src/Path.hs
@@ -97,7 +97,8 @@ parseAbsDir filepath =
|
|||||||
if FilePath.isAbsolute filepath &&
|
if FilePath.isAbsolute filepath &&
|
||||||
not (null (normalizeDir filepath)) &&
|
not (null (normalizeDir filepath)) &&
|
||||||
not ("~/" `isPrefixOf` filepath) &&
|
not ("~/" `isPrefixOf` filepath) &&
|
||||||
not (hasParentDir filepath)
|
not (hasParentDir filepath) &&
|
||||||
|
FilePath.isValid filepath
|
||||||
then return (Path (normalizeDir filepath))
|
then return (Path (normalizeDir filepath))
|
||||||
else throwM (InvalidAbsDir filepath)
|
else throwM (InvalidAbsDir filepath)
|
||||||
|
|
||||||
@@ -116,7 +117,8 @@ parseRelDir filepath =
|
|||||||
not ("~/" `isPrefixOf` filepath) &&
|
not ("~/" `isPrefixOf` filepath) &&
|
||||||
not (hasParentDir filepath) &&
|
not (hasParentDir filepath) &&
|
||||||
not (null (normalizeDir filepath)) &&
|
not (null (normalizeDir filepath)) &&
|
||||||
not (all (=='.') filepath)
|
not (all (== '.') filepath) &&
|
||||||
|
FilePath.isValid filepath
|
||||||
then return (Path (normalizeDir filepath))
|
then return (Path (normalizeDir filepath))
|
||||||
else throwM (InvalidRelDir filepath)
|
else throwM (InvalidRelDir filepath)
|
||||||
|
|
||||||
@@ -132,7 +134,8 @@ parseAbsFile filepath =
|
|||||||
not ("~/" `isPrefixOf` filepath) &&
|
not ("~/" `isPrefixOf` filepath) &&
|
||||||
not (hasParentDir filepath) &&
|
not (hasParentDir filepath) &&
|
||||||
not (null (normalizeFile filepath)) &&
|
not (null (normalizeFile filepath)) &&
|
||||||
not (all (=='.') filepath)
|
not (all (== '.') filepath) &&
|
||||||
|
FilePath.isValid filepath
|
||||||
then return (Path (normalizeFile filepath))
|
then return (Path (normalizeFile filepath))
|
||||||
else throwM (InvalidAbsFile filepath)
|
else throwM (InvalidAbsFile filepath)
|
||||||
|
|
||||||
@@ -151,7 +154,8 @@ parseRelFile filepath =
|
|||||||
not ("~/" `isPrefixOf` filepath) &&
|
not ("~/" `isPrefixOf` filepath) &&
|
||||||
not (hasParentDir filepath) &&
|
not (hasParentDir filepath) &&
|
||||||
not (null (normalizeFile filepath)) &&
|
not (null (normalizeFile filepath)) &&
|
||||||
not (all (=='.') filepath)
|
not (all (== '.') filepath) &&
|
||||||
|
FilePath.isValid filepath
|
||||||
then return (Path (normalizeFile filepath))
|
then return (Path (normalizeFile filepath))
|
||||||
else throwM (InvalidRelFile filepath)
|
else throwM (InvalidRelFile filepath)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user