NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #224 most downloaded on Packagist
Permission handling for Laravel 12 and up
Last release 3 months ago
03 Jul 2026
Ships fairly regularly
a new release about every 4 weeks
Nearly every release is documented
notes for 59 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
224 releases · first in 2015
hasanyrole and hasallrole can accept multiple roles
hasanyrole and hasallrole can accept multiple rolesfixed a bug where hasPermissionTo wouldn't use the right guard name
hasPermissionTo wouldn't use the right guard namefixed a bug that didn't allow you to assign a role or permission when using multiple guards
One column per quarter.
add model_type to the primary key of tables that use a polymorphic relationship
model_type to the primary key of tables that use a polymorphic relationshipfixed a bug where the role()/permission() relation to user models would be saved incorrectly
check for duplicates when adding new roles and permissions
fix the order of the foreignKey and relatedKey in the relations
foreignKey and relatedKey in the relationsremoved deprecated hasPermission method
HasRoles traithasPermission methodlaravel-permission to permission.Nothing published for this version
- added support for Laravel 5.7
Nothing published for this version
- added support for Laravel 5.6
Nothing published for this version
fixed Gate::before for custom gate callbacks
Gate::before for custom gate callbacksrefactor PermissionRegistrar to use $gate->before()
PermissionRegistrar to use $gate->before()log_registration_exception as it is no longer relevantadded compatibility for Laravel 5.5
made foreign key name to users table configurable
hasPermissionTo uses the cache to avoid extra queries when it is called multiple times
hasPermissionTo uses the cache to avoid extra queries when it is called multiple timesadd getDirectPermissions, getPermissionsViaRoles, getAllPermissions
getDirectPermissions, getPermissionsViaRoles, getAllPermissions- add hasAnyPermission
hasAnyPermissionadd log_registration_exception in settings file
log_registration_exception in settings fileid when using the role scopehasDirectPermission method is now public
hasDirectPermission method is now public- added support for Laravel 5.4
make exception logging more verbose
- added Role scope
Role scopemoved some things to boot method in SP to solve some compatibility problems with other packages
boot method in SP to solve some compatibility problems with other packages- make compatible with L5.3
fixes givePermissionTo and assignRole in Laravel 5.1
givePermissionTo and assignRole in Laravel 5.1this version does not work in Laravel 5.1, please upgrade to version 1.5.1 of this package
** this version does not work in Laravel 5.1, please upgrade to version 1.5.1 of this package
givePermissionTo to accept multiple permissionsassignRole to accept multiple rolessyncPermissions-methodsyncRoles-methodadded hasPermissionTo function to the Role model
hasPermissionTo function to the Role modelhasAnyRole can now properly process an array
hasAnyRole can now properly process an arrayhasDirectPermission can now accept a string
hasDirectPermission can now accept a string- fixed user table configuration
fixed bug when testing for non existing permissions
added compatibility for Laravel 5.2
use database_path to publish migrations
###Added - support for custom models
###Added
hasAllRoles()- and hasAnyRole()-functions
hasAllRoles()- and hasAnyRole()-functionsFix for running phpunit locally
Fixed the inconsistent naming of the hasPermission-method.
hasPermission-method.### Added - Everything, initial release
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →