Skip to content

User::addGroup() and User::removeGroup() deprecated in MediaWiki 1.44 #32

@ffischa

Description

@ffischa

Bug Description

The extension throws a fatal error when a user with admin groups logs into
MediaWiki 1.44.x:

Error: Call to undefined method MediaWiki\User\User::addGroup()

Environment

  • MediaWiki: 1.44.2
  • Extension branch: master
  • SMF: 2.1.x

Cause

User::addGroup() and User::removeGroup() were removed in MediaWiki 1.44.
The calls are located in ForumSsoProvider.php at lines 606 and 617.

Fix

Replace the deprecated calls with the UserGroupManager service:

Line 606 - replace:
$this->wikiMember->addGroup($wiki_group_name);

with:
MediaWiki\MediaWikiServices::getInstance()->getUserGroupManager()
->addUserToGroup($this->wikiMember, $wiki_group_name);

Line 617 - replace:
$this->wikiMember->removeGroup($wiki_group_name);

with:
MediaWiki\MediaWikiServices::getInstance()->getUserGroupManager()
->removeUserFromGroup($this->wikiMember, $wiki_group_name);

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions