Commit graph

333 commits

Author SHA1 Message Date
jenkins-bot
9ba29602e7 Merge "tests: Remove deprecated MediaWikiIntegrationTestCase::addCoreDBData" 2024-08-30 21:38:53 +00:00
Aaron Schulz
3833d2d3d3 rdbms: remove deprecated MaintainableDBConnRef class
Bug: T373655
Change-Id: I1d1ccb862d4356af146ee39f0fd4081acd82a9ce
2024-08-30 01:19:51 +00:00
C. Scott Ananian
0450b5e4d5 Add double-px-category tracking category for deprecated image size syntax
For decades MediaWiki has allowed "extra" px modifiers in image size
specifications, for example `100pxpx`.  It has been suggested since at least
2008 (T15500#174968) that this behavior should be deprecated.  This is
not localized, so (for example) on eowiki we allow `100rapx` as well (!).

As one small step toward eventually removing this weird corner case behavior
add a tracking category whenever it is used on wiki.

In the process, emit deprecation warnings for
ImageGalleryBase::setWidths() or ::setHeights() if called without
ImageGalleryBase::setParser() having been set.  The ::setParser() method
already includes in its documentation that "If you do not set this and
the output of this gallery ends up in parser cache, the javascript will
break!", so please set the parser appropriately.

Bug: T15436
Bug: T15500
Bug: T372935
Change-Id: If86d949189a7d105595404d21447477499873b03
2024-08-29 17:54:38 -04:00
jenkins-bot
01abfbfcbd Merge "Add option to sort categories in OutputPage" 2024-08-29 17:03:13 +00:00
C. Scott Ananian
493df826b9 Add option to sort categories in OutputPage
Some wikis treat the category list from ParserOutput as a /set/, others
as an /ordered list/.  For those who don't care about the order of
categories, provide the option for wikis to sort the categories
in OutputPage.

This can also be activated with a query parameter, `&sortcat=1`, which
is useful to the Parsoid team when doing visual diff testing to avoid
false positives caused by differences in category ordering.

Bug: T373480
Change-Id: Idd14650a1898c6a49c88441ef024ce3012903bbe
2024-08-29 12:20:19 -04:00
jenkins-bot
3bd23512a3 Merge "ResourceLoader: Update wikimedia/minify to 2.8.0" 2024-08-29 08:55:01 +00:00
jenkins-bot
e201b5414f Merge "PasswordReset: remove $wgAllowRequiringEmailForResets feature flag" 2024-08-29 02:13:46 +00:00
jenkins-bot
b79875fb14 Merge "Deprecate OutputPage::setCategoryLinks()" 2024-08-28 18:42:15 +00:00
James D. Forrester
de99e33829 RELEASE-NOTES-1.43: Move MessageContent entry to correct section
Removal is a breaking change, not a deprecation.

Change-Id: If628548aa38b290dad2ab216e74c69946e881061
2024-08-28 10:59:41 -04:00
Amir E. Aharoni
3a275a80aa Add Haryanvi language (bgc)
Bug: T364737
Change-Id: Ic88ea60db67ed32dd8ac4534025f71537b1d0e11
2024-08-28 14:12:16 +00:00
MusikAnimal
ef14cd41c3 PasswordReset: remove $wgAllowRequiringEmailForResets feature flag
Update a few tests that relied on the feature flag to ignore
the 'requireemail' preference on "User1" to instead use "User2",
who doesn't have the preference set.

Bug: T242406
Change-Id: I996d3996272d704a071d1d2094c3568247b80f98
2024-08-28 00:55:43 +02:00
C. Scott Ananian
3739467256 Deprecate OutputPage::setCategoryLinks()
This method has a weird behavior where it resets the category *link* list
while not resetting the category *list*.  It turns out that no one actually
needs that weird behavior; in fact no one needs this method at all, since
the only external user is the Translate extension, which could use the
OutputPage::addCategoryLinks() method instead, which has existed since
2014 (Id25041a7891f588ffa787fdd2c092342eecd30c8).

Deprecate this method with warnings.

Bug: T373480
Depends-On: Id25041a7891f588ffa787fdd2c092342eecd30c8
Change-Id: I7b07d761eb8cd5ad1e6da2dd836e969a0d492c2b
2024-08-27 22:42:09 +00:00
James D. Forrester
3c331f4155 RELEASE-NOTES: Add entry for @vue/composition-api removal
Follow-up to 33c8f3cce2.

Change-Id: I2b19accd1f1d096752bd0b8c3d9abcf074fa5e9d
2024-08-27 07:48:49 -04:00
jenkins-bot
3abfedbcbb Merge "auth: Add AuthManagerVerifyAuthentication hook" 2024-08-27 01:16:31 +00:00
jenkins-bot
8cf23d37ef Merge "auth: Add AuthManagerFilterProviders hook" 2024-08-27 01:16:14 +00:00
Gergő Tisza
e3cea8e11f auth: Add AuthManagerVerifyAuthentication hook
Add a new hook that can be used to prevent authentication just
before AuthManager takes the main action (writing the session
for login, creating the local user account for account creation).

The driving use case is a wiki which supports both a local and
a central (wiki-farm-level) login or signup flow - various
security options (such as 2FA) are needed during local login
but unnecessary during central login (which will have those
security features centrally), so we need to skip much of the
security when the user is taking the central route, and a bug
in how that's done could result in circumvention of security
features during local login. The hook makes it easy to inspect
and potentially interrupt login near the end, when we know for
sure what route it took. (Specifically, we know which primary
provider was used. The hook doesn't expose other details,
such as the list of preauth or secondary provders that were
invoked, because they were not needed for the immediate use
case, but they are easy to add in the future.)

The hook is called after the secondary providers for login
and before them for account creation, since secondaries can
interrupt login but cannot interrupt account creation.

A shortcoming is that since the hook is called after a primary
provider succeeded, it cannot prevent the primary provider from
doing work, ie. it cannot prevent creation of the remote account
during account creation (although it will prevent the creation
of the local account). This is not great but acceptable, since
creating a new account isn't very security-sensitive.
This also means the hook would not be useful during account
linking, as AuthManager does not do anything there, all the work
happens in the primary provider. This is even less great but
few authentication extensions implement account linking.

The hook is not called for authentication happening via
CreatedAccountAuthenticationRequest, which is a weird internal
hack hook handlers should not have to know about.

Also rename a confusingly named variable.

Change-Id: I835b2fe2f43e6e81f23348165cbb9c93832e6583
2024-08-26 23:57:31 +00:00
Gergő Tisza
cde00b5585 auth: Add AuthManagerFilterProviders hook
Allow disabling authentication providers. This allows for
extensions to replace core providers with their own.

This is using the $wgAuthManagerAutoConfig keys instead of
AuthenticationProvider::getUniqueId() as the keys to filter.
This makes it more useful for site administrators, and also
it's probably the better known of the two identifiers so
more intuitive.

No effort is made to prevent the hook from filtering
differently in different steps of the same authentication
process.

Bug: T369180
Change-Id: If5435b54a4fc08f685c04fc10eb44c6d72cd78fa
2024-08-26 23:56:49 +00:00
jenkins-bot
1f51694472 Merge "rdbms: Remove deprecated DB_MASTER / ILoadBalancer::DB_MASTER" 2024-08-26 23:19:24 +00:00
jenkins-bot
1b1a1b75ba Merge "Remove deprecated 'mediawiki.pager.tablePager' module" 2024-08-25 21:39:21 +00:00
Umherirrender
06f33763be tests: Remove deprecated MediaWikiIntegrationTestCase::addCoreDBData
Change-Id: I209d72de8131678dc02eb299e9ed2dee1fd81f9a
2024-08-25 23:16:07 +02:00
Umherirrender
4dc9a0ffea rdbms: Remove deprecated DB_MASTER / ILoadBalancer::DB_MASTER
Change-Id: Ida5505cd02a9cf6563e6fd1dcdd916ef982199a7
2024-08-25 22:55:15 +02:00
Ebrahim Byagowi
299240b008 Remove deprecated mediawiki.icon module
Bug: T351681
Change-Id: I99430c708b006436c600550dd661602c6aeccf3f
2024-08-25 23:56:31 +03:30
Ebrahim Byagowi
0c8ef42c4e Remove deprecated 'mediawiki.pager.tablePager' module
Deprecated since 1.38 in favor of the more generic
`mediawiki.pager.styles`.

Change-Id: Ie85cc47e3ac3020449ca6370d727017ae3f0daaf
2024-08-25 23:53:37 +03:30
jenkins-bot
5a0901ee8f Merge "deferred: Hard-deprecate LinksUpdate::getAddedLinks/getRemovedLinks" 2024-08-23 21:11:33 +00:00
Timo Tijhof
512eb521d5 ResourceLoader: Update wikimedia/minify to 2.8.0
https://gerrit.wikimedia.org/g/mediawiki/libs/Minify/+/2.8.0/CHANGELOG.md

Bug: T371938
Depends-On: Ib2f2530bd8df53eafafd74657d0040c8e1173e07
Change-Id: I4cc588e180c51eb854e15f465ebf21b432af122a
2024-08-23 20:56:59 +01:00
jenkins-bot
bc84e21947 Merge "ResourceLoader: Mark ResourceLoaderUseObjectCacheForDeps as deprecated" 2024-08-22 21:45:36 +00:00
Hannah Okwelum
ac60e5ac1e ResourceLoader: Mark ResourceLoaderUseObjectCacheForDeps as deprecated
Change-Id: Id9612183af87b70531dcc1e4f96b4e60d18be2b2
2024-08-22 21:03:07 +00:00
Winston Sung
e037af51b8 Languages: Add nan-latn-tailo (Minnan - Tâi-lô) to Names.php
First export in commit 5c6b75659f
(Change-Id Ied5002d2ca82a05d69e55442561f254f610e0d5c ).

Language codes nan, nan-hani, nan-latn will be used for language
converter codes.

Bug: T354937
Bug: T369899
Change-Id: If68512a24cac67daa033a634b1fb57d872d0039c
2024-08-22 03:56:56 +00:00
Roan Kattouw
01f5618757 Update Codex from v1.11.0 to v1.11.1
Bug: T314446
Bug: T365178
Bug: T366326
Bug: T370447
Bug: T370689
Bug: T371330
Bug: T371529
Bug: T372735
Bug: T372796
Change-Id: I904e19f3d58b4c1ec6c12c91992e81d77e463034
2024-08-20 17:10:30 -07:00
jenkins-bot
15e6280aa2 Merge "filebackend: remove unused LockManager::sha1Base16Absolute() method" 2024-08-20 17:30:02 +00:00
Aaron Schulz
f9008084ba filebackend: remove unused LockManager::sha1Base16Absolute() method
Introduced in 2013 by I939551bd228 (fdef79d9f2), and originally used
for PostgreSqlLockManager. This was removed again in Ia8f802b2c68
(2fa8eb2c80).

Change-Id: I7ae15703f919c9ff890056648aad8e86bccf34ab
2024-08-20 17:40:00 +01:00
Hannah Okwelum
393fa39db5 ResourceLoader: Turn on ResourceLoaderUseObjectCacheForDeps by default
Bug: T343492
Change-Id: I1e7dd95a1255437894e4bd9a1feb9ab354d952ca
2024-08-15 19:28:03 +00:00
jenkins-bot
aa7a7bf3e8 Merge "specialpage: Remove hard-deprecated QueryPage::getSQL" 2024-08-13 16:03:47 +00:00
Bartosz Dziewoński
62cfede3fa PermissionsError: Deprecate public properties
Follow-up to 298ec8382b, which replaced
`public $errors` with `public $status`, causing T372181.

* Add a deprecated fallback getter/setter for $errors
* Make $permission private and add a deprecated getter/setter
* Make $status private

Bug: T372181
Change-Id: If44b2256289d6bde9e9abb901d9dc145555c971f
2024-08-12 21:37:04 +02:00
James D. Forrester
658ea71777 Update composer/semver to 3.4.2
Bug: T370235
Depends-On: Ic4c091c149c445be3f8e4c2970726af095b82865
Change-Id: Id15a4d180a8381fa21e920c0e184f419e7ffa830
2024-08-11 13:12:00 +02:00
James D. Forrester
1b29886a32 build: Update mediawiki/mediawiki-codesniffer to 44.0.0
Change-Id: Ic83ac1282b1b0b414450aa69731a9efcc55db665
2024-08-11 13:08:16 +02:00
James D. Forrester
bc662aec9b Move Language and friends into Language namespace
Bug: T353458
Change-Id: Id3202c0c4f4a2043bf97b7caee081acab684155c
2024-08-10 13:36:30 +02:00
jenkins-bot
22163e47a7 Merge "Add MediaWiki\Registration namespace to registration classes" 2024-08-10 11:33:27 +00:00
jenkins-bot
2c98129419 Merge "Move remaining four classes in includes/content into Content namespace" 2024-08-10 11:11:26 +00:00
jenkins-bot
90b2efa829 Merge "Deprecate more methods dealing with legacy error arrays" 2024-08-10 10:38:16 +00:00
jenkins-bot
dca6a2bad9 Merge "Hard-deprecate ParserOutput::addJsConfigVars(), deprecated in 1.38" 2024-08-10 10:21:28 +00:00
Ebrahim Byagowi
697e19e461 Add MediaWiki\Registration namespace to registration classes
Bug: T353458
Change-Id: Ifa3b6a6e0353bb4ce21a3f4456f1fc696c8d377c
2024-08-10 10:08:22 +00:00
James D. Forrester
f7ce0a0976 Move remaining four classes in includes/content into Content namespace
Bug: T353458
Change-Id: Ia0f3e22078550be410c4b87faf6aa4eabe6e270d
2024-08-10 10:40:53 +02:00
James D. Forrester
6df7a51484 Drop MessageContent, deprecated since 1.38
Change-Id: Ib53d4a04e6faa82b0ea553221e6c0c827f36017a
2024-08-10 09:28:37 +02:00
jenkins-bot
2bd0e2db3d Merge "ResourceLoader: Update wikimedia/less.php from 5.0.0 to 5.1.1" 2024-08-09 22:06:06 +00:00
Hannah Okwelum
4adf38f734 ResourceLoader: Update wikimedia/less.php from 5.0.0 to 5.1.1
Depends-On: I878d1b0a5de262b49939c3a5b5b20c52617b35af
Change-Id: I174360056f611d07390755f5f605dd0467c545a1
2024-08-09 20:46:17 +00:00
Bartosz Dziewoński
3d40cde987 Deprecate more methods dealing with legacy error arrays
* PermissionStatus::toLegacyErrorArray() (soft-deprecated)
* OutputPage::showPermissionsErrorPage() (hard-deprecated)
* OutputPage::formatPermissionsErrorMessage() (hard-deprecated)

Depends-On: I5493deb8b72f499ecd46b8093b5fffbb12e7c246
Depends-On: Iee1dd844d36037982b9927e95d7519da87251ca1
Depends-On: Ic217af5f9766ae2d7850597a4aec1a890d58766f
Depends-On: I62c324b656ab4262fd3f4e252057802a5367f8f9
Change-Id: Ia2d590779176ae060a0567a143697436230c67a9
2024-08-09 17:30:21 +02:00
jenkins-bot
81e5c7a09c Merge "RELEASE-NOTES: Add missing "Languages updated"" 2024-08-09 14:24:59 +00:00
C. Scott Ananian
8212f8c67d Hard-deprecate ParserOutput::addJsConfigVars(), deprecated in 1.38
It is difficult to distinguish this method from OutputPage::addJsConfigVars()
in code search:

  https://codesearch.wmcloud.org/search/?q=%5BOo%5Dut%28put%29%3F%28%5C%28%5C%29%29%3F-%3EaddJsConfigVars%5C%28

We generally try to replace $output with $parserOutput or $pOutput
as we touch code, to improve the ability of codesearch to dig up
deprecated ParserOutput methods.

A future project will unify those parts of OutputPage which duplicate
ParserOutput: T301020.

Bug: T300307
Bug: T305161
Depends-On: I39ae7d7a40190eedaa024097a6442cd02b6a02e7
Depends-On: I2c660972b289bbad730ceee1325d70d5ba75d27e
Change-Id: I53c28ee7c80b889c893c1d00f37678e716e55783
2024-08-09 14:04:38 +02:00
Alex
ac82eb2627 Deprecate the 'help' key in form descriptors in favor of 'help-raw'
This new key name should better signal to developers that this key
will be used as-is without escaping

Bug: T356971
Change-Id: I98849b2e45cc4555eca7674875b9bed89f128310
2024-08-09 13:47:45 +02:00