Commit graph

3833 commits

Author SHA1 Message Date
jenkins-bot 96b4903da4 Merge "Stop sampling when Reference Previews is enabled" 2019-10-25 11:06:30 +00:00
Thiemo Kreuz ed8dee9bfe Move unrelated static code to ApiQueryReferences
I tried to avoid unrelated refactorings. The only thing I ended doing
is turning a huge if-else around into a guard-clause.

Main motivation here is:
* Make the huge, almost 2000 line Cite class smaller.
* Turn public code into private implementation details.

Bug: T236260
Change-Id: Ifca28040ae60d021a31aaee65417c7584627a975
2019-10-25 10:26:37 +00:00
jenkins-bot 2012944930 Merge "Move misplaced ParserFirstCallInit hook handler to CiteHooks" 2019-10-25 09:02:17 +00:00
jenkins-bot d67684dfe0 Merge "Make use of PHP7's ?? feature instead of isset()" 2019-10-25 08:52:51 +00:00
jenkins-bot 0ffdb0152e Merge "Streamline Hooks section in extension.json" 2019-10-25 08:52:50 +00:00
Thiemo Kreuz 28dd373d24 Move misplaced ParserFirstCallInit hook handler to CiteHooks
All other hook handlers are in the dedicated CiteHooks class.

Main motivation here is to make the huge Cite class smaller,
especially by removing static code that does not rely on anything
else the class does.

Bug: T236260
Change-Id: If0b3f6c989e44283428cda4b2c4d8d5303385d22
2019-10-25 10:34:35 +02:00
jenkins-bot f62736c58c Merge "Simplify private listToText() implementation" 2019-10-25 08:32:49 +00:00
jenkins-bot 714996d72a Merge "Fix capitalization mismatch in class name" 2019-10-25 08:28:40 +00:00
Thiemo Kreuz a037f76317 Streamline Hooks section in extension.json
Main motivation here is to make the list easier to read. We are not
going to have more than a single hook handler per hook anyway.

Bug: T236260
Change-Id: I72357a89402e6febfa1e99f825a3fd699c5561b7
2019-10-25 10:28:08 +02:00
Thiemo Kreuz ddafb6adee Make use of PHP7's ?? feature instead of isset()
Main motivation here is to make the code shorter and faster to read.

Bug: T236260
Change-Id: Ieddc0fe8a292f8f46e9f011a588946dcd063d53d
2019-10-25 10:19:08 +02:00
Thiemo Kreuz 7f99a1bfe1 Simplify private listToText() implementation
Motivation is to make the code shorter and faster to read, and also
perform better.

Bug: T236260
Change-Id: I9186370a628833c1563eb5fa4f2e062fb27d6ed7
2019-10-25 10:17:05 +02:00
Thiemo Kreuz 5acc1e5a2d Fix capitalization mismatch in class name
Change-Id: Id0f9331aecc8b26f4df78839cd43818c4221a5ff
2019-10-25 10:15:53 +02:00
Thiemo Kreuz b65e1bb238 Make use of ctype_digit() instead of a regex
Relevant edge-cases:
* ctype_digit() only works on strings. Anything else, including
integers, will make it return false.
* The empty string will return false.

Both is identical to what the code did before.

Motivation for this change is to streamline the code, and make it
smaller and faster to read.

Bug: T236260
Change-Id: I2d209347d16f2bde14b345c3f88ec64b081283cb
2019-10-25 10:12:39 +02:00
Adam Wight f6b5615e4b Stop sampling when Reference Previews is enabled
There are so few users with this configuration that we need to stop
sampling in order to get data.  Sampling is still in effect for
"baseline" users with the feature disabled.

We use separate schemas to simplify analytics on the two populations.

