Merge "registration: Allow @-prefixed keys in manifest_version 2"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Thu, 14 Feb 2019 06:38:04 +0000 (06:38 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Thu, 14 Feb 2019 06:38:04 +0000 (06:38 +0000)
1  2 
docs/extension.schema.v2.json

@@@ -3,6 -3,12 +3,12 @@@
        "description": "MediaWiki extension.json schema",
        "type": "object",
        "additionalProperties": false,
+       "patternProperties": {
+               "^@": {
+                       "type": "string",
+                       "description": "Arbitrary notes, ignored by the parser."
+               }
+       },
        "properties": {
                "manifest_version": {
                        "type": "integer",
                                                                "noflip": {
                                                                        "type": "boolean",
                                                                        "description": "Whether to skip CSSJanus LTR-to-RTL flipping for this module. Recommended for styles imported from libraries that already properly handle their RTL styles. Default is false, meaning CSSJanus will be applied on RTL-mode output."
 +                                                              },
 +                                                              "packageFiles": {
 +                                                                      "type": ["object", "array"],
 +                                                                      "description": "Package files that can be require()d"
                                                                }
                                                        }
                                                },
                        "type": "object",
                        "description": "ResourceLoader sources to register"
                },
 +              "QUnitTestModule": {
 +                      "type": "object",
 +                      "description": "A ResourceLoaderFileModule definition registered only when wgEnableJavaScriptTest is true.",
 +                      "additionalProperties": false,
 +                      "properties": {
 +                              "localBasePath": {
 +                                      "type": "string",
 +                                      "description": "Prefix for local paths to files in $options, relative to extenion directory"
 +                              },
 +                              "remoteExtPath": {
 +                                      "type": "string",
 +                                      "description": "Prefix for URLs to files in $options, relative to $wgExtensionAssetsPath"
 +                              },
 +                              "remoteSkinPath": {
 +                                      "type": "string",
 +                                      "description": "Prefix for URLs to files in $options, relative to $wgStylePath"
 +                              },
 +                              "scripts": {
 +                                      "type": ["string", "array"],
 +                                      "description": "Scripts to include (array of file paths)",
 +                                      "items": {
 +                                              "type": "string"
 +                                      }
 +                              },
 +                              "dependencies": {
 +                                      "type": ["string", "array"],
 +                                      "description": "Modules which must be loaded before this module",
 +                                      "items": {
 +                                              "type": "string"
 +                                      }
 +                              },
 +                              "styles": {
 +                                      "type": ["string", "array", "object"],
 +                                      "description": "Styles to load",
 +                                      "items": {
 +                                              "type": "string"
 +                                      }
 +                              },
 +                              "messages": {
 +                                      "type": ["string", "array"],
 +                                      "description": "Messages to load",
 +                                      "items": {
 +                                              "type": "string"
 +                                      }
 +                              }
 +                      }
 +              },
                "ConfigRegistry": {
                        "type": "object",
                        "description": "Registry of factory functions to create Config objects"