10.8.0 2 * Rerelease of 0.7.1 with better version number 3 40.7.1: 5 * Test with GHC 8.8.2, 8.8.3, 8.10.1. 6 * Export SomeBase constructor. 7 * Fix Lift severe Lift instance bug 8 90.7.0: 10 * BREAKING CHANGE: "fileExtension" now throws an exception if the file has no 11 extension. You can use the result as a "Maybe" in pure 12 code or handle the exception appropriately in any other monad. 13 * Old extension operations "addFileExtension" and "setFileExtension" have 14 been deprecated and replaced by "addExtension" and "replaceExtension" 15 respectively with new behavior. 16 ADAPTING YOUR CODE TO THIS CHANGE: 17 * Code that sets an extension not starting with a "." e.g. "foo", must 18 be changed such that it starts with a "." i.e. ".foo". 19 * Code that sets multiple extensions in one go e.g. ".tar.gz" must be 20 changed to set them one at a time instead i.e. add ".tar" first and 21 then add ".gz". 22 * Code that sets an extension starting with multiple dots e.g. 23 "..foo" must be changed such as to make the extra dots part of the 24 file name instead. 25 Details: 26 The new operations "addExtension" and "replaceExtension" accept only "valid" 27 extension forms which is exactly the same as what "fileExtension" returns. 28 A valid extension starts with a @.@ followed by one or more characters 29 not including @.@ followed by zero or more @.@s in trailing position. 30 This change allows extension operations to be principled following 31 these laws: 32 * flip addExtension file >=> fileExtension == return 33 * (fileExtension >=> flip replaceExtension file) file == return file 34 * Add splitExtension operation such that: 35 * uncurry addExtension . swap >=> splitExtension == return 36 * splitExtension >=> uncurry addExtension . swap == return 37 * fileExtension == (fmap snd) . splitExtension@ 38 * Add 'Path.Posix' and 'Path.Windows' modules for manipulating 39 Windows or Posix style paths independently of the current platform. 40 * Add 'Lift' instance for 'Path'. 41 * `Path.Windows` normalizes path separators throughout path, 42 including immediately following drive letter. 43 * `Path.Windows` handles UNC (`\\host\share\`) and Unicode (`\\?\C:\`) path 44 without breaking the double-separator prefix. 45 * Remove support for old GHC version. The oldest supported version 46 is 8.2. 47 480.6.1: 49 * Add 'addFileExtension' function and its operator form: (<.>). 50 * Derive 'Eq' instance for 'PathException'. 51 520.6.0: 53 54 * Deprecate PathParseException and rename it to PathException 55 * Allow 'parent' to work on relative paths as well 56 * Deprecate isParentOf and stripDir and rename them to isProperPrefixOf and 57 stripProperPrefix respectively. 58 * Allow "." as a valid relative dir path with the following rules: 59 * "./" </> "./" = "./" 60 * "./" </> "x/" = "x/" 61 * "x/" </> "./" = "x/" 62 * dirname "x" = "./" 63 * dirname "/" = "./" 64 * dirname "./" = "./" 65 * Make dirname return "." instead of "/" (fixes #18). 66 * Remove the 'validity' flag. 67 * Add synonym for setFileExtension in the form of an operator: (-<.>). 68 690.5.13: 70 * Add QuasiQuoters absdir, reldir, absfile, relfile 710.5.11: 72 * Add replaceExtension and fileExtension 73 740.5.10: 75 * Disallow /. for absolute file 76 * Disallow foo/. for relative file 77 780.5.9: 79 * Lifted ~ restriction from parser https://github.com/chrisdone/path/issues/19 800.5.8 81 * Add Aeson instances. 82 830.5.7: 84 * Fix haddock problem. 850.5.6: 86 * Reject only .. and . 870.5.5: 88 * Use filepath's isValid function for additional sanity checks 890.5.4: 90 * Disable parsing of path consisting only of "." 91 * Add NFData instance for Path 92 * Some typo/docs improvements 93 * Add standard headers to modules 940.5.3: 95 * Added conversion functions. 96 970.2.0: 98 99 * Rename parentAbs to simply parent. 100 * Add dirname. 101 1020.3.0: 103 * Removed Generic instance. 104 1050.4.0: 106 * Implemented stricter parsing, disabling use of "..". 107 * Made stripDir generic over MonadThrow 108 1090.5.0: 110 * Fix stripDir p p /= Nothing bug. 111 1120.5.2: 113 * Removed unused DeriveGeneric. 114