Commit graph

4738 commits

Author SHA1 Message Date
Translation updater bot 121c92c597 Localisation updates from https://translatewiki.net.
Change-Id: I0ae46230230446862f0c18e9c3112ce9562f9298
2020-03-20 08:23:36 +01:00
Translation updater bot 6bd6568602 Localisation updates from https://translatewiki.net.
Change-Id: I0fc83c66b48f66591a400b20bae2a7fff9fd2a17
2020-03-19 08:32:47 +01:00
Volker E e5b6ae0323 Reduce reference code padding
Don't use inherited one, but set a small one instead.

Change-Id: Ib38102478ed53a6e4fd8cc25d118f346f81758bb
2020-03-18 07:16:13 +00:00
jenkins-bot 3dc212e730 Merge "Fix cite error ref code color contrast ratio" 2020-03-18 06:46:31 +00:00
libraryupgrader 3df0f16358 build: Updating minimist to 1.2.5
* https://npmjs.com/advisories/1179

Change-Id: Ide732616d562684edab9a71c1998976297b54629
2020-03-18 04:41:02 +00:00
Volker E 774fda06a9 Fix cite error ref code color contrast ratio
Using `background-color: transparent` here to step away from inheritance of whatever `code` would provide theme-independent.

Bug: T247903
Change-Id: Ibeb6b68556b6ad83dacaf1b8fed59a2b971c0221
2020-03-17 21:43:17 +00:00
Translation updater bot 60c5e728ea Localisation updates from https://translatewiki.net.
Change-Id: I55031c78575c34b6edc1123ec24810c497f29a85
2020-03-17 10:23:55 +01:00
Subramanya Sastry 0cc3ca1b98 Move DomSourceRange to Core; ParsoidExtensionApi to Ext
* At this point, DSR is a first-class Parsoid concept and
  extensions will need to use this as well. So, make it part
  of the Core/ namespace to capture high-level concepts that
  might be used outside Parsoid itself.

* Move ParsoidExtensionApi to the Ext directory since that is
  where it best belongs.

Change-Id: If824c4af9e2f8d658f1cb726cbd837222b60790d
2020-03-16 15:52:08 +00:00
Translation updater bot ed873e549b Localisation updates from https://translatewiki.net.
Change-Id: I57e7504a86e8f4b992d2ca3e4d9dace705605090
2020-03-16 14:29:37 +01:00
Translation updater bot a840790cdb Localisation updates from https://translatewiki.net.
Change-Id: Ia6e8512c204d5e0068437f55f30234f195e9a4f2
2020-03-13 08:53:57 +01:00
Translation updater bot c318b8d720 Localisation updates from https://translatewiki.net.
Change-Id: I5d5ff7a30904e75eec4797f48215c0ad64d7bc3d
2020-03-12 08:42:12 +01:00
Timo Tijhof ce27a400e1 CiteHooks: Remove wgResourceModules check (redundant with isModuleRegistered)
The isModuleRegistered() method was introduced a few years ago,
when the load order in ResourceLoader was undergoing a change.

It used to be that hooks like were run first to register modules, and then
wgResourceModules was registered afterwards. This was reversed to disallow
mutating the config at run-time from foreign modules and to allow better
caching and error detection.

It's been several years since then, so this redundant check is no longer
needed. ServiceWiring.php in MW core for ResourceLoader always processes
config and extension.json first before this hook is called.

Bug: T247265
Change-Id: I466f1fa70b8f0e9fe5e8e8df90bb0001b3329b87
2020-03-10 16:18:46 +00:00
libraryupgrader 5f51fec081 build: Updating acorn to 7.1.1
* https://npmjs.com/advisories/1488

Change-Id: Iacb4464bc9c81a45b45ad22fa98bbb05dbd31c6b
2020-03-07 23:06:54 +00:00
Subramanya Sastry 866bc09353 ParsoidExtensionAPI: Update docs
Change-Id: Id1bdf28254cda3ff32cd8ecab6eea8adfce31144
2020-03-06 19:07:23 -05:00
Subramanya Sastry 34b7080ebf ParsoidExtensionAPI: Add additional API methods
* Added API method to let content-model extensions to add metadata
  to <head>.
* The title API methods seem legitimate
* But, the newAboutId helper is suspect -- currently only needed
  by Cite. Explore if we can eliminate the need for this helper.
* This eliminates a few more Env use sites from extensions.

Bug: T242746
Change-Id: I0e982d4be173f7d49df19467fbf49c11d428e650
2020-03-06 19:07:17 -05:00
Subramanya Sastry 25bd654ce1 Cite: Eliminate knowledge of DOM state from a few more call sites
* Cite (or other extensions) don't need to explicitly load/store
  data attributes from html attributes to/from the data bag held
  separately from the DOM.

Bug: T242746
Change-Id: I4a52be2b06ccfe53d0cf81987af12a1d139fef4c
2020-03-06 22:01:40 +00:00
jenkins-bot e15743b74d Merge "Fix unit tests for whitespace change in Html5 fragments" 2020-03-06 16:55:25 +00:00
Translation updater bot 11dffd7ca8 Localisation updates from https://translatewiki.net.
Change-Id: Icbd41637a59cacc9ee620401d574c994adc67666
2020-03-06 08:17:36 +01:00
Subramanya Sastry 5397598842 Provide extensions SiteConfig & PageConfig access via ParsoidExtensionAPI
* Presumably, extensions would benefit from having access to the
  wiki config via SiteConfig.

* Yet to figure out if extensions need access to the page config.

* But, with this change, extensions don't need $env when all they
  need is access to the wiki and page config.

Bug: T242746
Change-Id: I88736f882f185ee9376b73f7e4bb0b2bd318bb1a
2020-03-05 19:30:38 -05:00
Translation updater bot 7837135165 Localisation updates from https://translatewiki.net.
Change-Id: Ic671cdc23fdb943fcf90fdccfce4e115f18c82e8
2020-03-05 08:37:47 +01:00
Translation updater bot 197c13c801 Localisation updates from https://translatewiki.net.
Change-Id: I95723982546c984c936fae703c01b91f6fc8a9ee
2020-03-03 08:13:55 +01:00
Subramanya Sastry aebd6bcdcd Save fragments without storing data-* attribs onto the node
* This seems to work and also will make the job of keeping extensions
  free of DOM state easier.

  Arlo clarifies that this wasn't necessary since f7594328 and could
  have been cleaned up there.

Change-Id: I96edaa5b2743f1ce0d8596acfdc59035491541cb
2020-03-02 23:22:47 +00:00
Subramanya Sastry 2f9f5e25ef Pass $extApi, not $env to extension callbacks
* $env was unused in extension DOM post processors. So get rid of
  that since we are already in the process of removing $env access
  to extensions.

* html2wtPreProcessor is currently unimplemented but there is WIP
  code in Parsoid/JS that can be revived at a later point. No need
  to pass $env here as well.

* In both cases, pass $extApi so they can access any necessary
  helpers or state provided by that API object.

Bug: T242746
Change-Id: I1d1544af817d03e01a569e6aeaeed0d6c3058fc0
2020-03-02 19:21:07 +00:00
Translation updater bot 157130b75a Localisation updates from https://translatewiki.net.
Change-Id: I75ed92076fad74276c9ed0c176aed183bc7c0a23
2020-03-02 09:09:02 +01:00
Translation updater bot 1fc962e1fa Localisation updates from https://translatewiki.net.
Change-Id: I79fcb110c036c2533e9123b9faad4bea3c60a95d
2020-02-27 08:36:09 +01:00
Translation updater bot 5ce4cc479d Localisation updates from https://translatewiki.net.
Change-Id: Ib73625846daac60c79b184de8354e87116bd7f88
2020-02-26 08:24:28 +01:00
Brian Wolff 5ed973a49a Fix unit tests for whitespace change in Html5 fragments
Bug: T238385
Depends-On: Ie2b7c9429691e2c491c3359d5b400d8f078aa789
Change-Id: Ie2b7c9429691e2c491c3359d5b400d8f078ab111
2020-02-25 13:56:53 +00:00
Brian Wolff 1c6a92ca9b Temp disable test to work around circular dependency in unit test
Html5 fragment mode now bans whitespace per html5 spec

