Skip to content

Releases: ForNeVeR/TruePath

TruePath v1.6.0

06 Oct 16:21
Compare
Choose a tag to compare

Changed

  • Paths are now compared using a platform-specific comparer by default:

    • case-sensitive on Linux,
    • case-insensitive on Windows and macOS.

    Thanks to @babaruh and @Kataane for working on this improvement.

Added

  • Equals method on AbsolutePath and LocalPath that accepts an alternate comparer (see PlatformDefaultComparer and StrictStringComparer static comparers on both types). Thanks to @babaruh and @Kataane for working on this improvement.

TruePath v1.5.0

22 Sep 19:32
Compare
Choose a tag to compare

Fixed

  • Incorrect path normalization: last ellipsis (...) in a path was treated as a .. entry.

Changed

  • #18: update to behavior of .Parent on relative paths.

    Now, it works for relative paths by either removing the last part or adding .. as necessary to lead to a parent directory.

    Thanks to @Kataane for help on this one.

TruePath v1.4.0

11 Aug 22:04
Compare
Choose a tag to compare

Changed

Added

  • AbsolutePath::Canonicalize to convert the path to absolute, convert to correct case on case-insensitive file systems, resolve symlinks.

    Thanks to @Kataane.

  • LocalPath::ResolveToCurrentDirectory: effectively calculates currentDirectory / this. No-op for paths that are already absolute (aside from converting to the AbsolutePath type).

    Thanks to @Illusion4.

  • AbsolutePath::ReadKind to check the file system object kind (file, directory, or something else) and whether it exists at all.

    Thanks to @Kataane.

  • #76: a new Temporary class for creating a temp file or folder.

    Thanks to @Illusion4.

TruePath v1.3.0

21 Jun 21:31
Compare
Choose a tag to compare

Added

Changed

TruePath v1.2.1

25 May 19:49
Compare
Choose a tag to compare

Fixed

  • [#60: PathStrings.Normalize("../../foo") is broken].

    Thanks to @ronimizy for report.

TruePath v1.2.0

05 May 21:01
Compare
Choose a tag to compare

Added

  • New IPath and IPath<TPath> interfaces that allow to process any paths (LocalPath and AbsolutePath) in a polymorphic way.

  • #41: GetFileNameWithoutExtension extension method for IPath.

    Thanks to @Komroncube.

  • #42: GetExtensionWithDot and GetExtensionWithoutDot extension methods for IPath.

    Thanks to @Komroncube and @y0ung3r.

Changed

  • #19: Optimize PathStrings.Normalize method.

    Thanks to @BadRyuner.

  • Improve the project documentation.

TruePath v1.1.0

27 Apr 16:02
Compare
Choose a tag to compare

Added

  • #26: Publish PDB files to NuGet (in form of .snupkg for now).
  • Update and publish XML documentation with the package.
  • Enable the Source Link.
  • #29: add converting constructors for LocalPath and AbsolutePath.
  • AbsolutePath and LocalPath now support IEquatable<T> interface.

TruePath v1.0.0

21 Apr 20:31
Compare
Choose a tag to compare

Added

  • New types:
    • LocalPath for paths that may be either absolute or relative, and stored in a normalized way;
    • AbsolutePath for paths that are guaranteed (checked) to be absolute;
    • LocalPathPattern (for paths including wildcards; note this is a marker type that doesn't offer any advanced functionality over the contained string).
  • New static classes:
    • PathStrings for path normalization (see the type's documentation on what exactly we consider as normalization).

TruePath v0.0.0

20 Apr 20:42
Compare
Choose a tag to compare

This is the first published version of the package. It doesn't contain any features, and serves the purpose of kickstarting the publication system, and to be an anchor for further additions to the package.