You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by er...@apache.org on 2019/08/11 15:52:41 UTC
[lucene-solr] branch branch_8x updated: SOLR-13568: Precommit fail
Java var until 9x. Fail var...
This is an automated email from the ASF dual-hosted git repository.
erick pushed a commit to branch branch_8x
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git
The following commit(s) were added to refs/heads/branch_8x by this push:
new 5df5df9 SOLR-13568: Precommit fail Java var until 9x. Fail var...
5df5df9 is described below
commit 5df5df9ec37c9fbaca9c0629482a95fb90c8d33b
Author: Erick Erickson <Er...@gmail.com>
AuthorDate: Sun Aug 11 11:49:54 2019 -0400
SOLR-13568: Precommit fail Java var until 9x. Fail var...
(cherry picked from commit f6f1b4244c40e5665b20a2a8ef9852c6dd827cb2)
---
lucene/tools/src/groovy/check-source-patterns.groovy | 12 ++++++++++++
solr/CHANGES.txt | 2 ++
.../test/org/apache/solr/client/solrj/SolrExampleTests.java | 5 ++---
3 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/lucene/tools/src/groovy/check-source-patterns.groovy b/lucene/tools/src/groovy/check-source-patterns.groovy
index 7794963..62565e6 100644
--- a/lucene/tools/src/groovy/check-source-patterns.groovy
+++ b/lucene/tools/src/groovy/check-source-patterns.groovy
@@ -49,6 +49,13 @@ def invalidPatterns = [
(~$/import java\.lang\.\w+;/$) : 'java.lang import is unnecessary'
]
+// Python and others merrily use var declarations, this is a problem _only_ in Java at least for 8x where we're forbidding var declarations
+def invalidJavaOnlyPatterns = [
+ (~$/\n\s*var\s+.*=.*<>.*/$) : 'Diamond operators should not be used with var',
+ (~$/\n\s*var\s+/$) : 'var is not allowed in until we stop development on the 8x code line'
+]
+
+
def baseDir = properties['basedir'];
def baseDirLen = baseDir.length() + 1;
@@ -200,6 +207,11 @@ ant.fileScanner{
reportViolation(f, "Solr test cases should extend SolrTestCase rather than LuceneTestCase");
}
}
+ invalidJavaOnlyPatterns.each { pattern,name ->
+ if (pattern.matcher(text).find()) {
+ reportViolation(f, name);
+ }
+ }
}
if (f.name.endsWith('.xml') || f.name.endsWith('.xml.template')) {
checkLicenseHeaderPrecedes(f, '<tag>', xmlTagPattern, xmlCommentPattern, text, ratDocument);
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 491fdc0..972255c 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -114,6 +114,8 @@ Other Changes
* SOLR-13573: Add SolrRangeQuery getters for upper, lower bound (Brian Rhees via Jason Gerlowski)
+* SOLR-13658: Precommit fail Java "var" until 9x. Fail "var...<>" constructs entirely (Erick Erickson)
+
================== 8.2.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
diff --git a/solr/solrj/src/test/org/apache/solr/client/solrj/SolrExampleTests.java b/solr/solrj/src/test/org/apache/solr/client/solrj/SolrExampleTests.java
index 5391b89..ad70787 100644
--- a/solr/solrj/src/test/org/apache/solr/client/solrj/SolrExampleTests.java
+++ b/solr/solrj/src/test/org/apache/solr/client/solrj/SolrExampleTests.java
@@ -70,7 +70,6 @@ import org.apache.solr.common.params.AnalysisParams;
import org.apache.solr.common.params.CommonParams;
import org.apache.solr.common.params.FacetParams;
import org.apache.solr.common.params.ModifiableSolrParams;
-import org.apache.solr.common.util.ContentStream;
import org.apache.solr.common.util.ContentStreamBase;
import org.apache.solr.common.util.NamedList;
import org.apache.solr.common.util.Pair;
@@ -697,8 +696,8 @@ abstract public class SolrExampleTests extends SolrExampleTestsBase
boolean assertClosed = random().nextBoolean();
if (assertClosed) {
byte[] allBytes = Files.readAllBytes(file.toPath());
-
- ContentStream contentStreamMock = new ContentStreamBase.ByteArrayStream(allBytes, "solrj/books.csv", "application/csv") {
+
+ ContentStreamBase.ByteArrayStream contentStreamMock = new ContentStreamBase.ByteArrayStream(allBytes, "solrj/books.csv", "application/csv") {
@Override
public InputStream getStream() throws IOException {
opened [0]++;