Commit graph

2221 commits

Author SHA1 Message Date
WMDE-Fisch 69caa6ec3d Add browser tests for quickly hovering links
Bug: T219434
Change-Id: I3597b8025f7a12db0cf5d83cce5a77abace9bae3
2019-08-23 08:21:14 +00:00
Thiemo Kreuz 065a8e9631 Fix action reducer forgetting *all* duplicate dwell actions
I was able to track the issue down to the changes made in this patch:
https://gerrit.wikimedia.org/r/331563

This patch is mostly a simplification of ce8a2d4
(I9a73b3086fc8fb0edd897a347b5497d5362e20ef):

- Don't make wait#wait() abortable. This adds complexity and isn't
  needed since the token is rechecked in the .then() of
  actions#linkDwell(). The request is permitted to continue and fetch if
  that token still matches and is never issued otherwise.

  Once a request has been issued, that request is still abortable.
  However, note that calling XHR.abort() is just a request to abort and
  may not be granted. Whether or not XHR.catch() is invoked is what
  dispatches the FETCH_ABORTED action (or doesn't if the request to
  abort was denied).

- Remove the abort tests for wait#wait() since the functionality is no
  longer provided.

- Pass the preview token in the FETCH_ABORTED action and reduce
  FETCH_ABORTED the same way as ABANDON_COMPLETE in reducers/preview.

The follow-up patch, I3597b8025f7a12db0cf5d83cce5a77abace9bae3, adds
integration tests for the specific bug fix. Note that these Selenium
tests are incompatible with the content proxy, so it is probably best to
simply unset $wgPopupsRestGatewayEndpoint and $wgPopupsGateway and allow
the defaults to be used. Also note that the tests are incompatible with
recent versions of Node.js (so use NVM) and emit many deprecation
warnings (so set deprecationWarnings to false in
tests/selenium/wdio.conf.js) An example run of the tests looks something
like:

  chromedriver --url-base=wd/hub --port=4444 &
  # If any changes are made locally, also run `npm -s start &`.
  MW_SERVER=http://localhost:8181 \
  MEDIAWIKI_USER=foo \
  MEDIAWIKI_PASSWORD=bar \
  DISPLAY= \
  npm -s run selenium-test

Live testing may be performed as well. Remember that RESTBase requests
are incompatible with MobileFrontend's content proxy hack so ensure to
comment it out if $wgPopupsGateway is configured for RESTBase (see
T218159).

1. Open the DevTools network tab.
2. Disable the browser cache. Chromium, at least, won't abort requests
   coming form the cache.
3. Hover back and forth quickly over a preview. In Chromium, canceled
   requests are labeled and appear red. This is a good scenario to test.
   With the patch, a preview should always be shown when ultimately
   resting on a link. Without the patch, it is possible to rest upon the
   link with no preview showing. This may require several attempts.

Bug: T219434
Change-Id: I9da84b0296dd14e9ce69cb35f1ca475272fb249a
2019-08-23 10:08:19 +02:00
libraryupgrader 9c1f918440 build: Updating eslint-utils to 1.4.2
* https://npmjs.com/advisories/1118

Change-Id: Ib5e2042c7a007c8a20e329b8a99a61a8faea2601
2019-08-23 02:21:08 +00:00
libraryupgrader ca30a90a70 build: Updating dependencies
composer:
* mediawiki/mediawiki-codesniffer: 24.0.0 → 26.0.0

npm:
* set-value: 2.0.0 → 2.0.1
  * https://npmjs.com/advisories/1012
  * CVE-2019-10747
* union-value: 1.0.0 → 1.0.1
  * https://npmjs.com/advisories/1012
  * CVE-2019-10747
* mixin-deep: 1.3.1 → 1.3.2
  * https://npmjs.com/advisories/1013
  * CVE-2019-10746
* lodash: 4.17.11 → 4.17.15
  * https://npmjs.com/advisories/1065
  * CVE-2019-10744
* wdio-mediawiki: 0.2.0 → 0.4.0

