Git/Reviewers

From MediaWiki.org
< Git
Jump to: navigation, search
Manual on MediaWiki Tools
Crystal Clear action run.png
Gerrit Reviewer Bot

Release status: stable

Description Adds reviewers to Gerrit patchsets

Log of recent actions

Author(s) User:valhallasw

Please send me a talk page message or e-mail if the bot is malfunctioning.

License MIT
Download https://github.com/valhallasw/gerrit-reviewer-bot
Note Note: If you are looking for a list of people that could review your patch, please see Developers/Maintainers.

This is a page where people can register to be automatically added as reviewer to newly opened changes in Gerrit depending on specific conditions. After registering here, reviewer-bot will add you as reviewer to every change that matches the project and file filter.

Gerrit supports a similar feature by itself (including filtering by modified file name and words appearing in commit message), see Gerrit/watched projects and https://gerrit.wikimedia.org/r/#/settings/projects.

Contents

How to add yourself[edit]

Each project has a header with the gerrit project name, followed by a list of people (using Template:Gerrit-reviewer), for example:

=== test/mediawiki/extensions/examples ===
* {{Gerrit-reviewer|User 2}}
* {{Gerrit-reviewer|User 1|file_regexp=<nowiki>i18n</nowiki>}}

The file_regexp parameter can be used to filter for changes in specific files:

* {{Gerrit-reviewer|User 1|file_regexp=<nowiki>i18n</nowiki>}}

will watch for changes where a file with 'i18n' in the name is changed, while

* {{Gerrit-reviewer|User 1|file_regexp=<nowiki>^includes/specials</nowiki>}}

will watch for changes in the includes/specials directory. You can test the regexp using re-try with method 'search' and options DOTALL and IGNORECASE. The <nowiki> tags are suggested but only required when the regexp contains characters that interfere with template parsing (e.g. | and }}).

An optional match_all_files parameter makes the bot only mark changes where the file_regexp matches all the changed files:

* {{Gerrit-reviewer|User 1|file_regexp=<nowiki>\.css|\.txt</nowiki>|match_all_files}}

This is useful since review scores apply to the whole changeset, rather than parts of it, so users that are comfortable with reviewing only a subsection of the changes wouldn't be able to review the whole patchset. For instance, front-end changes often touch both CSS and JavaScript files. A user who is confident about his CSS knowledge but not so much about his JavaScript ones can use match_all_files to restrict reviews attributed to them to those that only touch CSS files.

Listen to repository groups[edit]

Projects are matched based on unix filename matching as implemented in the fnmatch module. The idea is to set a file_regexp, which filters changesets by changed files instead of repository. [nb. in beta]

*[edit]

  • Jackmcbarn (only commits where at least one of the changed files match /([Ll]ibrary\.php|\.lua)$/)
  • Siebrand (only commits where at least one of the changed files match /i18n/)
  • Siebrand (only commits where at least one of the changed files match /Messages/)
  • Siebrand (only commits where at least one of the changed files match /en.json/)

