2014-05-11 10:00:35 +00:00
|
|
|
{
|
|
|
|
|
"name": "mediawiki/core",
|
|
|
|
|
"description": "Free software wiki application developed by the Wikimedia Foundation and others",
|
2018-03-22 05:16:59 +00:00
|
|
|
"type": "mediawiki-core",
|
2014-05-11 10:00:35 +00:00
|
|
|
"keywords": ["mediawiki", "wiki"],
|
|
|
|
|
"homepage": "https://www.mediawiki.org/",
|
|
|
|
|
"authors": [
|
|
|
|
|
{
|
|
|
|
|
"name": "MediaWiki Community",
|
|
|
|
|
"homepage": "https://www.mediawiki.org/wiki/Special:Version/Credits"
|
|
|
|
|
}
|
|
|
|
|
],
|
2018-03-06 01:14:07 +00:00
|
|
|
"license": "GPL-2.0-or-later",
|
2014-05-11 10:00:35 +00:00
|
|
|
"support": {
|
2014-12-11 20:54:59 +00:00
|
|
|
"issues": "https://bugs.mediawiki.org/",
|
2014-05-11 10:00:35 +00:00
|
|
|
"irc": "irc://irc.freenode.net/mediawiki",
|
|
|
|
|
"wiki": "https://www.mediawiki.org/"
|
|
|
|
|
},
|
2020-02-13 17:03:07 +00:00
|
|
|
"prefer-stable": true,
|
2014-05-11 10:00:35 +00:00
|
|
|
"require": {
|
2020-10-26 01:27:19 +00:00
|
|
|
"composer-plugin-api": "^1.1",
|
2020-10-29 00:15:04 +00:00
|
|
|
"composer/semver": "1.5.2",
|
2019-05-11 00:20:15 +00:00
|
|
|
"cssjanus/cssjanus": "1.3.0",
|
2016-04-06 23:30:41 +00:00
|
|
|
"ext-ctype": "*",
|
2019-07-30 20:17:16 +00:00
|
|
|
"ext-dom": "*",
|
2018-09-24 08:25:53 +00:00
|
|
|
"ext-fileinfo": "*",
|
2015-02-23 15:03:24 +00:00
|
|
|
"ext-iconv": "*",
|
2016-04-06 23:30:41 +00:00
|
|
|
"ext-json": "*",
|
2016-01-29 19:42:44 +00:00
|
|
|
"ext-mbstring": "*",
|
2016-04-06 23:30:41 +00:00
|
|
|
"ext-xml": "*",
|
2020-11-06 02:00:14 +00:00
|
|
|
"guzzlehttp/guzzle": "7.2.0",
|
2015-11-23 00:37:33 +00:00
|
|
|
"liuggio/statsd-php-client": "1.0.18",
|
2020-10-07 23:00:32 +00:00
|
|
|
"oojs/oojs-ui": "0.40.4",
|
2018-05-18 01:56:00 +00:00
|
|
|
"pear/mail": "1.4.1",
|
2020-07-21 22:57:08 +00:00
|
|
|
"pear/mail_mime": "1.10.9",
|
2020-09-18 21:37:04 +00:00
|
|
|
"pear/net_smtp": "1.9.2",
|
resourceloader: Remove wfExpandUrl() coupling from CSSMin
There are three cases in CSSMin::remap where performs path
resolution.
1. Absolute local path URLs to full URL.
Example: url(/static/foo.png), url(/w/index.php?…), etc.
These previously used wfExpandUrl(), which got the server
name and protocol directly from $wgServer.
We will now use the $remote parameter to get this information
instead, which is generally set to something like
https://wiki/w/resources/foo, and thus naturally contains
the server name and protocol.
The resolution is powered by the Net_URL2 library, allowing
this to work outside Mediawiki as well.
Some tests needed to change because they were calling CSSMin::remap
with an incomplete $remote dummy values like "/" or "/w, because
the test author (past me) was trying to be clever by not supplying
it, knowing MW would ignore it. Now that it is consistently used,
like normal calls from ResourceLoader would, the expected values
will always be based on http://localhost/w, instead of sometimes
the competing $wgServer value of `https://expand.example`.
2. Relative local path to full URL
Example: url(foo.png), url(../foo.png), url(bar/foo.png)
These were already using $remote. The only change is that
they now use Net_URL2 library instead of blind string
concatenation. One of the benefits of this is that we will
no longer need to call wfRemoveDotSegments() to get rid
of things like double slashes or redundant "../" sequences.
Previously, thing like "foo//bar" or "foo/../bar" were cleaned
up only due to wfRemoveDotSegments(). This is now naturally
handled by Net_URL2.
3. Remote URLs
Example: url(http://example.org/bar.png), url(//example.org/bar.png)
This is generally not used in source code, but gadgets may use this,
e.g. for upload.wikimedia.org or cross-wiki imports.
Other changes:
* One test case used spaces within the URL string in CSS, which the
net_url2 library represents with percent-encoding instead.
Same thing either way.
Bug: T88914
Change-Id: Ibef70cc934c0ee8260a244c51bca9fb88c1c0d88
2020-09-11 21:35:37 +00:00
|
|
|
"pear/net_url2": "2.2.2",
|
2020-02-24 17:54:08 +00:00
|
|
|
"php": ">=7.2.22",
|
2019-06-06 01:12:45 +00:00
|
|
|
"psr/container": "1.0.0",
|
2020-03-25 00:45:08 +00:00
|
|
|
"psr/log": "1.1.3",
|
2020-03-18 08:49:15 +00:00
|
|
|
"ralouphie/getallheaders": "3.0.3",
|
2020-02-14 20:29:28 +00:00
|
|
|
"wikimedia/assert": "0.5.0",
|
2019-02-12 01:25:12 +00:00
|
|
|
"wikimedia/at-ease": "2.0.0",
|
2020-03-09 10:57:18 +00:00
|
|
|
"wikimedia/base-convert": "2.0.1",
|
2016-05-30 04:21:00 +00:00
|
|
|
"wikimedia/cdb": "1.4.1",
|
2015-09-24 07:15:49 +00:00
|
|
|
"wikimedia/cldr-plural-rule-parser": "1.0.0",
|
2020-06-11 14:22:09 +00:00
|
|
|
"wikimedia/common-passwords": "0.2.0",
|
2017-07-16 15:34:09 +00:00
|
|
|
"wikimedia/composer-merge-plugin": "1.4.1",
|
2020-07-27 17:25:48 +00:00
|
|
|
"wikimedia/html-formatter": "2.0.0",
|
2019-09-04 16:07:37 +00:00
|
|
|
"wikimedia/ip-set": "2.1.0",
|
2019-12-18 18:45:25 +00:00
|
|
|
"wikimedia/ip-utils": "1.0.0",
|
2020-03-11 23:31:17 +00:00
|
|
|
"wikimedia/less.php": "3.0.0",
|
2020-11-17 01:54:26 +00:00
|
|
|
"wikimedia/object-factory": "3.0.0",
|
2020-07-16 22:23:10 +00:00
|
|
|
"wikimedia/parsoid": "^0.13.0-a4@alpha",
|
2019-02-12 00:40:12 +00:00
|
|
|
"wikimedia/php-session-serializer": "1.0.7",
|
2018-03-21 18:39:55 +00:00
|
|
|
"wikimedia/purtle": "1.0.7",
|
2018-01-18 21:15:07 +00:00
|
|
|
"wikimedia/relpath": "2.1.1",
|
2020-04-29 21:29:01 +00:00
|
|
|
"wikimedia/remex-html": "2.2.0",
|
2018-01-18 21:15:07 +00:00
|
|
|
"wikimedia/running-stat": "1.2.1",
|
2018-11-02 00:16:27 +00:00
|
|
|
"wikimedia/scoped-callback": "3.0.0",
|
2020-06-29 21:06:46 +00:00
|
|
|
"wikimedia/services": "2.0.1",
|
2018-04-16 07:06:56 +00:00
|
|
|
"wikimedia/utfnormal": "2.0.0",
|
2019-06-19 17:58:20 +00:00
|
|
|
"wikimedia/timestamp": "3.0.0",
|
2016-10-01 07:07:19 +00:00
|
|
|
"wikimedia/wait-condition-loop": "1.0.1",
|
2020-04-14 15:26:40 +00:00
|
|
|
"wikimedia/wrappedstring": "3.2.0",
|
2020-01-16 19:12:26 +00:00
|
|
|
"wikimedia/xmp-reader": "0.7.0",
|
2020-03-08 18:13:48 +00:00
|
|
|
"zordius/lightncandy": "1.2.5"
|
2014-05-11 10:00:35 +00:00
|
|
|
},
|
|
|
|
|
"require-dev": {
|
2020-09-12 22:33:38 +00:00
|
|
|
"composer/spdx-licenses": "1.5.4",
|
2020-09-12 22:41:49 +00:00
|
|
|
"doctrine/dbal": "2.10.4",
|
2020-08-02 23:08:48 +00:00
|
|
|
"doctrine/sql-formatter": "1.1.1",
|
2018-08-27 11:24:34 +00:00
|
|
|
"giorgiosironi/eris": "^0.10.0",
|
2017-04-19 19:37:35 +00:00
|
|
|
"hamcrest/hamcrest-php": "^2.0",
|
2019-12-08 23:50:25 +00:00
|
|
|
"johnkary/phpunit-speedtrap": "^3.1",
|
2017-07-17 17:12:55 +00:00
|
|
|
"justinrainbow/json-schema": "~5.2",
|
2020-11-02 01:02:58 +00:00
|
|
|
"mediawiki/mediawiki-codesniffer": "33.0.0",
|
2020-09-24 08:28:09 +00:00
|
|
|
"mediawiki/mediawiki-phan-config": "0.10.3",
|
2020-01-10 09:31:08 +00:00
|
|
|
"monolog/monolog": "~1.25.3",
|
2020-11-17 20:13:50 +00:00
|
|
|
"nikic/php-parser": "4.10.2",
|
2015-12-19 00:59:10 +00:00
|
|
|
"nmred/kafka-php": "0.1.5",
|
2020-06-04 21:51:37 +00:00
|
|
|
"php-parallel-lint/php-console-highlighter": "0.5",
|
|
|
|
|
"php-parallel-lint/php-parallel-lint": "1.2.0",
|
2019-11-21 17:49:05 +00:00
|
|
|
"phpunit/phpunit": "^8.5",
|
2020-05-30 02:48:22 +00:00
|
|
|
"pimple/pimple": "3.3.0",
|
2020-05-07 20:23:28 +00:00
|
|
|
"psy/psysh": "0.10.4",
|
2019-12-08 23:50:25 +00:00
|
|
|
"seld/jsonlint": "1.7.1",
|
2020-11-04 02:02:37 +00:00
|
|
|
"symfony/yaml": "~3.4|~5.1",
|
2019-09-22 21:30:51 +00:00
|
|
|
"wikimedia/avro": "1.9.0",
|
2017-04-19 19:37:35 +00:00
|
|
|
"wikimedia/testing-access-wrapper": "~1.0",
|
2019-12-08 23:50:25 +00:00
|
|
|
"wmde/hamcrest-html-matchers": "^0.1.0"
|
2014-05-11 10:00:35 +00:00
|
|
|
},
|
2019-01-21 22:22:31 +00:00
|
|
|
"replace": {
|
|
|
|
|
"symfony/polyfill-ctype": "1.99",
|
|
|
|
|
"symfony/polyfill-mbstring": "1.99"
|
|
|
|
|
},
|
2014-05-11 10:00:35 +00:00
|
|
|
"suggest": {
|
2018-09-28 05:26:16 +00:00
|
|
|
"ext-apcu": "Local data cache for greatly improved performance",
|
2017-03-09 16:26:49 +00:00
|
|
|
"ext-curl": "Improved http communication abilities",
|
2015-08-14 18:04:47 +00:00
|
|
|
"ext-intl": "ICU integration",
|
2019-10-07 23:47:34 +00:00
|
|
|
"ext-openssl": "Cryptographical functions",
|
2015-08-14 18:04:47 +00:00
|
|
|
"ext-wikidiff2": "Diff accelerator",
|
|
|
|
|
"monolog/monolog": "Flexible debug logging system",
|
Produce monolog messages through kafka+avro
This allows a logging channel to be configured to write
directly to kafka. Logs can be serialized either to json
blobs or the more compact apache avro format.
The Kafka handler for monolog needs a list of one of more
kafka servers to query cluster metadata from. This should be
able to use any monolog formatter, although some like
JsonFormatter require you to disable formatBatch as Kafka
protocol would prefer to encode each record independently in
the protocol. This requires the nmred/kafka-php library,
version >= 1.3.0.
Adds a new formatter which serializes to the apache avro
format. This is a compact binary format which uses pre-
defined schemas. This initial implementation is very simple
and takes the plain schemas as a constructor argument.
Adds a new option to MonologSpi to wrap handlers in a
BufferHandler. This doesn't flush until the request shuts
down and prevents any network requests in the logger from
adding latency to web requests.
Related mediawiki/vendor update: Ibfe4bd2036ae8e998e2973f07bd9a6f057691578
The necessary config is something like:
array(
'loggers' => array(
'CirrusSearchRequests' => array(
'handlers' => array( 'kafka' ),
),
),
'handlers' => array(
'kafka' => array(
'factory' => '\\MediaWiki\\Logger\\Monolog\\KafkaHandler::factory',
'args' => array( 'localhost:9092' ),
'formatter' => 'avro',
'buffer' => true,
),
),
'formatters' => array(
'avro' => array(
'class' => '\\MediaWiki\\Logger\\Monolog\\AvroFormatter',
'args' => array(
array(
'CirrusSearchRequests' => array(
'type' => 'record',
'name' => 'CirrusSearchRequests'
'fields' => array( ... )
),
),
),
),
),
)
Bug: T106256
Change-Id: I6ee744b3e5306af0bed70811b558a543eed22840
2015-08-04 18:02:47 +00:00
|
|
|
"nmred/kafka-php": "Send debug log events to kafka",
|
|
|
|
|
"wikimedia/avro": "Binary serialization format used with kafka"
|
2014-09-23 19:31:30 +00:00
|
|
|
},
|
|
|
|
|
"autoload": {
|
|
|
|
|
"psr-0": {
|
2017-11-11 00:05:13 +00:00
|
|
|
"ComposerHookHandler": "includes/composer",
|
2019-07-21 18:34:23 +00:00
|
|
|
"ComposerVendorHtaccessCreator": "includes/composer",
|
|
|
|
|
"ComposerPhpunitXmlCoverageEdit":"includes/composer"
|
2018-05-25 12:08:24 +00:00
|
|
|
}
|
2014-09-23 19:31:30 +00:00
|
|
|
},
|
2017-02-03 15:09:14 +00:00
|
|
|
"autoload-dev": {
|
|
|
|
|
"files": [
|
|
|
|
|
"vendor/hamcrest/hamcrest-php/hamcrest/Hamcrest.php",
|
|
|
|
|
"vendor/wmde/hamcrest-html-matchers/src/functions.php"
|
|
|
|
|
]
|
|
|
|
|
},
|
2014-09-23 19:31:30 +00:00
|
|
|
"scripts": {
|
2015-01-06 18:47:25 +00:00
|
|
|
"lint": "parallel-lint --exclude vendor",
|
2016-02-17 10:31:52 +00:00
|
|
|
"phpcs": "phpcs -p -s",
|
2020-05-30 10:36:42 +00:00
|
|
|
"fix": "phpcbf -p",
|
2015-09-27 05:16:10 +00:00
|
|
|
"pre-install-cmd": "ComposerHookHandler::onPreInstall",
|
|
|
|
|
"pre-update-cmd": "ComposerHookHandler::onPreUpdate",
|
2017-11-11 00:05:13 +00:00
|
|
|
"post-install-cmd": "ComposerVendorHtaccessCreator::onEvent",
|
|
|
|
|
"post-update-cmd": "ComposerVendorHtaccessCreator::onEvent",
|
2015-01-06 18:47:25 +00:00
|
|
|
"test": [
|
|
|
|
|
"composer lint",
|
2019-01-02 10:19:43 +00:00
|
|
|
"composer phpcs"
|
2019-06-26 02:33:14 +00:00
|
|
|
],
|
2019-07-08 21:59:19 +00:00
|
|
|
"phpunit": "phpunit",
|
|
|
|
|
"phpunit:unit": "phpunit --colors=always --testsuite=core:unit,extensions:unit,skins:unit",
|
|
|
|
|
"phpunit:integration": "phpunit --colors=always --testsuite=core:integration,extensions:integration,skins:integration",
|
2019-07-21 18:34:23 +00:00
|
|
|
"phpunit:coverage": "phpunit --testsuite=core:unit --exclude-group Dump,Broken",
|
|
|
|
|
"phpunit:coverage-edit": "ComposerPhpunitXmlCoverageEdit::onEvent"
|
2014-12-02 17:19:18 +00:00
|
|
|
},
|
|
|
|
|
"config": {
|
2015-09-27 05:16:10 +00:00
|
|
|
"optimize-autoloader": true,
|
|
|
|
|
"prepend-autoloader": false
|
2014-12-30 23:42:32 +00:00
|
|
|
},
|
|
|
|
|
"extra": {
|
|
|
|
|
"merge-plugin": {
|
|
|
|
|
"include": [
|
|
|
|
|
"composer.local.json"
|
2015-11-06 22:11:35 +00:00
|
|
|
],
|
|
|
|
|
"merge-dev": false
|
2014-12-30 23:42:32 +00:00
|
|
|
}
|
2014-05-11 10:00:35 +00:00
|
|
|
}
|
|
|
|
|
}
|