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

Cache Laravel Package

fm/cache

fm/cache is a Laravel/PHP package for working with application caching. It provides a framework-friendly way to integrate cache storage and management, helping keep repeated data access fast and organized in your projects.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Package identity and status. fm/cache is a Financial Media (treehouselabs lineage) cache abstraction for Laravel, MIT-licensed, last released 2014-05-16, archived upstream, and explicitly superseded by treehouselabs/cache. It has zero stars and zero dependents — there is no community, no field evidence of production use, and no downstream ecosystem to inherit bug fixes from.

Architecture fit. The package targets the Laravel 4.x / early 5.0 era (PHP 5.3–5.5 idioms, illuminate/support ~4.x–5.0 constraints, service-provider registration typical of that generation). Modern Laravel already ships Illuminate\Contracts\Cache\Repository, cache tags, atomic locks, cache events, and PSR-16 adapters via symfony/cache. Introducing fm/cache today would create a parallel caching abstraction that does not compose with the container bindings, Octane lifecycle, or cache event listeners an application already relies on. Fit for any supported Laravel version: poor to none.

Integration feasibility. Composer-installable in principle, but practical installation requires either --ignore-platform-reqs, a vcs repository entry, or a full fork — because the archived composer.json will not satisfy PHP 8.x or modern illuminate/* constraints. There is no visible CI, test suite, or documentation to validate behavior. Any integration therefore transfers ownership of the code to us on day one.

Technical risk. High across every axis: unmaintained (12+ years), no security-response channel, dependency rot against current PHP/Laravel, deprecated language constructs (each(), curly-brace array access, untyped signatures) that will fatal on PHP 8+, and no upgrade path authored by anyone but us. The supersession notice is the decisive signal — the original authors judged it unfit and replaced it.

Key questions.

  • What concrete requirement does this satisfy that Laravel's native cache or PSR-16/PSR-6 does not?
  • Is there an existing legacy application pinned to it, and what is that application's Laravel/PHP version?
  • Does the named successor treehouselabs/cache share the public API, and is it also archived?
  • Who would own the fork, and what is the funded exit plan and timeline?
  • Is the underlying need a cache driver (Redis, Memcached, DB) rather than an abstraction layer?

Integration Approach

Stack fit. Only a legacy Laravel 4.x/5.0 codebase on PHP 5.x is a candidate. For Laravel 8+ or PHP 8+, there is no viable fit and the evaluation should terminate here.

Migration path. Sequence the decision, not the install:

  1. Identify the requirement — cache abstraction, tag support, or a specific backend driver.
  2. Default to native Illuminate\Support\Facades\Cache plus a PSR-16 adapter (symfony/cache) for framework-agnostic code.
  3. If a drop-in API shim is genuinely required, evaluate treehouselabs/cache first; if it is also archived, treat the successor as equally unsupported and skip it.
  4. If forced to retain fm/cache, hide it behind an internal CacheGateway interface so the implementation is swappable without touching call sites.

Compatibility. Expect to fork and patch: PHP 8 compatibility (typed signatures, removed functions, string-offset syntax), updated illuminate/* constraints, and PSR-4 autoload verification. Budget a spike of roughly half a day to confirm the package even boots under the target runtime before committing to any plan.

Sequencing. (a) Timeboxed spike in an isolated branch — confirm autoload, container binding, and a read/write round-trip; (b) wrap behind an internal interface; (c) ship only to the legacy path, never to new code; (d) schedule replacement within one to two sprints and track it as technical debt with an owner and a date.

Operational Impact

Maintenance. Zero upstream maintenance — the repository is archived, so no PRs, no releases, no CVE intake. We become the de facto maintainer of a fork. Budget roughly one to three engineer-days per year for PHP/Laravel upgrade patches, plus unbounded incident time if a cache-layer defect surfaces in production.

Support. No vendor, no maintainer, no community (0 stars, 0 dependents means no Stack Overflow corpus and no peer debugging). Institutional knowledge will be confined to whoever reads the source; that is a single-point-of-failure risk that must be mitigated with an internal README and a named owner.

Scaling. The package is a thin abstraction, so throughput and memory characteristics are inherited from whatever driver sits underneath. What it does not provide is observability — no hit/miss metrics, no tracing hooks, no structured logging. Any capacity planning or SLO on cache hit rate must be instrumented at the adapter layer we write ourselves.

Failure modes. Silent cache misses returning null and degrading to origin load; serialization-format drift across deploys producing stale or unreadable entries; autoload/namespace collisions with newer Illuminate cache classes; hard fatals on PHP upgrade; and absent security patching, which is the highest-severity exposure given cache layers often hold session or serialized payload data.

Ramp-up. Low to learn the API surface (it is small), high to reconstruct intent and edge-case behavior from 2014 source. Onboarding cost is front-loaded documentation work we must author. Net recommendation: do not adopt; if a legacy dependency forces it, isolate behind an interface, timebox the exposure, and fund the replacement now rather than after the next PHP upgrade.

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.
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels
wazza/laravel-db-encryption
hokny/laravel-generator
vonsogt/backup
jengo/queues
jeremykenedy/laravel-observability
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums