jenkins-bot has submitted this change and it was merged.
Change subject: ve.init: Fix broken dependency between ve.js and
ve.init.platform
......................................................................
ve.init: Fix broken dependency between ve.js and ve.init.platform
Depencency tree looked like this
* ext.visualEditor.viewPageTarget
- ve.init.platform
- ve.init.target
** ext.visualEditor.core
- (most ve.* classes)
*** ext.visualEditor.base
- ve.js
Some of the ve classes are calling ve.msg from the global scope
at load time (e.g. in the definition of static properties or in
constructors of classes that were immediately instantiated in
the same file).
Platform needs to be initialised in the base module.
ve.init.Platform.js was already there, but that's just an
abstract base class. The the ve.init.platform property is set
from the implementation classes' files.
Updated makeStaticLoader.php and re-ran for test and demo html.
The fake "Standalone Init" module is now gone, which shows that
this was needed as test/ and demo/ already put their platform
code in/after the 'ext.visualEditor.base' module in the html.
Bug: 45175
Change-Id: I47d7d92495974572194700c98a219d22ecbfaf4b
---
M VisualEditor.php
M demos/ve/index.php
M maintenance/makeStaticLoader.php
M modules/ve/test/index.php
4 files changed, 30 insertions(+), 27 deletions(-)
Approvals:
Catrope: Looks good to me, approved
jenkins-bot: Verified
diff --git a/VisualEditor.php b/VisualEditor.php
index a565683..6d0ccbe 100644
--- a/VisualEditor.php
+++ b/VisualEditor.php
@@ -96,9 +96,6 @@
),
'ext.visualEditor.viewPageTarget' => $wgVisualEditorResourceTemplate +
array(
'scripts' => array(
- 've/init/mw/ve.init.mw.js',
- 've/init/mw/ve.init.mw.Platform.js',
- 've/init/mw/ve.init.mw.Target.js',
've/init/mw/targets/ve.init.mw.ViewPageTarget.js',
),
'styles' => array(
@@ -182,9 +179,14 @@
// ve
've/ve.js',
've/ve.EventEmitter.js',
+
+ // init
've/init/ve.init.js',
've/init/ve.init.Platform.js',
've/init/ve.init.Target.js',
+ 've/init/mw/ve.init.mw.js',
+ 've/init/mw/ve.init.mw.Platform.js',
+ 've/init/mw/ve.init.mw.Target.js',
),
'debugScripts' => array(
've/ve.debug.js',
diff --git a/demos/ve/index.php b/demos/ve/index.php
index 3b8b441..551b15f 100644
--- a/demos/ve/index.php
+++ b/demos/ve/index.php
@@ -24,7 +24,7 @@
<title>VisualEditor Standalone Demo</title>
<!-- Generated by maintenance/makeStaticLoader.php -->
- <!-- Standalone Init -->
+ <!-- ext.visualEditor.base#standalone-init -->
<link rel=stylesheet
href="../../modules/ve/init/sa/styles/ve.init.sa.css">
<script>
if ( window.devicePixelRatio > 1 ) {
@@ -73,17 +73,16 @@
<script
src="../../modules/unicodejs/unicodejs.textstring.js"></script>
<script
src="../../modules/unicodejs/unicodejs.wordbreak.groups.js"></script>
<script
src="../../modules/unicodejs/unicodejs.wordbreak.js"></script>
- <!-- ext.visualEditor.base -->
+ <!-- ext.visualEditor.base#standalone-init -->
<script src="../../modules/ve/ve.js"></script>
<script src="../../modules/ve/ve.EventEmitter.js"></script>
<script src="../../modules/ve/init/ve.init.js"></script>
<script
src="../../modules/ve/init/ve.init.Platform.js"></script>
<script src="../../modules/ve/init/ve.init.Target.js"></script>
- <script src="../../modules/ve/ve.debug.js"></script>
- <!-- Standalone Init -->
<script src="../../modules/ve/init/sa/ve.init.sa.js"></script>
<script
src="../../modules/ve/init/sa/ve.init.sa.Platform.js"></script>
<script
src="../../modules/ve/init/sa/ve.init.sa.Target.js"></script>
+ <script src="../../modules/ve/ve.debug.js"></script>
<script>
<?php
require(
'../../modules/../VisualEditor.i18n.php' );
diff --git a/maintenance/makeStaticLoader.php b/maintenance/makeStaticLoader.php
index 577e140..d147c85 100644
--- a/maintenance/makeStaticLoader.php
+++ b/maintenance/makeStaticLoader.php
@@ -49,23 +49,18 @@
),
);
- $wgResourceModules['Standalone Init'] = array(
+ // Customized version to init standalone instead of mediawiki
platform.
+ $wgResourceModules['ext.visualEditor.base#standalone-init'] =
array(
'styles' => array(
've/init/sa/styles/ve.init.sa.css',
),
- 'scripts' => array(
- 've/init/sa/ve.init.sa.js',
- 've/init/sa/ve.init.sa.Platform.js',
- 've/init/sa/ve.init.sa.Target.js',
- ),
- 'headAdd' => '
- <script>
- if ( window.devicePixelRatio > 1 ) {
- document.write( \'<link rel="stylesheet"
href="' . $vePath . 've/ui/styles/ve.ui.Icons-vector.css">\' );
- } else {
- document.write( \'<link rel="stylesheet"
href="' . $vePath . 've/ui/styles/ve.ui.Icons-raster.css">\' );
- }
- </script>',
+ 'headAdd' => '<script>
+ if ( window.devicePixelRatio > 1 ) {
+ document.write( \'<link rel="stylesheet" href="' . $vePath .
've/ui/styles/ve.ui.Icons-vector.css">\' );
+ } else {
+ document.write( \'<link rel="stylesheet" href="' . $vePath .
've/ui/styles/ve.ui.Icons-raster.css">\' );
+ }
+</script>',
'bodyAdd' => '<script>
<?php
require( ' . var_export( dirname( __DIR__ ) .
'/VisualEditor.i18n.php', true ) . ' );
@@ -73,7 +68,16 @@
?>
ve.init.platform.setModulesUrl( \'' . $vePath . '\' );
</script>'
- );
+ ) + $wgResourceModules['ext.visualEditor.base'];
+ $baseScripts =
&$wgResourceModules['ext.visualEditor.base#standalone-init']['scripts'];
+ $baseScripts = array_filter( $baseScripts, function ( $script )
{
+ return strpos( $script, 've/init/mw/ve.init.mw' ) ===
false;
+ } );
+ $baseScripts = array_merge( $baseScripts, array(
+ 've/init/sa/ve.init.sa.js',
+ 've/init/sa/ve.init.sa.Platform.js',
+ 've/init/sa/ve.init.sa.Target.js',
+ ) );
$self = isset( $_SERVER['PHP_SELF'] ) ? $_SERVER['PHP_SELF'] :
( lcfirst( __CLASS__ ) . '.php' );
@@ -81,8 +85,7 @@
$modules = array(
'Dependencies',
- 'ext.visualEditor.base',
- 'Standalone Init',
+ 'ext.visualEditor.base#standalone-init',
'ext.visualEditor.core',
);
foreach ( $modules as $module ) {
diff --git a/modules/ve/test/index.php b/modules/ve/test/index.php
index 58a94de..6a8471f 100644
--- a/modules/ve/test/index.php
+++ b/modules/ve/test/index.php
@@ -17,17 +17,16 @@
<script src="../../unicodejs/unicodejs.textstring.js"></script>
<script
src="../../unicodejs/unicodejs.wordbreak.groups.js"></script>
<script src="../../unicodejs/unicodejs.wordbreak.js"></script>
- <!-- ext.visualEditor.base -->
+ <!-- ext.visualEditor.base#standalone-init -->
<script src="../../ve/ve.js"></script>
<script src="../../ve/ve.EventEmitter.js"></script>
<script src="../../ve/init/ve.init.js"></script>
<script src="../../ve/init/ve.init.Platform.js"></script>
<script src="../../ve/init/ve.init.Target.js"></script>
- <script src="../../ve/ve.debug.js"></script>
- <!-- Standalone Init -->
<script src="../../ve/init/sa/ve.init.sa.js"></script>
<script src="../../ve/init/sa/ve.init.sa.Platform.js"></script>
<script src="../../ve/init/sa/ve.init.sa.Target.js"></script>
+ <script src="../../ve/ve.debug.js"></script>
<script>
<?php
require( '../../../VisualEditor.i18n.php' );
--
To view, visit https://gerrit.wikimedia.org/r/57251
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I47d7d92495974572194700c98a219d22ecbfaf4b
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Krinkle <[email protected]>
Gerrit-Reviewer: Catrope <[email protected]>
Gerrit-Reviewer: Trevor Parscal <[email protected]>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits