fix(Permissions): toArray shouldn't check admin #7144
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Please describe the changes this PR makes and why it should be merged:
When a member is an administrator, he does have all permissions but it's still possible to add/remove other permissions. Although it doesn't have any effect, the bitfield is still different and the
toArray()
method should return the permissions of the bitfield.This can be done by passing
false
to thetoArray()
call.This change also resolves #6267, which seems a regression added in #5911.
I've also considered defaulting the
checkAdmin
parameter to false inPermissions#toArray()
but it would be inconsistent with other methods and useless as I don't see any use case where an array with all the flags is needed for an administrator and could be confused with a person with really every permission.Status and versioning classification: