diff --git a/java/compiler/tests/com/intellij/compiler/progress/CompilerBuildViewTest.kt b/java/compiler/tests/com/intellij/compiler/progress/CompilerBuildViewTest.kt index ddfcb7cff863..0bd3278217b6 100644 --- a/java/compiler/tests/com/intellij/compiler/progress/CompilerBuildViewTest.kt +++ b/java/compiler/tests/com/intellij/compiler/progress/CompilerBuildViewTest.kt @@ -83,6 +83,7 @@ class CompilerBuildViewTest : BaseCompilerTestCase() { Running 'before' tasks Checking sources Copying resources… [a] + Updating dependency information… [a] Parsing java… [a] Writing classes… [a] Adding nullability assertions… [a] @@ -118,6 +119,7 @@ class CompilerBuildViewTest : BaseCompilerTestCase() { Running 'before' tasks Checking sources Copying resources… [a] + Updating dependency information… [a] Parsing java… [a] Writing classes… [a] Adding nullability assertions… [a] diff --git a/jps/jps-builders/src/org/jetbrains/jps/builders/java/JavaBuilderUtil.java b/jps/jps-builders/src/org/jetbrains/jps/builders/java/JavaBuilderUtil.java index d735af627ccd..4f9360d2e3be 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/builders/java/JavaBuilderUtil.java +++ b/jps/jps-builders/src/org/jetbrains/jps/builders/java/JavaBuilderUtil.java @@ -131,17 +131,20 @@ public final class JavaBuilderUtil { BuildDataManager dataManager = context.getProjectDescriptor().dataManager; GraphConfiguration graphConfig = dataManager.getDependencyGraph(); if(isDepGraphEnabled() && graphConfig != null) { + Delta delta = null; Set inputFiles = getFilesContainer(context, FILES_TO_COMPILE_KEY); Set deletedFiles = getRemovedPaths(chunk, dirtyFilesHolder); - Delta delta = graphConfig.getGraph().createDelta( - Iterators.map(inputFiles, graphConfig.getPathMapper()::toNodeSource), - Iterators.map(deletedFiles, graphConfig.getPathMapper()::toNodeSource), - false - ); BackendCallbackToGraphDeltaAdapter callback = GRAPH_DELTA_CALLBACK_KEY.get(context); - if (callback != null) { - for (var nodeData : callback.getNodes()) { - delta.associate(nodeData.getFirst(), nodeData.getSecond()); + if (callback != null || !inputFiles.isEmpty() || !deletedFiles.isEmpty()) { + delta = graphConfig.getGraph().createDelta( + Iterators.map(inputFiles, graphConfig.getPathMapper()::toNodeSource), + Iterators.map(deletedFiles, graphConfig.getPathMapper()::toNodeSource), + false + ); + if (callback != null) { + for (var nodeData : callback.getNodes()) { + delta.associate(nodeData.getFirst(), nodeData.getSecond()); + } } } @@ -549,9 +552,7 @@ public final class JavaBuilderUtil { } if (performIntegrate) { - if (!Iterators.isEmpty(diffResult.getAffectedSources()) || !Iterators.isEmpty(diffResult.getDeletedNodes())) { // avoid excessive messaging - context.processMessage(new ProgressMessage(JpsBuildBundle.message("progress.message.updating.dependency.information.0", chunk.getPresentableShortName()))); - } + context.processMessage(new ProgressMessage(JpsBuildBundle.message("progress.message.updating.dependency.information.0", chunk.getPresentableShortName()))); dependencyGraph.integrate(diffResult); } diff --git a/jps/jps-builders/src/org/jetbrains/jps/incremental/dependencies/LibraryDependenciesUpdater.java b/jps/jps-builders/src/org/jetbrains/jps/incremental/dependencies/LibraryDependenciesUpdater.java index 911528616d87..e9d5fa255c5a 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/incremental/dependencies/LibraryDependenciesUpdater.java +++ b/jps/jps-builders/src/org/jetbrains/jps/incremental/dependencies/LibraryDependenciesUpdater.java @@ -162,7 +162,12 @@ public final class LibraryDependenciesUpdater { } } else if (diffParams.isCalculateAffected()) { - markAffectedFilesDirty(context, map(diffResult.getAffectedSources(), ns -> pathMapper.toPath(ns))); + Iterable affectedSources = diffResult.getAffectedSources(); + final String infoMessage = JpsBuildBundle.message("progress.message.dependency.analysis.found.0.affected.files", count(affectedSources)); + LOG.info(infoMessage); + context.processMessage(new ProgressMessage(infoMessage)); + + markAffectedFilesDirty(context, map(affectedSources, ns -> pathMapper.toPath(ns))); } graph.integrate(diffResult); @@ -179,11 +184,6 @@ public final class LibraryDependenciesUpdater { if (isEmpty(affectedFiles)) { return; } - - final String infoMessage = JpsBuildBundle.message("progress.message.dependency.analysis.found.0.affected.files", count(affectedFiles)); - LOG.info(infoMessage); - context.processMessage(new ProgressMessage(infoMessage)); - ProjectDescriptor projectDescriptor = context.getProjectDescriptor(); BuildRootIndex buildRootIndex = projectDescriptor.getBuildRootIndex(); JavaModuleIndex moduleIndex = JpsJavaExtensionService.getInstance().getJavaModuleIndex(projectDescriptor.getProject());