NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #682 most downloaded on Packagist
Functions for making sense out of URIs.
Last release 5 months ago
26 Apr 2026
Release timing varies
gaps range from 8 days to 1.6 years
Nearly every release is documented
notes for 28 of 28 stable releases
Nothing withdrawn
no release was ever pulled
12 years old
28 releases · first in 2014
This release supports PHP 8.2 and up. That is specified in composer.json so consumers should automatically select it only for projects that have minim
This release supports PHP 8.2 and up. That is specified in composer.json so consumers should automatically select it only for projects that have minimum PHP 8.2 support.
The 3.0.* release series, supporting PHP 7.4 8.0 8.1, will have bugfixes backported if relevant/needed for some time.
One column per quarter.
This release is confirmed to work with PHP 7.4 through 8.5.
This release is confirmed to work with PHP 7.4 through 8.5.
and other CI and analysis/test tool changes
3.0.1 (2023-06-09) #89 : Call static assert functions with self:: (tests only) ( @phil-davis ) #90 : Implement phpstan strict rules and fix edge cases
This changes the behavior of parsing of some Windows file paths. See the discussions in PR #82 #71 #25 and issue #31 #81
This changes the behavior of parsing of some Windows file paths. See the discussions in PR #82 #71 #25 and issue #31 #81
Most of this is CI tooling to support PHP 8.3 and 8.4, which demonstrates that the tests pass with those latest PHP versions. There are some code form
Most of this is CI tooling to support PHP 8.3 and 8.4, which demonstrates that the tests pass with those latest PHP versions.
There are some code format changes applied by php-cs-fixer. They do not effect behavior.
Note: This is a patch release for the "old" major version 2 series. There will also be a 3.0.1 release coming with the same patches for the current ma
Note: This is a patch release for the "old" major version 2 series. There will also be a 3.0.1 release coming with the same patches for the current major version 3.
See the discussion in issue #81 and PR #83 and links from there. This patch release reverts to the previous behavior for Windows file paths like file:
See the discussion in issue #81 and PR #83 and links from there.
This patch release reverts to the previous behavior for Windows file paths like file:///C:/path/file.ext
The newer behavior will be released in a major version release, so that consumers can adjust to the change, if needed, in a more controlled manner.
2.3.1 (2022-08-30) #77 : Add PHP 8.2 to CI - confirms that the code is working with PHP 8.2 ( @phil-davis ) #78 : Raise phpstan to level 8 ( @phil-dav
* #74: Minimum PHP 7.4 - drops PHP 7.1 7.2 and 7.3 and adds more type declarations (@phil-davis)
See the discussion in issue #81 and PR #83 and links from there. This patch release reverts to the previous behavior for Windows file paths like file:
See the discussion in issue #81 and PR #83 and links from there.
This patch release reverts to the previous behavior for Windows file paths like file:///C:/path/file.ext
The Windows file paths change was released in 2.2.3. So this 2.2.4 release allows anyone on 2.2.3 to bump just the patch version to 2.2.4 to get back the old behavior. This will be relevant to consumers who are still using PHP 7.1 7.2 or 7.3, and are thus on 2.2.. The 2.2. series is the last release series for those PHP versions.
The newer behavior will be released in a major version release, so that consumers can adjust to the change, if needed, in a more controlled manner. That release will also require a minimum of PHP 7.4
* #71: Add empty host and trailing slash to Windows file paths (@peterpostmann @phil-davis) * #70: Update .gitattributes (@cedric-anne)
* #69: fix issue with missing slash in URI parse (@41i-6h0rb4n1 @phil-davis)
* #57: Added Support for PHP 8.0 (@phil-davis) * #51 #52 #53 #54: Update CI and unit test scripts (@phil-davis)
* #45: Added Support for PHP 7.4 (@phil-davis, @staabm) * #47: Dropped Support for PHP 7.0 (@phil-davis) * #49: Updated the testsuite for phpunit8 (@p
* #43: allows the path to be 0
Adopted the symfony php-cs-fixer standard.
* #15: Don't throw an error when resolving a URI which path component is empty. * #16: Correctly parse urls that are only a fragment #.
#.Now throwing InvalidUriException if a uri passed to the parse function is invalid or could not be parsed.
InvalidUriException if a uri passed to the parse function
is invalid or could not be parsed.parse_uri()
doesn't support them, so we now have a pure-php fallback in case it fails.: in
them.* #10: Correctly support file:// URIs in the build() method. (@yuloh)
file:// URIs in the build() method. (@yuloh)Added type-hints where relevant.
* #16: Correctly parse urls that are only a fragment #.
#.Now throwing InvalidUriException if a uri passed to the parse function is invalid or could not be parsed.
InvalidUriException if a uri passed to the parse function
is invalid or could not be parsed.parse_uri()
doesn't support them, so we now have a pure-php fallback in case it fails.: in
them.* #10: Correctly support file:// URIs in the build() method. (@yuloh)
* #6: PHP's parse_url() corrupts strings if they contain certain non ascii-characters such as Chinese or Hebrew. sabre/uri's parse() function now perc
parse_url() corrupts strings if they contain certain
non ascii-characters such as Chinese or Hebrew. sabre/uri's parse()
function now percent-encodes these characters beforehand.* #4: Using php-cs-fixer to automatically enforce coding standards. * #5: Resolving to and building mailto: urls were not correctly handled.
mailto: urls were not correctly handled.Fixed a bug in the resolve when only a new fragment is specified.
normalize function.buildUri function.resolve when only a new fragment is specified.San José, CalConnect XXXII release!
Source was lifted from sabre/http package.
resolve and a split function.Your coding agent can read these notes before it upgrades. Set up the MCP server →