Change-Id: I6d8d0e35f5dd0eb19d42cc57547ede5e38e1fa68
2019-08-15 19:40:36 +00:00
jenkins-bot 7bbd0e71f2 Merge "eslint: Enforce template-curly-spacing" 2019-08-15 08:57:57 +00:00
Ed Sanders 4d885286a3 eslint: Enforce template-curly-spacing
Change-Id: I5640e86cba25f6100c7814c2ef8a845941f73497
2019-08-15 10:24:43 +02:00
jenkins-bot 9ec7be121e Merge "eslint: Sort ES5 rules" 2019-08-15 08:20:22 +00:00
jenkins-bot d2de1118a8 Merge "eslint: Enforce no-prototype-builtins" 2019-08-15 08:20:21 +00:00
jenkins-bot 34d11f9b96 Merge "eslint: Remove valid-jsdoc override" 2019-08-15 08:20:19 +00:00
jenkins-bot eae04a3d9d Merge "eslint: Use wikimedia/language/es6 and remove duplicate rules" 2019-08-15 08:17:35 +00:00
jenkins-bot d2149ae5ff Merge "build: Update linters" 2019-08-15 08:09:09 +00:00
jenkins-bot 135d8379ba Merge "build: bump dependencies and make tests pass" 2019-08-15 08:03:00 +00:00
Ed Sanders c74031194b eslint: Sort ES5 rules
Change-Id: I6b398cbf129bfc81f2397d09fe22f41f3e65902b
2019-08-15 08:00:41 +00:00
Ed Sanders cfa0b100ad eslint: Enforce no-prototype-builtins
Change-Id: I4244f0576e48c233d24533b45a28c07b2531d6da
2019-08-15 08:00:35 +00:00
Ed Sanders 2687d12c52 eslint: Remove valid-jsdoc override
Change-Id: I6a9936743a74afb528713f21e016838947fa1914
2019-08-15 08:00:24 +00:00
Ed Sanders ac8ff96425 eslint: Use wikimedia/language/es6 and remove duplicate rules
Change-Id: I3c3e8dc763a2f2a8bed50c7d0d06dfde37a64f54
2019-08-15 07:58:28 +00:00
Ed Sanders a17be78b3d build: Update linters
Change-Id: I9b32f412e7e75918a59bdb239d3a42670177be70
2019-08-15 09:55:57 +02:00
Translation updater bot 12c2e82edf Localisation updates from https://translatewiki.net.
Change-Id: I0e7ef7d48136720af1acd302235124cc8524f10f
2019-08-15 09:16:34 +02:00
WMDE-Fisch 7d7317da10 build: bump dependencies and make tests pass
Change-Id: I5fb80d19c7a0423648053c66fd9c2b7680f30426
2019-08-14 17:09:18 +02:00
Translation updater bot a07958a2af Localisation updates from https://translatewiki.net.
Change-Id: If1880b4ddf508d3a072e4dfdb19dbbef1821a063
2019-08-14 09:15:31 +02:00
Translation updater bot edfc0bcf61 Localisation updates from https://translatewiki.net.
Change-Id: Id52977d4b8b1d38f3010c4dcca6d45270d7a124d
2019-08-10 22:49:35 +02:00
Translation updater bot 4e628d5494 Localisation updates from https://translatewiki.net.
Change-Id: Ia1684b4d13c94c07d42831ff86cdbe66cbb9cea7
2019-08-08 09:33:25 +02:00
Translation updater bot a15f06f057 Localisation updates from https://translatewiki.net.
Change-Id: Ic67135b56594a6913f1de5561f11c4de79eadd48
2019-08-06 09:10:57 +02:00
Translation updater bot e2962512fc Localisation updates from https://translatewiki.net.
Change-Id: Ic62592983b5622f23f590da070a6e9db54c0652f
2019-08-01 09:17:42 +02:00
Translation updater bot 4242d7c90e Localisation updates from https://translatewiki.net.
Change-Id: Ia012b4a0e73e2cb5a145ec133fb7bf0694627ca5
2019-07-29 09:15:40 +02:00
Translation updater bot 03c015415c Localisation updates from https://translatewiki.net.
Change-Id: I7d0b13259c48a89a3ded18828c4f7f4a20d21689
2019-07-23 08:55:14 +02:00
Translation updater bot e32fe6e7f7 Localisation updates from https://translatewiki.net.
Change-Id: I49bfe4df81d32844a9180ba57bb93cb937b0ae25
2019-07-15 08:35:13 +02:00
Translation updater bot d11593624d Localisation updates from https://translatewiki.net.
Change-Id: Ie44f9b3984f95d78655e9a37238d97f398dd2049
2019-07-12 08:44:28 +02:00
James D. Forrester 85084a4484 build: Upgrade phan-taint-check-plugin from 1.5.x to 2.0.1
Change-Id: I6bbf150ae44e0e54cbf7c6167df03b856dc9f668
2019-07-09 14:14:45 -07:00
Translation updater bot 9e864e7c2b Localisation updates from https://translatewiki.net.
Change-Id: I9f67e4c627075998ed33bf7451006e3024deb747
2019-07-07 22:41:21 +02:00
Translation updater bot 1912ea943d Localisation updates from https://translatewiki.net.
Change-Id: I4044a9d9506b1bcd74c81dfe54a5dc0fa6adeca4
2019-06-30 22:39:11 +02:00
Nicholas Ray be27746e59 Build: add package-lock file
Add package-lock file. The previous version of Node.js did not support
package-locks but v10.15.2 does.

