Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Semver Laravel Package

composer/semver

Composer Semver is a PHP library for parsing and validating version constraints, normalizing versions, and comparing releases. Extracted from Composer, it supports semver-style rules where possible while staying compatible with PHP’s version_compare.

View on GitHub
Deep Wiki
Context7
3.4.4

What's Changed

New Contributors

Full Changelog: https://github.com/composer/semver/compare/3.4.3...3.4.4

3.4.3
  • Fixed some type annotations

Full Changelog: https://github.com/composer/semver/compare/3.4.2...3.4.3

3.4.2
  • Fixed PHP 5.3 syntax error

Full Changelog: https://github.com/composer/semver/compare/3.4.1...3.4.2

3.4.1
  • Fixed normalizeStability's return type to enforce valid stabilities

Full Changelog: https://github.com/composer/semver/compare/3.4.0...3.4.1

3.4.0
  • Support larger major version numbers (#149)

Full Changelog: https://github.com/composer/semver/compare/3.3.2...3.4.0

3.3.2
  • Fixed handling of non-string values (#134)
3.3.1
  • Fixed possible cache key clash in the CompilingMatcher memoization (#132)
3.3.0
  • Improved performance of CompilingMatcher by memoizing more (#131)
    • Added CompilingMacher::clear to clear all memoization caches
3.2.9
  • Revert #129 (Fixed MultiConstraint with MatchAllConstraint) which caused regressions

Full Changelog: https://github.com/composer/semver/compare/3.2.8...3.2.9

3.2.8

Full Changelog: https://github.com/composer/semver/compare/3.2.7...3.2.8

3.2.7
  • Fixed: typo in type definition of Intervals class causing issues with Psalm scanning vendors
3.2.6
  • Fixed: type improvements to parseStability
3.2.5
  • Fixed: issue comparing disjunctive MultiConstraints to conjunctive ones (#127)
    • Fixed: added complete type information using phpstan annotations
1.7.2
  • Fixed: Allow installing on php 8
3.2.3
  • Fixed: constraints in the form of X || Y, >=Y.1 and other such complex constructs were in some cases being optimized into a more restrictive constraint
3.2.4
  • Fixed: code clean-up
3.2.2
  • Fixed: internal code cleanups
1.7.1
  • Fixed: accidental validation of broken constraints combining ^/~ and wildcards, and -dev suffix allowing weird cases
    • Fixed: normalization of beta0 and such which was dropping the 0
3.2.1
  • Fixed: accidental validation of broken constraints combining ^/~ and wildcards, and -dev suffix allowing weird cases
    • Fixed: normalization of beta0 and such which was dropping the 0
3.1.0
  • Added: support for constraints like ^2.x-dev and ~2.x-dev, not very useful but seen in the wild and failed to validate with 3.0.1
    • Fixed: invalid aliases will no longer throw, unless explicitly validated by Composer in the root package
3.2.0
  • Added: support for x || [@dev](https://github.com/dev), not very useful but seen in the wild and failed to validate with 1.5.2/1.6.0
    • Added: support for foobar-dev being equal to dev-foobar, dev-foobar is the official way to write it but we need to support the other for BC and convenience
1.7.0
  • Added: support for x || [@dev](https://github.com/dev), not very useful but seen in the wild and failed to validate with 1.5.2/1.6.0
    • Added: support for foobar-dev being equal to dev-foobar, dev-foobar is the official way to write it but we need to support the other for BC and convenience
1.6.0
  • Added: support for constraints like ^2.x-dev and ~2.x-dev, not very useful but seen in the wild and failed to validate with 1.5.2
    • Fixed: invalid aliases will no longer throw, unless explicitly validated by Composer in the root package
1.5.2
  • Fixed: handling of some invalid -dev versions which were seen as valid
  • Fixed: some doctypes
3.0.1
  • Fixed: handling of some invalid -dev versions which were seen as valid
3.0.0
  • Break: Renamed EmptyConstraint, replace it with MatchAllConstraint
    • Break: Unlikely to affect anyone but strictly speaking a breaking change, *.* and such variants will not match all dev-* versions anymore, only * does
    • Break: ConstraintInterface is now considered internal/private and not meant to be implemented by third parties anymore
    • Added Intervals class to check if a constraint is a subsets of another one, and allow compacting complex MultiConstraints into simpler ones
    • Added CompilingMatcher class to speed up constraint matching against simple Constraint instances
    • Added MatchAllConstraint and MatchNoneConstraint which match everything and nothing
    • Added more advanced optimization of contiguous constraints inside MultiConstraint
    • Added tentative support for PHP 8
    • Fixed ConstraintInterface::matches to be commutative in all cases
2.0.0
  • Break: dev-master, dev-trunk and dev-default now normalize to dev-master, dev-trunk and dev-default instead of 9999999-dev in 1.x
    • Break: Removed the deprecated AbstractConstraint
    • Added getUpperBound and getLowerBound to ConstraintInterface. They return Composer\Semver\Constraint\Bound instances
    • Added MultiConstraint::create to create the most-optimal form of ConstraintInterface from an array of constraint strings
1.5.1
  • Fixed: Parsing of aliased version was not validating the alias to be a valid version
1.5.0
  • Added: some support for date versions (e.g. 201903) in ~ operator
  • Fixed: support for stabilities in ~ operator was inconsistent
1.4.2
  • Fixed: collapsing of complex constraints lead to buggy constraints
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport
twbs/bootstrap4
php-http/client-implementation
phpcr/phpcr-implementation
cucumber/gherkin-monorepo
haydenpierce/class-finder
psr/simple-cache-implementation