integration/*[edit]

search/*[edit]

wikimedia/discovery/*[edit]

mediawiki/extensions/BlueSpice*[edit]

mediawiki/skins/BlueSpice*[edit]

Listen to specific repositories[edit]

mediawiki/core[edit]

  • Aaron Schulz (only commits where at least one of the changed files match /^(includes/(filebackend|filerepo|job|jobqueue|db|cache|objectcache|externalstore|media|upload|poolcounter)/|maintenance/archive/[a-zA-Z]+)/)
  • Addshore (only commits where at least one of the changed files match /^(includes/tests/phpunit|\.(travis|scrutinizer)\.yml)/)
  • Anomie (only commits where at least one of the changed files match /^includes/api/|^includes/session/|^includes/auth/|^includes/specials/SpecialBotPasswords\.php$|^includes/user/(BotPassword|LoggedOutEditToken|CentralIdLookup|LocalIdLookup)\.php$|^includes/CommentStore(Comment)?\.php$|^resources/src/mediawiki\.special/mediawiki\.special\.apisandbox\.js$/)
  • cscott (only commits where at least one of the changed files match /[Pp]arser|virtualrest/)
  • daniel (only commits where at least one of the changed files match /^includes/content//)
  • Daniel Friesen (only commits where at least one of the changed files match /^maintenance/dev/|^includes/CryptRand|^includes/PathRouter|^resources/src/mediawiki/mediawiki\.(notification|notify)\./)
  • dcausse (only commits where at least one of the changed files match /^includes/search//)
  • Florianschmidtwelzow (only commits where at least one of the changed files match /^includes/specials|^includes/htmlform|^includes/widget/)
  • Jackmcbarn (only commits where at least one of the changed files match /(?<!^includes/Template)[Pp]arse|^includes/content/|^includes/(EditPage|Linker|MagicWord|Sanitizer|api/ApiExpandTemplates).php$/)
  • Jforrester (only commits where at least one of the changed files match /oojs/)
  • Jjanes (only commits where at least one of the changed files match /\.sql$/)
  • Krinkle (only commits where at least one of the changed files match /includes/resourceloader|startup.js|resources/src/mediawiki/|SpecialJavaScriptTest/)
  • Legoktm (only commits where at least one of the changed files match /^includes/(config|rcfeed|registration|resourceloader)/)
  • Liangent (only commits where at least one of the changed files match /^includes/ZhConversion\.php|^maintenance/language/zhtable/|^languages/LanguageConverter\.php|^languages/classes/LanguageZh/)
  • mattflaschen (only commits where at least one of the changed files match /jqueryMsg|mediawiki.cookie/)
  • Parent5446 (only commits where at least one of the changed files match /^(maintenance|includes/(db|password|Hooks\.php|Timestamp.php))/)
  • Skizzerz (only commits where at least one of the changed files match /[Mm]ssql/)
  • SMalyshev (only commits where at least one of the changed files match /^includes/search//)
  • Tpt (only commits where at least one of the changed files match /(DjVu|EditPage\.php)/)
  • TTO (only commits where at least one of the changed files match /Import|interwiki|Tag/)
  • Zppix (only commits where at least one of the changed files match /languages/l18n/en.json/)

mediawiki/debian[edit]

mediawiki/extensions/AbuseFilter[edit]

mediawiki/extensions/AdvancedSearch[edit]

mediawiki/extensions/Annotator[edit]

mediawiki/extensions/ApiFeatureUsage[edit]

mediawiki/extensions/ApiSandbox[edit]

mediawiki/extensions/BetaFeatures[edit]

mediawiki/extensions/BlogPage[edit]

mediawiki/extensions/Campaigns[edit]

mediawiki/extensions/Capiunto[edit]

mediawiki/extensions/CirrusSearch[edit]

mediawiki/extensions/Cite[edit]

mediawiki/extensions/CentralAuth[edit]

  • Legoktm
  • Anomie (only commits where at least one of the changed files match /^includes/session//)

mediawiki/extensions/CentralNotice[edit]

mediawiki/extensions/CodeEditor[edit]

mediawiki/extensions/CodeReview[edit]

mediawiki/extensions/Collection[edit]

mediawiki/extensions/Collection/OfflineContentGenerator[edit]

mediawiki/extensions/Collection/OfflineContentGenerator/bundler[edit]

mediawiki/extensions/Collection/OfflineContentGenerator/latex_renderer[edit]

mediawiki/extensions/Comments[edit]

mediawiki/extensions/CoreEvents[edit]

mediawiki/extensions/CreateRedirect[edit]

mediawiki/extensions/Description2[edit]

mediawiki/extensions/DonationInterface[edit]

mediawiki/extensions/E3Experiments[edit]

mediawiki/extensions/EducationProgram[edit]

mediawiki/extensions/ElectronPdfService[edit]

mediawiki/extensions/EventLogging[edit]

mediawiki/extensions/ExtensionDistributor[edit]

mediawiki/extensions/FileExporter[edit]

mediawiki/extensions/FileImporter[edit]

mediawiki/extensions/FlaggedRevs[edit]

mediawiki/extensions/Flow[edit]

  • Legoktm (only commits where at least one of the changed files match /^includes/api/)

mediawiki/extensions/FundraisingChart[edit]

mediawiki/extensions/Gadgets[edit]

mediawiki/extensions/Genealogy[edit]

mediawiki/extensions/GeoData[edit]

mediawiki/extensions/GettingStarted[edit]

mediawiki/extensions/GlobalUserPage[edit]

mediawiki/extensions/GuidedTour[edit]

mediawiki/extensions/GuidedTour/guiders[edit]

mediawiki/extensions/Ids[edit]

mediawiki/extensions/InputBox[edit]

mediawiki/extensions/Kartographer[edit]

mediawiki/extensions/LabeledSectionTransclusion[edit]

mediawiki/extensions/Linter[edit]

mediawiki/extensions/Math[edit]

mediawiki/extensions/MathSearch[edit]

mediawiki/extensions/MassAction[edit]

mediawiki/extensions/MassMessage[edit]

mediawiki/extensions/MediaWikiAuth[edit]

mediawiki/extensions/MediaWikiChat[edit]

mediawiki/extensions/MediaWikiFarm[edit]

mediawiki/extensions/MobileApp[edit]

mediawiki/extensions/MobileFrontend[edit]

mediawiki/extensions/TextExtracts[edit]

mediawiki/extensions/MolHandler[edit]

mediawiki/extensions/NamespacePaths[edit]

mediawiki/extensions/Newsletter[edit]

mediawiki/extensions/NSFileRepo[edit]

mediawiki/extensions/OpenBadges[edit]

mediawiki/extensions/ParserFunctions[edit]

mediawiki/extensions/Popups[edit]

mediawiki/extensions/PronunciationRecording[edit]

mediawiki/extensions/RandomInCategory[edit]

mediawiki/extensions/ReadingLists[edit]

mediawiki/extensions/RelatedArticles[edit]

mediawiki/extensions/ReplaceSet[edit]

mediawiki/extensions/RevisionSlider[edit]

mediawiki/extensions/Scribunto[edit]

  • Anomie
  • Hoo man (only commits where at least one of the changed files match /^engines/LuaCommon/(lualib/mw.html.lua|HtmlLibrary.php)|^tests/engines/LuaCommon/HtmlLibraryTest.*/)
  • Jackmcbarn

