Skip to content

#149 - Clean up composer.json dependencies - #153

Merged
njoubert-cleverage merged 1 commit into
mainfrom
149
Oct 14, 2026
Merged

njoubert-cleverage merged 1 commit into
mainfrom
149

Conversation

@njoubert-cleverage

Copy link
Copy Markdown
Member

Description

Fixes #149: clean up composer.json (same cleanup as cleverage/process-bundle#268, part of the dependency check of process-bundle and all the bridges).

Changes

  • Removed (not used in src/, config/, templates/, tests/): symfony/dotenv, symfony/runtime (application concerns: .env loading, bin/console, public/index.php), ext-ctype, ext-iconv (Symfony skeleton leftovers).
  • doctrine/common → doctrine/collections: the only Doctrine\Common\* class used is ArrayCollection (DoctrineProcessHandler).
  • Required, used directly but only installed transitively (lower bounds = the ones already imposed by their current providers, so no installable set of packages is removed):
Package Constraint Direct usage Lower bound from
doctrine/collections ^1.5 || ^2.1 || ^3.1 ArrayCollection doctrine/orm 2.20 / 3.x
doctrine/migrations ^3.2 AbstractMigration (all migrations) doctrine/doctrine-migrations-bundle 3.7
doctrine/persistence ^3.1 || ^4 ManagerRegistry doctrine/doctrine-bundle 2.18
psr/log ^2 || ^3 LoggerInterface monolog/monolog 3
symfony/event-dispatcher-contracts ^3 Symfony\Contracts\EventDispatcher cleverage/process-bundle
symfony/twig-bundle ^6.4 || ^7.4 || ^8 Templates, twig.extension tags, <twig:…> components same range as the other Symfony packages
twig/twig ^3.23 src/Twig extensions easycorp/easyadmin-bundle 5.0 (Twig 4 only exists as an alpha)
  • require-dev: twig/extra-bundle ^3.23 (TestKernel), symfony/property-access ^6.4 || ^7.4 || ^8 (LogRecordTest).
  • CHANGELOG (Latest).

Differs from the issue: symfony/runtime is kept in config.allow-plugins. The released cleverage/process-bundle v5.3 still requires symfony/runtime (cleverage/process-bundle#268 is merged but not released): without the entry, composer update fails ("blocked by your allow-plugins config"). Development config only; it can be removed once a process-bundle release includes #268.

Checks

  • composer validate --strict: OK.
  • After composer update: doctrine/common no longer installed, symfony/dotenv / symfony/runtime only installed through cleverage/process-bundle v5.3; 397 tests OK, PHPStan OK (no PHP / Twig change).
  • With composer update --prefer-lowest -W on the added packages (collections 2.2.0, migrations 3.9.5, persistence 4.0.0, psr/log 3.0.0, event-dispatcher-contracts 3.0.0, twig 3.27.0, extra-bundle 3.23.0, as allowed by the other requirements): 397 tests OK.

Requirements

  • Documentation updates
    • Reference
    • Cookbooks
    • Changelog
  • Unit tests

Breaking changes

None for the bundle API. Minor: once cleverage/process-bundle is released without them too, an application relying on the bundles to install symfony/dotenv / symfony/runtime must require them (the Symfony skeleton already does; the demo does since cleverage/process-bundle-demo#81).

🤖 Generated with Claude Code

- Remove the unused symfony/dotenv, symfony/runtime, ext-ctype and ext-iconv
  requirements (application concerns / Symfony skeleton leftovers).
- Replace doctrine/common by doctrine/collections (only ArrayCollection is used).
- Require twig/twig, symfony/twig-bundle, psr/log, doctrine/persistence,
  doctrine/migrations and symfony/event-dispatcher-contracts, used directly but
  only installed transitively; lower bounds are the ones already imposed by
  their current providers.
- require-dev: twig/extra-bundle and symfony/property-access, used by the tests.

symfony/runtime is kept in config.allow-plugins: cleverage/process-bundle v5.3
still requires it (cleverage/process-bundle#268 not released yet).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@njoubert-cleverage
njoubert-cleverage merged commit 9db87e7 into main Oct 14, 2026
24 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.

Composer: remove unused requirements, replace doctrine/common by doctrine/collections, declare the packages used directly

1 participant