Commit graph

4183 commits

Author SHA1 Message Date
Victor Vasiliev aa399da279 Implement a tree-caching abuse filter parser
This filter is fully functional.  The old filter is still enabled by
default for a transitional period in case the new one suddenly has
issues.

Change-Id: I4aea5f00c62420108030e60e79d5bf34e913e95d
2016-09-24 02:53:26 +00:00
jenkins-bot 959077f03f Merge "Avoid global state in ContributionsToolLinks if possible" 2016-09-23 16:20:13 +00:00
Translation updater bot 23cf151ef9 Localisation updates from https://translatewiki.net.
Change-Id: Ib4bc4523a44f74ccc1fdf859dbf8e652aa28b4a6
2016-09-22 23:32:39 +02:00
Federico Leva 8d3b236e22 Consistently refer to actions in abusefilter-warning
Mentioning edits rather than actions is confusing when the warning
is about an action such as an upload. We talk of actions everywhere
else.

Spotted by Steinsplitter.

Change-Id: I4f9ca0b397a1d8354310704c355a5ac7fc902aa6
2016-09-21 15:31:26 +02:00
jenkins-bot 958de0a18a Merge "Remove pre-1.25 API compatibility code" 2016-09-20 21:00:41 +00:00
Translation updater bot 21214b9fe7 Localisation updates from https://translatewiki.net.
Change-Id: I95c4cbc9d461312c30f6995f37274990b200aceb
2016-09-20 22:36:54 +02:00
Brad Jorsch 3aa76b0f5f Remove pre-1.25 API compatibility code
Since this extension uses extension.json, it already requires 1.25+ so
no need to keep the old code around.

Change-Id: I6f968be3b7ef7cbc7193c8e103beb36ecf9c7b60
2016-09-20 15:31:58 -04:00
Translation updater bot ebd398b4d6 Localisation updates from https://translatewiki.net.
Change-Id: I82d7defe385eec505d299f9e40b857df2b4bf76a
2016-09-19 22:49:01 +02:00
MarcoAurelio 32d30c8cee Modify "abusefilter-log-name" to use lowercase in "filter"
Bug: T144702
Change-Id: I5802a7eceb00d4e8629e6c1f659c6c206a2c28f5
2016-09-19 09:26:18 +00:00
jenkins-bot 4ef65985fe Merge "Allow filtering content model changes" 2016-09-17 22:23:21 +00:00
Translation updater bot 33bc497c1e Localisation updates from https://translatewiki.net.
Change-Id: Iabf50a6c85b849824160b5c693f7889edb1b3205
2016-09-17 23:14:25 +02:00
Kunal Mehta 9eb50de025 Avoid wfMessage() in AbuseFilter::buildVarDumpTable()
Change-Id: I3377623e6ba7f4c203de69d25f677162d6e61e65
2016-09-17 00:27:38 -07:00
Kunal Mehta 06dc4510cc Avoid global state in ContributionsToolLinks if possible
Change-Id: I4fe92ae6947de798d7e7c7dfa8e3b44b5bfa5a1c
2016-09-15 15:36:59 -07:00
Translation updater bot c2862dac76 Localisation updates from https://translatewiki.net.
Change-Id: I800cb48f64f9246328657b8d8bda5484fec29667
2016-09-15 22:56:08 +02:00
jenkins-bot 337cf90303 Merge "Fix documentation of AbuseFilter::filterEdit()" 2016-09-15 20:11:54 +00:00
Translation updater bot d60a9a87ff Localisation updates from https://translatewiki.net.
Change-Id: I33935634016ffaf85a9699d9423dde5f59a2cca3
2016-09-14 22:32:11 +02:00
Translation updater bot a258766446 Localisation updates from https://translatewiki.net.
Change-Id: Idb616cb6ec2cf8dbff016b06d15653bf1c61be09
2016-09-13 22:45:48 +02:00
Kunal Mehta 1e550ddda9 Allow filtering content model changes
This adds the new_content_model and old_content_model variables. The
latter will be an empty string upon page creation when there is no old
revision.

