| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: Ieeffc9895ff15d59c03f379afd9165d78ca74729
|
|
|
|
|
| |
Bug: T378797
Change-Id: I3f0177e85d71dd5c1526cdd42fbee69d8d1f6eca
|
|
|
|
| |
Change-Id: I033951bd87b4fb38913083068bbd43e61251d689
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Using php5.6, which is outdated for use with MediaWiki
Use quickstarts described at DEVELOPERS.md for supported versions
Change-Id: I1001d50ecd60d4bc8c836e2aa22ffb57c1b2b859
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Why:
- New users will appreciate having easy access to MediaWiki logs; in
order to make that easier, we need to have a directory to write to and
set an environment variable to use that directory
What:
- Set MW_LOG_DIR for the `serve` command
- Add a `logs` directory at the root of MW, and gitignore it
- Create the `logs` directory via DevelopmentSettings, if MW_LOG_DIR is
defined but does not exist
I considered the `cache` directory for the log location as it
already exists, but it seemed preferable to not conflate cache and
logs.
Bug: T347347
Change-Id: Ic3ddb0203df07a0c93df9f431b25a2a5d9ecc407
|
|
|
|
| |
Change-Id: Ice6a986f31c3708926eeb663a98b575935f2ae30
|
|
|
|
|
|
|
|
|
| |
As per comments on phabricator, the Suppressor was used when phan still
didn't have per-line suppression, which is no longer the case. The phan
script was also outdated and broken, so just remove everything.
Bug: T267859
Change-Id: Ic4a68dd30a4481656a5c44b2446cf851ea638c1c
|
|
|
|
|
|
|
|
| |
Support a local (uncommitted) override file for Phan config. This is
mostly so that I can exclude various broken things, rather than making a
whole new clean source tree just for Phan.
Change-Id: Icc66d8ae2b0029aabf57a57479c54cef05c747b9
|
|
|
|
| |
Change-Id: I90575b6af120bf73c3be71ca6bffafe09b9b2c83
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- allows for cleanly overriding host exposed port
- easier to override XDebug settings
- easier setup for Linux hosts
When wikimedia/fresh is updated with https://github.com/wikimedia/fresh/pull/18,
we can simplify the Selenium / API testing instructions too (removing the
`export` statements).
Bug: T246586
Bug: T246588
Change-Id: Ibd266411636ac144789617bb0999c33a83e9e652
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch introduces a simple docker-compose based development environment
with the idea to allow most development use cases for beginning and
experienced MediaWiki developers.
- PHP and Apache container with XDebug enabled
- Support for overriding services with docker-compose override file
- Documentation for usage and a documented place for sharing docker-compose
overrides and LocalSettings.php configuration snippets for e.g. MySQL,
DB replication, Redis, etc
Depends-On: I50079cca6a286d8aaea8fd0785be48c80e80271c
Bug: T238224
Change-Id: I3b76c1599b1ff32174af5603aadc9f7c7634c98b
|
|
|
|
|
|
|
| |
KSS is no longer in use anywhere. The only official style guide is
at https://design.wikimedia.org/style-guide.
Change-Id: I688a78e9a71a082c499af55bd01e8fd615130486
|
|
|
|
|
|
|
|
|
| |
As suggested by Krinkle at T182020#3829950.
Follows-up 50212e6d0ef2cdcc63.
Bug: T182020
Change-Id: I15d658539a0fd0c3555eaa5c85880edb3bf0fd03
|
|
|
|
| |
Change-Id: Ib7fb8e66ff47ecadbbbd28e26961e548180def7f
|
|
|
|
|
|
|
|
| |
This commit splits changes from Ic14f5debc53e55d6714 to reduce it to
only strictly needed things. It can be merged immediately.
Bug: T192167
Change-Id: I8c541a66ea13421dbe7fa51d197d5455cc4786eb
|
|
|
|
| |
Change-Id: Id788607925c14d2c409bfeef8cc88c98d1242d2d
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Following discussion in Ibb8175981092d7f41864e641cc3c118af70a5c76, this patch
proposes to further reduce the scope of what unit tests may access, by removing
the loading of DefaultSettings and GlobalFunctions.php. This also has the
implied effect of disabling the storage backend, as well as the global service
locator.
MediaWikiTestCase is renamed to MediaWikiIntegrationTestCase so it's scope and
purpose is more clear. Whether we still need to keep `@group Database`
annotation around is debatable, as it's unclear to me what the performance costs
are of implying database access for all tests which extend IntegrationTestCase.
As far as I can tell, `@group Database` is primarily used in CI to run faster
tests before slower ones, and with the new UnitTestCase the annotation seems
redundant.
To run all testsuites, use `composer phpunit`. Other composer scripts:
- `composer phpunit:unit` to run unit tests
- `composer phpunit:integration` to run integration tests
- `composer phpunit:coverage` to generate code coverage reports from unit
tests (requires XDebug).
Note that you can pass arguments to composer scripts with `--`, e.g. `composer
phpunit:integration --exclude-group Dump`.
Other changes:
- Rename bootstrap.php to bootstrap.maintenance.php so it's clear it's part of
the legacy PHPUnit-as-maintenance-class setup
- Create new bootstrap.php which loads the minimal configuration necessary for
the tests, and do additional setup in the run() method of the unit/integration
test case classes
- Move the unit-tests.xml file to phpunit.xml.dist in preparation for this being
the default test configuration
For a follow-up patch:
- Find unit/integration tests for extensions/skins
- Migrate other test suites from suite.xml
- Support running all tests via vendor/bin/phpunit
Bug: T84948
Bug: T89432
Bug: T87781
Change-Id: Ie717b0ecf4fcfd089d46248f14853c80b7ef4a76
|
|
|
|
|
|
|
|
| |
Also honour any XDG variables if set (such as Wikimedia CI does)
so that gate jobs can automatically persist the cache.
Bug: T203694
Change-Id: I156af1c5097b8a87be228345fc0a0b80bb3ae338
|
|
|
|
|
|
| |
Makes re-running eslint faster on dev environments.
Change-Id: I3bd7932b49de35022898cdc8add1934633e6dacb
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In 8 years, this is the first time I see this directory exists
and that there is a Makefile that would write to it.
I don't know if anyone uses that, but PHPUnit auto-creates this
directory as needed. Hence, it need not exist ahead of time.
It seems most contributors generate code coverage by invoking
PHPUnit directory, which requires a path to be specified.
Per https://mediawiki.org/wiki/Manual:PHP_unit_testing/Code_coverage,
this tends to be docs/coverage, not docs/code-coverage.
Change the Makefile to write there as well, as better example,
and also add it to gitignore.
Change-Id: I0a4cf716ea9b7fae89c282945b160b0dc7b2d02f
|
|
|
|
|
|
| |
Made by IntelliJ IDEA
Change-Id: Ifd55b5cfeed187d68497346065eb976d169720c8
|
|
|
|
|
|
| |
.vscode is directory
Change-Id: I82d1da1b51b4bd32423ad0bb70d30df109fae1ae
|
|
|
|
|
|
| |
.vscode is place of configurations for Visual Studio Code.
Change-Id: Ie066b9773af757181f325c090af1af68d4954236
|
|
|
|
|
|
| |
Bug: T201782
Bug: T189966
Change-Id: I6ef5af969b1d74a04d5d89370e6ac800c20be1ad
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Without this, the tests sometimes fail like this:
> Error: ENOENT: no such file or directory, open './log/should-be-creatable.png'
> at screenshot() - saveScreenshot.js:52:17
> at saveScreenshot("./log/should-be-creatable.png")
This seems to race with the junit plugin, which uses mkdirp to
create it if missing, but the screenshot handling is separate
from that. WebdriverIO's own screenshot handling also does this
so it makes sense for ours to do that, too.
I considered trying to re-use WebdriverIO's save mechanism,
directly but it's not publicly exposed and only used for the
crash scenario, so for now we'll have to keep our own.
Also:
* Add to gitignore.
* Update default to use __dirname instead of './' because the
latter will somtimes be mediawiki/ and sometimes be selenium/
depending on whether you run all tests or some tests.
* Remove trailing slash from default logPath, and instead add the
slash in filePath.
Reason:
- The LOG_DIR used by Jenkins doesn't end in a slash either
(currently not failing because we no longer use that job,
and let quibble run the tests instead, which doesn't set
the LOG_DIR).
- The WDIO docs and example also use screenshotPath without
trailing slash.
- Without this, setting LOG_DIR=/tmp/something results in
filenames like /tmp/somethingexample.png.
Bug: T193088
Change-Id: I6550f9315bae89f96a791f7ae8cc2fbec5ee8dd5
|
|
|
|
|
|
|
| |
Avoids git looking in your transcoded audio/video files
for changes...
Change-Id: I5610354a1575bb97f4523d58d3e9713512416305
|
|
|
|
| |
Change-Id: Ic9cd0051cc8bd241b933037466a2af76d0f6a287
|
|
|
|
| |
Change-Id: Ia984f7baa2aa94e00b7be712d5dc4846d29ede85
|
|
|
|
|
|
| |
The file is needed if using composer via a phar file.
Change-Id: I910bc8929d0cf26d9d110eeb1051c4d41c25aa3c
|
|
|
|
| |
Change-Id: Ie9e5bab9f9c20c9512dbdda2019643fa35feac2c
|
|
|
|
| |
Change-Id: Ie4f470f5f0528308871b78c7c823851b0a45e8eb
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds the necessary configuration and stubs for phan static analysis to
run against mediawiki core. A variety of fixes have been applied to core
recently such with this current configuration we are completely passing,
except for one issue with a bug in Phan (https://github.com/etsy/phan/issues/286)
In it's current configuration Phan will detect fatal errors trying to
access non existant classes, undefined method calls, and other errors.
The analysis can be expanded as we cleanup more of the codebase. This
is in preparation for working on getting the CI to run phan as part of
the review process. I have found phan to be usefull in CirrusSearch
(although with stricter config) for catching bugs and I think it could
help in core as well.
We arn't too far from being able to disable `null_casts_as_any_type`,
there are only a few classes that need adjusting. Lots more work needs
to be done to reduce `minimum_severity` from 10 to 5 (normal) or
0 (low).
Change-Id: Iafd55b1380f37d7b0d195eed081f8042166690e8
|
|
|
|
|
|
|
| |
This is the default directory for FileCache (as enabled with $wgUseFileCache).
Used by HTMLFileCache (article views) and ResourceFileCache (load.php).
Change-Id: I8c3ccb734268b0902b693c2c19125f7f858898f1
|
|
|
|
|
|
|
|
|
| |
People and tools sometimes accidentally commit these, let's make it
more difficult to do.
Follow-up to abb4271a. NO ONE SAW THIS EMBARASSING MISTAKE.
Change-Id: If5f427586814c304b30e5783a59f33814bfeaa54
|
|
|
|
|
|
|
| |
People and tools sometimes accidentally commit these, let's make it
more difficult to do.
Change-Id: I05574d46186642940054aaecec055723c7ade8ac
|
|
|
|
|
|
|
|
|
|
|
| |
Require Composer merge plugin to allow easier local Composer dependency
management without composer.json edit conflicts. The configuration
provided will merge Composer configuration directives found in
a `composer.local.json` config file into those specified by MediaWiki's
composer.json file at Composer runtime.
Bug: T67188
Change-Id: I66a19d0154191e536aab37a5e183e4505bf3e9be
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
MediaWiki tends to assume installation of phpunit via PEAR.
Distribution of phpunit via PEAR will eventually be discontinued,
in favor of distribution via PHAR or composer. PEAR installation
of phpunit 4.0 essentially distributes a phar.
https://github.com/sebastianbergmann/phpunit/wiki/Release-Announcement-for-PHPUnit-4.0.0
This patch allows phpunit.php to work with a phpunit.phar file,
as long as it's in the include path. --with-phpunitdir can be used
to add a directory to the include path.
With composer install, no options are needed and it works.
Bug: 58881
Change-Id: Ibac9b36bbb9614d990c697a091947a64c8987d1d
|
|
|
|
|
|
| |
Broken after a change in directory structure...
Change-Id: Ibe208302c30483ee9476a176efe8dd88b21d30a5
|
|
|
|
|
|
| |
Run make kss to generate a style guide for mediawiki.ui
Change-Id: Ib2db52a855f7eb924a59eebfff88e23600af78d6
|
|
|
|
|
|
|
| |
One might want to have those in there in a development
environment.
Change-Id: Ie5f4bbc15cb738c9801490e800255470ceb42d79
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was the only SASS in core.
Remove gradient hacks for IE<10 (proprietary filter property) in
vertical-gradient mixin. Buttons look fine without gradients too,
and filter can often signfificantly degrade performance:
http://gomilkyway.com/web/why-site-is-so-slow-on-ie-even-to-scroll-poor-ie-performance/
http://coding.smashingmagazine.com/2010/04/28/css3-solutions-for-internet-explorer/
http://msdn.microsoft.com/en-us/library/ms532847%28VS.85%29.aspx
(look for "performance")
Remove text-shadow for button's text which had no effect on appearance.
Remove obsolete or non-existent vendor-prefixed properties:
* display: -moz-inline-stack (not needed for Firefox 3+)
* -webkit-border-radius, -moz-border-radius (supported for sometime
without a prefix, graceful degradation for old browsers)
* -ms-border-radius, -o-border-radius (never existed)
Remove *vertical-align: auto from IE6/IE7 inline hack. Can't find any
evidence that it's necessary.
Bug: 54485
Change-Id: I81d8d0c9f6705aef8bdb8a28e1154f2de4301235
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Makefile removes this automatically, but compass watch won't do that
for you. Much better to just .gitignore it so we don't have to worry
about it.
See resources/mediawiki.ui/sourcefiles to see what I mean, and see
https://www.mediawiki.org/wiki/Agora/Engineering#Working_with_the_Compass_code
for documentation about the current approach.
Change-Id: Icf7dbc9e19f0615c5fcc88924a17ae695df0ff05
|
|
|
|
| |
Change-Id: Ia7e22c2219040c7137a0f4ddc1dbb8ec1861a2d3
|
|
|
|
| |
Change-Id: I9b5d03443d6b0f536ad887b25bbf86716a212742
|
|
|
|
|
|
|
|
|
| |
In Git (at least in version 1.8.x) entries without leading slash
can be matches in any subdirectory.
Add a / in front of all those that should only be in the root.
Change-Id: I61e2be30ac24c5b369a1d36869fbd027f197bebf
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Adding configuration files for jsduck.
* Fixing our previously undocumented code documentation to comply
with jsduck specifications
.. for the following modules:
- mediawiki
- mediawiki.Title
- mediawiki.util
- mediawiki.notification
- mediawiki.api (and plugins thereof)
- jquery.localize
I've choose these to show as many different examples for
different types of modules and methods that we encounter
in our code base.
Hopefully with this as a start it will be easy for other people
to extend the documentation for most (if not, all) other modules
we have in MediaWiki core.
Change-Id: Ieb8c5d2d2cb4672f1d6abc3f865c6fb1470d8feb
|
|/
|
|
|
|
|
|
|
|
| |
The Composer dependencie manager installs components under /vendor by
default so simply ignore that path. We do not care of tracking the
composer.* files, they will always be local just like LocalSettings.php.
Extensions are properly installed under /extensions/.
Change-Id: I7c50ee11edf2f7b1d71533fc32a75831a384a630
|
|
|
|
|
|
|
| |
git-deploy writes a status file at the root of the working copy. We want
to always ignore it.
Change-Id: I4dbbce669ba4d194c3ce5568733bd27db51fd40e
|