Gehel has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/380327 )
Change subject: [WIP] start using the diescovery-parent-pom ...................................................................... [WIP] start using the diescovery-parent-pom Change-Id: I0bdf2cb61fc389db15b01fe53a75a728e4b9227e --- M pom.xml 1 file changed, 301 insertions(+), 473 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/search/extra refs/changes/27/380327/1 diff --git a/pom.xml b/pom.xml index e7b848b..0f8a06a 100644 --- a/pom.xml +++ b/pom.xml @@ -1,488 +1,316 @@ <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> + <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.sonatype.oss</groupId> - <artifactId>oss-parent</artifactId> - <version>7</version> - </parent> + <parent> + <groupId>org.wikimedia.discovery</groupId> + <artifactId>discovery-parent-pom</artifactId> + <version>1.0-SNAPSHOT</version> + </parent> - <groupId>org.wikimedia.search</groupId> - <artifactId>extra</artifactId> - <version>5.5.2.2-SNAPSHOT</version> - <description>Extra queries and filters for Elasticsearch.</description> + <groupId>org.wikimedia.search</groupId> + <artifactId>extra</artifactId> + <version>5.5.2.2-SNAPSHOT</version> + <description>Extra queries and filters for Elasticsearch.</description> - <licenses> - <license> - <name>The Apache Software License, Version 2.0</name> - <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> - <distribution>repo</distribution> - </license> - </licenses> + <licenses> + <license> + <name>The Apache Software License, Version 2.0</name> + <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> - <developers> - <developer> - <id>manybubbles</id> - <name>Nik Everett</name> - <email>nik9000+ex...@gmail.com</email> - <timezone>America/New York</timezone> - </developer> - </developers> + <developers> + <developer> + <id>manybubbles</id> + <name>Nik Everett</name> + <email>nik9000+ex...@gmail.com</email> + <timezone>America/New York</timezone> + </developer> + </developers> - <scm> - <url>https://gerrit.wikimedia.org/r/#/admin/projects/search/extra</url> - <connection>scm:git:https://gerrit.wikimedia.org/r/search/extra</connection> - <developerConnection>scm:git:https://gerrit.wikimedia.org/r/search/extra</developerConnection> - <tag>HEAD</tag> - </scm> + <scm> + <connection>scm:git:https://gerrit.wikimedia.org/r/search/extra</connection> + <developerConnection>scm:git:https://gerrit.wikimedia.org/r/search/extra</developerConnection> + <tag>HEAD</tag> + <url>https://gerrit.wikimedia.org/r/#/admin/projects/search/extra</url> + </scm> - <issueManagement> - <system>GitHub</system> - <url>https://github.com/wikimedia/extra/issues</url> - </issueManagement> + <issueManagement> + <system>GitHub</system> + <url>https://github.com/wikimedia/extra/issues</url> + </issueManagement> - <properties> - <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> - <elasticsearch.version>5.5.2</elasticsearch.version> - <lucene.version>6.6.0</lucene.version> - <randomizedtesting.version>2.5.0</randomizedtesting.version> - <maven.compiler.target>1.8</maven.compiler.target> - <maven.compiler.source>1.8</maven.compiler.source> - <maven.compiler.showWarnings>true</maven.compiler.showWarnings> - <spotbugs.version>3.1.0-RC5</spotbugs.version> - </properties> + <properties> + <elasticsearch.version>5.5.2</elasticsearch.version> + <lucene.version>6.6.0</lucene.version> + <maven.compiler.showWarnings>true</maven.compiler.showWarnings> + <maven.compiler.source>1.8</maven.compiler.source> + <maven.compiler.target>1.8</maven.compiler.target> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + <randomizedtesting.version>2.5.0</randomizedtesting.version> + <spotbugs.version>3.1.0-RC5</spotbugs.version> + </properties> - <build> - <resources> - <resource> - <directory>src/main/resources</directory> - <filtering>true</filtering> - <includes> - <include>*.properties</include> - </includes> - </resource> - </resources> - <plugins> - <plugin> - <groupId>com.github.hazendaz.spotbugs</groupId> - <artifactId>spotbugs-maven-plugin</artifactId> - <version>3.0.6</version> - <dependencies> - <dependency> + <dependencies> + <dependency> <groupId>com.github.spotbugs</groupId> - <artifactId>spotbugs</artifactId> - <version>${spotbugs.version}</version> - </dependency> - </dependencies> - <configuration> - <effort>high</effort> - <threshold>low</threshold> - <excludeFilterFile>${project.basedir}/src/dev-tools/spotbugs-excludes.xml</excludeFilterFile> - <plugins> - <plugin> - <groupId>com.mebigfatguy.fb-contrib</groupId> - <artifactId>fb-contrib</artifactId> - <version>7.0.4.sb</version> - </plugin> - </plugins> - </configuration> - <executions> - <execution> - <id>findbugs-check</id> - <goals> - <goal>check</goal> - </goals> - <phase>verify</phase> - </execution> - </executions> - </plugin> - <plugin> - <groupId>com.carrotsearch.randomizedtesting</groupId> - <artifactId>junit4-maven-plugin</artifactId> - </plugin> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <version>2.2-beta-5</version> - <configuration> - <appendAssemblyId>false</appendAssemblyId> - <outputDirectory>${project.build.directory}/releases/</outputDirectory> - <descriptors> - <descriptor>${basedir}/src/main/assemblies/plugin.xml</descriptor> - </descriptors> - </configuration> - <executions> - <execution> - <phase>package</phase> - <goals> - <goal>single</goal> - </goals> - </execution> - </executions> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-source-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-javadoc-plugin</artifactId> - </plugin> - <plugin> - <groupId>de.thetaphi</groupId> - <artifactId>forbiddenapis</artifactId> - <version>1.6.1</version> - <configuration> - <targetVersion>${maven.compiler.target}</targetVersion> - <!-- disallow undocumented classes like sun.misc.Unsafe: --> - <internalRuntimeForbidden>true</internalRuntimeForbidden> - <!-- if the used Java version is too new, don't fail, just do nothing: --> - <failOnUnsupportedJava>false</failOnUnsupportedJava> - <bundledSignatures> - <!-- This will automatically choose the right signatures based on 'maven.compiler.target': --> - <bundledSignature>jdk-unsafe</bundledSignature> - <bundledSignature>jdk-deprecated</bundledSignature> - <bundledSignaure>jdk-system-out</bundledSignaure> - </bundledSignatures> - </configuration> - <executions> - <execution> - <id>check-forbidden-apis</id> - <phase>compile</phase> - <goals> - <goal>check</goal> - </goals> - <configuration> - <signaturesFiles> - <signaturesFile>src/dev-tools/forbidden/core-signatures.txt</signaturesFile> - <signaturesFile>src/dev-tools/forbidden/all-signatures.txt</signaturesFile> - </signaturesFiles> - </configuration> - </execution> - <execution> - <id>check-forbidden-test-apis</id> - <phase>test-compile</phase> - <goals> - <goal>testCheck</goal> - </goals> - <configuration> - <signaturesFiles> - <signaturesFile>src/dev-tools/forbidden/test-signatures.txt</signaturesFile> - <signaturesFile>src/dev-tools/forbidden/all-signatures.txt</signaturesFile> - </signaturesFiles> - </configuration> - </execution> - </executions> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-checkstyle-plugin</artifactId> - <version>2.17</version> - <configuration> - <configLocation>src/dev-tools/checkstyle.xml</configLocation> - </configuration> - <dependencies> - <dependency> - <groupId>com.puppycrawl.tools</groupId> - <artifactId>checkstyle</artifactId> - <version>7.3</version> - </dependency> - </dependencies> - <executions> - <execution> - <id>checkstyle-check</id> - <goals> - <goal>check</goal> - </goals> - <phase>verify</phase> - </execution> - </executions> - </plugin> - </plugins> - <pluginManagement> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <version>3.5.1</version> - <configuration> - <compilerArgument>-Xlint:all</compilerArgument> - </configuration> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-clean-plugin</artifactId> - <version>3.0.0</version> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-resources-plugin</artifactId> - <version>2.7</version> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-install-plugin</artifactId> - <version>2.5.1</version> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-jar-plugin</artifactId> - <version>2.5</version> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-release-plugin</artifactId> - <version>2.5.3</version> - <configuration> - <pushChanges>false</pushChanges> - </configuration> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-surefire-plugin</artifactId> - <version>2.19</version> - <configuration> - <skipTests>true</skipTests> - </configuration> - </plugin> - <plugin> - <groupId>com.carrotsearch.randomizedtesting</groupId> - <artifactId>junit4-maven-plugin</artifactId> - <version>${randomizedtesting.version}</version> - <configuration> - <skipTests>${skip.unit.tests}</skipTests> - <listeners> - <report-text showThrowable="true" showStackTraces="true" showOutput="onerror" showStatusOk="false" showStatusError="true" showStatusFailure="true" showStatusIgnored="true" showSuiteSummary="true" showNumFailures="30" timestamps="false"> - </report-text> - <report-ant-xml mavenExtensions="true" dir="${project.build.directory}/surefire-reports" /> - </listeners> - <heartbeat>20</heartbeat> - <jvmOutputAction>warn</jvmOutputAction> - <leaveTemporary>true</leaveTemporary> - <sysouts>false</sysouts> - <assertions> - <enable /> - </assertions> - <jvmArgs> - <param>-Xmx512m</param> - <param>-XX:MaxDirectMemorySize=512m</param> - <param>-Des.logger.prefix=</param> - </jvmArgs> - </configuration> - <executions> - <!-- Separate unit tests from integration tests + <artifactId>spotbugs-annotations</artifactId> + <optional>true</optional> + </dependency> + <dependency> + <groupId>com.google.code.findbugs</groupId> + <artifactId>jsr305</artifactId> + <optional>true</optional> + </dependency> + <dependency> + <groupId>com.google.guava</groupId> + <artifactId>guava</artifactId> + <version>21.0</version> + </dependency> + <dependency> + <groupId>net.jcip</groupId> + <artifactId>jcip-annotations</artifactId> + <optional>true</optional> + </dependency> + <dependency> + <groupId>org.elasticsearch</groupId> + <artifactId>elasticsearch</artifactId> + <version>${elasticsearch.version}</version> + </dependency> + <dependency> + <groupId>org.projectlombok</groupId> + <artifactId>lombok</artifactId> + <optional>true</optional> + </dependency> + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-api</artifactId> + <version>2.7</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>com.carrotsearch.randomizedtesting</groupId> + <artifactId>randomizedtesting-runner</artifactId> + <version>${randomizedtesting.version}</version> + <scope>test</scope> + </dependency> + <!-- Needed by elastic test framework --> + <dependency> + <groupId>com.vividsolutions</groupId> + <artifactId>jts</artifactId> + <version>1.13</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>4.12</version> + <scope>test</scope> + <exclusions> + <exclusion> + <groupId>org.hamcrest</groupId> + <artifactId>hamcrest-core</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-core</artifactId> + <version>2.7</version> + <scope>test</scope> + </dependency> + <dependency> + <!-- Must come before Elasticsearch dependency. --> + <groupId>org.apache.lucene</groupId> + <artifactId>lucene-test-framework</artifactId> + <version>${lucene.version}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.elasticsearch.test</groupId> + <artifactId>framework</artifactId> + <version>${elasticsearch.version}</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.hamcrest</groupId> + <artifactId>hamcrest-all</artifactId> + <version>1.3</version> + <scope>test</scope> + </dependency> + <!-- Needed by elastic test framework --> + <dependency> + <groupId>org.locationtech.spatial4j</groupId> + <artifactId>spatial4j</artifactId> + <version>0.6</version> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <resources> + <resource> + <filtering>true</filtering> + <directory>src/main/resources</directory> + <includes> + <include>*.properties</include> + </includes> + </resource> + </resources> + <pluginManagement> + <plugins> + <plugin> + <groupId>com.carrotsearch.randomizedtesting</groupId> + <artifactId>junit4-maven-plugin</artifactId> + <version>${randomizedtesting.version}</version> + <configuration> + <skipTests>${skip.unit.tests}</skipTests> + <listeners> + <report-text showNumFailures="30" showOutput="onerror" showStackTraces="true" showStatusError="true" showStatusFailure="true" showStatusIgnored="true" showStatusOk="false" showSuiteSummary="true" showThrowable="true" timestamps="false"></report-text> + <report-ant-xml dir="${project.build.directory}/surefire-reports" mavenExtensions="true"></report-ant-xml> + </listeners> + <heartbeat>20</heartbeat> + <jvmOutputAction>warn</jvmOutputAction> + <leaveTemporary>true</leaveTemporary> + <sysouts>false</sysouts> + <assertions> + <enable></enable> + </assertions> + <jvmArgs> + <param>-Xmx512m</param> + <param>-XX:MaxDirectMemorySize=512m</param> + <param>-Des.logger.prefix=</param> + </jvmArgs> + </configuration> + <executions> + <!-- Separate unit tests from integration tests The elastic security manager may cause issues with normal unit tests --> - <execution> - <id>tests-junit</id> - <phase>test</phase> - <goals> - <goal>junit4</goal> - </goals> - <configuration> - <excludes> - <exclude>**/*IntegrationTest.class</exclude> - <exclude>**/*ESTest.class</exclude> - </excludes> - </configuration> - </execution> - <execution> - <!-- separate integration test because it loads the security manager --> - <id>tests-integ</id> - <phase>integration-test</phase> - <goals> - <goal>junit4</goal> - </goals> - <configuration> - <includes> - <include>**/*IntegrationTest.class</include> - </includes> - </configuration> - </execution> - <execution> - <!-- separate estest because of dirty context between ESIntegTest and ESTestCase --> - <id>tests-estest</id> - <phase>test</phase> - <goals> - <goal>junit4</goal> - </goals> - <configuration> - <includes> - <include>**/*ESTest.class</include> - </includes> - <skipTests>${skip.unit.tests}</skipTests> - </configuration> - </execution> - </executions> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-source-plugin</artifactId> - <version>2.4</version> - <executions> - <execution> - <id>attach-sources</id> - <goals> - <goal>jar</goal> - </goals> - </execution> - </executions> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-javadoc-plugin</artifactId> - <version>2.10.3</version> - <executions> - <execution> - <id>attach-javadocs</id> - <goals> - <goal>jar</goal> - </goals> - <configuration> - <quiet>true</quiet> - </configuration> - </execution> - </executions> - </plugin> - <plugin> - <groupId>org.eclipse.m2e</groupId> - <artifactId>lifecycle-mapping</artifactId> - <version>1.0.0</version> - <configuration> - <lifecycleMappingMetadata> - <pluginExecutions> - <pluginExecution> - <pluginExecutionFilter> + <execution> + <id>tests-junit</id> + <goals> + <goal>junit4</goal> + </goals> + <phase>test</phase> + <configuration> + <excludes> + <exclude>**/*IntegrationTest.class</exclude> + <exclude>**/*ESTest.class</exclude> + </excludes> + </configuration> + </execution> + <execution> + <!-- separate integration test because it loads the security manager --> + <id>tests-integ</id> + <goals> + <goal>junit4</goal> + </goals> + <phase>integration-test</phase> + <configuration> + <includes> + <include>**/*IntegrationTest.class</include> + </includes> + </configuration> + </execution> + <execution> + <!-- separate estest because of dirty context between ESIntegTest and ESTestCase --> + <id>tests-estest</id> + <goals> + <goal>junit4</goal> + </goals> + <phase>test</phase> + <configuration> + <includes> + <include>**/*ESTest.class</include> + </includes> + <skipTests>${skip.unit.tests}</skipTests> + </configuration> + </execution> + </executions> + </plugin> + <plugin> <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-enforcer-plugin</artifactId> - <versionRange>[1.0.0,)</versionRange> - <goals> - <goal>enforce</goal> - </goals> - </pluginExecutionFilter> - <action> - <ignore /> - </action> - </pluginExecution> - <pluginExecution> - <pluginExecutionFilter> - <groupId>de.thetaphi</groupId> - <artifactId>forbiddenapis</artifactId> - <versionRange>[1.5,)</versionRange> - <goals> - <goal>testCheck</goal> - <goal>check</goal> - </goals> - </pluginExecutionFilter> - <action> - <ignore /> - </action> - </pluginExecution> - </pluginExecutions> - </lifecycleMappingMetadata> - </configuration> - </plugin> - </plugins> - </pluginManagement> - </build> - - <dependencies> - <dependency> - <groupId>com.github.spotbugs</groupId> - <artifactId>spotbugs-annotations</artifactId> - <version>${spotbugs.version}</version> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>net.jcip</groupId> - <artifactId>jcip-annotations</artifactId> - <version>1.0</version> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>com.google.code.findbugs</groupId> - <artifactId>jsr305</artifactId> - <version>3.0.2</version> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>org.projectlombok</groupId> - <artifactId>lombok</artifactId> - <version>1.16.16</version> - <scope>provided</scope> - </dependency> - <dependency> - <!-- Must come before Elasticsearch dependency. --> - <groupId>org.apache.lucene</groupId> - <artifactId>lucene-test-framework</artifactId> - <version>${lucene.version}</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.elasticsearch</groupId> - <artifactId>elasticsearch</artifactId> - <version>${elasticsearch.version}</version> - </dependency> - <dependency> - <groupId>org.hamcrest</groupId> - <artifactId>hamcrest-all</artifactId> - <version>1.3</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <version>4.12</version> - <scope>test</scope> - <exclusions> - <exclusion> - <artifactId>hamcrest-core</artifactId> - <groupId>org.hamcrest</groupId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>com.carrotsearch.randomizedtesting</groupId> - <artifactId>randomizedtesting-runner</artifactId> - <version>${randomizedtesting.version}</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.elasticsearch.test</groupId> - <artifactId>framework</artifactId> - <version>${elasticsearch.version}</version> - <scope>test</scope> - </dependency> - <!-- Needed by elastic test framework --> - <dependency> - <groupId>com.vividsolutions</groupId> - <artifactId>jts</artifactId> - <version>1.13</version> - <scope>test</scope> - </dependency> - <!-- Needed by elastic test framework --> - <dependency> - <groupId>org.locationtech.spatial4j</groupId> - <artifactId>spatial4j</artifactId> - <version>0.6</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.apache.logging.log4j</groupId> - <artifactId>log4j-api</artifactId> - <version>2.7</version> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>org.apache.logging.log4j</groupId> - <artifactId>log4j-core</artifactId> - <version>2.7</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <version>21.0</version> - </dependency> - </dependencies> + <artifactId>maven-surefire-plugin</artifactId> + <configuration> + <skipTests>true</skipTests> + </configuration> + </plugin> + <plugin> + <groupId>org.eclipse.m2e</groupId> + <artifactId>lifecycle-mapping</artifactId> + <version>1.0.0</version> + <configuration> + <lifecycleMappingMetadata> + <pluginExecutions> + <pluginExecution> + <pluginExecutionFilter> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <versionRange>[1.0.0,)</versionRange> + <goals> + <goal>enforce</goal> + </goals> + </pluginExecutionFilter> + <action> + <ignore></ignore> + </action> + </pluginExecution> + <pluginExecution> + <pluginExecutionFilter> + <groupId>de.thetaphi</groupId> + <artifactId>forbiddenapis</artifactId> + <versionRange>[1.5,)</versionRange> + <goals> + <goal>testCheck</goal> + <goal>check</goal> + </goals> + </pluginExecutionFilter> + <action> + <ignore></ignore> + </action> + </pluginExecution> + </pluginExecutions> + </lifecycleMappingMetadata> + </configuration> + </plugin> + </plugins> + </pluginManagement> + <plugins> + <plugin> + <groupId>com.carrotsearch.randomizedtesting</groupId> + <artifactId>junit4-maven-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-assembly-plugin</artifactId> + <configuration> + <appendAssemblyId>false</appendAssemblyId> + <outputDirectory>${project.build.directory}/releases/</outputDirectory> + <descriptors> + <descriptor>${basedir}/src/main/assemblies/plugin.xml</descriptor> + </descriptors> + </configuration> + <executions> + <execution> + <goals> + <goal>single</goal> + </goals> + <phase>package</phase> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <executions> + <execution> + <id>enforce-rules</id> + <!-- disable enforcer as this project has package cyclic dependencies --> + <phase>none</phase> + </execution> + </executions> + </plugin> + </plugins> + </build> </project> -- To view, visit https://gerrit.wikimedia.org/r/380327 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I0bdf2cb61fc389db15b01fe53a75a728e4b9227e Gerrit-PatchSet: 1 Gerrit-Project: search/extra Gerrit-Branch: master Gerrit-Owner: Gehel <guillaume.leder...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits