Commit graph

86 commits

Author SHA1 Message Date
Kunal Mehta
6e9b4f0e9c Convert all array() syntax to []
Per wikitech-l consensus:
 https://lists.wikimedia.org/pipermail/wikitech-l/2016-February/084821.html

Notes:
* Disabled CallTimePassByReference due to false positives (T127163)

Change-Id: I2c8ce713ce6600a0bb7bf67537c87044c7a45c4b
2016-02-17 01:33:00 -08:00
Marius Hoch
4c574daa45 Factor page name normalization out of MediaWikiSite
Into a new MediaWikiPageNameNormalizer.

The code has been copied over almost 1:1, I only
left the phpunit test special handling in MediaWiki site.

Change-Id: I008cadd29a2aa1f21098339b895c35a100959b04
2016-01-04 17:32:22 -08:00
Paladox
2b61957cfe build: Update mediawiki/mediawiki-codesniffer to 0.5.1
Two rules are ignored for now to allow us to upgrade:
* MediaWiki.ControlStructures.AssignmentInControlStructures.AssignmentInControlStructures
* Generic.ControlStructures.InlineControlStructure.NotAllowed

Also ignore the .git folder.

Change-Id: I1b149c72b27be54e22e369999ad0c41c2d1fc2b4
2016-01-02 09:50:09 +00:00
aude
b0c81a3e09 Remove deprecated SiteObject and SiteArray classes
SiteObject and SiteArray were deprecated in 1.21 and
can't find any use of them anywhere else in gerrit.

