chore(api): bump to Symfony 7.4 and API Platform 4.3 - #7
Merged
Conversation
symfony/mercure-bundle ^0.5 requires symfony/config ^6.4|^7.3|^8.0, so 7.1 is not enough; moved to 7.4, the current stable. api-platform/symfony and api-platform/doctrine-orm go from ^4.0.0-alpha.6 to ^4.3, which is what pulls phpstan/phpdoc-parser ^2.0 into the allowed range. The old lock could not be installed on PHP 8.5 at all: lcobucci/jwt 5.3.0 caps at 8.3. config.platform.php is pinned to 8.2.0 — the floor declared by require.php — so the lock resolves against the bottom of the supported range and stays installable across it. None of the files the Flex recipes wrote are kept. config/reference.php is generated, so it is ignored instead. config/routes/api_platform.yaml redeclares the api_platform loader already present in config/routes.yaml and adds prefix: /api on top. config/packages/property_info.yaml turned out to change nothing the application needs. Does not enable protocol_version 1.0: the FrankenPHP runtime still embeds Mercure 0.24.2.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Unrelated to the protocol work, and mergeable on its own: the
api/lockfile couldnot be installed at all.
lcobucci/jwt5.3.0 caps at PHP 8.3 and 5.6.0 is the first release accepting 8.5, socomposer installfailed outright on a current PHP. Fixing that pulled the rest:7.1.*→7.4.*.symfony/mercure-bundle ^0.5requiressymfony/config ^6.4|^7.3|^8.0, so 7.1 is not enough; 7.4 is the current stable.api-platform/symfonyandapi-platform/doctrine-orm^4.0.0-alpha.6→^4.3,which is what brings
phpstan/phpdoc-parser ^2.0into the allowed range.config.platform.phppinned to8.2.0, the floorrequire.phpdeclares, so thelock resolves against the bottom of the supported range and stays installable
across it rather than only at the top.
None of the files the Flex recipes wrote are kept.
config/reference.phpisgenerated, so it is gitignored.
config/routes/api_platform.yamlredeclares theapi_platformloader already present inconfig/routes.yamland addsprefix: /apion top, which would move every route.
config/packages/property_info.yamlchangednothing the application needs.
symfony.lockrecords the recipes as installed but nolonger claims those two files, so
composer recipesreports the tree as it is.This does not enable
protocol_version: '1.0'. The stock FrankenPHP imageembeds Mercure 0.24.2:
so a 1.0 configuration would be rejected by the module actually running. That needs a
custom FrankenPHP build and is tracked separately.
Verification. Dependency resolution only — the lock installs. The container was
never booted, since
api/cannot speak 1.0 until the FrankenPHP question is settled.