Bug: T214493
Change-Id: I16e4ed236e50e1e246ff28ff0dba3e52e4b56caf
2019-10-24 22:23:18 +02:00
jenkins-bot f743aa058e Merge "Explicitly demand MW 1.34+ so that we get PHP7.2+" 2019-10-24 13:15:11 +00:00
jenkins-bot 88266ade91 Merge "Refine some workflow related comments" 2019-10-24 13:07:55 +00:00
James D. Forrester 454827ff33 Explicitly demand MW 1.34+ so that we get PHP7.2+
Change-Id: Ie92d6d014e3a8c73ab0b74c798a99318b203d4f9
2019-10-24 15:01:47 +02:00
WMDE-Fisch 9196ccead7 Refine some workflow related comments
Change-Id: Ib7a6c4cc085d91fe27c96cbfd9c7035465149319
2019-10-24 14:38:46 +02:00
Adam Wight 5e8d48b331 Minimal support for bookreferencing tag
Allows the "refines" attribute when the feature flag is set, but doesn't
render.  This is part of our rollback strategy, so that we aren't left
with invalid wikitext in case of undeployment.

Bug: T236257
Change-Id: I936be0e62dccb46caeb84162d2c5166956fd9916
2019-10-24 12:24:36 +00:00
jenkins-bot 4373cb27af Merge "Feature flag for Book Referencing" 2019-10-24 09:56:39 +00:00
jenkins-bot ffa594c636 Merge "Migrate to extension registration version 2" 2019-10-24 09:56:38 +00:00
Adam Wight 6dc206440d Feature flag for Book Referencing
Bug: T236255
Change-Id: I3848eda89178c53af7eeaf87df4efad0f9987557
2019-10-24 09:37:58 +00:00
jenkins-bot bc7738733c Merge "Use waitForModuleState from Util class" 2019-10-24 09:03:44 +00:00
WMDE-Fisch 2f12ae1de4 Use waitForModuleState from Util class
Change-Id: I661aaa08cd48ab48435208323b50108be418815c
2019-10-24 10:48:32 +02:00
Adam Wight 42279a2328 Migrate to extension registration version 2
New manifest schema version requires some minor changes.

Bug: T236255
Change-Id: I9e9d047917c4118ceef1e5be21029d7838f49094
2019-10-24 10:42:18 +02:00
Translation updater bot 08f1f80802 Localisation updates from https://translatewiki.net.
Change-Id: Ia842aab67c90f4bb055da8d3a3862324fd7aebbe
2019-10-24 10:41:28 +02:00
WMDE-Fisch 0ecbf24548 build: Update dependencies
Change-Id: I6f4cfead297f9e47b6655530d672613369b43b64
2019-10-23 17:36:06 +02:00
Translation updater bot 547b52a872 Localisation updates from https://translatewiki.net.
Change-Id: Ieeb1779556b68eab215c3b885ce3a6256eadfa3e
2019-10-23 09:52:34 +02:00
Translation updater bot f6e1e2026e Localisation updates from https://translatewiki.net.
Change-Id: I65f12f0e05a95c30ee86486487e8e707a7907c11
2019-10-21 09:58:20 +02:00
jenkins-bot deed86229e Merge "Fix all PHPCS issues and add missing array type hints" 2019-10-17 09:29:15 +00:00
Thiemo Kreuz 3e2d1a23e0 Fix all PHPCS issues and add missing array type hints
* I used https://codesearch.wmflabs.org to make sure the private
constants are indeed not used anywhere.

* The added type hints are safe, as far as I can tell. There is no way
one of these parameters can contain anything else. Otherwise the code
would fail already.

Change-Id: Iaa7615e9864805760fa652700b58b69680b4f17e
2019-10-17 09:23:20 +02:00
Thiemo Kreuz 6daf49c9bc Fix rebase mistake in extension.json
This is a rebase mistake introduced with I7461ffd. Since If83420a this
module is not defined in extension.json any more, but in the
ResourceLoaderRegisterModules hook in PHP. This is done to be able to
dynamically change the contents of the module, depending on the
availability of anotehr extension.

I'm not exactly sure what happens when a module is defined twice. I
tried locally and it seems to work, with no visible error message.

Bug: T234605
Change-Id: I209e19bbc2184a6d58086a703145ad58671060b6
2019-10-17 09:01:25 +02:00
jenkins-bot 7e429b43f2 Merge "Remove unused ResourceLoader module ext.cite.a11y" 2019-10-16 19:02:28 +00:00
Translation updater bot ce4b86f7d8 Localisation updates from https://translatewiki.net.
Change-Id: I9508d5db2faa105a58df395629f62c380103d2d3
2019-10-16 20:38:18 +02:00
Thiemo Kreuz 34e3675d0f Remove unused ResourceLoader module ext.cite.a11y
As stated in the patch I26fe41c: "The separate ext.cite.a11y module
is kept for (temporary) compatibility with cached HTML, and should be
removed in about a month." That was almost a year ago.

