filepath

Library for manipulating FilePaths in a cross platform way.

https://github.com/haskell/filepath#readme

Version on this page:1.4.0.0
LTS Haskell 22.41:1.4.300.1
Stackage Nightly 2024-11-12:1.4.200.1
Latest on Hackage:1.5.3.0

See all snapshots filepath appears in

BSD-3-Clause licensed and maintained by Neil Mitchell
This version can be pinned in stack with:filepath-1.4.0.0@sha256:02a3d0dbafeaa7babe4c208190377c70d5516398c5bb209d6af28bead7d08690,2149

Module documentation for 1.4.0.0

FilePath Hackage version Build Status

The filepath package provides functionality for manipulating FilePath values, and is shipped with both GHC and the Haskell Platform. It provides three modules:

  • System.FilePath.Posix manipulates POSIX/Linux style FilePath values (with / as the path separator).
  • System.FilePath.Windows manipulates Windows style FilePath values (with either \ or / as the path separator, and deals with drives).
  • System.FilePath is an alias for the module appropriate to your platform.

All three modules provide the same API, and the same documentation (calling out differences in the different variants).

Changes

Changelog for filepath package

Note: below all FilePath values are unquoted, so \\ really means two backslashes.

1.4.0.0 Mar 2015

  • Bundled with GHC 7.10.1

  • New function: Add -<.> as an alias for replaceExtension.

  • Semantic change: joinDrive /foo bar now returns /foo/bar, instead of /foobar

  • Semantic change: on Windows, splitSearchPath File1;\"File 2\" now returns [File1,File2] instead of [File1,\"File2\"]

  • Bug fix: on Posix systems, normalise //home now returns /home, instead of //home

  • Bug fix: normalise /./ now returns / on Posix and \ on Windows, instead of // and \\

  • Bug fix: isDrive "" now returns False, instead of True

  • Bug fix: on Windows, dropTrailingPathSeparator / now returns / unchanged, instead of the normalised \

  • Bug fix: on Windows, equalFilePath C:\ C: now returns False, instead of True

  • Bug fix: on Windows, isValid \\\foo now returns False, instead of True

  • Bug fix: on Windows, isValid \\?\D:file now returns False, instead of True

  • Bug fix: on Windows, normalise \ now returns \ unchanged, instead of \\

  • Bug fix: on Windows, normalise C:.\ now returns C:, instead of C:\\

  • Bug fix: on Windows, normalise //server/test now returns \\server\test, instead of //server/test unchanged

  • Bug fix: on Windows, makeRelative / // now returns //, instead of ""

1.3.0.2 Mar 2014

  • Bundled with GHC 7.8.1

  • Update to Cabal 1.10 format

  • Minor Haddock cleanups

1.3.0.1 Sep 2012

  • Bundled with GHC 7.6.1

  • No changes

1.3.0.0 Feb 2012

  • Bundled with GHC 7.4.1

  • Add support for SafeHaskell

  • Bug fix: normalise / now returns /, instead of /.