Manual:manageForeignResources.php
MediaWiki file: manageForeignResources.php | |
---|---|
Location: | maintenance/ |
Source code: | master • 1.42.3 • 1.41.4 • 1.39.10 |
Classes: | ManageForeignResources |
Details
[edit]manageForeignResources.php is a maintenance script that manages foreign resources registered with ResourceLoader.
Options/Arguments
[edit]Option | Description | Required | Default value |
---|---|---|---|
action | One of "update", "verify", "make-sri" or "make-cdx" | Required | |
module | Name of a single module | Optional | all |
--extension | Name of an extension (introduced in 1.41), Gerrit change 911307 | Optional | |
--skin | Name of an skin (introduced in 1.41), Gerrit change 911307 | Optional | |
--verbose | Be verbose | Optional |
Use the update action to download URLs specified in foreign-resources.yaml and unpack them to the resources directory. This will also verify them against the integrity hashes.
Use the verify action to verify that the files currently in the resources directory match what "update" would replace them with. This is effectively a dry run and will not change any module resources on disk.
Use the make-sri action to compute an integrity hash for upstreams that do not publish one themselves. Add or update the URLs in foreign-resources.yaml as needed, but omit (or leave empty) the "integrity" key. Then, run the "make-sri" action for the module, and copy the integrity into the file. Then, you can use "verify" or "update" normally.
--extension
/ --skin
can be used to specify which extension or skin to update / verify foreign resources for; if neither is used, the script will operate on the foreign resources for MediaWiki core.
Usage
[edit]php maintenance/manageForeignResources.php actionName [ moduleName | --extension | --skin | --verbose ]
Updating foreign resources
[edit]$ php maintenance/manageForeignResources.php update ... updating 'CLDRPluralRuleParser' ... updating 'html5shiv' ... updating 'jquery' ... updating 'jquery.chosen' ... updating 'jquery.client' ... updating 'jquery.cookie' ... updating 'jquery.form' ... updating 'jquery.fullscreen' ... updating 'jquery.hoverIntent' ... updating 'jquery.i18n' ... updating 'jquery.jStorage' ... updating 'jquery.throttle-debounce' ... updating 'moment' ... updating 'mustache' ... updating 'oojs' ... updating 'oojs-router' ... updating 'ooui' ... updating 'pako' ... updating 'promise-polyfill' ..............................
Verifying a module
[edit]$ php maintenance/manageForeignResources.php verify oojs ... verifying 'oojs' Done!
Common errors
[edit]- Unknown module name
As of 25 Oct 2021, the module name must be one of:
CLDRPluralRuleParser, html5shiv, jquery, jquery.chosen, jquery.client,
jquery.cookie, jquery.form, jquery.fullscreen, jquery.hoverIntent, jquery.i18n,
jquery.jStorage, jquery.throttle-debounce, moment, mustache, oojs, oojs-router,
ooui, pako, promise-polyfill, qunitjs, sinonjs, vue, vuex.
- Unknown component: <extension or skin name>
This probably means the given extension/skin did not set its ForeignResourceDirs attribute.