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

Laravel Model Meta Laravel Package

spatie/laravel-model-meta

spatie/laravel-model-meta lets you attach flexible key-value metadata to any Eloquent model without schema changes. Store, update, and query extra attributes via a dedicated meta table, with automatic casting for strings, numbers, booleans, arrays, and more.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. The only hard technical datum in this release is framework-version support: 2.0.5 adds Laravel 13. That tells us the package is a Composer-installed Laravel library that tracks framework majors, which is the baseline expectation for anything we would put in an application's dependency graph. Everything else about architectural fit — what the package actually does, whether it is a service-provider-plus-config library, whether it reaches into the framework's internals — is unevidenced here and must be established before adoption. Treat this assessment as provisional until package metadata (composer.json, source layout, test suite) is reviewed.

Integration feasibility. Straightforward on paper. If we are on Laravel 13, we require ^2.0.5; if we are on Laravel 12 or earlier, this release is a no-op for us and we can stay pinned where we are. The feasibility question is not "can we install it" but "what does the support matrix look like" — specifically whether 2.0.5 retains support for Laravel 11/12 alongside 13, or whether framework majors are dropped as new ones are added. That single fact determines whether this is an additive compatibility release or a forced-upgrade coupling between our framework version and this package's version.

Technical risk. Low for the release itself. Framework compatibility added in a patch release is an additive, low-blast-radius change, and it is a positive signal that the maintainer is tracking Laravel majors rather than lagging them. The residual risk is concentrated in the unknowns, not the change: whether Laravel 13's minimum PHP version moved and dragged this package's PHP floor with it, whether transitive dependencies conflict at the framework boundary, and whether the package's own CI actually exercises Laravel 13 or the constraint was widened without test coverage. A widened illuminate/* constraint without a corresponding matrix entry is the classic failure mode and is invisible from a release note.

Key questions.

  • What is the full support matrix for 2.0.5 — Laravel 11/12/13 simultaneously, or 13 only?
  • Did the PHP version floor change, and does it match our runtime?
  • Does the package's CI run against Laravel 13, or was the constraint widened untested?
  • Is adding framework-major support in a patch release the maintainer's normal practice, or an exception? This sets our pinning policy.
  • Are there deprecations or behavioural changes under Laravel 13 that are not reflected in the one-line note?
  • What is the maintainer/release cadence and bus factor?

Integration Approach

Stack fit. Standard Composer dependency resolved at build time; no infrastructure or runtime footprint change. Pin ^2.0.5 as the floor on any Laravel 13 application so that resolution cannot silently land on a version that lacks the constraint.

Migration path. Three cases, in increasing cost:

  1. New build on Laravel 13 — adopt 2.0.5 directly, no migration.
  2. Existing app on Laravel 12 or earlier — no action; hold current constraint. Do not bump merely because a release exists.
  3. Existing app mid-upgrade to Laravel 13 — sequence the package bump immediately after the framework bump and before any feature work, so that dependency resolution failures surface early and in isolation.

Compatibility. Verify the package's composer.json requirements directly rather than inferring from the release note — particularly the illuminate/* constraints and the php floor. Lock-file diffing between 2.0.4 and 2.0.5 is the cheapest way to confirm the change is genuinely additive and did not pull in a transitive bump.

Sequencing. Bump the constraint on a branch, run the full CI matrix, and confirm the framework version actually exercised in tests matches what we deploy. Only then merge to main. If we maintain more than one Laravel major across services, keep the per-service constraint explicit rather than floating, and let the shared library version advance service-by-service.

Operational Impact

Maintenance. Consuming a patch release is near-zero effort. The more useful signal is maintainer behaviour: a maintainer who ships framework-major support promptly is one whose packages are unlikely to become upgrade blockers. That is one data point, not a trend — it should be corroborated against the last several Laravel majors before we treat release cadence as a standing property of the dependency.

Support. No commercial support implied. Assume community-supported with an unknown bus factor until contributor spread and issue-response history are checked. For anything on a critical path, that check is a prerequisite, not a nice-to-have.

Scaling. No runtime, throughput, or capacity implications follow from a compatibility-constraint change. Nothing here affects horizontal scaling or resource consumption.

Failure modes.

  • Resolution failure at deploy — package pinned below 2.0.5 while the application moves to Laravel 13; Composer refuses to install. Fails loudly and early, which is the good case.
  • Untested compatibility — constraint widened without CI coverage on Laravel 13; installs cleanly and fails at runtime in framework-version-conditional code paths. This is the case worth guarding against, and it is not detectable from the release note.
  • Forced coupling — if framework majors are dropped as new ones are added, our framework upgrade cadence becomes bound to this package's release cadence, which is a planning constraint rather than a technical one.
  • Abandonment — no release for the next Laravel major leaves us pinned to an ageing framework. Low likelihood given this release, non-trivial impact if it happens on a critical path.

Ramp-up. Negligible engineering ramp-up: no API surface change, no new configuration, no behavioural contract altered as far as the release note discloses. The cost is entirely in verification — a lock-file review and a CI run. The real ramp-up obligation is on the TPM side: confirming the support matrix and recording the pinning policy so the next framework upgrade is a scheduled task rather than an incident.

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.
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
elmogy/larafast