Git/Reviewers

< Git

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

Manual on MediaWiki Tools
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
Most of this functionality is built into gerrit itself, and can be configured in your settings instead of relying on this bot.
Note Note: If you are looking for a list of people that could review your patch, please see Developers/Maintainers.

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. Likewise, GitLab supports enabling notifications on projects, groups, individual merge requests, etc. See https://docs.gitlab.com/ee/user/profile/notifications.html. GitLab does not support filename-based matching, so this page may still be useful to you.

How to add yourself edit

Each project has a header with the Gerrit or Gitlab project name, followed by a list of people (using Template:Gerrit-reviewer or Template:Gitlab-mention), 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 [1] with IGNORECASE and DOTALL enabled. 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 Gerrit 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.

* edit

  • Zoranzoki21 (only commits where at least one of the changed files match /(bs|hr|sr\-e[cl])\.json/)
  • Thcipriani (only commits where at least one of the changed files match /scap/scap\.cfg/)
  • Revi (only commits where at least one of the changed files match /ko\.json/)
  • Dr0ptp4kt (only commits where at least one of the changed files match /abstractSchemaChanges/)

cloud/metricsinfra/* edit

integration/[!v][!i][!s]* edit

Watch anything but integration/visualdiff which is maintained by another team.

integration/config edit

  • jbond (only commits where at least one of the changed files match /^dockerfiles/operations-puppet/)

integration/quibble edit

search/* edit

wikimedia/discovery/* edit

mediawiki/extensions/BlueSpice* edit

mediawiki/skins/BlueSpice* edit

mediawiki/tools/phan* edit

wikimedia-cz/* edit

mediawiki/services/wikispeech* edit

cloud/toolforge/* edit


Listen to specific Gerrit repositories edit

cergen edit

integration/tox-wikimedia edit

mediawiki/core edit

  • Aaron Schulz (only commits where at least one of the changed files match /^(includes/(filebackend|db|objectcache|externalstore)/|includes/libs/|maintenance/archive/[a-zA-Z]+)/)
  • Xcollazo (only commits where at least one of the changed files match /^includes/export/|^maintenance/includes/(Backup|TextPass|SevenZip)|^maintenance/(fetchText|dump)/)
  • jebe (only commits where at least one of the changed files match /^includes/export/|^maintenance/includes/(Backup|TextPass|SevenZip)|^maintenance/(fetchText|dump)/)
  • milimetric (only commits where at least one of the changed files match /^includes/export/|^maintenance/includes/(Backup|TextPass|SevenZip)|^maintenance/(fetchText|dump)/)
  • Catrope (only commits where at least one of the changed files match /resources/src/vue//)
  • cscott (only commits where at least one of the changed files match /[Pp]arser|virtualrest/)
  • Cwhite (only commits where at least one of the changed files match /^((tests/phpunit/unit/)?includes/libs/Metrics)/)
  • daniel (only commits where at least one of the changed files match /^includes/content//)
  • dcausse (only commits where at least one of the changed files match /^includes/search//)
  • Gergő Tisza (only commits where at least one of the changed files match /^includes/auth/|includes/session//)}}
  • Huji (only commits where at least one of the changed files match /(Equivset|MessagesFa)/)
  • Jdlrobson (only commits where at least one of the changed files match /^(includes/skins|includes/ResourceLoader/SkinModule\.php|resources/.*)/)
  • 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$/)
  • Kosta Harlan (only commits where at least one of the changed files match /^tests/phpunit/MediaWikiUnitTestCase.php/)
  • Legoktm (only commits where at least one of the changed files match /registration|[Cc]onfig/)
  • Liangent (only commits where at least one of the changed files match /^includes/language/(LanguageConverter\.php|converters/ZhConverter)|^includes/languages/(LanguageZh|data/ZhConversion\.php)|^maintenance/language/zhtable//)
  • Revi (only commits where at least one of the changed files match /languages/messages/MessagesKo.php/)
  • Samwilson (only commits where at least one of the changed files match /resources/src/mediawiki\.editRecovery/)
  • Skizzerz (only commits where at least one of the changed files match /[Mm]ssql/)
  • Tchanders (only commits where at least one of the changed files match /^includes/.*block/)
  • Tpt (only commits where at least one of the changed files match /(DjVu|EditPage\.php)/)
  • Urbanecm (only commits where at least one of the changed files match /(Messages(Cs|Sk)|includes/block/(UnblockUser|BlockUser|UserBlockCommandFactory|BlockPermissionChecker)|includes/specials/(SpecialBlock|SpecialUnblock).php)/)
  • Winston Sung (only commits where at least one of the changed files match /LanguageCode|/Names\.php|LanguageConverter|/converters/|(Language|Messages)Zh|ZhConversion|^maintenance/language/zhtable//)
  • Zabe (only commits where at least one of the changed files match /^includes/.*block/)
  • Zppix (only commits where at least one of the changed files match /languages/l18n/en.json/)

mediawiki/event-schemas edit

mediawiki/extensions/AbuseFilter edit

mediawiki/extensions/ActiveAbstract edit

mediawiki/extensions/AdvancedSearch edit

mediawiki/extensions/AdvancedMeta edit

mediawiki/extensions/Annotator edit

mediawiki/extensions/AutoModerator edit

mediawiki/extensions/BlogPage edit

mediawiki/extensions/CampaignEvents edit

mediawiki/extensions/Capiunto edit

mediawiki/extensions/CirrusSearch edit

mediawiki/extensions/Cite edit

mediawiki/extensions/CentralAuth edit

mediawiki/extensions/CentralNotice edit

mediawiki/extensions/ChessBrowser edit

mediawiki/extensions/CheckUser edit

mediawiki/extensions/cldr edit

  • Winston Sung (only commits where at least one of the changed files match /LocalNames/)

mediawiki/extensions/CodeEditor edit

mediawiki/extensions/CodeMirror edit

mediawiki/extensions/CodeReview edit

mediawiki/extensions/CognitiveProcessDesigner 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/CommentStreams edit

mediawiki/extensions/CommunityConfiguration edit

mediawiki/extensions/ContactPage edit

mediawiki/extensions/ContainerFilter edit

mediawiki/extensions/ContentDroplets edit

mediawiki/extensions/ContentTransfer edit

mediawiki/extensions/ContentStabilization edit

mediawiki/extensions/CreateUserPage edit

mediawiki/extensions/DarkMode edit

mediawiki/extensions/DisplayTitle edit

mediawiki/extensions/DonationInterface edit

mediawiki/extensions/DrawioEditor edit

mediawiki/extensions/Echo edit

mediawiki/extensions/EUCopyrightCampaign edit

mediawiki/extensions/ElectronPdfService edit

mediawiki/extensions/EmailAuthorization edit

mediawiki/extensions/EventBus edit

mediawiki/extensions/FileExporter edit

mediawiki/extensions/FileImporter edit

mediawiki/extensions/FlaggedRevs edit

mediawiki/extensions/Forms edit

mediawiki/extensions/Gadgets edit

mediawiki/extensions/Genealogy edit

mediawiki/extensions/GeoData edit

mediawiki/extensions/GettingStarted edit

mediawiki/extensions/GlobalPreferences edit

mediawiki/extensions/GlobalWatchlist edit

mediawiki/extensions/GraphViz edit

mediawiki/extensions/GrowthExperiments edit

mediawiki/extensions/GuidedTour edit

mediawiki/extensions/GuidedTour/guiders edit

mediawiki/extensions/HierarchyBuilder edit

mediawiki/extensions/Ids edit

mediawiki/extensions/IPReputation edit

mediawiki/extensions/IPInfo edit

mediawiki/extensions/ImageMapEdit edit

mediawiki/extensions/ReportIncident edit

mediawiki/extensions/InputBox edit

mediawiki/extensions/JSBreadCrumbs edit

mediawiki/extensions/BreadCrumbs2 edit

mediawiki/extensions/Kartographer edit

mediawiki/extensions/LabeledSectionTransclusion edit

mediawiki/extensions/LDAPAuthentication2 edit

mediawiki/extensions/LDAPAuthorization edit

mediawiki/extensions/LDAPGroups edit

mediawiki/extensions/LDAPProvider edit

mediawiki/extensions/LDAPUserInfo edit

mediawiki/extensions/Lingo edit

mediawiki/extensions/LoginNotify edit

mediawiki/extensions/MachineVision edit

mediawiki/extensions/Math edit

mediawiki/extensions/MathSearch edit

mediawiki/extensions/MassMessage edit

mediawiki/extensions/MediaUploader edit

mediawiki/extensions/MediaWikiChat edit

mediawiki/extensions/MediaWikiFarm edit

mediawiki/extensions/MediaSearch edit

mediawiki/extensions/MissedPages edit

mediawiki/extensions/MobileApp edit

mediawiki/extensions/MobileFrontend edit

  • D3r1ck01 (only commits where at least one of the changed files match /^tests/phpunit/)

mediawiki/extensions/MolHandler edit

mediawiki/extensions/NSFileRepo edit

mediawiki/extensions/OATHAuth edit

mediawiki/extensions/OAuth edit

mediawiki/extensions/OpenBadges edit

mediawiki/extensions/OpenIDConnect edit

mediawiki/extensions/PageCheckout edit

mediawiki/extensions/PageHeader edit

mediawiki/extensions/PageTriage edit

mediawiki/extensions/ParserFunctions edit

mediawiki/extensions/PluggableAuth edit

mediawiki/extensions/Phonos edit

mediawiki/extensions/ReadingLists edit

mediawiki/extensions/RealMe edit

mediawiki/extensions/RedirectManager edit

mediawiki/extensions/RevisionSlider edit

mediawiki/extensions/Scribunto edit

mediawiki/extensions/SectionAnchors edit

mediawiki/extensions/SecureAuth edit

mediawiki/extensions/SecureLinkFixer edit

mediawiki/extensions/SecurePoll edit

mediawiki/extensions/SecurityApi edit

mediawiki/extensions/SendGrid edit

mediawiki/extensions/Share edit

mediawiki/extensions/SimpleCalendar edit

mediawiki/extensions/SimpleSAMLphp edit

mediawiki/extensions/SocialProfile edit

mediawiki/extensions/SpamBlacklist edit

mediawiki/extensions/SparkPost edit

mediawiki/extensions/SpecialNamespaces edit

mediawiki/extensions/StandardDialogs edit

mediawiki/extensions/TemplateData edit

mediawiki/extensions/TemplateSandbox edit

mediawiki/extensions/TemplateStyles edit

mediawiki/extensions/TemplateWizard edit

mediawiki/extensions/TheWikipediaLibrary edit

mediawiki/extensions/timeline edit

mediawiki/extensions/TitleBlacklist edit

mediawiki/extensions/TitleIcon edit

mediawiki/extensions/TwoColConflict edit

mediawiki/extensions/UnifiedTaskOverview edit

mediawiki/extensions/UnlinkedWikibase edit

mediawiki/extensions/UploadWizard edit

mediawiki/extensions/UrlShortener edit

mediawiki/extensions/VueTest edit

mediawiki/extensions/WebAuthn edit

mediawiki/extensions/Wikibase edit

  • 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/WikibaseMediaInfo edit

mediawiki/extensions/WikiEditor edit

mediawiki/extensions/WikiForum edit

mediawiki/extensions/WikimediaApiPortalOAuth edit

mediawiki/extensions/WikimediaCampaignEvents edit

mediawiki/extensions/WikimediaIncubator edit

mediawiki/extensions/Wikisource edit

mediawiki/extensions/PreToClip edit

mediawiki/extensions/ProofreadPage edit

  • Sohom Datta (only commits where at least one of the changed files match /^(modules/|tests/selenium|tests/qunit)/)

mediawiki/extensions/Wikispeech edit

mediawiki/extensions/WikispeechSpeechDataCollector edit

mediawiki/extensions/Workflows edit

mediawiki/libs/IPAValidator 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/mathoid edit

mediawiki/services/mobileapps edit

mediawiki/services/ocg-collection edit

mediawiki/services/trending-edits edit

mediawiki/services/wikifeeds edit

mediawiki/services/eventstreams edit

mediawiki/services/eventstreams/deploy edit

mediawiki/skins edit

mediawiki/skins/BlueSpiceSkin edit

mediawiki/skins/EUCopyrightCampaignSkin edit

mediawiki/skins/Foreground edit

mediawiki/skins/Metrolook edit

mediawiki/skins/MinervaNeue edit

mediawiki/skins/Vector edit

mediawiki/skins/WikimediaApiPortal edit

mediawiki/ruby/api edit

mediawiki/selenium edit

mediawiki/tools/cli edit

mediawiki/tools/codesniffer edit

mediawiki/vagrant edit

  • Dduvall
  • Gergő Tisza
  • ejegg (only commits where at least one of the changed files match /^puppet/modules/(crm|payments|smashpig)/)
  • XenoRyet (only commits where at least one of the changed files match /^puppet/modules/(crm|payments|smashpig)/)
  • jgleeson (only commits where at least one of the changed files match /^puppet/modules/(crm|payments|smashpig)/)
  • cstone (only commits where at least one of the changed files match /^puppet/modules/(crm|payments|smashpig)/)
  • Xcollazo (only commits where at least one of the changed files match /^puppet/modules/dumps/)
  • jebe (only commits where at least one of the changed files match /^puppet/modules/dumps/)
  • milimetric (only commits where at least one of the changed files match /^puppet/modules/dumps/)

mediawiki/vendor edit

  • Gergő Tisza (only commits where at least one of the changed files match /^psy/psysh//)

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/FRUEC 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/cookbooks edit

  • Volans
  • Jbond
  • dcaro (only commits where at least one of the changed files match /.*wmcs.*/)

