Skip to content

Releases: dduan/Pathos

0.4.2

Choose a tag to compare

@dduan dduan released this 23 Aug 01:37
8697a34
  • Fixed a problem where the + operator overload resolves in ambiguity when used on a Path and a string
    literal. This problem is due to Swift 5.4's behaviral change.

0.4.1

Choose a tag to compare

@dduan dduan released this 22 Aug 21:58
7f4e796

Add support for Swift 5.4

0.4.0

Choose a tag to compare

@dduan dduan released this 18 Dec 02:59

BREAKING CHANGES

While the functionality of this library remain compatible with previous release, its public API has
gone through a major re-design, making this release significantly source-breaking.

The goals for the redesign are

  1. Be more conventional in the Swift ecosystem by eliminating the "free functions".
  2. Make the selection of APIs cross-platform, including macOS, Linux, Windows 10, and future
    platforms Swift runs on.
  3. Use un-decoded, aka binary representation for the path value internally for efficiency and
    correctness reasons.

Experimental Windows 10 Support

This release includes implementation of all APIs for Windows 10. As Swift on Windows 10 is still
at early stage, Pathos consider its current Windows support experimental. All unit tests pass on
Windows. Pathos includes CMake builds as well as SwiftPM builds (as of this release, SwiftPM support
is tested with WSL).

New

Documentation rewritten in Markdown format replaces the previously generated documentation.

0.3.2

Choose a tag to compare

@dduan dduan released this 21 Sep 22:27
  • Fix a bug where children always recusively visit its content when following symlinks.

0.3.1

Choose a tag to compare

@dduan dduan released this 19 Sep 02:38
  • children() can follow symlinks found in the content if followSymlink parameter is set to True.
  • expand Linux distro support to match that of Swift's.

0.3.0

Choose a tag to compare

@dduan dduan released this 01 Jul 00:08
1475a0f

Fixes

  • Warnings in Swift 5.3

New

  • Added a new type Metadata, which represents information from stat (Darwin,
    Linux).
  • Added API to retrieve Metadata.
  • PathRepresentable.set(_:) (permissions)

Deprecations

The following APIs are deprecated in favor of metadata access APIs.

  • size(atPath)
  • modificationTime(atPath:)
  • accessTime(atPath:)
  • metadataChangeTime(atPath:)
  • PathRepresentable.size
  • PathRepresentable.modificationTime
  • PathRepresentable.accessTime
  • PathRepresentable.metadataChangeTime
  • permissions(forPath:)
  • PathRepresentable.permissions

Removed adding/removing permissions in favor of directly setting it:

  • add(_:forPath:)
  • remove(_:forPath:)
  • PathRepresentable.add(_:)
  • PathRepresentable.remove(_:)

Previously symbolic links were referred to as "symbol" or "symbolic link" in
APIs. From this version on, they'll be referred to as "symlink". This resulted
in the following changes:

  • createSymbolicLink(fromPath:toPath:) -> createSymlink(fromPath:toPath:)
  • PathRepresentable.createSymbolicLink(at:) -> PathRepresentable.createSymlink(at:)
  • readSymbolicLink(atPath:toPath) -> readSymlink(atPath:toPath)
  • PathRepresentable.readSymbolicLink() -> PathRepresentable.readSymlink()
  • FileType.symbolicLink -> FileType.symlink

Carthage is no longer supported.

Breaking changes

Previously symbolic links were referred to as "symbol" or "symbolic link" in
APIs. From this version on, they'll be referred to as "symlink". This resulted
in the following breaking changes:

  • exists(atPath:followSymbol:) -> exists(atPath:followSymlink:)
  • PathRepresentable.exists(followSymbol:) -> PathRepresentable.exists(followSymlink:)
  • copyFile(fromPath:toPath:followSymbolicLink:checkSize:) -> copyFile(fromPath:toPath:followSymlink:checkSize:)
  • PathRepresentable.copy(to:followSymbolicLink:checkSize:) -> PathRepresentable.copy(to:followSymlink:checkSize:)
c0a33d66a22521493e8ef30a40306800442ba46100ad15e6682172e369a06976  0.3.0.tar.gz
5f28bcbc7f4f1c773ac5287a250ae92d034c32a5021b36fbdaa21249538ec7b5  0.3.0.zip

0.2.3

Choose a tag to compare

@dduan dduan released this 03 Apr 01:38
db6138b
  • Re-implemented children(inPath:recursive) to fix issue #122
1909614ae4daf87749ac3e773acc23383244891ee383d86ba502d925f353ffea  0.2.3.tar.gz
04307d24befed1d304f05d152cb3f99e8d72aaff10119267e5fcf7bcf5c36610  0.2.3.zip
54c99f67f57b6a552e1594155ccd03eeede166fae40031d80e2a954654b620d1  Pathos.framework.zip

0.2.2

Choose a tag to compare

@dduan dduan released this 09 Mar 06:37
1c87529
  • Removed a build warning in Swift 5.2

0.2.1

Choose a tag to compare

@dduan dduan released this 21 Oct 20:36
Bump version to 0.2.1

0.2.0

Choose a tag to compare

@dduan dduan released this 09 Apr 16:34
Bump version to 0.2.0