- How do I install esplora/memento in a Laravel application?
- Install esplora/memento with Composer, then confirm your application meets the package's composer.json constraints before enabling it on Eloquent models. The overview describes drop-in integration with existing models and no schema changes, but you should still review the repository README for any required trait or configuration steps. For 3.0.0, target a Laravel 10 and PHP 8.2 host application. Pin the installed version and test in a branch before production rollout.
- Which Laravel and PHP versions does esplora/memento support?
- Release 3.0.0 is aligned with Laravel 10, PHP 8.2, and PHPUnit 10. Because this is a major version, treat it as a compatibility boundary rather than a drop-in update for every Laravel app. Applications on Laravel 9 or PHP 8.1 should verify constraints and may need to stay on 2.x until the host app is upgraded.
- Does Memento automatically create versions when an Eloquent model is created, updated, or deleted?
- Yes. The package captures a snapshot of Eloquent model state on create, update, and delete, according to its overview. That lets you restore previous versions or roll back accidental updates with a single call. Confirm the exact event and transaction behavior in the source or README for your model lifecycle.
- How do I restore a model to a previous version with esplora/memento?
- Memento is designed to restore a model to a previous state with a single call, but the exact method name and return behavior should be confirmed in the package documentation. Plan to test restore flows around create, update, and delete events in a non-production environment. If your models use observers, transactions, or custom lifecycle hooks, validate that restore behaves as expected.
- Can I choose which model attributes are tracked and how many snapshots are retained?
- Yes. Memento supports configurable tracked attributes and retention, so you can limit which fields are versioned and how much history is kept. Check whether configuration is publishable in 3.0.0 and how retention is enforced, since the release notes are sparse. For production, combine retention settings with archival and indexing reviews if snapshot volume grows.
- Does esplora/memento require database schema changes or migrations?
- The package overview says Memento uses lightweight storage with no schema changes, which makes it appealing for existing Eloquent models. However, 3.0.0 release notes are sparse, so verify whether any publishable migrations, configuration changes, or storage requirements apply to your version. Always run the host application test suite after installation.
- Is esplora/memento suitable for production audit history and accidental update rollback?
- Memento can support simple audit history and rollback workflows, but it is not a substitute for a full compliance audit system without further review. Evaluate write amplification, history table growth, indexing, retention, and transaction overhead against expected production volumes. Load-test with representative data and keep a pinned package version and rollback plan.
- How should I upgrade esplora/memento from 2.x to 3.0.0?
- Treat 2.x to 3.0.0 as a major upgrade, not a patch. Review the full changelog, PR diff, and Composer constraints, then upgrade in an isolated branch with composer update and any required migration or configuration steps. Run the full application test suite plus package-specific workflows, validate in staging, and pin 3.0.0 before production.
- Will Memento conflict with existing Eloquent traits, observers, or model lifecycle hooks?
- Memento is described as drop-in integration with existing Eloquent models, so it should be evaluated alongside your current traits, observers, and model events. Because version 3.0.0 notes do not document behavior changes, test create, update, delete, and restore paths carefully. Pay particular attention to transactions and queue or worker interactions if snapshots are written during background jobs.
- What should I consider before choosing esplora/memento over other Laravel versioning packages?
- Compare esplora/memento with other Laravel versioning or audit packages by checking maintenance cadence, documentation quality, upgrade guides, retention controls, and database impact. Memento's strengths are automatic Eloquent snapshots and single-call restore, but the thin 3.0.0 release notes make source review important. If the package is business-critical, assign an internal owner and monitor upstream issues and security response.