From 469b96db49ff70c3be54d5801932f5d1d1dabd4d Mon Sep 17 00:00:00 2001 From: friendseeker <66892505+Friendseeker@users.noreply.github.com> Date: Sat, 9 Dec 2023 12:46:31 -0800 Subject: [PATCH] Add getSourceInfos similar to #1226 --- .../src/main/scala/xsbt/CompilerBridge.scala | 8 +++---- .../src/main/java/xsbti/AnalysisCallback.java | 3 --- .../main/java/xsbti/AnalysisCallback3.java | 21 +++++++++++++++++++ .../scala/sbt/internal/inc/Incremental.scala | 2 +- .../src/main/scala/xsbti/TestCallback.scala | 2 +- 5 files changed, 27 insertions(+), 9 deletions(-) create mode 100644 internal/compiler-interface/src/main/java/xsbti/AnalysisCallback3.java diff --git a/internal/compiler-bridge/src/main/scala/xsbt/CompilerBridge.scala b/internal/compiler-bridge/src/main/scala/xsbt/CompilerBridge.scala index b40c26f82..77260e7ac 100644 --- a/internal/compiler-bridge/src/main/scala/xsbt/CompilerBridge.scala +++ b/internal/compiler-bridge/src/main/scala/xsbt/CompilerBridge.scala @@ -161,8 +161,8 @@ private final class CachedCompiler0( underlyingReporter: DelegatingReporter, compileProgress: CompileProgress ): Unit = { - // cast down to AnalysisCallback2 - val callback2 = callback.asInstanceOf[xsbti.AnalysisCallback2] + // cast down to AnalysisCallback3 + val callback3 = callback.asInstanceOf[xsbti.AnalysisCallback3] compiler.set(callback, underlyingReporter) if (command.shouldStopWithInfo) { @@ -177,7 +177,7 @@ private final class CachedCompiler0( run.compileFiles(sources) processUnreportedWarnings(run) underlyingReporter.problems.foreach(p => - callback2.problem2( + callback3.problem2( p.category, p.position, p.message, @@ -193,7 +193,7 @@ private final class CachedCompiler0( underlyingReporter.printSummary() if (!noErrors(underlyingReporter)) { - val infos = callback.getSourceInfos + val infos = callback3.getSourceInfos handleErrors(infos, log) } diff --git a/internal/compiler-interface/src/main/java/xsbti/AnalysisCallback.java b/internal/compiler-interface/src/main/java/xsbti/AnalysisCallback.java index ce38bffc1..dedcba847 100644 --- a/internal/compiler-interface/src/main/java/xsbti/AnalysisCallback.java +++ b/internal/compiler-interface/src/main/java/xsbti/AnalysisCallback.java @@ -12,7 +12,6 @@ package xsbti; import xsbti.api.DependencyContext; -import xsbti.compile.analysis.ReadSourceInfos; import java.io.File; import java.nio.file.Path; @@ -261,6 +260,4 @@ void problem(String what, boolean isPickleJava(); Optional> getPickleJarPair(); - - ReadSourceInfos getSourceInfos(); } diff --git a/internal/compiler-interface/src/main/java/xsbti/AnalysisCallback3.java b/internal/compiler-interface/src/main/java/xsbti/AnalysisCallback3.java new file mode 100644 index 000000000..56011c3bf --- /dev/null +++ b/internal/compiler-interface/src/main/java/xsbti/AnalysisCallback3.java @@ -0,0 +1,21 @@ +/* + * Zinc - The incremental compiler for Scala. + * Copyright Scala Center, Lightbend, and Mark Harrah + * + * Licensed under Apache License 2.0 + * SPDX-License-Identifier: Apache-2.0 + * + * See the NOTICE file distributed with this work for + * additional information regarding copyright ownership. + */ + +package xsbti; +import xsbti.compile.analysis.ReadSourceInfos; + +/** + * Extension to AnalysisCallback2 + * refer to AnalysisCallback2.java for explanation + */ +public interface AnalysisCallback3 extends AnalysisCallback2 { + ReadSourceInfos getSourceInfos(); +} diff --git a/internal/zinc-core/src/main/scala/sbt/internal/inc/Incremental.scala b/internal/zinc-core/src/main/scala/sbt/internal/inc/Incremental.scala index e255b20f2..6b684bd00 100644 --- a/internal/zinc-core/src/main/scala/sbt/internal/inc/Incremental.scala +++ b/internal/zinc-core/src/main/scala/sbt/internal/inc/Incremental.scala @@ -590,7 +590,7 @@ private final class AnalysisCallback( progress: Option[CompileProgress], incHandlerOpt: Option[Incremental.IncrementalCallback], log: Logger -) extends xsbti.AnalysisCallback2 { +) extends xsbti.AnalysisCallback3 { import Incremental.CompileCycleResult // This must have a unique value per AnalysisCallback diff --git a/internal/zinc-testing/src/main/scala/xsbti/TestCallback.scala b/internal/zinc-testing/src/main/scala/xsbti/TestCallback.scala index c943142d4..b3e3cf72b 100644 --- a/internal/zinc-testing/src/main/scala/xsbti/TestCallback.scala +++ b/internal/zinc-testing/src/main/scala/xsbti/TestCallback.scala @@ -20,7 +20,7 @@ import xsbti.compile.analysis.ReadSourceInfos import scala.collection.mutable.ArrayBuffer -class TestCallback extends AnalysisCallback2 { +class TestCallback extends AnalysisCallback3 { case class TestUsedName(name: String, scopes: ju.EnumSet[UseScope]) val classDependencies = new ArrayBuffer[(String, String, DependencyContext)]