Bug: T205270
Change-Id: I7461ffd61bea0b79a56b6ee9ce8315f5f6c39b7b
2019-10-16 11:36:02 -07:00
jenkins-bot f64ac926f1 Merge "Bundle tracking with another RL module" 2019-10-16 11:02:42 +00:00
Translation updater bot c4e93b6c89 Localisation updates from https://translatewiki.net.
Change-Id: Icbd0368d8e1b53b0cf43411c7de2b29f082d0767
2019-10-16 10:38:53 +02:00
Adam Wight 741f5dcdaa Bundle tracking with another RL module
This is slightly more efficient because it saves on early page-
load bandwidth.

Bug: T234605
Change-Id: If83420a9b4e654fd790e810fa82f922a8ba06e50
2019-10-10 10:44:50 +02:00
James D. Forrester b960d9d490 build: Upgrade mediawiki-codesniffer to v28.0.0
Change-Id: I46f055cd4e3e93b2232e119605d732bc3ab7bf0e
2019-10-09 19:03:50 +00:00
Translation updater bot b1eace5657 Localisation updates from https://translatewiki.net.
Change-Id: I06aee621c974e1e503442615f69aa2a7414d6807
2019-10-09 09:17:54 +02:00
Translation updater bot 959b57ac71 Localisation updates from https://translatewiki.net.
Change-Id: Ie14794768f1c3c6d680a96a41b0552fa10ebdc57
2019-10-08 09:31:59 +02:00
Ed Sanders f6950bcdc1 build: Update linters
Change-Id: I016f880e4e44a4550b9236d7c1701615203f4486
2019-10-07 16:24:49 +01:00
Translation updater bot 2205f82196 Localisation updates from https://translatewiki.net.
Change-Id: I645df905e96e01ff78e12ac212a63a3d3af49e62
2019-10-07 09:08:16 +02:00
Željko Filipin e85144e91a Selenium: make it possible to run daily Jenkins job targeting beta cluster
Add missing selenium-daily NPM script.

Bug: T199113
Change-Id: I85f723e08edf76655d8bd019508c0c5999fa43ab
2019-10-04 16:56:41 +02:00
jenkins-bot a9d30ab836 Merge "Baseline reference interaction tracking" 2019-10-04 09:45:10 +00:00
Volker E a759a1e58a Remove IE 6 & 7 specific hacks
Bug: T234582
Change-Id: I162d525208f8c9dfab6e316513825f046b0a223f
2019-10-03 18:51:47 -07:00
Adam Wight c12150082c Baseline reference interaction tracking
Collect EventLogging metrics for footnote and reference link
interactions, so that we can compare behavior with and without
Reference Previews enabled.

This tracking will be reverted once analysis is complete.

A mostly arbitrary sample rate of 1/1000 is hardcoded here.  This is
loosely based on the latest tuning of Popups sampling at 1/100,
divided by a conservative factor of 10 to ensure headroom.

The sample is skewed by skipping clients without sendBeacon support,
but we're avoiding the mw.track synchronous fallback, which injects an
image tag and introduces lag any time the user clicks external links
in the references.

Bug: T231529
Change-Id: Iad32b64114f88675eecbb01712418c968e3cf661
2019-10-01 10:23:31 +02:00
Translation updater bot 1463f47280 Localisation updates from https://translatewiki.net.
Change-Id: I7fe11bdb98aabdb1da3d78aacdcd4211ad87efbf
2019-10-01 09:24:33 +02:00
Translation updater bot a5ac0762bc Localisation updates from https://translatewiki.net.
Change-Id: Ib52cc84a1afd41200f5728e03cc98da62d33e59e
2019-09-30 09:18:16 +02:00
Translation updater bot 4a20cebbb9 Localisation updates from https://translatewiki.net.
Change-Id: Ibb878fce4b272b47920392b1dcd4d6478d189300
2019-09-26 09:13:05 +02:00