Mailing List Archive

Breaking changes without deprecation to MediaWiki File class
Hello all,

The following breaking changes will be made without deprecation in MediaWiki 1.37 release [1]:
- File::deleteFile - will accept UserIdentity instead of User
- File::getDescription - will accept Authority instead of User
- File::userCan - will accept Authority instead of User
- LocalFile::deleteOldFile - will accept UserIdentity instead of User

The parameter types in method signatures have been widened, so callers of these methods will not be affected.
However, these methods are marked as “@stable to override” per Stable Interface Policy [1] and widening
the parameter type hints will break classes overriding the aforementioned methods. However, according to
codesearch [2] none of these methods are overridden by anything in MediaWiki ecosystem.

Please reach out on Gerrit or on this mailing list if you have concerns about the proposed change.
Best regards, Petr Pchelko

[1] https://gerrit.wikimedia.org/r/c/mediawiki/core/+/677014 <https://gerrit.wikimedia.org/r/c/mediawiki/core/+/677014>
[2] https://www.mediawiki.org/wiki/Stable_interface_policy <https://www.mediawiki.org/wiki/Stable_interface_policy>[3] https://codesearch.wmcloud.org/search/ <https://codesearch.wmcloud.org/search/>