- BREAKING: Synchronous functions are now available only on client side
- BREAKING: Migration functions for past versions are no longer available
- Removed deprecated publication of legacy role assignments
- UI Helpers now use
console.debug
for debugging messages
RolesCollection
and RoleAssignmentsCollection
can now be exported in addition to being accessed via Meteor.roles
and Meteor.roleAssignment
- Support for Meteor 3
- Bump
blaze
weak dependency to v2.7.1
- Bring types to the core and update them #365 @storytellercz
- If you use Meteor 2.8+ indexes are now created using the new async method #366 @storytellercz
- Use the new
createIndex
instead of _ensureIndex
if available
- Update dependencies
- Made compatible with Meteor 2.3
- Update dependencies
- Update roles_common.js jsdoc documentation #321(@kulttuuri)
- Function
userIsInRole
should return false if a function is given as user #324(@Floriferous)
- Fixed fails like
rev.push is not a function
and number 1 is not iterable (cannot read property Symbol(Symbol.iterator))
calling Roles.getRolesForUser()
- Republish without dev-dependencies
Roles.getRolesForUser()
should not fail during a call of Roles.addUsersToRoles()
#311 (@ggerber)
- New option
onlyScope
on getUsersInRole() returning only users having this role in a scoped assignment #298
- Allow setUserRoles() to replace the roles of all scopes #294
- Role assignments have been moved from the
users
documents to a separate collection called role-assignment
, available at Meteor.roleAssignment
.
- Role assignments are not published automatically. If you want all your role-assignments to be published automatically please include the following code:
Meteor.publish(null, function () {
if (this.userId) {
return Meteor.roleAssignment.find({ 'user._id': this.userId });
} else {
this.ready()
}
})
- [BC] The behavior of
getRolesForUser()
used with the option fullObjects
changed. In case you need the old behavior ...
- Added option
anyScope
to removeUsersFromRoles()
- Add option
onlyScoped
to getRolesForUser()
to allow limiting the result to only scoped permissions
- All functions (excepted for those listed above) work with 2.x arguments, but in 3.x accept extra arguments and/or options.
- Details and reasoning can be found in #276