* set -e: Abort on error.
* set -u: Emit error for undefined variables.
There was one case of unconditional access of a possibly
undefined variable in listRecentCommits.sh. Fixed by replacing
the old "x$x"="x" hack with an explicit emptiness check. The hack
is needed when supporting ancient non-bash shells, but this script
explicitly invokes a bash environment which 'test -z'.
Change-Id: I41a1c0d1bd57b5e241b83224096d32876fd913af
Also
* This way we don't need to pass the --config=jsduck.config.json
parameter but can run plain 'jsduck' in Jenkins. Allowing it
to use the standard job template for testing.
* Move processes=0 to jsduck.json.
Workaround for https://github.com/senchalabs/jsduck/issues/525
* Use standard ' - Documentation' suffix, which makes the first
part of the title render in bold (similar to how we do in OOjs
and OOjs UI already).
Change-Id: I6c9c7a1f29df0a72dc8cd0d37a83aaef23068062
* Make more like mediawiki-core's mwjsduckgen.
- Use bash set -e to have the script abort early when any
part of it fails (especially the jsduck command).
- Since it will abort early, we don't need the 'test' for the
symlink. If jsduck succeeded, it will have re-created the
docs directory and thus not have the symlink yet.
- Don't "cd" into anything from the script, simply use absolute
paths instead. Both jsduck and ln support this.
Change-Id: I03c02d590e0f696c78da87ff638bb407e48a7cd7
It works locally because it can just nagivate to ../lib/ve.
In production however we need docs/ to be standalone so that we
can publish it without needing a subdirectory at:
https://docs.wikimedia.org/VisualEditor/master/.
For local usage this will be a symlink that still points to
the sibling directory (but using a symlink instead of a ../ path).
In production we can then instruct jenkins to replace that symlink
with an actual copy of lib/. As long as the generated path
references in the HTML remain the same.
Follows-up 88c4888872, which broke the publication of the docs in
Jenkins as it changed references from modules/ to ../modules/ for
the eg-iframe. This works locally, but broke in Jenkins as it was relying
on the copying of modules/ to docs/modules/ being enough to make it work).
Change-Id: I10eaa5424d172932b29774a0f03d511d555fd121
'grunt build' builds modules/ve/test/index.php, demos/ve/index.php
and .docs/eg-iframe.html from the associated *.template files.
Got rid of the JS-based SVG/PNG switching logic. Instead, we now
just use SVG unconditionally. We'd already dropped browser support
for browsers that don't support SVG anyway.
Change-Id: Iba2e68f17904687cb13e793a410e095f28f1b13c
I intially thought it was associated with the language inspector, but
it's not, it's the label for the languages pane in the meta dialog.
Change-Id: I478e3951862a25eee056e3df6cc3c9f9f7d9d935
They conceptually belong in VE-MW, but right now the language
inspector is used in the VE standalone, and not having the
messages breaks it.
Change-Id: I0f84c6ee6c6142581c895515a2bd2a6caf4e511d
Apparently the .i18n.php shim is causing problems in both production
and beta labs, so for now we'll just generate the .i18n.php file
from the JSON files.
The first half of the conversion script is identical to the shim.
Change-Id: Id606584197d7efcff6fff29ea22cd35dd744b55e
These were accidentally dropped when I rebased my commit
that imported all i18n messages into the JSON files.
Change-Id: I2f5611f3dbe1a31134426184a9d5648ffc751947
Split the i18n messages into four groups:
* oojs-ui (moved to the oojs-ui repo in a separate commit)
* VE core
* VE-MW (MediaWiki-specific things)
* VE-WMF (Wikimedia-specific things)
The VE-WMF group is new, and we'll split WMF-specific code out into
it later, for now it's just messages associated with that code.
Each language has its own JSON file at modules/MODULE/i18n/LANG.json
Kept messages in VisualEditor.i18n.php as the master copy, because
TranslateWiki can't deal with the JSON files just yet. Added a script
to rebuild the JSON files from the PHP file.
Change-Id: I94e084b2f10994f41324fd08a05ff7f8391ea2eb