See Ie2b7c9429691e2c491c3359d5b400d8f078aa789

Change-Id: Ie6fa40798f06a358f6082110b4d8cc0028c80321
2020-02-25 04:38:06 -08:00
Translation updater bot a633c9d5dc Localisation updates from https://translatewiki.net.
Change-Id: Ie6fa40798f06a358f6082110b4d8cc0028c807d4
2020-02-25 08:52:07 +01:00
Translation updater bot fd79d68049 Localisation updates from https://translatewiki.net.
Change-Id: Ife3c127de785f3d436f676c4d6f4370b220358a1
2020-02-24 09:02:03 +01:00
Subramanya Sastry 14d9ed27f0 Remove direct access to Sanitizer from extension code
* Proxy all accesses to the santiizer via appropriately named methods
  in the ParsoidExtensionApi interface

Bug: T242746
Change-Id: I9d3d98639bb98b4abe404139786517591323d61d
2020-02-20 23:23:22 -06:00
libraryupgrader ece1d6a9a6 build: Updating npm dependencies
* grunt-stylelint: 0.13.0 → 0.14.0
* stylelint-config-wikimedia: 0.8.0 → 0.9.0

Change-Id: I2eb91238d8468051d3f62424f3025e6e6324d030
2020-02-20 19:43:20 +00:00
Translation updater bot 5b3640f635 Localisation updates from https://translatewiki.net.
Change-Id: Ie38542a1b29bd9d11bbfb98c08699e27041c1469
2020-02-20 09:26:30 +01:00
Translation updater bot 5684c8823e Localisation updates from https://translatewiki.net.
Change-Id: I59d1cfeae8f911fab2b95af322aedec0d1d66b0d
2020-02-19 08:23:11 +01:00
libraryupgrader 81e6643baf build: Updating composer dependencies
* mediawiki/mediawiki-phan-config: 0.9.0 → 0.9.1
* mediawiki/minus-x: 0.3.2 → 1.0.0

Change-Id: Ica218e63fd747980b7acc39ac7403f19239fa861
2020-02-19 01:25:06 +00:00
Translation updater bot 247e80d781 Localisation updates from https://translatewiki.net.
Change-Id: I5c9efab6cce150f6c58f2dc8dc9fba39c2f0cf7e
2020-02-17 08:45:44 +01:00
Translation updater bot e1423ecaf4 Localisation updates from https://translatewiki.net.
Change-Id: I6e0628876b7b6bc397924d4e9b1b62d7c8516f03
2020-02-14 08:25:22 +01:00
Translation updater bot ac2edf5f57 Localisation updates from https://translatewiki.net.
Change-Id: I125e052175b48a2cb2a44865a682b6cb88a6d676
2020-02-13 08:54:21 +01:00
Subramanya Sastry d0a9c42c98 Cite: Remove more Parsoid internals knowledge
* Remove use of $env from ReferencesData and RefGroup by
  providing high-level helpers in ParsoidExtensionAPI.

  - Given a fragment id, provide helpers to fetch fragment DOM
    or fragment HTML
  - Fetch the URI for the current page (being parsed)

* There is still a lot of subtle knowledge Cite has about
  how data-parsoid and data-mw attributes are held off to the
  side in a bag and all the pp* and load/store manipulation
  of those attributes. It would be an interesting exercise
  to purge this implementation of those notions OR figure out
  high-level concepts that we document as being part of Parsoid
  reality that we'll forever support.

Bug: T242746
Change-Id: I29ff154f2f17123b9756dfd2f3b422f0b30222b1
2020-02-11 19:47:28 +00:00
Subramanya Sastry 1f87104378 Simplify TokenUtils::kvToHash
* Get rid of unused args and simplifyy method
* In preparation for more cleanup of extension code

