Commit graph

639 commits

Author SHA1 Message Date
Translation updater bot 1560348e0a Localisation updates from https://translatewiki.net.
Change-Id: I109eb36a7b845d7793aeb10ea3e36e9e511cc29d
2022-12-21 09:17:40 +01:00
Željko Filipin 26e69c8e15 selenium: Enable one skipped test, delete one failing test
Both tests are disabled for more than a year, see
f318d3acd2.

'ReadMore is not present on Vector' is failing so it is deleted.
'ReadMore is present in Minerva @daily' is passing so it is enabled.

To be sure that the passing test is not flaky, the CI has ran it 100
times, it never failed.

Bug: T280652
Change-Id: I739414c4f3f650ce14e31b6bb2bfdd21efb8ff44
2022-11-24 12:40:45 +00:00
jenkins-bot 9a11bcee04 Merge "Replace deprecated @borderRadius var with successor @border-radius-base" 2022-11-09 18:21:42 +00:00
Volker E 2e2159d1b5 styles: Remove linear-gradient vendor properties
All targeted browsers have fallen out of basic support.

Bug: T306486
Change-Id: I3d5d49d2911c72806922bdbba26ab2c8470588f8
2022-11-07 21:02:15 -08:00
gerritbot f3f58c0666 Replace deprecated @borderRadius var with successor @border-radius-base
Replacing deprecated mediawiki.ui `@borderRadius` variable with successor
@border-radius-base.
Former got deprecated in MW 1.35 about 2 years ago. Latter is in alignment
with mediawiki.skin.variables.less standardization. It's also in
accordance to Codex design tokens.

Bug: T322478
Change-Id: I6f9fe0a7d98713a66e1b7e78f105817f428c636f
2022-11-06 22:59:13 +00:00
Translation updater bot ded5427e35 Localisation updates from https://translatewiki.net.
Change-Id: Ieb047fbdfb31a072091f19ad21600f915ef4ec86
2022-10-31 09:46:31 +01:00
Translation updater bot 957547ddbb Localisation updates from https://translatewiki.net.
Change-Id: I6cade2fefd45a323558fab7c1612c52248949700
2022-10-24 08:23:29 +02:00
Translation updater bot 14a8891c71 Localisation updates from https://translatewiki.net.
Change-Id: I5a00c2e80a63cb12802080baf0a3e3ea61e677ba
2022-10-19 08:20:40 +02:00
Translation updater bot 248ba61f0a Localisation updates from https://translatewiki.net.
Change-Id: I4371d85b820bf2c3a4f53ee7729bcec57ed05ff0
2022-10-13 08:09:38 +02:00
Translation updater bot 6bfd9fa470 Localisation updates from https://translatewiki.net.
Change-Id: Ie19a0f6de8ed2d1aae2435d4b37c612404f7a9f4
2022-09-28 08:22:36 +02:00
Translation updater bot dda7e45667 Localisation updates from https://translatewiki.net.
Change-Id: I5c7b5a6f8162dc7a30f50d7cdaceb3d7cefa8ddc
2022-06-24 09:31:17 +02:00
Translation updater bot fcf830188e Localisation updates from https://translatewiki.net.
Change-Id: I7173240e7e9fc4b173ae858d490a15c8c44a8825
2022-06-20 08:17:47 +02:00
Translation updater bot c50ba8d371 Localisation updates from https://translatewiki.net.
Change-Id: Ib68ced4009ef383c22b9241eb65392c481ca1000
2022-06-13 08:28:59 +02:00
Translation updater bot fc028aabbf Localisation updates from https://translatewiki.net.
Change-Id: I26f0278e40ee759e28f6cd40b000608fa2cbf721
2022-06-03 08:58:06 +02:00
Translation updater bot 50b93a41e3 Localisation updates from https://translatewiki.net.
Change-Id: I661554def5510526b709a9f26d5d53eb7ebb3637
2022-05-30 09:24:08 +02:00
Željko Filipin 1dbc2915f6 selenium: Use @wdio/spec-reporter
Dot reporter provides no information on which tests suites and tests are
executed. Spec reporter is more verbose but it also provides much more
information that is useful in general, but especially when debugging.
For example, which tests are executed and which tests are skipped.

