Ensure PHP 8.3 compatibility

Pin symfony/yaml to ^7.4 — v8.x requires PHP >=8.4.1 which is
incompatible with our PHP 8.3 requirement. All packages that depend
on symfony/yaml accept ^7.0, so this is a safe downgrade.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Mark
2026-05-30 23:41:13 +03:00
co-authored by Claude Sonnet 4.6
parent afc49488a9
commit ece3070676
2 changed files with 378 additions and 137 deletions
+3 -2
View File
@@ -12,8 +12,9 @@
"laravel/framework": "^13.8",
"laravel/scout": "^11.2",
"laravel/tinker": "^3.0",
"spatie/laravel-sitemap": "^8.1",
"spatie/laravel-sluggable": "^4.0"
"spatie/laravel-sitemap": "^7.4",
"spatie/laravel-sluggable": "^4.0",
"symfony/yaml": "^7.4"
},
"require-dev": {
"fakerphp/faker": "^1.23",
Generated
+375 -135
View File
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "5f3c7ba864f94b76dc35fa83162314fa",
"content-hash": "26bdf3db91d9eb34ccbe7666ad92c525",
"packages": [
{
"name": "brick/math",
@@ -853,16 +853,16 @@
},
{
"name": "guzzlehttp/psr7",
"version": "2.10.3",
"version": "2.10.4",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
"reference": "7c1472269227dc6f18930bd903d7a88fe6c52130"
"reference": "d2a1a094e396da8957e797489fddaf860c340cfc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/7c1472269227dc6f18930bd903d7a88fe6c52130",
"reference": "7c1472269227dc6f18930bd903d7a88fe6c52130",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/d2a1a094e396da8957e797489fddaf860c340cfc",
"reference": "d2a1a094e396da8957e797489fddaf860c340cfc",
"shasum": ""
},
"require": {
@@ -950,7 +950,7 @@
],
"support": {
"issues": "https://github.com/guzzle/psr7/issues",
"source": "https://github.com/guzzle/psr7/tree/2.10.3"
"source": "https://github.com/guzzle/psr7/tree/2.10.4"
},
"funding": [
{
@@ -966,7 +966,7 @@
"type": "tidelift"
}
],
"time": "2026-05-27T11:48:20+00:00"
"time": "2026-05-29T12:59:07+00:00"
},
{
"name": "guzzlehttp/uri-template",
@@ -2250,6 +2250,73 @@
],
"time": "2026-03-08T20:05:35+00:00"
},
{
"name": "masterminds/html5",
"version": "2.10.0",
"source": {
"type": "git",
"url": "https://github.com/Masterminds/html5-php.git",
"reference": "fcf91eb64359852f00d921887b219479b4f21251"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Masterminds/html5-php/zipball/fcf91eb64359852f00d921887b219479b4f21251",
"reference": "fcf91eb64359852f00d921887b219479b4f21251",
"shasum": ""
},
"require": {
"ext-dom": "*",
"php": ">=5.3.0"
},
"require-dev": {
"phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7 || ^8 || ^9"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "2.7-dev"
}
},
"autoload": {
"psr-4": {
"Masterminds\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Matt Butcher",
"email": "technosophos@gmail.com"
},
{
"name": "Matt Farina",
"email": "matt@mattfarina.com"
},
{
"name": "Asmir Mustafic",
"email": "goetas@gmail.com"
}
],
"description": "An HTML5 parser and serializer.",
"homepage": "http://masterminds.github.io/html5-php",
"keywords": [
"HTML5",
"dom",
"html",
"parser",
"querypath",
"serializer",
"xml"
],
"support": {
"issues": "https://github.com/Masterminds/html5-php/issues",
"source": "https://github.com/Masterminds/html5-php/tree/2.10.0"
},
"time": "2025-07-25T09:04:22+00:00"
},
{
"name": "monolog/monolog",
"version": "3.10.0",
@@ -2616,6 +2683,60 @@
},
"time": "2026-05-11T20:49:54+00:00"
},
{
"name": "nicmart/tree",
"version": "0.10.1",
"source": {
"type": "git",
"url": "https://github.com/nicmart/Tree.git",
"reference": "2ef11e329d26005ef49dbacd0223bcfd2515b6cc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nicmart/Tree/zipball/2ef11e329d26005ef49dbacd0223bcfd2515b6cc",
"reference": "2ef11e329d26005ef49dbacd0223bcfd2515b6cc",
"shasum": ""
},
"require": {
"php": "~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0"
},
"require-dev": {
"ergebnis/composer-normalize": "^2.48.2",
"ergebnis/license": "^2.7.0",
"ergebnis/php-cs-fixer-config": "^6.28.1",
"fakerphp/faker": "^1.24.1",
"infection/infection": "~0.26.19",
"phpunit/phpunit": "^9.6.19",
"psalm/plugin-phpunit": "~0.19.0",
"vimeo/psalm": "^5.26.1"
},
"type": "library",
"autoload": {
"psr-4": {
"Tree\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Nicolò Martini",
"email": "nicmartnic@gmail.com"
},
{
"name": "Andreas Möller",
"email": "am@localheinz.com"
}
],
"description": "A basic but flexible php tree data structure and a fluent tree builder implementation.",
"support": {
"issues": "https://github.com/nicmart/Tree/issues",
"source": "https://github.com/nicmart/Tree/tree/0.10.1"
},
"time": "2025-11-25T08:51:01+00:00"
},
{
"name": "nikic/php-parser",
"version": "v5.7.0",
@@ -3526,45 +3647,102 @@
"time": "2025-12-14T04:43:48+00:00"
},
{
"name": "spatie/crawler",
"version": "9.3.1",
"name": "spatie/browsershot",
"version": "5.4.0",
"source": {
"type": "git",
"url": "https://github.com/spatie/crawler.git",
"reference": "0c0b6e4928040d90c1d0508fd6e5655e8a51067c"
"url": "https://github.com/spatie/browsershot.git",
"reference": "dcf7a65fd1d0fc8fd113739b84982377728d0b2f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/spatie/crawler/zipball/0c0b6e4928040d90c1d0508fd6e5655e8a51067c",
"reference": "0c0b6e4928040d90c1d0508fd6e5655e8a51067c",
"url": "https://api.github.com/repos/spatie/browsershot/zipball/dcf7a65fd1d0fc8fd113739b84982377728d0b2f",
"reference": "dcf7a65fd1d0fc8fd113739b84982377728d0b2f",
"shasum": ""
},
"require": {
"ext-fileinfo": "*",
"ext-json": "*",
"php": "^8.2",
"spatie/temporary-directory": "^2.0",
"symfony/process": "^6.0|^7.0|^8.0"
},
"require-dev": {
"pestphp/pest": "^3.0|^4.0",
"spatie/image": "^3.6",
"spatie/pdf-to-text": "^1.52",
"spatie/phpunit-snapshot-assertions": "^5.0"
},
"type": "library",
"autoload": {
"psr-4": {
"Spatie\\Browsershot\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Freek Van der Herten",
"email": "freek@spatie.be",
"homepage": "https://github.com/freekmurze",
"role": "Developer"
}
],
"description": "Convert a webpage to an image or pdf using headless Chrome",
"homepage": "https://github.com/spatie/browsershot",
"keywords": [
"chrome",
"convert",
"headless",
"image",
"pdf",
"puppeteer",
"screenshot",
"webpage"
],
"support": {
"source": "https://github.com/spatie/browsershot/tree/5.4.0"
},
"funding": [
{
"url": "https://github.com/spatie",
"type": "github"
}
],
"time": "2026-05-26T13:13:33+00:00"
},
{
"name": "spatie/crawler",
"version": "8.5.0",
"source": {
"type": "git",
"url": "https://github.com/spatie/crawler.git",
"reference": "18198a2198adff1637c0028cb60d2c9559721556"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/spatie/crawler/zipball/18198a2198adff1637c0028cb60d2c9559721556",
"reference": "18198a2198adff1637c0028cb60d2c9559721556",
"shasum": ""
},
"require": {
"guzzlehttp/guzzle": "^7.3",
"guzzlehttp/psr7": "^2.0",
"php": "^8.4",
"illuminate/collections": "^10.0|^11.0|^12.0|^13.0",
"nicmart/tree": "^0.10",
"php": "^8.2",
"spatie/browsershot": "^5.0.5",
"spatie/robots-txt": "^2.0",
"symfony/css-selector": "^7.0|^8.0",
"symfony/dom-crawler": "^7.0|^8.0"
"symfony/dom-crawler": "^6.0|^7.0|^8.0"
},
"require-dev": {
"pestphp/pest": "^4.0",
"phpstan/extension-installer": "^1.4",
"phpstan/phpstan": "^2.0",
"phpstan/phpstan-deprecation-rules": "^2.0",
"phpstan/phpstan-phpunit": "^2.0",
"spatie/invade": "^2.1",
"pestphp/pest": "^2.0|^3.0|^4.0",
"spatie/ray": "^1.37"
},
"suggest": {
"spatie/browsershot": "Required for JavaScript rendering with BrowsershotRenderer (^5.0.5)"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-v9": "9.x-dev"
}
},
"autoload": {
"psr-4": {
"Spatie\\Crawler\\": "src"
@@ -3590,7 +3768,7 @@
],
"support": {
"issues": "https://github.com/spatie/crawler/issues",
"source": "https://github.com/spatie/crawler/tree/9.3.1"
"source": "https://github.com/spatie/crawler/tree/8.5.0"
},
"funding": [
{
@@ -3602,7 +3780,7 @@
"type": "github"
}
],
"time": "2026-05-18T13:26:09+00:00"
"time": "2026-02-21T22:52:37+00:00"
},
{
"name": "spatie/laravel-package-tools",
@@ -3667,34 +3845,33 @@
},
{
"name": "spatie/laravel-sitemap",
"version": "8.1.0",
"version": "7.4.0",
"source": {
"type": "git",
"url": "https://github.com/spatie/laravel-sitemap.git",
"reference": "5a8d3467f670d4dbe277c00bf960617912c97fb1"
"reference": "52397c6f4219a8a0a163ddb8a8d5bc5f9bba0df4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/spatie/laravel-sitemap/zipball/5a8d3467f670d4dbe277c00bf960617912c97fb1",
"reference": "5a8d3467f670d4dbe277c00bf960617912c97fb1",
"url": "https://api.github.com/repos/spatie/laravel-sitemap/zipball/52397c6f4219a8a0a163ddb8a8d5bc5f9bba0df4",
"reference": "52397c6f4219a8a0a163ddb8a8d5bc5f9bba0df4",
"shasum": ""
},
"require": {
"illuminate/support": "^12.0|^13.0",
"guzzlehttp/guzzle": "^7.8",
"illuminate/support": "^11.0|^12.0||^13.0",
"nesbot/carbon": "^2.71|^3.0",
"php": "^8.4",
"spatie/crawler": "^9.0",
"spatie/laravel-package-tools": "^1.16.1"
"php": "^8.2||^8.3||^8.4||^8.5",
"spatie/crawler": "^8.0.1",
"spatie/laravel-package-tools": "^1.16.1",
"symfony/dom-crawler": "^6.3.4|^7.0|^8.0"
},
"require-dev": {
"larastan/larastan": "^3.0",
"laravel/pint": "^1.13",
"orchestra/testbench": "^10.0|^11.0",
"pestphp/pest": "^4.0",
"phpstan/extension-installer": "^1.3",
"phpstan/phpstan-deprecation-rules": "^2.0",
"phpstan/phpstan-phpunit": "^2.0",
"mockery/mockery": "^1.6.6",
"orchestra/testbench": "^9.0|^10.0||^11.0",
"pestphp/pest": "^3.7.4|^4.0",
"spatie/pest-plugin-snapshots": "^2.1",
"spatie/phpunit-snapshot-assertions": "^5.1.2",
"spatie/temporary-directory": "^2.2"
},
"type": "library",
@@ -3729,7 +3906,7 @@
"spatie"
],
"support": {
"source": "https://github.com/spatie/laravel-sitemap/tree/8.1.0"
"source": "https://github.com/spatie/laravel-sitemap/tree/7.4.0"
},
"funding": [
{
@@ -3737,7 +3914,7 @@
"type": "custom"
}
],
"time": "2026-03-12T09:30:40+00:00"
"time": "2026-02-21T23:00:46+00:00"
},
{
"name": "spatie/laravel-sluggable",
@@ -3877,6 +4054,67 @@
],
"time": "2026-02-25T07:59:20+00:00"
},
{
"name": "spatie/temporary-directory",
"version": "2.3.1",
"source": {
"type": "git",
"url": "https://github.com/spatie/temporary-directory.git",
"reference": "662e481d6ec07ef29fd05010433428851a42cd07"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/spatie/temporary-directory/zipball/662e481d6ec07ef29fd05010433428851a42cd07",
"reference": "662e481d6ec07ef29fd05010433428851a42cd07",
"shasum": ""
},
"require": {
"php": "^8.0"
},
"require-dev": {
"phpunit/phpunit": "^9.5"
},
"type": "library",
"autoload": {
"psr-4": {
"Spatie\\TemporaryDirectory\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Alex Vanderbist",
"email": "alex@spatie.be",
"homepage": "https://spatie.be",
"role": "Developer"
}
],
"description": "Easily create, use and destroy temporary directories",
"homepage": "https://github.com/spatie/temporary-directory",
"keywords": [
"php",
"spatie",
"temporary-directory"
],
"support": {
"issues": "https://github.com/spatie/temporary-directory/issues",
"source": "https://github.com/spatie/temporary-directory/tree/2.3.1"
},
"funding": [
{
"url": "https://spatie.be/open-source/support-us",
"type": "custom"
},
{
"url": "https://github.com/spatie",
"type": "github"
}
],
"time": "2026-01-12T07:42:22+00:00"
},
{
"name": "symfony/clock",
"version": "v7.4.8",
@@ -4195,25 +4433,27 @@
},
{
"name": "symfony/dom-crawler",
"version": "v8.1.0",
"version": "v7.4.12",
"source": {
"type": "git",
"url": "https://github.com/symfony/dom-crawler.git",
"reference": "77ca351474ea018daba5f2e473cbf1b9b8e72ac6"
"reference": "b59b59122690976550fd142c23fab62c84738db6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/dom-crawler/zipball/77ca351474ea018daba5f2e473cbf1b9b8e72ac6",
"reference": "77ca351474ea018daba5f2e473cbf1b9b8e72ac6",
"url": "https://api.github.com/repos/symfony/dom-crawler/zipball/b59b59122690976550fd142c23fab62c84738db6",
"reference": "b59b59122690976550fd142c23fab62c84738db6",
"shasum": ""
},
"require": {
"php": ">=8.4.1",
"symfony/polyfill-ctype": "^1.8",
"symfony/polyfill-mbstring": "^1.0"
"masterminds/html5": "^2.6",
"php": ">=8.2",
"symfony/deprecation-contracts": "^2.5|^3",
"symfony/polyfill-ctype": "~1.8",
"symfony/polyfill-mbstring": "~1.0"
},
"require-dev": {
"symfony/css-selector": "^7.4|^8.0"
"symfony/css-selector": "^6.4|^7.0|^8.0"
},
"type": "library",
"autoload": {
@@ -4241,7 +4481,7 @@
"description": "Eases DOM navigation for HTML and XML documents",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/dom-crawler/tree/v8.1.0"
"source": "https://github.com/symfony/dom-crawler/tree/v7.4.12"
},
"funding": [
{
@@ -4261,7 +4501,7 @@
"type": "tidelift"
}
],
"time": "2026-05-29T05:06:50+00:00"
"time": "2026-05-20T07:20:23+00:00"
},
{
"name": "symfony/error-handler",
@@ -6536,6 +6776,82 @@
],
"time": "2026-03-30T13:44:50+00:00"
},
{
"name": "symfony/yaml",
"version": "v7.4.13",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
"reference": "a7ec3b1156faf8815db7683ec7c1e7338e6f977c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/yaml/zipball/a7ec3b1156faf8815db7683ec7c1e7338e6f977c",
"reference": "a7ec3b1156faf8815db7683ec7c1e7338e6f977c",
"shasum": ""
},
"require": {
"php": ">=8.2",
"symfony/deprecation-contracts": "^2.5|^3",
"symfony/polyfill-ctype": "^1.8"
},
"conflict": {
"symfony/console": "<6.4"
},
"require-dev": {
"symfony/console": "^6.4|^7.0|^8.0"
},
"bin": [
"Resources/bin/yaml-lint"
],
"type": "library",
"autoload": {
"psr-4": {
"Symfony\\Component\\Yaml\\": ""
},
"exclude-from-classmap": [
"/Tests/"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Loads and dumps YAML files",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/yaml/tree/v7.4.13"
},
"funding": [
{
"url": "https://symfony.com/sponsor",
"type": "custom"
},
{
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://github.com/nicolas-grekas",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2026-05-25T06:06:12+00:00"
},
{
"name": "tijsverkoyen/css-to-inline-styles",
"version": "v2.4.0",
@@ -9107,82 +9423,6 @@
],
"time": "2024-10-20T05:08:20+00:00"
},
{
"name": "symfony/yaml",
"version": "v8.1.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
"reference": "efb42bd2c6f4f3ccfd4683583449938b5fc146b0"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/yaml/zipball/efb42bd2c6f4f3ccfd4683583449938b5fc146b0",
"reference": "efb42bd2c6f4f3ccfd4683583449938b5fc146b0",
"shasum": ""
},
"require": {
"php": ">=8.4.1",
"symfony/polyfill-ctype": "^1.8"
},
"conflict": {
"symfony/console": "<7.4"
},
"require-dev": {
"symfony/console": "^7.4|^8.0",
"yaml/yaml-test-suite": "*"
},
"bin": [
"Resources/bin/yaml-lint"
],
"type": "library",
"autoload": {
"psr-4": {
"Symfony\\Component\\Yaml\\": ""
},
"exclude-from-classmap": [
"/Tests/"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Loads and dumps YAML files",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/yaml/tree/v8.1.0"
},
"funding": [
{
"url": "https://symfony.com/sponsor",
"type": "custom"
},
{
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://github.com/nicolas-grekas",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2026-05-29T05:06:50+00:00"
},
{
"name": "theseer/tokenizer",
"version": "2.0.1",