Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Layouts Ezplatform Relation List Query Laravel Package

se7enxweb/layouts-ezplatform-relation-list-query

An eZ Platform Layouts extension that provides a relation-list query for fetching related content in layout blocks, enabling dynamic relation-based listings with configurable queries and reusable templates.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. The framing of this package as a "Laravel/PHP package" is inaccurate and materially changes the decision. se7enxweb/layouts-ezplatform-relation-list-query is a Symfony bundle that registers a query type with Netgen Layouts and resolves related content from eZ Platform relation-list fields. It has no service provider, no package discovery manifest, no Eloquent or container contract with Laravel. Against a Laravel codebase, architectural fit is zero without an adapter tier. Against an eZ Platform / Ibexa application already running Netgen Layouts, fit is high and the integration surface is small. As a TPM, the first action is to correct the intake record: this belongs to the legacy CMS boundary, not to the Laravel application portfolio.

Integration feasibility. Feasible and cheap in the correct host: add the Composer requirement, register the bundle, expose the query type in Layouts configuration, and let editors configure relation-list fields per block. In a Laravel application, adopting it would require running a Symfony/eZ kernel alongside Laravel to support one query handler — a disproportionate cost, and a decision I would reject. The defensible alternative is to read relations over Ibexa's REST or GraphQL API from the Laravel service and keep this package out of that dependency graph entirely.

Technical risk. Mostly sourcing and lifecycle risk rather than code risk, but the blast radius is user-visible:

  • Traceability gap. Release v1.4.2 carries only an auto-generated changelog compare link. A patch bump with no described changes cannot be distinguished from a behavioral change in query construction, result ordering, or visibility filtering — exactly the class of change that silently alters rendered layout output.
  • Maintainer concentration. A single-maintainer fork organization; bus factor likely one, and the fork's divergence from upstream is undocumented.
  • Platform lifecycle. eZ Platform is legacy and Ibexa is the successor. Any dependency anchored to eZ-era packages inherits an EOL trajectory that constrains PHP and Symfony upgrades across the estate.
  • Semantic versioning confidence. A 1.x line from a small fork gives weak assurance that patch releases are non-breaking in the behavioral sense.
  • License. GPL-2.0 is a copyleft license. For internal CMS use this is normally fine, but it must go through legal review before it enters any distribution path or a product we ship to customers.

Key questions.

  1. What is the actual diff between 1.4.1 and v1.4.2 — dependency bump, bug fix, or empty tag?
  2. Which PHP, Symfony, eZ Platform/Ibexa, and Netgen Layouts versions are declared in Composer constraints?
  3. What is the upstream project and how far has this fork diverged?
  4. Does this handler affect result ordering, pagination, or visibility filtering — i.e., editor-visible output?
  5. Is the GPL-2.0 license cleared for our intended use (internal only vs. distributed)?
  6. Who is the named internal owner accountable for reviewing future releases?

Integration Approach

Stack fit. Scope this strictly to eZ Platform/Ibexa plus Netgen Layouts. For Laravel services, record a not applicable determination with the API-consumption alternative documented, so the question is not relitigated each quarter. The package lives in the legacy CMS boundary; it does not enter application code.

Migration path. Two cases, two answers:

  • Already on 1.4.1 in a legacy Ibexa app: hold at 1.4.1 until the 1.4.1→v1.4.2 diff is read line by line. A patch bump with an empty changelog is not sufficient grounds to move a production content-rendering dependency; the cost of waiting is approximately zero.
  • Greenfield or actively migrating to Ibexa DXP 4.x: prefer native query types. Adding a small third-party fork to a platform we are exiting raises switch-off cost for no durable benefit.

Compatibility. Unverified. Resolve the effective dependency set in a scratch branch (composer why, composer outdated --direct, composer audit) against the target PHP and Symfony minor before committing engineering time. Expect friction: eZ-era constraints commonly pin Symfony 5.x and PHP 7.4/8.0-era packages, which may collide with the estate's security patch floor — that collision is the realistic blocking finding.

Sequencing.

  1. Diff review 1.4.1→v1.4.2 with a written one-line summary of what changed; no approval without it.
  2. Dependency, license, and CVE inventory in a scratch branch.
  3. Staging install against the real Netgen Layouts configuration; diff rendered layout output against 1.4.1.
  4. Feature-flag rollout to one low-traffic layout, then all layouts.
  5. If any step is blocked by missing information, defer rather than proceed on assumption.

Sequencing note for planning. The whole exercise is a two-to-three-day spike for a developer who already knows Layouts, plus a legal check. That is small enough to justify as a tactical ticket, not a roadmap item — which is precisely how it should appear in planning artifacts.

Operational Impact

Maintenance. Ongoing cost is dominated by watching upstream, not by this fork. Someone must periodically reconcile se7enxweb against the original project and decide whether to stay. Given the opaque release notes, budget explicit per-release review time and put this on the quarterly dependency review with a named owner — otherwise it becomes an unowned artifact discovered only during an audit or an incident.

Support. Community-only. No SLA, no paid escalation, no security policy. Defect turnaround should be modeled in weeks, not days. For a component in the content-rendering path that is a real availability consideration; mitigate by being able to disable the affected layout block at runtime without a deploy.

Scaling. This is a query handler, so cost scales with content volume, relation-set size, and layout page count — not request count alone. Watch for uncached relation queries executed per block render, N+1 patterns when several relation lists appear on one page, and unrestricted result sets. Mitigation sits at the Layouts layer via HTTP and block-level caching; whether this handler participates in those caches must be established during the spike, not discovered under load.

Failure modes.

  • Composer resolution break on a platform or PHP upgrade, blocking unrelated security patching estate-wide.
  • Silent behavioral change in a patch release altering relation ordering or visibility — editors notice before engineering does.
  • Transitive dependency CVE with no upstream fix path because the fork has gone quiet.
  • Upstream abandonment, leaving this fork as the sole source — acceptable only if someone internally can patch it.
  • Platform EOL freezing the runtime version until the CMS migration completes.

Ramp-up. Requires three overlapping skills: Netgen Layouts block/query model, eZ Platform/Ibexa content model and relation semantics, and Symfony bundle wiring. Budget one to two weeks for a competent mid-level developer to be productive and roughly double that to be confident modifying query behavior. Laravel-only engineers do not transfer here — do not staff this as routine PHP work or the estimate will be wrong by a wide margin.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
xiloryx/log-collector
a21ns1g4ts/filament-stripe
la-php/laravel-admin
artisan-build/community-prompts
vleroy/smart
ayles-software/laravel-australian-public-holidays
cboxdk/laravel-id-spatie
cboxdk/laravel-id-billing
cboxdk/laravel-id-billing-bridge
simple-as-fuck/php-performance-log
hsluv/hsluv
seampact/codegen
seampact/hooks
seampact/ir
mehedimi/laravel-amp-mail
happones/laravel-vue-i18n-generator
jwerd/inertia-table
siberfx/flysystem-wasabi
hollyit/token-replace
ippanelcom/laravel-sdk