mediawiki/extensions/SidebarDonateBox[edit]

mediawiki/extensions/skins[edit]

mediawiki/extensions/SocialProfile[edit]

mediawiki/extensions/SpamBlacklist[edit]

mediawiki/extensions/Sudo[edit]

mediawiki/extensions/TemplateSandbox[edit]

mediawiki/extensions/TemplateStyles[edit]

mediawiki/extensions/Thanks[edit]

mediawiki/extensions/ThemeDesigner[edit]

mediawiki/extensions/ThrottleOverride[edit]

mediawiki/extensions/TitleBlacklist[edit]

mediawiki/extensions/TwoColConflict[edit]

mediawiki/extensions/VectorBeta[edit]

mediawiki/extensions/Wikibase[edit]

  • Addshore (only commits where at least one of the changed files match /^(client|lib|repo)/(tests/phpunit/)?includes/(api|ChangeOp|specials|serialization|serializers)/)
  • Hoo man (only commits where at least one of the changed files match /^client/resources/|^client/includes/DataAccess/|^(client|lib|repo)/includes/UpdateRepo.*/)

mediawiki/extensions/Wikidata[edit]

mediawiki/extensions/WikiEditor[edit]

mediawiki/extensions/WikiForum[edit]

mediawiki/extensions/Wikispeech[edit]

mediawiki/extensions/ZeroBanner[edit]

mediawiki/extensions/ZeroPortal[edit]

mediawiki/libs/phpstorm-stubs[edit]

mediawiki/php/luasandbox[edit]

mediawiki/php/wikidiff2[edit]

mediawiki/services/citoid[edit]

mediawiki/services/citoid/deploy[edit]

mediawiki/services/graphoid/deploy[edit]

mediawiki/services/mathoid[edit]

mediawiki/services/mathoid/deploy[edit]

mediawiki/services/mobileapps[edit]

mediawiki/services/mobileapps/deploy[edit]

mediawiki/services/ocg-collection[edit]

mediawiki/services/restbase/deploy[edit]

mediawiki/services/trending-edits[edit]

mediawiki/services/trending-edits/deploy[edit]


mediawiki/services/eventstreams[edit]

mediawiki/services/eventstreams/deploy[edit]

mediawiki/skins[edit]

mediawiki/skins/BlueSpiceSkin[edit]

mediawiki/skins/Metrolook[edit]

mediawiki/skins/MinervaNeue[edit]

mediawiki/skins/Vector[edit]

mediawiki/ruby/api[edit]

mediawiki/selenium[edit]

mediawiki/tools/codesniffer[edit]

mediawiki/tools/release[edit]

  • Florianschmidtwelzow (only commits where at least one of the changed files match /^make-deploy-notes/)

mediawiki/vagrant[edit]

  • Dduvall
  • BryanDavis
  • ejegg (only commits where at least one of the changed files match /^puppet/modules/(activemq|crm|payments|smashpig)/)
  • Anomie (only commits where at least one of the changed files match /^puppet/modules/role/templates/oauth/hello_world.php.erb/)

test/mediawiki/extensions/examples[edit]

  • Merlijn van Deen (only commits where at least one of the changed files match /^test\.txt$/)

wikimedia/communications/WMBlog[edit]

wikimedia/communications/WP-Victor[edit]

wikimedia/discovery/relevanceForge[edit]

wikimedia/discovery/discernatron[edit]

wikimedia/fundraising/crm[edit]

wikimedia/fundraising/crm/civicrm[edit]

