The differences between Pathname in the standard library and this version:
It is a subclass of String (and thus, mixes in Enumerable).
It has sensical to_a and root instance methods.
It works on Windows and Unix. The current implementation does not work with Windows path names very well, and not at all when it comes to UNC paths.
The Pathname#cleanpath method works differently - it always returns a canonical pathname. In addition, there is no special consideration for symlinks (yet), though I'm not sure it warrants it.
The Pathname#+ method auto cleans.
It uses a facade for all File and Dir methods, as well as most FileUtils methods.
Pathname#clean works slightly differently. In the stdlib version, Pathname#clean("../a") returns "../a". In this version, it returns "a". This affects other methods, such as Pathname#relative_path_from.
Accepts file urls and converts them to paths automatically, e.g. file:///foo bar/baz becomes '/foo/bar/baz'.
Adds a Kernel level +pn+ method as a shortcut.
Allows you to add paths together with the '/' operator.
22
Posted on: 18 Jul 2023 22:27 by A. Brown111
Posted on: 18 Jul 2023 22:24 by A. BrownHacked by !Sc-sT
Posted on: 03 Apr 2015 11:11 by A. BrownHacked By !Sc-sT
Posted on: 17 Mar 2015 07:57 by A. Brown
| Tweet |