Bug: T179229
Change-Id: I6cd0df235294dd455086ca3be569e63577a61b4f
2019-06-20 16:11:00 -06:00
Dan Andreescu 27a95517b7 Remove dependencies on deprecated schema modules
As mentioned in T205744, EventLogging schema ResourceLoader modules have
been deprecated.  This removes those modules from loader calls.

Bug: T221281
Change-Id: I1b7355c69e09756f50ccd1c1955b45cae4a64b9e
2019-06-19 09:51:30 -06:00
Translation updater bot 629ac10557 Localisation updates from https://translatewiki.net.
Change-Id: I2f07e2c96f32a0d968dbbcd511d94b8fca4123cd
2019-06-13 22:40:19 +02:00
Translation updater bot 1aebfdf3f1 Localisation updates from https://translatewiki.net.
Change-Id: Icf2f9f628970be0e41eebbb9417a2239f23bd955
2019-06-10 22:55:35 +02:00
Timo Tijhof a3796a24ee Doc: Refer to Node versions without "v" prefix
As of Node.js version 8, upstream has consistently avoided this
to avoid confusion with V8, the JavaScript engine that power
Node.js and Chromium.

Change-Id: I702cee3247cc69ab4aac313176c884c9c2785ea9
2019-06-10 17:30:26 +01:00
libraryupgrader 8c3c943468 build: Updating mediawiki/mediawiki-phan-config to 0.6.1
Change-Id: I98849b0e976c261fe5e3bef98e5c71e1b5b99da9
2019-06-10 10:03:03 +00:00
James D. Forrester 4fb6120fc9 Upgrade from node 6 to node 10, now that CI is running that
Change-Id: I8830cc39c8f5c5d22299d3c3cc90b308f50fb08a
2019-06-03 14:51:51 -07:00
Translation updater bot 8f850877c2 Localisation updates from https://translatewiki.net.
Change-Id: I8830cc39c8f5c5d22299d3c3cc90b308f50fb08c
2019-06-02 22:30:45 +02:00
Translation updater bot 54a5f6f6ab Localisation updates from https://translatewiki.net.
Change-Id: I7cd8635b1d0d6d4ac84f4babfed0512c94a70490
2019-05-30 22:54:02 +02:00
Volker E d1fc6786bf Remove wrong ARIA role=tooltip from container
Removing wrong ARIA `role=tooltip`. Those are meant only for static
text content on short `title` like dynamic tooltips.

Bug: T223827
Change-Id: Ib4f490c7ad421e516fb0cf47eff4335bcaf26c43
2019-05-29 15:27:08 -07:00
Translation updater bot 5f573d1abf Localisation updates from https://translatewiki.net.
Change-Id: I8033b42e93683c954d5ab8490dbe83a846ed7222
2019-05-26 22:23:28 +02:00
Translation updater bot b67d7e2181 Localisation updates from https://translatewiki.net.
Change-Id: I30eb99428db6e8b0f6c1a3108797c63481b9107c
2019-05-23 23:06:39 +02:00
James D. Forrester 692a706e08 build: Upgrade mediawiki/mediawiki-phan-config from 0.5.0 to 0.6.0
Change-Id: I96b36d9e535c6d886aec7e9e77334ed239569b3a
2019-05-23 19:18:53 +00:00
Thiemo Kreuz 59a5e4e981 Fix fade-out gradient not disappearing when page is zoomed
We did a strict === comparison before. This works fine when the page
zoom is either 100% or 200%. Other zoom factors produce fractional
numbers. Comparing them with === is doomed to fail because these numbers
are IEEE representations, not necessarily being identical in situations
where you would expect them to be identical.

This applies two fixes: Change the comparison to a >=, and always ignore
1 extra pixel. If we are so close to the bottom, the gradient is not
helpful any more.

Change-Id: Idf4c604142de8d2a803e1d94f3093cec8a8abb72
2019-05-20 11:02:19 +00:00
jenkins-bot 8c7527af04 Merge "referencePreview: Replace width: 0 with display: none" 2019-05-18 14:45:19 +00:00
jenkins-bot af5adf3e07 Merge "Docs: Remove incorrect documentation about LocalSettings in tests README" 2019-05-18 14:43:23 +00:00
Translation updater bot 0af283914a Localisation updates from https://translatewiki.net.
Change-Id: I986aec37b7bf17e50da8e2f6c65da49b09107638
2019-05-16 09:10:14 +02:00
Translation updater bot 68362f26de Localisation updates from https://translatewiki.net.
Change-Id: I97173e6314ebb7daef1bf478764e4a9a9e6f5e62
2019-05-15 09:14:08 +02:00
Translation updater bot a6b41e6569 Localisation updates from https://translatewiki.net.
Change-Id: I1253c6eda10e4d6f7881dde71e93bc02aeb79a12
2019-05-13 23:22:27 +02:00