Skip to content

Commit

Permalink
Revert "Initial JDK 17 compatibility (#358)" (#360)
Browse files Browse the repository at this point in the history
This reverts commit a880795.
  • Loading branch information
rpalcolea authored Nov 8, 2021
1 parent ed2a041 commit 9db38f2
Show file tree
Hide file tree
Showing 6 changed files with 59 additions and 44 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/nebula.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ jobs:
restore-keys: |
- ${{ runner.os }}-gradlewrapper-
- name: Gradle build
run: ./gradlew --stacktrace build --scan
run: ./gradlew --info --stacktrace build
- name: Post-success actions
if: success()
run: ./gradlew jacocoTestReport coveralls
Expand Down
18 changes: 14 additions & 4 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,18 @@ dependencies {
api 'com.google.guava:guava:19.0'
api 'org.codehaus.gpars:gpars:1.2.1'

plugin('org.ow2.asm:asm:9.+')
plugin('org.ow2.asm:asm-commons:9.+')
plugin('org.ow2.asm:asm:7.+') {
version {
reject '7.2-beta'
because 'avoid getting prerelease versions'
}
}
plugin('org.ow2.asm:asm-commons:7.+') {
version {
reject '7.2-beta'
because 'avoid getting prerelease versions'
}
}
plugin('org.codenarc:CodeNarc:2.0.0') {
transitive = false
}
Expand All @@ -69,7 +79,7 @@ dependencies {

compileOnly "com.netflix.nebula:nebula-test:9.+"

testImplementation 'org.ow2.asm:asm-util:9.+'
testImplementation 'org.ow2.asm:asm-util:5.2'
testImplementation 'joda-time:joda-time:latest.release'
testImplementation 'com.netflix.nebula:gradle-info-plugin:latest.release'

Expand Down Expand Up @@ -167,4 +177,4 @@ test.dependsOn 'shadowJar', 'generatePomFileForNebulaPublication'

nebulaRelease {
releaseBranchPatterns.add("beta")
}
}
44 changes: 22 additions & 22 deletions gradle.lockfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,29 +13,29 @@ com.jcraft:jsch.agentproxy.usocket-jna:0.0.7=integTestRuntimeClasspath,testRunti
com.jcraft:jsch.agentproxy.usocket-nc:0.0.7=integTestRuntimeClasspath,testRuntimeClasspath
com.jcraft:jsch:0.1.55=integTestRuntimeClasspath,testRuntimeClasspath
com.jcraft:jzlib:1.1.2=integTestRuntimeClasspath,testRuntimeClasspath
com.netflix.nebula:gradle-contacts-plugin:6.0.0=integTestRuntimeClasspath,testRuntimeClasspath
com.netflix.nebula:gradle-info-plugin:11.0.1=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
com.netflix.nebula:nebula-gradle-interop:2.0.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
com.netflix.nebula:nebula-test:10.1.1-rc.1=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
com.netflix.nebula:nebula-test:9.0.1=compileClasspath,compileOnly
com.netflix.nebula:gradle-contacts-plugin:5.1.0=integTestRuntimeClasspath,testRuntimeClasspath
com.netflix.nebula:gradle-info-plugin:9.3.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
com.netflix.nebula:nebula-gradle-interop:1.0.11=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
com.netflix.nebula:nebula-test:10.0.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
com.netflix.nebula:nebula-test:9.0.0=compileClasspath,compileOnly
com.perforce:p4java:2015.2.1365273=integTestRuntimeClasspath,testRuntimeClasspath
com.trilead:trilead-ssh2:1.0.0-build220=integTestRuntimeClasspath,testRuntimeClasspath
commons-lang:commons-lang:2.6=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
de.regnis.q.sequence:sequence-library:1.0.3=integTestRuntimeClasspath,testRuntimeClasspath
dev.gradleplugins:gradle-api:6.8.3=compileClasspath,compileOnly
javax.inject:javax.inject:1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
joda-time:joda-time:2.10.13=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
joda-time:joda-time:2.10.10=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
junit:junit:4.12=compileClasspath,compileOnly
junit:junit:4.13=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
net.java.dev.jna:jna-platform:5.7.0=integTestRuntimeClasspath,testRuntimeClasspath
net.java.dev.jna:jna:5.7.0=integTestRuntimeClasspath,testRuntimeClasspath
net.java.dev.jna:platform:3.4.0=integTestRuntimeClasspath,testRuntimeClasspath
org.antlr:antlr-runtime:3.4=integTestRuntimeClasspath,testRuntimeClasspath
org.apache.commons:commons-lang3:3.8.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.apache.maven:maven-artifact:3.8.3=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.apache.maven:maven-builder-support:3.8.3=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.apache.maven:maven-model-builder:3.8.3=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.apache.maven:maven-model:3.8.3=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.apache.maven:maven-artifact:3.8.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.apache.maven:maven-builder-support:3.8.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.apache.maven:maven-model-builder:3.8.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.apache.maven:maven-model:3.8.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.apiguardian:apiguardian-api:1.1.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
org.bouncycastle:bcpg-jdk15on:1.64=integTestRuntimeClasspath,testRuntimeClasspath
org.bouncycastle:bcpkix-jdk15on:1.64=integTestRuntimeClasspath,testRuntimeClasspath
Expand All @@ -44,30 +44,30 @@ org.codehaus.gpars:gpars:1.2.1=compileClasspath,integTestCompileClasspath,integT
org.codehaus.groovy:groovy:2.5.12=compileClasspath,compileOnly
org.codehaus.groovy:groovy:3.0.6=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
org.codehaus.jsr166-mirror:jsr166y:1.7.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.codehaus.plexus:plexus-interpolation:1.26=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.codehaus.plexus:plexus-utils:3.3.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.codehaus.plexus:plexus-interpolation:1.25=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.codehaus.plexus:plexus-utils:3.2.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.codenarc:CodeNarc:2.0.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.eclipse.jdt:core:3.1.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.eclipse.jgit:org.eclipse.jgit:5.0.1.201806211838-r=compileClasspath,integTestCompileClasspath,runtimeClasspath,testCompileClasspath
org.eclipse.jgit:org.eclipse.jgit:5.7.0.202003110725-r=integTestRuntimeClasspath,testRuntimeClasspath
org.eclipse.sisu:org.eclipse.sisu.inject:0.3.5=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.eclipse.sisu:org.eclipse.sisu.inject:0.3.4=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.hamcrest:hamcrest-core:1.3=compileClasspath,compileOnly,integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
org.hamcrest:hamcrest:2.2=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-stdlib-common:1.4.21=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.4.21=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.21=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-stdlib:1.4.21=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-stdlib-common:1.3.70=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.70=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.70=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-stdlib:1.3.70=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains:annotations:13.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.junit.platform:junit-platform-commons:1.7.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
org.junit.platform:junit-platform-engine:1.7.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
org.multiverse:multiverse-core:0.7.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.objenesis:objenesis:2.4=compileOnly,integTestRuntimeClasspath,testRuntimeClasspath
org.opentest4j:opentest4j:1.2.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
org.ow2.asm:asm-analysis:9.2=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.ow2.asm:asm-commons:9.2=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.ow2.asm:asm-tree:9.2=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.ow2.asm:asm-util:9.2=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
org.ow2.asm:asm:9.2=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.ow2.asm:asm-analysis:7.3.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.ow2.asm:asm-commons:7.3.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.ow2.asm:asm-tree:7.3.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.ow2.asm:asm-util:5.2=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
org.ow2.asm:asm:7.3.1=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.slf4j:slf4j-api:1.7.2=integTestRuntimeClasspath,testRuntimeClasspath
org.spockframework:spock-core:1.3-groovy-2.4=compileClasspath,compileOnly
org.spockframework:spock-core:2.0-M4-groovy-3.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
Expand Down
21 changes: 12 additions & 9 deletions src/main/groovy/com/netflix/nebula/lint/rule/BuildFiles.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,6 @@ package com.netflix.nebula.lint.rule

import groovy.transform.CompileStatic

import java.nio.charset.Charset
import java.nio.file.Files

/**
* This class provides transformation from multiple build files to one concatenated text which is used for applying
* lint rules. We keep original mapping so we can get based on line number in concatenated text original line and file.
Expand All @@ -15,17 +12,23 @@ class BuildFiles {
private Map<LineRange, File> orderedFiles = new LinkedHashMap<>()

BuildFiles(List<File> allFiles) {
int initialRangeTotal = 1
int endRangeTotal = 0
int currentLinesTotal = 0
allFiles.each { File buildFile ->
int count = Files.lines(buildFile.toPath(), Charset.defaultCharset()).count().toInteger()
endRangeTotal += count
LineRange range = new LineRange(initialRangeTotal, endRangeTotal)
initialRangeTotal += count
int count = linesCount(buildFile)
LineRange range = new LineRange(currentLinesTotal + 1, currentLinesTotal + count)
currentLinesTotal += count
orderedFiles.put(range, buildFile)
}
}

int linesCount(File file) {
file.withReader { reader ->
LineNumberReader lineNumberReader = new LineNumberReader(reader)
while (lineNumberReader.read() != -1) {}
lineNumberReader.getLineNumber() + 1
}
}

String getText() {
StringBuilder result = new StringBuilder()
orderedFiles.each {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@ abstract class GroovyAstVisitor implements GroovyClassVisitor, GroovyCodeVisitor
void visitListOfExpressions(List<? extends Expression> list) {}
void visitObjectInitializerStatements(ClassNode node) {}
void visitEmptyStatement(EmptyStatement statement) {}
void visitLambdaExpression(def lambdaExpression) {}
void visitMethodReferenceExpression(def methodReferenceExpression) {}

@Override void visitClass(ClassNode classNode) {}
@Override void visitConstructor(ConstructorNode constructorNode) {}
Expand Down
16 changes: 10 additions & 6 deletions src/test/groovy/com/netflix/nebula/lint/rule/BuildFilesTest.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -60,23 +60,27 @@ class BuildFilesTest extends Specification {
3 | file1 | 3
4 | file2 | 1
5 | file2 | 2
6 | file3 | 1
7 | file3 | 2
6 | file2 | 3
7 | file3 | 1
8 | file3 | 2
9 | file3 | 3
10 | file4 | 1
}

def 'exception with details when you are asking line out of range'() {
given:
def buildFiles = new BuildFiles([file1, file2, file3, file4])

when:
buildFiles.original(8)
buildFiles.original(11)

then:
def exception = thrown(IllegalArgumentException)
def lines = exception.message.split('\n')
lines[0] == 'Asked line in concatenated file was: 8 but it wasn\'t found. Original project files were concatenated to following ranges:'
lines[0] == 'Asked line in concatenated file was: 11 but it wasn\'t found. Original project files were concatenated to following ranges:'
lines[1].startsWith("Lines 1 - 3 are ")
lines[2].startsWith("Lines 4 - 5 are ")
lines[3].startsWith("Lines 6 - 7 are ")
lines[2].startsWith("Lines 4 - 6 are ")
lines[3].startsWith("Lines 7 - 9 are ")
lines[4].startsWith("Lines 10 - 10 are ")
}
}

0 comments on commit 9db38f2

Please sign in to comment.