Upgrading from v1 to v2
LmcRbac v2 is a major version upgrade with many breaking changes that prevent straightforward upgrading.
Namespace change
The namespace has been changed from LmcRbac to Lmc\Rbac.
Please review your code to replace references to the LmcRbac namespace
by the Lmc\Rbac namespace.
LmcRbac is based on laminas-permissions-rbac
LmcRbac is now based on the role class and interface provided by laminas-permissions-rbac which provides a hierarchical role model only.
Therefore the Role, HierarchicalRole classes and the RoleInterface and HierarchicalRoleInterface have been removed
in version 2.
The PermissionInterface interface has been removed as permissions in laminas-permissions-rbac as just strings or any
objects that can be casted to a string. If you use objects to hold permissions, just make sure that the object can be
casted to a string by, for example, implementing a __toString() method.
Refactoring the factories
The factories for services have been refactored from the LmcRbac\Container namespace
to be colocated with the service that a factory is creating. All factories in the LmcRbac\Container namespace have
been removed.
Refactoring the Assertion Plugin Manager
The AssertionContainer class, interface and factory have been replaced by AssertionPluginManager class, interface and factory.