overtrue/laravel-versionable
Laravel Versionable is a minimalist package that adds version history to your Eloquent models. Track only changed attributes, keep a set number of versions, whitelist or blacklist fields, and easily revert to any specified version.
withoutVersion() so the previous versioning state is always restored when a callback throws, including nested calls and already-disabled models.Backwards-compatible patch for Laravel 13 and PHP 8.3+.
Validation: 53 tests / 226 assertions; all 10 post-merge CI jobs passed across PHP 8.3, 8.4, and 8.5.
PR: https://github.com/overtrue/laravel-versionable/pull/117 CI: https://github.com/overtrue/laravel-versionable/actions/runs/37580489545
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.4.0...5.5.0
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.3.3...5.4.0
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.3.2...5.3.3
Added Version::isLatest().
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.2.7...5.3.0
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.2.6...5.2.7
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.2.5...5.2.6
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.2.3...5.2.4
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.2.2...5.2.3
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.2.1...5.2.2
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.2.0...5.2.1
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.1.4...5.2.0
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.1.2...5.1.3
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.1.1...5.1.2
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.1.0...5.1.1
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/5.0.0...5.1.0
oldestVersions()latestVersions()setVersionStrategy(string $strategy) now accept string or enum class: setVersionStrategy(string|VersionStrategy $strategy).VersionStrategy::SNAPSHOT will no longer contain all model attributes, but only all $versionable attributes.VersionStrategy::DIFF strategy.history() and replaced with latestVersions()Full Changelog: https://github.com/overtrue/laravel-versionable/compare/4.5.0...4.6.0
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/4.5.0...5.0.0-beta.1
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/4.4.0...4.5.0
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/4.3.0...4.4.0
Full Changelog: https://github.com/overtrue/laravel-versionable/compare/4.2.1...4.3.0
How can I help you explore Laravel packages today?