Change-Id: Iff3ba8a60ac9566998cce828c4034066fdefe804
2015-11-04 13:43:32 +01:00
Bryan Davis
45b0cc23b9 Site: fix copy-n-paste phpdoc
Change-Id: I5e735089b3dacea94044fa96f821fc47940f7029
2015-10-07 15:21:28 -06:00
Brad Jorsch
4191a16700 Remove ORM use from DBSiteStore
This loses something of the genericity of the former DBSiteStore (i.e.
it's now tied to MediaWiki's database and sites table, and subclasses
and users can't easily override that), but nothing in core or extensions
in Gerrit was using that genericity so it's probably no big loss.

Further, T113034 (an RFC to actually use this 'site' stuff for its
original purpose) proposes getting rid of SiteStore anyway.

Bug: T114538
Change-Id: I7e7ca257451e6307a7e5bb11fd393283d0d19e77
2015-10-06 16:20:53 -04:00
Vivek Ghaisas
c54766586a Fix issues identified by SpaceBeforeSingleLineComment sniff
Change-Id: I048ccb1fa260e4b7152ca5f09b053defdd72d8f9
2015-09-26 23:06:52 +00:00
umherirrender
271da88127 Some bugzilla.wikimedia.org -> phabricator.wikimedia.org changes
Changed some old bugzilla links to new phabricator links in comments,
test data and error message. This reduces the need for redirects from
old bugzilla to new phabricator from our source code.

Change-Id: Id98278e26ce31656295a23f3cadb536859c4caa5
2015-09-24 17:17:25 +02:00
Thiemo Mättig
9ab19a5420 Enforce an alphabetic default order for SiteList entries
Bug: T106054
Change-Id: I8bf22d99b8304d7a6f40e384e8de00a4aca9313d
2015-08-06 16:24:33 +02:00
Aaron Schulz
46211d468b Added CachingSiteStore APC comments
Change-Id: I9ed8fe42cb40beb80dc789099ca09b7a077c07bd
2015-07-25 19:14:19 +00:00
Marius Hoch
2d20b88c7d Use CACHE_ACCEL for SiteLists if on HHVM
Bug: T58602
Change-Id: I3eeedddeb79cfbee734cfe49fe86d32bf826040a
2015-07-19 18:16:33 +00:00
Kevin Israel
bffd2cca64 Change case of class names to match declarations
Found by running a script that uses PHP's tokenizer extension to
extract class declarations and uses, then compare them:

* AllMessagesTablePager
* SVGReader
* XML

Change-Id: I960aa05b2127722ecc5ae8b165549f9e1077d3c1
2015-04-29 19:01:07 +00:00
Kunal Mehta
13975fe76a Use wikimedia/utfnormal library, add backwards-compatability layer
This drops support for the custom utf8 normal PHP extension in favor
of the intl extension.

Bug: T90825
Change-Id: Ifbaeb2ef684217cf6187ccc4fb4d303f89608300
2015-03-24 12:59:26 -07:00
jenkins-bot
65294205a1 Merge "Split SiteLookup interface from SiteStore" 2015-03-19 11:32:27 +00:00
aude
aded554d70 Split SiteLookup interface from SiteStore
* SiteLookup interface is added, and SiteStore extends
  it. (any SiteStore type hints can be changed to use
  SiteLookup if all they need is lookup functionality)
* Memcached based SiteStore code is split from the
  database SiteStore, and SiteSQLStore is deprecated.
  If no caching is desired when using a SiteStore, then
  use a SiteDBStore instance, instead of passing $source
  parameter in SiteStore::getSite and SiteStore::getSites.
* SiteListFileCache renamed to FileBasedSiteLookup and
  implements SiteLookup.

Bug: T77990
Change-Id: I36b599884c211580ea6806a8a190c65c4f9087cf
2015-03-18 21:31:48 +01:00
Kunal Mehta
e549f9d007 Fix phpcs errors and warnings in includes/site
Change-Id: Id6ae5659af6062b92bb964f1f0951e61408725ec
2015-03-15 02:37:39 +00:00
Chad Horohoe
c33f4de066 Profile all external HTTP requests from MW
Change-Id: Ie980b080da2ef21ec7d9fc32f1accc55710de140
2015-03-03 20:54:30 -08:00
aude
df3ac3d09e Introduce HashSiteStore, mainly for use in tests
HashSiteStore comes from Wikibase (see I783bd95), where it was
called MockSiteStore.

This enables some phpunit tests, related to Site objects, to no longer
depend on a database, memcached or other external storage. This makes
tests faster and more simple.

Bug: T90874
Change-Id: I048d37bd2aaa5f17c9fe16b2855df8bf9fe7bc8c
2015-02-27 10:14:48 +01:00
daniel
ca3be1e13d Maintenance script for exporting site definitions
Bug: T87178
Change-Id: I40fd6aaa8f47bad3d595d5c190036bf04d13c12a
2015-02-20 12:09:34 +01:00
daniel
85e2086369 Maintenance script for importing site info.
Bug: T87176
Bug: T87183
Change-Id: I3936417bc79e08cf3d04270158a6e483b5515246
2015-02-18 18:39:14 +01:00
Chad Horohoe
aa21e125a3 Remove obvious function-level profiling
Xhprof generates this data now. Custom profiling of various
sub-function units are kept.

Calls to profiler represented about 3% of page execution
time on Special:BlankPage (1.5% in/out); after this change
it's down to about 0.98% of page execution time.

Change-Id: Id9a1dc9d8f80bbd52e42226b724a1e1213d07af7
2015-01-07 11:14:24 -08:00
aude
8f18fbee58 Add documentation for SiteListFileCache
Change-Id: I6c5b7fdfbbd6a4e6d67bd0f4aff539ce4d97cfda
2014-12-19 11:28:18 +00:00
umherirrender
489d793882 Fixed spacing
- Added/removed spaces around parenthesis
- Added newline in empty blocks
- Added space after switch/foreach/function
- Use tabs at begin of line
- Add newline at end of file

Change-Id: I244cdb2c333489e1020931bf4ac5266a87439f0d
2014-12-05 22:28:07 +01:00
jenkins-bot
8455c2551d Merge "Inject cache as constructor param of SiteSQLStore" 2014-11-28 16:23:43 +00:00
aude
90f6efc360 Implement SiteListFileCache and rebuild script
Provides file-based cache of the SitesStore data,
using a static json file dump of the data from the
SiteSQLStore.

Includes a maintenance script to rebuild the sites cache.

Bug: 56602
Bug: 45532
Change-Id: Iaee4c1f9fb5d54efe01975f733ebd5c339ac106f
2014-11-27 22:32:25 +00:00
aude
3dfde951a7 Inject cache as constructor param of SiteSQLStore
Change-Id: If1d08d4f3451b72d7d4d1c443cf2c82842ffd20f
2014-11-22 16:05:03 -05:00
aude
77863e8fba Remove deprecated (since 1.21) Sites class
this is an 'alias' for SiteSQLStore and is unused
afaik in Wikibase and elsewhere.

Change-Id: Ibee3e2a89399b97fa4de48e52c3d527714cd0731
2014-11-20 14:25:10 +00:00
umherirrender
df24b7209d Fixed spacing
- Added newline at end of file
- Removed double spaces/newlines
- Added space after if/function and parentheses/brackets
- Removed space before comma/cast
- Fixed indent of some lines

Change-Id: I29867ffdffdfb7d2b56997e9393497c7dc12f7d3
2014-09-29 20:46:19 +02:00
Aaron Schulz
56bd04b471 Replaced more trx DIY with startAtomic()
Change-Id: I76662aa438ed8aa294f8ec5973c9a51fd8b7cdbf
2014-09-16 17:26:10 -07:00
Aaron Schulz
182b331aa9 Made SiteSQLStore use startAtomic() instead of DIY
Change-Id: I3f47675646d772b4718086e2715e243da3a16bab
2014-09-16 22:53:32 +00:00
umherirrender
768ac15c70 Cleanup some docs (includes/[s-z])
- Swap "$variable type" to "type $variable"
- Added missing types
- Fixed spacing inside docs
- Makes beginning of @param/@return/@var/@throws in capital
- Changed some types to match the more common spelling

Change-Id: Ie419638e909a47aa72a274043604247830ee1a81
2014-07-24 19:43:44 +02:00
umherirrender
947c841717 Add since to @deprecated in includes/site
Follow-Up: I08ffa6a97093abbe85169f664b97498c5f39bf8e
Change-Id: I6c3e607a4f095ca0dcd2f240c0c483b90c16c13d
2014-07-21 21:19:41 +02:00
umherirrender
53c420e278 Fixed spacing
- use tab as indent instead of spaces
- Added space after closures "function"
- Added spaces around string_concat
- Added newline inside empty blocks
- Removed four spaces after comma

Change-Id: I4425b0c6a69b36f40acfea6511b8950cf09ce2b2
2014-07-20 21:41:41 +02:00
Siebrand Mazeland
5ce5092621 Pass phpcs-strict on includes/site/
Change-Id: Ibc3f29e21dd5bcfd5ea641a58f8d3f641948741d
2014-05-09 21:54:07 +02:00
jenkins-bot
ca895b7072 Merge "Add 'since <version>' to @deprecated annotations" 2014-04-22 19:46:38 +00:00
umherirrender
b45420410f Fixed some @params documentation (includes/*)
Swapped some "$var type" to "type $var" or added missing types
before the $var. Changed some other types to match the more common
spelling. Makes beginning of some text in captial.
Also added some missing @param.

Change-Id: Iced714bca004756b461b66067a49a925a7e3b877
2014-04-19 22:22:20 +02:00
Bartosz Dziewoński
8c2599f23e Add 'since <version>' to @deprecated annotations
Change-Id: Ief96d55aa95f657a38a62ae3dde1ef7a415ff675
2014-04-15 22:30:01 +02:00
umherirrender
edbd8ea6b3 Fix [missing] variables in @param docs
Two places found without variable, one without $ and one only missed a
space before $

Change-Id: Iacd7c386d57223f3a112b59cd11383ef5c0ac2f1
2014-04-06 20:11:30 +02:00
aude
4f02f5fbb7 Put SiteList navigation ids into cache
These are ids used by extension(s) such as Wikibase
to add language links in the sidebar.

Bug: 62754
Change-Id: Ie21fc3ea500bd7de3c01a9d8ec05373f016f339a
2014-03-18 15:11:41 +00:00
Bene
febcfe8d61 Add site by navigation id feature to SiteList
There are some places especially in Wikibase where we need to get a site
based on the local navigation id. This feature really should go into core.

Change-Id: I02eb1673bea58f79d02db2e1ecd21cbc5b8cb0d1
2014-03-04 21:09:10 +01:00
aude
6778b932ca Reduce complexity of SiteSQLStore saveSites method
split code that generates an ORMRow from a Site object

Change-Id: Ie1f7ed834a33befb43536355ad2b9b98a13d4c79
2013-09-18 22:31:40 +02:00
Timo Tijhof
4bd5471ca3 docs: Remove odd colons after @todo
Most were this way already:
https://doc.wikimedia.org/mediawiki-core/master/php/html/todo.html

Ran a find/replace on the odd ones. Also made them all
lower case.

Change-Id: I70c6a69344ddebc603e9a1c1d87e3cc4f4f4c560
2013-05-15 06:23:40 +00:00
Tobias Gritschacher
978c8d9b5f Get rid of wfScript in MediaWikiSite::normalizePageName
wfScript should not be used to construct URLs for calls to other wikis

Bug: 47242
Change-Id: Id5aaa58f10d513e082b217aeb8d88b8228341a48
2013-04-15 11:50:07 +02:00
umherirrender
7c9a49082c Use wfAppendQuery to append a query
Also pass a array to wfAppendQuery, which than does the urlencoding.

Prefer a wfScript() over the global or string

Change-Id: Icada534cb4c99c9441938a2e8dcbc11a142360c6
2013-04-12 07:31:52 +00:00
umherirrender
6c278b6d7e fix some spacing
* Removed spaces around array index
* Removed double spaces or added spaces to begin or end of function
  calls, method signature, conditions or foreachs
* Added braces to one-line ifs
* Changed multi line conditions to one line conditions
* Realigned some arrays

Change-Id: Ia04d2a99d663b07101013c2d53b3b2e872fd9cc3
2013-03-25 22:22:46 +00:00
Tyler Anthony Romeo
4dcc7961df Fixed @param tags to conform with Doxygen format.
Doxygen expects parameter types to come before the
parameter name in @param tags. Used a quick regex
to switch everything around where possible. This
only fixes cases where a primitve variable (or a
primitive followed by other types) is the variable
type. Other cases will need to be fixed manually.

Change-Id: Ic59fd20856eb0489d70f3469a56ebce0efb3db13
2013-03-11 13:15:01 -04:00
umherirrender
d63121016d fix some spacing
Added/removed spaces around logical/arithmetic operator
Reduced multiple empty lines to one empty line
Removed wrong tabs before comments at end of line
Removed too many spaces in assigments

Change-Id: I2bba4e72f9b5f88c53324d7b70e6042f1aad8f6b
2013-03-07 17:53:21 +01:00
Siebrand Mazeland
9b7889b84b Use American English spelling for behavior
Spotted in ipbreason-dropdown by Shirayuki.

Change-Id: I576ed4bc0abe5ab980aaee3fb9f9e4b43087311f
2013-03-04 10:24:57 +01:00
daniel
fe6498d7d2 Set timeout for Sites object in memcached.
Change-Id: I8964a03c5989b368e0da07b42db463cf6e732fb3
2013-02-11 20:40:12 +01:00
umherirrender
f3cf109e62 remove space before semicolon
Change-Id: Ic0d890f5e27cec017c7f7910a67d53b2edf82079
2013-02-09 22:44:24 +01:00