This also required adjusting the null edit detection to not treat
content model changes as null, as well as some other internal
refactoring.

Bug: T145489
Change-Id: I7c3385056751421ba22efb7d8d064981420e8819
2016-09-13 01:40:21 -07:00
Kunal Mehta c1b2420dfb Fix documentation of AbuseFilter::filterEdit()
$content will always be a Content object, the only caller is the
EditFilterMergedContent hook, which always passes one.

Change-Id: Ic6356c51ec48084c27ce046b78d2380e723cd4b0
2016-09-13 00:44:34 -07:00
jenkins-bot 6c08f193cb Merge "Add basic AbuseFilter reading rights for OAuth" 2016-09-06 14:14:05 +00:00
Translation updater bot 2781369a30 Localisation updates from https://translatewiki.net.
Change-Id: I0a62b89c1fa266e3a2c44006e20b5558947e8485
2016-09-05 22:39:15 +02:00
Translation updater bot addcc44d68 Localisation updates from https://translatewiki.net.
Change-Id: I1df88b0ce2d4793eb395b790839023e2db4dada4
2016-09-04 00:16:23 +02:00
MusikAnimal d76de81f66 Add basic AbuseFilter reading rights for OAuth
Bug: T126756
Change-Id: Iace64d3b8c2a8ba1eaa5b49efd8362de5d36d3eb
2016-09-02 22:58:17 +00:00
Translation updater bot a140e4ae37 Localisation updates from https://translatewiki.net.
Change-Id: I49d8039a5f7438610e2bbbb7139f6e4dde816951
2016-09-02 22:52:28 +02:00
Translation updater bot 0fe14575f5 Localisation updates from https://translatewiki.net.
Change-Id: Ifc5999a0a3954525bd14215fff5be893e060e8c4
2016-08-31 22:31:33 +02:00
Translation updater bot 6ad364bbdb Localisation updates from https://translatewiki.net.
Change-Id: I8689198cb82e278836d3af9747dcaee4ee212f36
2016-08-30 22:57:35 +02:00
jenkins-bot b2872a8115 Merge "Fix bogus stats where stashes counted as misses" 2016-08-30 05:58:25 +00:00
Aaron Schulz 8070a5b15b Fix bogus stats where stashes counted as misses
Change-Id: Iefacd37f1470c99a04bb199651d8a73ae4da28fc
2016-08-29 20:37:14 -07:00
Translation updater bot e0824ee706 Localisation updates from https://translatewiki.net.
Change-Id: I1d22d4334e4e73d49c0ada2fee7cc0b421947614
2016-08-29 22:32:37 +02:00
Translation updater bot 3e8543f82d Localisation updates from https://translatewiki.net.
Change-Id: I27dad10ba0af00a56e69c1080f3a66b703710ecc
2016-08-28 22:33:09 +02:00
Translation updater bot 228299ecc2 Localisation updates from https://translatewiki.net.
Change-Id: I83b5770379ce83c8b6b62d1e75ceeb229490c36c
2016-08-25 22:31:51 +02:00
Translation updater bot b8dc46ef8e Localisation updates from https://translatewiki.net.
Change-Id: Id065d92383edb10b0632075928efc34e017e52d7
2016-08-24 22:34:02 +02:00
Translation updater bot 669375810e Localisation updates from https://translatewiki.net.
Change-Id: Id62c9256398e43ea96f0d823349e329a4385ecd2
2016-08-24 10:29:51 +02:00
Paladox b3081e1798 Update mediawiki/mediawiki-codesniffer to 0.5.1
Change-Id: I4b2055a76db4362a8136e3fd595228cf07d083a9
2016-08-23 16:18:27 +02:00
jenkins-bot e7ba7447bb Merge "Make Special:AbuseLog pager more efficient" 2016-08-23 14:09:01 +00:00
jenkins-bot fa68be8148 Merge "Fix User::isAllowedAny() calls" 2016-08-22 23:48:25 +00:00
Kunal Mehta 972d9b7c0f Fix User::isAllowedAny() calls
Follows up bb277d437e.

The permissions are supposed to be passed as arguments, not in an array.

Change-Id: I50ab80e4fec0d3a983d4cd3957d340abd04126c4
2016-08-22 16:30:59 -07:00
Victor Vasiliev 5da98b67bf Add test coverage for more bizzare features of the filter parser
I am pretty sure all of the behavior documented in these tests is a bad
idea.  It is possible that we can fix it since some of those features
are probably unused, but for now those tests will serve as a
documentation of the current behavior.

Change-Id: Ia2a2f57a538d7aef2ac73fb2e47fe82dd5d5e09a
2016-08-21 18:45:22 -04:00
Translation updater bot 49b5afc7a2 Localisation updates from https://translatewiki.net.
Change-Id: I953d2c4f0450ee61a2e090df6b1ecc94cd94c9a7
2016-08-21 22:48:59 +02:00
Translation updater bot a57b263283 Localisation updates from https://translatewiki.net.
Change-Id: Ib88034603166d007c1a7848d0446a818dd2ea08b
2016-08-19 22:35:48 +02:00
Platonides bb277d437e Let abusefilter-modify users see history of hidden filters
d0439337 (I9e15326c) made abusefilter-view-private required
even for users with abusefilter-modify that can see and
change private filters.

Bug: T143365
Change-Id: I401effc5f1e429b5ec12c7f48dcc00ada74eafb6
2016-08-18 16:08:58 -07:00
Translation updater bot 66afef7840 Localisation updates from https://translatewiki.net.
Change-Id: Ieb5d56790712d27a52381678f273357212044e6f
2016-08-17 22:35:58 +02:00
Translation updater bot bf5769a436 Localisation updates from https://translatewiki.net.
Change-Id: Ia13bd3bed7c8ef4dd933d812bd201c514eca2a8e
2016-08-16 22:39:50 +02:00
jenkins-bot 007f47795c Merge "Update tests for AntiSpoof fixes" 2016-08-16 16:40:36 +00:00
Translation updater bot f2b6827b67 Localisation updates from https://translatewiki.net.
Change-Id: I33773bba5d86ea87de285fd6cf75d0e946d751e4
2016-08-15 22:56:55 +02:00
Glaisher 9e75545804 Make Special:AbuseLog pager more efficient
* Use LinkBatch for local page existence queries needed by Linker
* Cache user links as Linker results in duplicate User::getEditCount query for each row
* Store result of SpecialAbuseLog::isHidden() for each row to minimize calls to
   Revision::fetchFromConds
* Use Linker::linkKnown instead of link when linking to special pages

Example improvements seen locally:
 Before: 1152 queries
 After: 243 queries

Change-Id: I22ba68710f3ecea5b48b25d631da84c6445fcb97
2016-08-15 15:22:18 +05:00
jenkins-bot 65d70aff29 Merge "Special:AbuseLog: Substitute username parameter in log message before parsing" 2016-08-15 09:13:14 +00:00
matejsuchanek f5e6c733dc Special:AbuseLog: Substitute username parameter in log message before parsing
The GENDER was not working because it was provided via Message::rawParams().

Change-Id: Ia52958b5529b0c16b6f658bb6d4afd4bb525e972
2016-08-15 08:59:47 +00:00
Translation updater bot 9ea2ad36bd Localisation updates from https://translatewiki.net.
Change-Id: Ie5d9ed3a12531120278ee485d7354289c73288e6
2016-08-14 22:24:41 +02:00
Kaldari acd28cb00f Update tests for AntiSpoof fixes
Bug: T29987
Depends-On: Iccb3e50073bbbc2b979cb62dd0e129afd1c2e55f
Change-Id: I8bef839b9b9ca5fced94ce6428e769133ede868f
2016-08-13 20:37:43 +00:00