wikimedia/fundraising/crm/drupal[edit]

wikimedia/fundraising/dash[edit]

wikimedia/fundraising/php-queue[edit]

wikimedia/fundraising/process-control[edit]

wikimedia/fundraising/SmashPig[edit]

wikimedia/fundraising/stats[edit]

wikimedia/fundraising/tools[edit]

wikimedia/fundraising/tools/DjangoBannerStats[edit]

operations/debs/pybal[edit]

operations/puppet[edit]

  • Coren (only commits where at least one of the changed files match /^modules/(gridengine|toollabs)/|^manifests/role/labs.*\.pp/)
  • Merlijn van Deen (only commits where at least one of the changed files match /^modules/toollabs/|^hieradata/labs/tools//)
  • Yuvipanda (only commits where at least one of the changed files match /^modules/toollabs/|^hieradata/labs/tools//)
  • Hashar (only commits where at least one of the changed files match /^modules/(beta|contint|jenkins|nodepool|zuul)/|^module/(profile|role)/manifests/(beta|ci|gerrit|nodepool|zuul)/)
  • Dzahn (only commits where at least one of the changed files match /^modules/(bugzilla|planet|wikistats)/|^manifests/role/(bugzilla|planet|wikistats)\.pp/)
  • fgiunchedi (only commits where at least one of the changed files match /^(files|manifests|templates)/swift/|^manifests/role/swift/)
  • bblack (only commits where at least one of the changed files match /^modules/(authdns|pybal|lvs|nginx|tlsproxy|varnish|sslcert)/|^modules/role/manifests/(cache|lvs)/|^manifests/role/(authdns|lvs|tlsproxy)\.pp|^files/ssl/|^templates/varnish//)
  • Krenair (only commits where at least one of the changed files match /^modules/(mediawiki|admin|openstack)//)
  • Gehel (only commits where at least one of the changed files match /^modules/(base|elasticsearch|k8s|logstash)//)
  • Mholloway (only commits where at least one of the changed files match /^modules/mobileapps//)
  • ema (only commits where at least one of the changed files match /^modules/(lvs|nginx|tlsproxy|varnish)/|^modules/role/manifests/(cache|lvs)/|^manifests/role/(lvs|tlsproxy)\.pp|^files/ssl/|^templates/varnish//)
  • mobrovac (only commits where at least one of the changed files match /^modules/(service|citoid|changeprop|graphoid|mathoid|mobileapps|cxserver|restbase|parsoid)//)
  • Volans (only commits where at least one of the changed files match /(\.py(\.erb)?$|cumin|failoid)/)
  • Giuseppe Lavagetto (only commits where at least one of the changed files match /^hieradata/regex.yaml|^hieradata/hosts/|^modules/(mediawiki|service|role|etcd)/)
  • Muehlenhoff (only commits where at least one of the changed files match /^modules/admin//)
  • SMalyshev (only commits where at least one of the changed files match /^modules/wdqs//)

operations/puppet/cdh[edit]

operations/puppet/cdh4[edit]

operations/puppet/kafka[edit]

operations/puppet/zookeeper[edit]


operations/mediawiki-config[edit]

  • Hoo man (only commits where at least one of the changed files match /^wmf-config/(abusefilter|Wikibase.*)\.php/)
  • aude (only commits where at least one of the changed files match /^wmf-config/(Wikibase.*)\.php/)
  • Urbanecm
  • Zoranzoki21

operations/software[edit]

operations/software/conftool[edit]

operations/software/cumin[edit]

operations/software/varnish/varnishkafka[edit]

operations/switchdc[edit]

labs/icinga2[edit]

labs/toollabs[edit]

labs/tools/wikibugs2[edit]

labs/tools/grrrit[edit]

labs/tools/heritage[edit]

labs/tools/wikipedia-android-builds[edit]

apps/android/java-mwapi[edit]

apps/android/wikipedia[edit]

pywikibot/core[edit]

pywikibot/bots/FLOSSbot[edit]

pywikibot/spelling[edit]

pywikibot/i18n[edit]

pywikibot/compat[edit]

qa/browsertests[edit]

  • mattflaschen (only commits where at least one of the changed files match /proveit/)

analytics/refinery[edit]

analytics/refinery/source[edit]

analytics/limn-mobile-data[edit]

wikidata/query/rdf[edit]

wikidata/query/deploy[edit]

wikidata/query/gui[edit]

wikidata/query/gui-deploy[edit]

wikimedia/textcat[edit]

css-sanitizer[edit]

php-session-serializer[edit]

integration/commit-message-validator[edit]

wikimedia/portals[edit]

labs/tools/stewardbots[edit]

eventlogging[edit]