Page MenuHomePhabricator

Hard-deprecate manual construction of Language objects (and enforce @internal in MediaWiki 1.44)
Closed, ResolvedPublic

Description

Calling Language::__construct (or the constructor of a sub class) is deprecated since 1.35 https://gerrit.wikimedia.org/r/c/mediawiki/core/+/450996
The LanguageFactory services has to be used instead.

Replace usage and hard-deprecate the constructor.

It seems it is still called in test code

CodeSearch: https://codesearch.wmcloud.org/search/?q=%5CbLanguage%5Cw%7B0%2C8%7D%5Cs*%5C%28%5Cs*%5C%29&files=&excludeFiles=&repos=

Event Timeline

Change 946967 had a related patch set uploaded (by Lucas Werkmeister (WMDE); author: Lucas Werkmeister (WMDE)):

[mediawiki/extensions/Wikibase@master] tests: Avoid constructing Language directly

https://gerrit.wikimedia.org/r/946967

Change 946967 merged by jenkins-bot:

[mediawiki/extensions/Wikibase@master] tests: Avoid constructing Language directly

https://gerrit.wikimedia.org/r/946967

Change #1055547 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/extensions/CirrusSearch@master] tests: Use content language instead of instance Language object

https://gerrit.wikimedia.org/r/1055547

Change #1055548 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/extensions/Cite@master] tests: Use LanguageFactory to create qqx language

https://gerrit.wikimedia.org/r/1055548

Change #1055549 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/extensions/AbuseFilter@master] tests: Use LanguageFactory to create en language

https://gerrit.wikimedia.org/r/1055549

Change #1055550 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/core@master] tests: Use LanguageFactory in ConverterRuleTest

https://gerrit.wikimedia.org/r/1055550

Change #1055551 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/core@master] tests: Use content language in DefaultPreferencesFactoryTest

https://gerrit.wikimedia.org/r/1055551

Change #1055552 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/core@master] Hard-deprecate manual construction of Language objects

https://gerrit.wikimedia.org/r/1055552

Change #1055553 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/core@master] tests: Use LanguageFactory in FormatMetadataTest

https://gerrit.wikimedia.org/r/1055553

Change #1055549 merged by jenkins-bot:

[mediawiki/extensions/AbuseFilter@master] tests: Use LanguageFactory to create en language

https://gerrit.wikimedia.org/r/1055549

Change #1055548 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] tests: Use LanguageFactory to create qqx language

https://gerrit.wikimedia.org/r/1055548

Change #1055553 merged by jenkins-bot:

[mediawiki/core@master] tests: Use LanguageFactory in FormatMetadataTest

https://gerrit.wikimedia.org/r/1055553

Change #1055547 merged by jenkins-bot:

[mediawiki/extensions/CirrusSearch@master] tests: Use content language instead of instance Language object

https://gerrit.wikimedia.org/r/1055547

Change #1055550 merged by jenkins-bot:

[mediawiki/core@master] tests: Use LanguageFactory in ConverterRuleTest

https://gerrit.wikimedia.org/r/1055550

Change #1055551 merged by jenkins-bot:

[mediawiki/core@master] tests: Use content language in DefaultPreferencesFactoryTest

https://gerrit.wikimedia.org/r/1055551

Change #1055552 merged by jenkins-bot:

[mediawiki/core@master] Hard-deprecate manual construction of Language objects

https://gerrit.wikimedia.org/r/1055552

Umherirrender renamed this task from Hard-deprecate manual construction of Language objects (and enforce @internal a release later) to Hard-deprecate manual construction of Language objects (and enforce @internal in MediaWiki 1.44).Jul 26 2024, 8:34 PM
Umherirrender changed the task status from Open to Stalled.
Umherirrender removed Umherirrender as the assignee of this task.
Umherirrender added a project: MW-1.44-release.
Umherirrender moved this task from Blocker to Deprecate or remove on the MW-1.44-release board.

Change #1062115 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/extensions/ProtectionIndicator@master] Use LanguageFactory to create english language object

https://gerrit.wikimedia.org/r/1062115

Change #1062116 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/extensions/AutoModerator@master] tests: Use mocked language object

https://gerrit.wikimedia.org/r/1062116

Change #1062116 merged by jenkins-bot:

[mediawiki/extensions/AutoModerator@master] tests: Use mocked language object

https://gerrit.wikimedia.org/r/1062116

Change #1062115 merged by jenkins-bot:

[mediawiki/extensions/ProtectionIndicator@master] Use LanguageFactory to create english language object

https://gerrit.wikimedia.org/r/1062115

Umherirrender changed the task status from Stalled to Open.Oct 22 2024, 5:55 PM

Change #1131443 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/core@master] language: No longer support manual construction of Language objects

https://gerrit.wikimedia.org/r/1131443

Change #1131443 merged by jenkins-bot:

[mediawiki/core@master] language: No longer support manual construction of Language objects

https://gerrit.wikimedia.org/r/1131443