Bug: T280331
Change-Id: If50b811df856abc555904ecab298077215b2621d
2022-05-24 14:46:02 +02:00
Jon Robson 4d883cf58a Pages that do not exist shouldn't output related articles
Bug: T308078
Change-Id: Ie86ea03e4529e74cc5d9f71c973a5ab738ca499b
2022-05-11 19:13:35 +00:00
Jon Robson 2665e3c319 Add TypeScript support
For now it is limited to a single file RelatedPagesGateway.js
For now @types/jquery is requirement due to use of
wikimedia/mw-node-qunit and usage of MediaWiki core methods
and OOUI that use jQuery.

Change-Id: I370826bb3f521dcb5a68491990571ee1c87117ae
2022-04-27 19:11:10 +00:00
Jon Robson e5431a1c0b Limit RelatedArticles feature to ES6 browsers
We currently require support for IntersectionObserver.
which is supported on Edge >= 15 (15 has partial support),
Firefox >55, Chrome >58, Safari 12.1, Opera >=38,
iOS Safari >=12.2, Android 100

Full ES6 is supported in Edge >=15, Firefox >=54, Chrome >=51,
Safari >=10, Opera >=38, iOS Safari >=10, so such a change
would only drop support for Edge 15 and Firefox 54.

CSS.escape is guaranteed in all these browsers according to
caniuse, with the only discrepancy being the Edge browser (versions
16-18) so it is also suggested we remove support for those browsers.

Firefox 54 accounts for 0.0026% of page views
Edge 15-18 accounts for 0.069% of page views

Bug: T306355
Change-Id: Id2987e3456607b610c38da9ee157a026d1d00ada
2022-04-27 15:45:42 +00:00
Jon Robson b528100f3d Add jest testing infrastructure
Adds a test for  resources/ext.relatedArticles.readMore/index.js

Change-Id: Icf8a5afca2489308e2bcaa611c0fe27ed9f46f3a
2022-04-19 18:51:58 +00:00
jenkins-bot d043e31869 Merge "[Development] Allow us to pull RelatedArticles from production APIs" 2022-04-18 21:55:19 +00:00
Jon Robson 5f6e311255 Remove unused mediawiki experiments
mw.experiments is never used in this codebase. Presumably this
dates back to when we did A/B tests for this feature.

Change-Id: I7d5bc63349686063ecd2c1fc63d078af91d2c541
2022-04-18 12:53:02 -07:00
Jon Robson dca7580757 [Development] Allow us to pull RelatedArticles from production APIs
useful for testing real world data

Suggested test config:
```
$wgRelatedArticlesUseCirrusSearchApiUrl = "https://en.wikipedia.org/w/api.php";
$wgRelatedArticlesUseCirrusSearch = true;
$wgRelatedArticlesDescriptionSource = 'wikidata';
```

This will allow us to enable on patchdemo with production content.

Change-Id: I73c0d73d3369f27ed2fd74b37ae71bfc12b6ee57
2022-04-18 16:28:26 +00:00
Jon Robson dfce5b1cb7 RelatedArticles should not use mw.trackSubscribe
Instead export a render method

Bug: T149317
Change-Id: I2b88690d381f896d6a646046574528a2312c91c2
2022-04-18 16:28:14 +00:00
Jon Robson 4c9904952b Drop OO dependency on gateway
The RelatedPagesGateway is an OO class.
There is no reason for it to be, we don't use any
of it's features e.g. the event emitter

Change-Id: I8f807d35b0ce36ea5764508a66f88d74577e3653
2022-04-18 15:51:43 +00:00
Jon Robson 911d78e8ee [organization] organize file by module
Follow up to I9442b0336e22ca795cc06f76068215266fe81271

