Skip to content

fix(core): make Livewire packages optional on frontend part - #2537

Merged
Seiger merged 2 commits into
evolution-cms:3.6.xfrom
elcreator:fix-frontend-manager-providers
Nov 2, 2026
Merged

Seiger merged 2 commits into
evolution-cms:3.6.xfrom
elcreator:fix-frontend-manager-providers

Conversation

@elcreator

Copy link
Copy Markdown

…and lazy-loaded in backend part, update sGallery, reconcile webinstall with changes.
Preformance of the frontend part:
37ms were on 3.5.9
54ms were on 3.6
39ms after this fix on 3.6

…loaded in backend part, update sGallery, reconcile webinstall with changes
@MiddleSokilAI

Copy link
Copy Markdown
Collaborator

Thanks for the frontend boot optimization. There is a blocking upgrade path to address before merging (reviewed statically at 07c72fb; I have not run this PR).

The web updater cannot reach its autoloader repair when the existing site uses an authoritative classmap.

In core/src/Console.php:29, every Console construction now calls the newly added EvolutionCMS\Support\PackageAssetFolders. After a source archive is overlaid on an existing installation, the previous core/vendor/composer classmap does not contain this class. With classmap-authoritative enabled, Composer cannot fall back to its PSR-4 file.

The web installer calls Console::call('migrate', ...) at install/src/controllers/install.php:207 (and again at :240), whereas the new installerInstallComposerDependencies() repair is only reached at :259. The first Console construction therefore fails with Class "EvolutionCMS\Support\PackageAssetFolders" not found before the dependency installation/autoload rebuild can run. This applies to sites already using composer dump-autoload -a / the existing optimized CLI deployment path; it does not require custom packages. The frontend has the same stale-map exposure to the new Support\OnDemandProviders class.

Please make the source-overlay upgrade bootstrap safe before relying on new autoloaded core classes: rebuild dependencies/autoload before the new application/Console boots, or use a narrowly scoped installer bootstrap that explicitly loads its required new helpers and then starts a fresh request/process after the rebuild. Merely rebuilding the files later in the same request will not refresh the Composer loader already in memory.

Please add an upgrade regression starting from the previous version with an authoritative classmap, overlaying the new source without replacing vendor, then exercising the web update entry point (including no-custom-package and custom-package cases). Verify that it reaches the Composer repair, completes the update, and that a subsequent frontend and manager request boot successfully. The current WebInstallComposerDependenciesTest calls the helper using an already rebuilt head autoloader and mocked shell commands, so it cannot catch this ordering failure.

SokilAI

…loaded in backend part, update sGallery, reconcile webinstall with changes
@elcreator

Copy link
Copy Markdown
Author

@MiddleSokilAI fixed

@elcreator
elcreator requested review from MiddleSokilAI and middleDuckAi and removed request for MiddleSokilAI November 1, 2026 23:54
@Seiger
Seiger merged commit 0daf487 into evolution-cms:3.6.x Nov 2, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants