Follow-up to the review feedback on #2026: env-scoped config/*/dev/
directories are the outdated approach. Both files move to flat paths
guarded by a when@dev: block.
The packages file is guarded too rather than left bare — the bundle is
registered for dev only, so an unguarded zestly_dev_login: root key in
config/packages/ has no extension to load it in prod and would break
cache warmup.
Claude-Session: https://claude.ai/code/session_01FtiTUbCskmCiy9k78vCL19
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
* Add tito10047/progressive-image-bundle 2.0
Registers the bundle, its route, and a working default config (a chain
resolver with an AssetMapper + filesystem fallback, tailwind grid
breakpoints, sync generation, and a self-contained local Flysystem
variant store — no extra dependency required). The responsive
breakpoint stylesheet is generated and imported into assets/app.js
automatically via a post-install script, so the bundle renders
correctly right after "composer require" with zero manual config.
Verified end-to-end against a sandboxed copy of a real AssetMapper app:
uninstall -> reinstall -> render <twig:pgi:Image> produces a working
<picture> element with real generated variant files on disk.
* Fix recipes-contrib QA failures for tito10047/progressive-image-bundle 2.0
- add-lines only supports "top", "bottom", "after_target" as a position
value — "before_target" isn't valid. Insertion order relative to the
app.css import doesn't matter functionally, so switch to after_target.
- post-install.txt was missing its trailing newline.
* Retrigger CI: tito10047/progressive-image-bundle main/v2.0 branches now include the AssetMapper prepend() fix
* Retrigger CI: asset_mapper resolver fix is live on main/v2.0 (progressive-image-bundle)
* Retrigger CI: 2.0.0-rc0 (pre-fix) tag deleted, only 2.0.0-rc1 remains
Registers the bundle and imports the shop routes, which expose the page the customer returns to from the bank-hosted payment page. Without that import the return URL cannot be built and the payment fails before it even leaves.
No config/packages: both configuration keys of the plugin have real defaults.
No add-lines either, the plugin ships no JavaScript. The two remaining steps cannot be automated and are recalled by post-install.txt: generating the Sylius payment encryption key, and declaring the trusted proxies, x-forwarded-host included, without which the URLs handed to the bank are unreachable.
* Add recipe for sylius/admin-mcp-server-plugin 0.1
* Remove league_oauth2_server.yaml from recipe — plugin already imports it via config.yaml
* Add OAuth keypair env vars to manifest.json
* adds leoparden/plugin-license-manager
* Remove aliases from manifest.json
* Add leoparden/plugin-license-manager 1.3 recipe
Runs leoparden:license:sync via auto-scripts so newly required Leoparden
extensions are reported to the license hub. Scoped to 1.3 because the command
ships from plugin-license-manager v1.3.0.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Martin Flogaus <flogaus@leoparden.net>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Registers TreblleBundle, copies a minimal treblle.yaml config pointing
at TREBLLE_SDK_TOKEN and TREBLLE_API_KEY env vars, and injects those
two variables into .env on install.
* Add letkode/form-schema-bundle recipe
* fix: indentation and null values in letkode/form-schema-bundle recipe
- Use 4-space indentation in manifest.json
- Add trailing newline to manifest.json
- Replace ~ with null in letkode_form_schema.yaml
Symfony 8.0 removed XmlFileLoader support for routing (deprecated in 7.4).
The PHP routing file sonata_admin.php was introduced in SonataAdminBundle 4.39,
so a new recipe version is required rather than modifying the existing 4.0 recipe.
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>