Bug: T306228
Change-Id: Ifb1f1937009b098999471cfa5e820a063dc5a4a0
2022-04-18 08:37:22 -07:00
Jon Robson df1ff38877 [Maintenance] Reduce related articles to two modules
1) Merge ext.relatedArticles.readMore and ext.relatedArticles.cards modules

These are always loaded together. No need to have them in separate modules.
In process switch to packagefiles

2) Merge ext.relatedArticles.readMore.bootstrap and ext.relatedArticles.readMore.gateway

Always loaded together.

Bug: T306228
Change-Id: I9442b0336e22ca795cc06f76068215266fe81271
2022-04-14 17:48:37 -07:00
Jon Robson dc2e65a084 Drop outdated references to Cards extension
Previously RelatedArticles required the Cards extension
This code refers to that old state and is cleaned up.

ext.relatedArticles.cards is added a dependency of
ext.relatedArticles.readMore since it now belongs to the same
extension

Change-Id: I4a89ed4256a4ae9fd22b0191748bd47ac3ffc593
2022-03-31 08:14:23 -07:00
osamaahmed17 078cfb2347 selenium: Refactor WebdriverIO tests from sync to async mode
WebdriverIO has dropped support of sync mode due to breaking changes in Chromium, hence all tests have been changed to async.

