- Make
Urlstyle better at recognizing schemes and authorities. Only consider a path as being a schemed URL if it starts with a valid scheme. Recognize#and?as ending an authority or path. Remove queries and fragments when when normalizing, include them in/as the last segment when splitting. - Run
dart formatwith the new style. - Centralize join logic in
Contextand eliminate redundant validation inabsolute(). - Avoid list allocation in
join()andabsolute()argument validation for improved performance.
- Require Dart 3.4
- Move to
dart-lang/coremonorepo.
- Allow percent-encoded colons (
%3a) in drive letters infromUri. - Fixed an issue with the
splitmethod 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_callslint. - Populate the pubspec
repositoryfield.
- 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.0based 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
currentif 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
retypeimplementation for compatibility with the latest SDK.
-
Add a
PathMapclass that uses path equality for its keys. -
Add a
PathSetclass 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 andContextmethod.
-
Treat
package:URLs as absolute. -
Normalize
c:\foo\.toc:\foo.
- Root-relative URLs like
/fooare now resolved relative to the drive letter forfileURLs that begin with a Windows-style drive letter. This matches the WHATWG URL specification.
- When a root-relative URLs like
/foois 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 andContextmethods. 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()whenfromisnulland the path is already relative. -
Improve the performance of
currentwhen the current directory hasn't changed.
- Improve the performance of
absolute()andnormalize().
- Ensure that
path.toUripreserves 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 callcurrentiffromis not relative.
- Fix some analyzer hints.
- Add a number of performance improvements.
- Expose a top-level
contextfield that provides access to aContextobject 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
Stylethat 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.fromUrinow accepts strings as well asUriobjects.