Swiftpack.co - Package - kylef/PathKit

PathKit

Build Status

Effortless path operations in Swift.

Usage

let path = Path("/usr/bin/swift")

Joining paths

let path = Path("/usr/bin") + Path("swift")

Determine if a path is absolute

path.isAbsolute

Determine if a path is relative

path.isRelative

Determine if a file or directory exists at the path

path.exists()

Determine if a path is a directory

path.isDirectory()

Get an absolute path

let absolutePath = path.absolute()

Normalize a path

This cleans up any redundant .. or . and double slashes in paths.

let normalizedPath = path.normalize()

Deleting a path

path.delete()

Moving a path

path.move(newPath)

Current working directory

Path.current
Path.current = "/usr/bin"

Changing the current working directory

path.chdir {
  // Path.current would be set to path during execution of this closure
}

Children paths

path.children()

Reading

path.read()

Writing

path.write("Hello World!")

Glob

let paths = Path.glob("*.swift")

Contact

Kyle Fuller

  • https://fuller.li
  • https://twitter.com/kylefuller

License

PathKit is licensed under the BSD License.

Github

link
Stars: 1171

Dependencies

Used By

Total: 0

Releases

1.0.0 - 2019-03-28 19:20:29

Breaking

  • Drop support for Swift < 4.2

0.9.2 - 2018-09-10 18:38:22

Enhancements

  • Adds support for Swift 4.2.

- 2018-03-24 02:28:23

Bug Fixes

0.9.0 - 2017-12-23 23:17:52

Enhancements

  • Support for Swift 4.

Bug Fixes

  • Appending to (.) slice started with (..) will return correct path.
    Antondomashnev

0.8.0 - 2017-02-18 13:24:32

Enhancements

  • New string (path.string) and URL (path.url) accessors on a path.
    David Jennes
  • Additional method for creating an iterator with options.
    #25 David Jennes
  • Abbreviate is now supported on Linux.
    Ben Snider

Bug Fixes

  • Enumerating a path will now return an Optional.none when a directory does not exist.
    Leon Breedt

0.7.0 - 2016-09-13 17:38:14

Adds support for Swift 3.0

0.6.1 - 2015-12-08 15:44:25

Adds Linux support.