Update npm packages: @wdio/*, wdio-mediawiki and webdriverio
because async mode needs at least webdriverio v7.9.

Remove npm package: @wdio/sync.

Bug: T300797
Change-Id: Ia2a857eb46dbd613a10f48c686bcf6b2fdc3e202
2022-02-09 16:15:05 +00:00
libraryupgrader 43ccc9c8b0 build: Updating mediawiki/mediawiki-phan-config to 0.11.1
Change-Id: I6fbd3e06b1881bcb659a833189f3c4e1d5c587fd
2021-12-19 04:06:28 +00:00
Translation updater bot 6eaf45307a Localisation updates from https://translatewiki.net.
Change-Id: I8d2d0c8757e6022a3c8e0588eee63aa53fb2b15e
2021-12-10 09:19:44 +01:00
libraryupgrader 6b45f6ea82 build: Updating jsprim to 1.4.2
* https://npmjs.com/advisories/1006724 (CVE-2021-3918)

Change-Id: I25ac93c55a9d4971851c353e5b0ab284751d3a55
2021-11-30 06:25:23 +00:00
Translation updater bot 67eee4e266 Localisation updates from https://translatewiki.net.
Change-Id: I7e049d69a340b09a394ccf2784f47ca85b03c272
2021-11-22 09:03:40 +01:00
Translation updater bot db85e74196 Localisation updates from https://translatewiki.net.
Change-Id: I8cb057a33f17757447d506c448997fbd84f9a4cc
2021-11-11 10:02:54 +01:00
libraryupgrader 524f3773f2 build: Updating validator to 13.7.0
* https://npmjs.com/advisories/1004784 (CVE-2021-3765)

Change-Id: I94248f824b066d42414a8edb71c0851ca8f7bf23
2021-11-05 11:04:36 +00:00
jdlrobson 83c2b071c4 Fix loading of related articles via IntersectionObserver
For IntersectionObserver to work the element we listen on needs to
have a non-zero height.

Bug: T223844
Change-Id: I308f646670b112e42b0aaa11c438dbc5cdc5edd8
2021-11-04 12:30:11 -07:00
jdlrobson 923f594916 RelatedArticles should use IntersectionObserver rather than deprecated mediawiki.viewport module
Bug: T284251
Change-Id: Ia3139df0beb24268a1e37b85c755b0d0f62910b5
2021-10-29 14:53:20 -07:00
libraryupgrader 6ffacad442 build: Updating mediawiki/mediawiki-codesniffer to 38.0.0
Change-Id: I19c4813849e01faea802a025f1c272120356e873
2021-10-24 12:03:47 +00:00
Reedy cb5b1baecf Use namespaced Disambiguator Hooks class
Change-Id: I1b2e6e4ac6e4612221f1f720356860c16c5aa5ee
2021-10-19 15:58:36 +01:00
libraryupgrader 07e7b5bb0b build: Updating npm dependencies
* @wdio/mocha-framework: 7.4.6 → 7.13.2
  * https://npmjs.com/advisories/5197 (CVE-2021-3807)
* ansi-regex: 5.0.0 → 5.0.1
  * https://npmjs.com/advisories/5197 (CVE-2021-3807)

Additional changes:
* composer.json: Updated phpcs command in composer test (T280592).
* composer.json: Added phpcs command to scripts (T280592).

Change-Id: I9bac58167708f2a07337d9d0350a11422753208e
2021-10-05 07:35:01 +00:00
libraryupgrader 6a6c872611 build: Updating composer dependencies
* mediawiki/mediawiki-phan-config: 0.10.6 → 0.11.0
* php-parallel-lint/php-parallel-lint: 1.3.0 → 1.3.1

Change-Id: Iad868957534ffedf01edd4830efcda121d546fbd
2021-09-09 06:16:23 +00:00
jdlrobson f318d3acd2 Skip Selenium tests
Discussed with Edward, and there seems to be some problems with
these Selenium tests that are being surfaced in
Ie7cfa3e2b19d22086bfa1ba9c64e17760eb29ad2. Skipping on the short term.

Change-Id: Id9dc0b3bf6a619bec73e0e18915c184fe20936d5
2021-09-07 19:08:43 +00:00
libraryupgrader e9179d5577 build: Updating stylelint-config-wikimedia to 0.11.1
Change-Id: I122553868da7515bd46d8115549fa5a116ac660f
2021-09-04 21:51:08 +00:00
acald d9dccf23fd RelatedArticles uses Grunt. This package is unecessary and inconsistent with other repositories.
Uninstalled the following packages: grunt, grunt-eslint, grunt-stylelint

Removed Gruntfile.js since Gruntfile is not longer necessary

Bug: T286832
Change-Id: I4fe5ee2db080f1a2be9607f302704c8c3bf5a233
2021-08-02 20:12:04 +00:00
libraryupgrader 6d03335fb9 build: Updating dependencies
composer:
* mediawiki/mediawiki-codesniffer: 36.0.0 → 37.0.0

npm:
* postcss: 7.0.35 → 7.0.36
  * https://npmjs.com/advisories/1693 (CVE-2021-23368)
* glob-parent: 5.1.1 → 5.1.2
  * https://npmjs.com/advisories/1751 (CVE-2020-28469)
* trim-newlines: 3.0.0 → 3.0.1
  * https://npmjs.com/advisories/1753 (CVE-2021-33623)

Change-Id: I8c7d9480e97f500a851775c9444c9e21a9ca5b82
2021-07-23 20:55:02 +00:00
jenkins-bot fd1b475738 Merge "selenium: Update wdio-mediawiki" 2021-07-01 18:15:52 +00:00
Translation updater bot 3faaedb620 Localisation updates from https://translatewiki.net.
Change-Id: I9aacfc9e4e2e35e0ed8e27fedaac9f46989935e6
2021-07-01 08:09:47 +02:00
Volker E 6ea57f8060 Remove outdated browser workarounds
Linear gradients are now supported by all our basic support browsers.

Change-Id: I5563f70f45ab90be6b1073f2c0af7c56d0bd366b
2021-06-22 06:47:26 -07:00
sahil 0512e508db selenium: Update wdio-mediawiki
wdio-mediawiki v1.1.1:
- Includes wdio-defaults.conf.js file that vastly simplifies wdio.conf.js.
- Replaces @wdio/spec-reporter with @wdio/dot-reporter.
- Introduces video recording.

Bug: T283597
Change-Id: I35a7b000de1f0b55d8e797e0ff35b0b3590460e7
2021-06-21 20:46:30 +05:30
sahil 3a2f197a9e selenium: Upgrade WebdriverIO to v7
Update npm packages: @wdio/* and webdriverio.

Bug: T274579
Change-Id: I2efdb705cba8515963143d6ce025396f5c0672b8
2021-06-17 21:50:01 +05:30