- Require Dart 3.4
- Allow percent-encoded colons (
%3a
) in drive letters infromUri
. - Fixed an issue with the
split
method doc comment. - Require Dart 3.0
- Support up to 16 arguments in join function and up to 15 arguments in absolute function.
- Enable the
avoid_dynamic_calls
lint. - Populate the pubspec
repository
field.
- Don't crash when an empty string is passed to
toUri()
.
- Stable release for null safety.
- Update SDK constraints to
>=2.12.0-0 <3.0.0
based on beta release guidelines.
- Allow prerelease versions of the 2.12 sdk.
- Allow 2.10 stable and 2.11.0 dev SDK versions.
- Migrate to null safety.
- Add support for multiple extension in
context.extension()
.
-
Fixed a number of lints that affect the package health score.
-
Added an example.
- Don't throw a FileSystemException from
current
if the working directory has been deleted, but we have a cached one we can use.
- Set max SDK version to
<3.0.0
, and adjust other dependencies.
- Drop the
retype
implementation for compatibility with the latest SDK.
-
Add a
PathMap
class that uses path equality for its keys. -
Add a
PathSet
class that uses path equality for its contents.
- Fix a number of bugs that occurred when the current working directory was
/
on Linux or Mac OS.
- Add a
setExtension()
top-level function andContext
method.
-
Treat
package:
URLs as absolute. -
Normalize
c:\foo\.
toc:\foo
.
- Root-relative URLs like
/foo
are now resolved relative to the drive letter forfile
URLs that begin with a Windows-style drive letter. This matches the WHATWG URL specification.
- When a root-relative URLs like
/foo
is converted to a Windows path usingfromUrl()
, it is now resolved relative to the drive letter. This matches IE's behavior.
-
Add
equals()
,hash()
andcanonicalize()
top-level functions andContext
methods. These make it easier to treat paths as map keys. -
Properly compare Windows paths case-insensitively.
-
Further improve the performance of
isWithin()
.
- Further improve the performance of
isWithin()
when paths contain/.
sequences that aren't/../
.
-
Improve the performance of
isWithin()
when the paths don't contain asymmetrical.
or..
components. -
Improve the performance of
relative()
whenfrom
isnull
and the path is already relative. -
Improve the performance of
current
when the current directory hasn't changed.
- Improve the performance of
absolute()
andnormalize()
.
- Ensure that
path.toUri
preserves trailing slashes for relative paths.
- Added type annotations to top-level and static fields.
- Fix dev_compiler warnings.
- Performance improvement in
Context.relative
- don't callcurrent
iffrom
is not relative.
- Fix some analyzer hints.
- Add a number of performance improvements.
- Expose a top-level
context
field that provides access to aContext
object for the current system.
- Don't cache path Context based on cwd, as cwd involves a system-call to compute.
- Remove the documentation link from the pubspec so this is linked to pub.dev by default.
-
Many members on
Style
that provided access to patterns and functions used internally for parsing paths have been deprecated. -
Manually parse paths (rather than using RegExps to do so) for better performance.
- Added
path.prettyUri
, which produces a human-readable representation of a URI.
path.fromUri
now accepts strings as well asUri
objects.