Change-Id: I9bdce2e0c9254405d4c3ed61926b54a3997a0c22
2020-02-11 15:50:58 +00:00
jenkins-bot 7ee2e81ade Merge "Add two extreme follow edge cases back to parser tests" 2020-02-11 09:11:20 +00:00
Translation updater bot cb30637732 Localisation updates from https://translatewiki.net.
Change-Id: Ia93d4b3cf054b9c24a8b9eadd954c624354104dd
2020-02-11 08:18:57 +01:00
jenkins-bot 43cf5ac7bd Merge "Don't talk about follow being "broken" but "incomplete"" 2020-02-10 12:41:50 +00:00
Translation updater bot efaba3aef0 Localisation updates from https://translatewiki.net.
Change-Id: Ia7bafb7deb9353cdd95e598d924ef4e08e517116
2020-02-10 08:32:57 +01:00
Subramanya Sastry 70e38c1ae4 Use extension config option for html2wt formatting of extension tags
Bug: T242746
Change-Id: If96056d9bc75afa9390c2f8aab0da5eab60cc537
2020-02-07 18:03:56 +00:00
Translation updater bot 36285bb9f7 Localisation updates from https://translatewiki.net.
Change-Id: Ifaebba26a97fb0737d623da5834121a97c9a76dd
2020-02-07 09:57:04 +01:00
Subramanya Sastry 5e256b48aa Start untangling Parsoid internals from extensions
* In this patch, toDOM, fromDOM, and DOM postprocessor extension
  methods all get a ParsoidExtensionAPI object. These API objects
  are constructed at the appropriate times in the wt2html and html2wt
  pipelines.

* Got rid of direct references to SerializerState from fromDOM
  methods in extensions.

* Exposed generic serialization and wikitext escaping methods
  in ParsoidExtensionAPI for extensions to leverage. The implementation
  of these methods is partial and only supports current usage
  of extensions in Parsoid's repo. This will need to be fully
  fleshed out going forward.

* Stopped exposing wt2html options in toto and provided more specific
  convenience methods.

* Reduced direct access to the Env object in a few more places.

* Cite has code to inspect embedded HTML in data attributes of a node.
  Moved this code out of Cite into ParsoidExtensionAPI which reduces
  knowledge that extensions need. Unlike the other cleanups, this one
  is more of a convenience method since this code only requires
  knowledge of a publicly published spec. But, nevertheless an useful
  cleanup since it simplifies Cite's complexity just a bit.

* More followup work is needed.
  - before/after methods should be eliminated in favour of a config flag
    that implements the inline/block layout option. Once this is done,
    extensions will no longer need direct access to the SerializerState
    internal object.
  - Env exposure should be reduced.
  - Provide access to Sanitizer via ParsoidExtensionAPI instead of
    needing extensions to directly import it.
  - It should be possible to eliminate the need for extensions to know
    about DSR / DSR-shifting and do it automatically via some high-level
    conceptual flag.
  - It might also be possible to infer source offsets directly via args
    instead of passing that explicitly.
  - Should we provide a convenience helper class with access to all the
    src/Utils/* methods?

Bug: T242746
Change-Id: I7ffb5aa52a84854a9d363a0e8f1ce650241f1c41
2020-02-06 20:55:27 -05:00
Translation updater bot fe43bbbc8a Localisation updates from https://translatewiki.net.
Change-Id: Icb2ddad2fd37bffff96c13e5434016d0fa2913d3
2020-02-06 08:19:00 +01:00
Thiemo Kreuz 400ce89f30 Don't talk about follow being "broken" but "incomplete"
Bug: T240858
Change-Id: Iab6563fdf19d6e85795911e4140476fceabf7334
2020-02-05 16:38:49 +00:00
Thiemo Kreuz 48e2f02e20 Add two extreme follow edge cases back to parser tests
This reverts parts of the revert I3bee35f, which reverted a3d312c8.
I believe it's helpful to keep these test cases just to document how
the code currently behaves. I removed all TODO because we don't know
if and how we want to touch this again.

Bug: T240858
Change-Id: Ib91acfcb7292e5c03ce9cc4d7be782085e10aa27
2020-02-05 15:04:49 +01:00