diff options
author | Manu Sridharan <msridhar@gmail.com> | 2024-01-13 18:16:58 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-14 02:16:58 +0000 |
commit | c7007fd73405683ab089f766179a94c8cf98e692 (patch) | |
tree | d7e4f0f39b0419b485ee0341e226afbf7d0941be | |
parent | 9ff44a7fc9190ae493f58ff516a1f2ec54404aea (diff) | |
download | nullaway-c7007fd73405683ab089f766179a94c8cf98e692.tar.gz |
Downgrade to Checker Framework 3.40.0 (#895)
This fixes a regression where we were seeing a crash in CFG
construction. Reported upstream as
https://github.com/typetools/checker-framework/issues/6396.
-rwxr-xr-x | gradle/dependencies.gradle | 2 | ||||
-rw-r--r-- | nullaway/build.gradle | 3 | ||||
-rw-r--r-- | nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java | 25 |
3 files changed, 29 insertions, 1 deletions
diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle index 5962a7c..bada5ee 100755 --- a/gradle/dependencies.gradle +++ b/gradle/dependencies.gradle @@ -40,7 +40,7 @@ if (project.hasProperty("epApiVersion")) { def versions = [ asm : "9.3", - checkerFramework : "3.41.0", + checkerFramework : "3.40.0", // for comparisons in other parts of the build errorProneLatest : latestErrorProneVersion, // The version of Error Prone used to check NullAway's code. diff --git a/nullaway/build.gradle b/nullaway/build.gradle index 7d39adc..15327ae 100644 --- a/nullaway/build.gradle +++ b/nullaway/build.gradle @@ -65,6 +65,9 @@ dependencies { testImplementation deps.test.mockito testImplementation deps.test.javaxAnnotationApi testImplementation deps.test.assertJ + // This is for a test exposing a CFG construction failure in the Checker Framework. We can probably remove it once + // the issue is fixed upstream and we update. See https://github.com/typetools/checker-framework/issues/6396. + testImplementation 'org.apache.spark:spark-sql_2.12:3.3.2' errorProneOldest deps.build.errorProneCheckApiOld errorProneOldest(deps.build.errorProneTestHelpersOld) { diff --git a/nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java b/nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java index f8f3ed6..dd6e0d7 100644 --- a/nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java +++ b/nullaway/src/test/java/com/uber/nullaway/NullAwayCoreTests.java @@ -960,4 +960,29 @@ public class NullAwayCoreTests extends NullAwayTestsBase { "}") .doTest(); } + + /** + * This test exposes a failure in CFG construction in Checker Framework 3.41.0 and above. Once a + * fix for this issue makes it to a Checker Framework release, we can probably remove this test. + * See https://github.com/typetools/checker-framework/issues/6396. + */ + @Test + public void cfgConstructionSymbolCompletionFailure() { + defaultCompilationHelper + .addSourceLines( + "Test.java", + "package com.uber;", + "import org.apache.spark.sql.SparkSession;", + "class Test {", + " static class X {", + " X(SparkSession session) {}", + " }", + " X run() {", + " try (SparkSession session = SparkSession.builder().getOrCreate()) {", + " return new X(session);", + " }", + " }", + "}") + .doTest(); + } } |