operations/debs/wmf-certificates edit

operations/debs/debdeploy edit

operations/debs/pybal edit

operations/deployment-charts edit

  • bd808 (only commits where at least one of the changed files match /^(helmfile\.d/services|charts)/(developer-portal|toolhub)/)
  • Urbanecm (only commits where at least one of the changed files match /^(helmfile\.d/services|charts)/linkrecommendation//)

operations/docker-images/docker-pkg edit

operations/homer/public edit

operations/puppet edit

  • bd808 (only commits where at least one of the changed files match /^modules/toollabs/|^hieradata/labs/tools//)
  • Filippo Giunchedi (only commits where at least one of the changed files match /^.*icinga.*/)
  • 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//)
  • Volans (only commits where at least one of the changed files match /(\.py(\.erb)?$|cumin|failoid|debmonitor|spicerack|cookbook|netbox|homer|puppetboard|reimage)/)
  • Giuseppe Lavagetto (only commits where at least one of the changed files match /^hieradata/regex.yaml|^modules/(mediawiki|service|httpd|php|etcd)/)
  • Muehlenhoff (only commits where at least one of the changed files match /^modules/admin//)
  • Jbond (only commits where at least one of the changed files match /modules/admin|apereo_cas|apt|wmflib|modules/base|cumin|cfssl|debian|debdeploy|debmonitor|kerberos|yubiauth|puppet|pki|ssh|sudo|sslcert|sysctl|modules/systemd?|ulogd|ferm|modules/security|standard|wikidough|\.rb$|(Gem|Rake)file|CONTRIBUTORS|^vendor_modules//)
  • Alexandros Kosiaris (only commits where at least one of the changed files match /^modules/(calico|docker|k8s|profile/kubernetes|etherpad|ferm|ganeti|lvs|network|ores|otrs|package_builder|service)/)
  • paladox (only commits where at least one of the changed files match /^modules/(gerrit|phabricator)/)
  • Xcollazo (only commits where at least one of the changed files match /^modules/(dumps|snapshot)/|^modules/(profile|role)/manifests/dumps//)
  • jebe (only commits where at least one of the changed files match /^modules/(dumps|snapshot)/|^modules/(profile|role)/manifests/dumps//)
  • Ssingh (only commits where at least one of the changed files match /^modules/(auditd|dnsdist|dnsrecursor)|^modules/(profile|role)/*/(wikidough|durum)/)
  • Legoktm (only commits where at least one of the changed files match /^modules/(extdist|codesearch|libraryupgrader|mailman|mailman3)//)
  • Cwhite (only commits where at least one of the changed files match /(opensearch|logstash)/)
  • dcaro (only commits where at least one of the changed files match /^modules/(toollabs|openstack|ceph)/|^hieradata/labs/tools/|^modules/(profile|role)/*/(toolforge|openstack|toollabs|labs)|modules/base/*/standard_packages//)
  • Hoo man (only commits where at least one of the changed files match /^modules/snapshot/(files/systemdjobs/wikibase|manifests/systemdjobs/(wiki(base|data).*\.pp|wikidatadumps/))/)
  • Dr0ptp4kt (only commits where at least one of the changed files match /(filtered_tables\.txt|realm\.pp|index-conf\.yaml|maintain-views\.yaml)$/)
  • Dzahn (only commits where at least one of the changed files match //^modules/(gerrit|phabricator|wikistats|planet|vrts|etherpad|gitlab|requesttracker|releases|contint|)/|^modules/(profile|role)/manifests/(gerrit|phabricator|planet|wikistats|vrts|etherpad|gitlab|requesttracker|releases|ci|miscweb|microsites|stewards|collaboration_services|aphlict)/)

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/Wikibase\.php/)

operations/software edit

operations/software/conftool edit

operations/software/cumin edit

operations/software/debmonitor edit

operations/software/debmonitor/deploy edit

operations/software/debmonitor-client edit

operations/software/ecs edit

operations/software/external-monitoring edit

operations/software/homer edit

operations/software/keyholder edit

operations/software/netbox edit

operations/software/netbox-deploy edit

operations/software/netbox-extras edit

operations/software/pywmflib edit

operations/software/spicerack edit

operations/software/tools-webservice edit

operations/software/varnish/varnishkafka edit

operations/switchdc edit

labs/codesearch edit

labs/icinga2 edit

labs/libraryupgrader edit

labs/toollabs edit

labs/tools/awmd-stats edit

labs/tools/Commons-twitter-bot edit

labs/tools/extjsonuploader edit

labs/tools/watch-translations edit

labs/tools/wikibugs2 edit

labs/tools/wikisource-ocr edit

labs/tools/map-of-monuments edit

labs/tools/massmailer edit

labs/tools/meetingtimes edit

labs/tools/wikinity edit

labs/tools/weapon-of-mass-description edit

labs/tools/commons-mass-description edit

labs/tools/harvesting-data-refinery edit

labs/tools/heritage edit

labs/tools/sonarqubebot edit

labs/tools/urbanecmbot edit

labs/tools/train-blockers edit

labs/tools/github-pr-closer edit

labs/tools/majavah-bot edit

maps/kartotherian/package edit

maps/kartotherian/deploy edit

maps/tilerator/package edit

maps/tilerator/deploy edit

sink_nova_ldap edit

sink_nova_fixed_multi edit

apps/android/java-mwapi edit

apps/android/wikipedia edit

pywikibot/core edit

  • D3r1ck01 (only commits where at least one of the changed files match /^scripts/)

pywikibot/bots/FLOSSbot edit

pywikibot/spelling edit

pywikibot/compat edit

analytics/aqs edit

analytics/gobblin-wmf edit

analytics/quarry/web edit

analytics/refinery edit

analytics/refinery/source edit

analytics/wikihadoop edit

analytics/limn-mobile-data edit

wikidata/query/rdf edit

wikidata/query/deploy edit

wikidata/query/gui edit

wikidata/query/gui-deploy edit

wikimedia/css-sanitizer edit

wikimedia/normalized-exception edit

wikimedia/textcat edit

integration/commit-message-validator edit

wikimedia/portals edit

wikimedia-cz/tracker edit

wikimedia-event-utilities edit

labs/tools/stewardbots edit

labs/tools/stewardbots-ui edit

labs/tools/ZppixBot edit

eventlogging edit

wmf-utils edit

wikimedia/security/tooling edit

research/mwaddlink edit

wikimedia/toolhub edit

design/codex edit

wikimedia/developer-portal edit

mediawiki/extensions/Wikistories edit

cloud/toolforge/toolforge-cli edit

cloud/toolforge/toolforge-build-cli edit

cloud/toolforge/toolforge-build-api edit

cloud/toolforge/buildpacks edit

releng/phatality edit

Listen to GitLab 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.

* edit

  • thcipriani (only commits where at least one of the changed files match /scap/scap\.cfg/)


Listen to specific GitLab repositories edit