All Notable changes to League\Uri\Interfaces
will be documented in this file
Next - TBD
Contidionable
interfaceUriInspector
interfaceUriEncoder
interfaceUriInterface::resolve
UriInterface::relativize
UriInterface::equals
UriInterface::toNormalizedString
UriInterface::getUser
League\Uri\IPv6\Converter::isIpv6
- None
UriInterface::getUsername
replaced byUriInterface::getUser
- None
7.5.0 - 2024-12-08
UriInterface::toComponents
returns an associative array containing all URI components values.UriInterface::getUsername
returns the encoded user component of the URI.UriInterface::getPassword
returns the encoded scheme-specific information about how to gain authorization to access the resource.Uri\IPv6\Converter
allows expanding and compressing IPv6.Uri\IPv4\Converter::toIPv6Using6to4
allows converting an IPv4 into an IPv6 host using the 6to4 notation.Uri\IPv4\Converter::toIPv6UsingMapping
allows mapping an IPv4 address into an IPv6 one.- Using PHP8.4
Deprecated
attribute to signal deprecated public API methods and constants.
- Adding Host resolution caching to speed up URI parsing in
UriString
Uri\UriString::parseAuthority
acceptsStringable
object as valid inputUri\IPv4\Converter::toDecimal
also handles 6to4 and IPv4 mapped address algorithm.Uri\QueryString::extract
andQueryString::convert
stop parsing too early issue #146
UriInterface::getComponents
useUriInterface::toComponents
- None
7.3.1 - 2024-02-23
- None
- Fix package to avoid PHP8.4 deprecation warnings
- None
- None
7.3.0 - 2023-09-09
League\Uri\Contracts\QueryInterface::withoutPairByKey
League\Uri\Contracts\QueryInterface::withoutPairByValue
League\Uri\Contracts\QueryInterface::withoutPairByKeyValue
League\Uri\Contracts\QueryInterface::toFormData
League\Uri\Contracts\QueryInterface::withoutPairByKeyValue
League\Uri\KeyValuePair\Converter::fromFormData
League\Uri\KeyValuePair\Converter::separator
methodLeague\Uri\KeyValuePair\Converter::encondingMap
method
League\Uri\KeyValuePair\Converter
fix encoding when the value is a float or the booleanfalse
- Exception message typo fix #121 by GrahamCampbell
Contracts\QueryInterface\QueryInterface::withoutPair
useContracts\QueryInterface\QueryInterface::withoutPairByKey
instead.
- None
7.2.0 - 2023-08-30
League\Uri\Idna\Converter::isIdn
League\Uri\Ipv4\Converter::isIpv4
- Add support for
Stringable
host object inLeague\Uri\Idna\Converter
feature. - Add support for
Stringable
host object inLeague\Uri\Exceptions\ConversionFailed
feature.
- None
- None
7.1.0 - 2023-08-21
League\Uri\Encoder
to normalize encoding URI and URI components.League\Uri\KeyValuePair\Converter
to parse and build key/value pair string.
- Rewrite
QueryString
classes and fix query encoding for basic RFC3986. #109
- None
- None
7.0.0 - 2023-08-10
- New method to
UriComponentInterface::value
- New method to
UriComponentInterface::toString
- New method to
UserInfoInterface::withUser
- New method to
UserInfoInterface::withPass
- New method to
UriInterface::toString
- New method to
UriInterface::getComponents
League\Uri\IPv4
toolsLeague\Uri\Idna
toolsLeague\Uri\UriString
parserLeague\Uri\QueryString
parser
- None
- None
- Support for PHP7
- Support for
__set_state
UriComponentInterface::getContent
is removed in favor ofUriComponentInterface::value
UriComponentInterface::withContent
is removed with no replacement use other means to change the value of the component.UserInfoInterface::withUserInfo
is removed in favor ofUserInfoInterface::withUser
andUserInfoInterface::withPass
.HostInfoInterface::labels
is removed with no replacement use theIteratorAggregate::getIterator
method instead.SegmentedPathInterface::segments
is removed with no replacement use theIteratorAggregate::getIterator
method instead.League\Uri\Idna\Idna
useLeague\Uri\Idna\Converter
insteadLeague\Uri\Idna\IdnaInfo
useLeague\Uri\Idna\Result
insteadLeague\Uri\Exception\IdnSupportMissing
useLeague\Uri\Exception\MissingFeature
instead
- IDNA processing classes
- None
- None
- Support for PHP7.1
- Support for PHP8 thanks to of someniatko
- None
- None
- None
League\Uri\Exceptions\FileinfoSupportMissing
based on the work of Nicolas Grekas
- Improved docblock.
- None
- None
- Nothing
- Remove useless docblock from
League\Uri\Contract\IpHostInterface::withoutZoneIdentifier
- None
- None
League\Uri\Contract\AuthorityInterface
League\Uri\Contract\DataPathInterface
League\Uri\Contract\DomainHostInterface
League\Uri\Contract\FragmentInterface
League\Uri\Contract\HostInterface
League\Uri\Contract\IpHostInterface
League\Uri\Contract\PathInterface
League\Uri\Contract\PortInterface
League\Uri\Contract\QueryInterface
League\Uri\Contract\SegmentedPathInterface
League\Uri\Contract\UriComponentInterface
League\Uri\Contract\UriException
League\Uri\Contract\UriInterface
League\Uri\Contract\UserInfoInterface
League\Uri\Exception\EncodingNotFound
League\Uri\Exception\IdnSupportMissing
League\Uri\Exception\SyntaxError
- None
- None
League\Uri\Interfaces
namespaceLeague\Uri\UriInterface
- support for
PHP7.0
- None
- Make
League\Uri\Interfaces\Uri
implementsLeague\Uri\UriInterface
- None
- None
League\Uri\UriInterface
.
- None
League\Uri\Interfaces\Uri
useLeague\Uri\UriInterface
instead.
- None
- None
- None
- None
League\Uri\Interfaces\Component
. The interface is moved to the League URI Components package.
League\Uri\Interfaces\Path
replacesLeague\Uri\Interfaces\PathComponent
League\Uri\Interfaces\Path::isEmpty
- None
- None
League\Uri\Interfaces\CollectionComponent
League\Uri\Interfaces\PathComponent
League\Uri\Interfaces\Component::NO_ENCODING
to remove any specific encodingLeague\Uri\Interfaces\Component::RFC3986_ENCODING
to specify encoding according to RFC3986 rulesLeague\Uri\Interfaces\Component::RFC3987_ENCODING
to specify encoding according to RFC3987 rules
- Update
Component::getContent
optional parameter default.
- None
League\Uri\Interfaces\Component::RFC3986
League\Uri\Interfaces\Component::RFC3987
League\Uri\Interfaces\Component::RFC3986
to specify encoding according to RFC3986 rulesLeague\Uri\Interfaces\Component::RFC3987
to specify encoding according to RFC3987 rules
League\Uri\Interfaces\Component::getContent
now takes an optional$enc_type
parameter to specify the returned content encoding rules.League\Uri\Interfaces\Uri
docblocks simplified around Exception thrown
- None
- None
League\Uri\Interfaces\Component::getContent
League\Uri\Interfaces\Component::withContent
League\Uri\Interfaces\Component::isDefined
- Renamed
League\Uri\Interfaces\Collection
toLeague\Uri\Interfaces\CollectionComponent
- Renamed
League\Uri\Interfaces\Path
toLeague\Uri\Interfaces\PathComponent
- None
League\Uri\Interfaces\UriPart
League\Uri\Interfaces\HierarchicalComponent
League\Uri\Interfaces\Scheme
League\Uri\Interfaces\User
League\Uri\Interfaces\Pass
League\Uri\Interfaces\UserInfo
League\Uri\Interfaces\Host
League\Uri\Interfaces\Port
League\Uri\Interfaces\Path::withoutEmptySegments
League\Uri\Interfaces\Path::hasTrailingSlash
League\Uri\Interfaces\Path::withTrailingSlash
League\Uri\Interfaces\Path::withoutTrailingSlash
League\Uri\Interfaces\Path::getTypecode
League\Uri\Interfaces\Path::withTypecode
League\Uri\Interfaces\Path::FTP_TYPE_ASCII
League\Uri\Interfaces\Path::FTP_TYPE_BINARY
League\Uri\Interfaces\Path::FTP_TYPE_DIRECTORY
League\Uri\Interfaces\Path::FTP_TYPE_EMPTY
League\Uri\Interfaces\HierarchicalPath
League\Uri\Interfaces\DataPath
League\Uri\Interfaces\Query
League\Uri\Interfaces\Fragment