diff options
14 files changed, 22 insertions, 17 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/BUILD b/src/main/java/com/google/devtools/build/lib/BUILD index d4e18ecf80..f149afd617 100644 --- a/src/main/java/com/google/devtools/build/lib/BUILD +++ b/src/main/java/com/google/devtools/build/lib/BUILD @@ -591,6 +591,7 @@ java_library( "analysis/buildinfo/*.java", "analysis/config/*.java", "analysis/constraints/*.java", + "analysis/extra/*.java", "analysis/fileset/*.java", "analysis/skylark/*.java", "exec/*.java", diff --git a/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java b/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java index f00f1e3c02..9db7d38f2e 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java +++ b/src/main/java/com/google/devtools/build/lib/actions/AbstractAction.java @@ -531,7 +531,7 @@ public abstract class AbstractAction implements Action, SkylarkValue { * correctly when run remotely. This is at least the normal inputs of the action, but may include * other files as well. For example C(++) compilation may perform include file header scanning. * This needs to be mirrored by the extra_action rule. Called by - * {@link com.google.devtools.build.lib.rules.extra.ExtraAction} at execution time for actions + * {@link com.google.devtools.build.lib.analysis.extra.ExtraAction} at execution time for actions * that return true for {link #discoversInputs()}. * * @param actionExecutionContext Services in the scope of the action, like the Out/Err streams. diff --git a/src/main/java/com/google/devtools/build/lib/actions/Action.java b/src/main/java/com/google/devtools/build/lib/actions/Action.java index 33b0b16658..e27b122cb8 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/Action.java +++ b/src/main/java/com/google/devtools/build/lib/actions/Action.java @@ -188,13 +188,13 @@ public interface Action extends ActionExecutionMetadata, Describable { boolean canRemoveAfterExecution(); /** - * Returns true if an {@link com.google.devtools.build.lib.rules.extra.ExtraAction} action can be - * attached to this action. If not, extra actions should not be attached to this action. + * Returns true if an {@link com.google.devtools.build.lib.analysis.extra.ExtraAction} action can + * be attached to this action. If not, extra actions should not be attached to this action. */ boolean extraActionCanAttach(); /** - * Called by {@link com.google.devtools.build.lib.rules.extra.ExtraAction} at execution time to + * Called by {@link com.google.devtools.build.lib.analysis.extra.ExtraAction} at execution time to * extract information from this action into a protocol buffer to be used by extra_action rules. * * <p>As this method is called from the ExtraAction, make sure it is ok to call this method from diff --git a/src/main/java/com/google/devtools/build/lib/actions/ActionAnalysisMetadata.java b/src/main/java/com/google/devtools/build/lib/actions/ActionAnalysisMetadata.java index c2e2d3dfcf..1e13cbec96 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/ActionAnalysisMetadata.java +++ b/src/main/java/com/google/devtools/build/lib/actions/ActionAnalysisMetadata.java @@ -92,7 +92,7 @@ public interface ActionAnalysisMetadata { * correctly when run remotely. This is at least the normal inputs of the action, but may include * other files as well. For example C(++) compilation may perform include file header scanning. * This needs to be mirrored by the extra_action rule. Called by - * {@link com.google.devtools.build.lib.rules.extra.ExtraAction} at execution time for actions + * {@link com.google.devtools.build.lib.analysis.extra.ExtraAction} at execution time for actions * that return true for {link #discoversInputs()}. * * @param actionExecutionContext Services in the scope of the action, like the Out/Err streams. diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionUtils.java b/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionUtils.java index 99fd04cda7..d08de291ed 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionUtils.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionUtils.java @@ -20,10 +20,10 @@ import com.google.devtools.build.lib.actions.ActionAnalysisMetadata; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.analysis.RuleConfiguredTarget.Mode; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; +import com.google.devtools.build.lib.analysis.extra.ExtraActionMapProvider; +import com.google.devtools.build.lib.analysis.extra.ExtraActionSpec; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; -import com.google.devtools.build.lib.rules.extra.ExtraActionMapProvider; -import com.google.devtools.build.lib.rules.extra.ExtraActionSpec; import java.util.List; import java.util.Set; diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionsVisitor.java b/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionsVisitor.java index db1017390d..ff9f468ecd 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionsVisitor.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/ExtraActionsVisitor.java @@ -22,11 +22,9 @@ import com.google.devtools.build.lib.actions.ActionAnalysisMetadata; import com.google.devtools.build.lib.actions.ActionGraph; import com.google.devtools.build.lib.actions.ActionGraphVisitor; import com.google.devtools.build.lib.actions.Artifact; -import com.google.devtools.build.lib.rules.extra.ExtraActionSpec; - +import com.google.devtools.build.lib.analysis.extra.ExtraActionSpec; import java.util.Collection; import java.util.List; - import javax.annotation.Nullable; /** diff --git a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java b/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraAction.java index 41ba32c5fd..8c4d14aa79 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraAction.java @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.rules.extra; +package com.google.devtools.build.lib.analysis.extra; import com.google.common.base.Function; import com.google.common.collect.ImmutableList; diff --git a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionInfoFileWriteAction.java b/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionInfoFileWriteAction.java index 36fee0385f..1357c106ac 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionInfoFileWriteAction.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionInfoFileWriteAction.java @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.rules.extra; +package com.google.devtools.build.lib.analysis.extra; import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.actions.Action; diff --git a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionMapProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionMapProvider.java index 50e6c800d1..0c81debfc2 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionMapProvider.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionMapProvider.java @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.rules.extra; +package com.google.devtools.build.lib.analysis.extra; import com.google.common.collect.ImmutableMultimap; import com.google.common.collect.Multimap; diff --git a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionSpec.java b/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionSpec.java index 3ccda08af2..c613ec5ea0 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionSpec.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/extra/ExtraActionSpec.java @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.rules.extra; +package com.google.devtools.build.lib.analysis.extra; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; @@ -52,7 +52,7 @@ public final class ExtraActionSpec implements TransitiveInfoProvider { private final boolean requiresActionOutput; private final Label label; - ExtraActionSpec( + public ExtraActionSpec( Iterable<Artifact> resolvedTools, RunfilesSupplier runfilesSupplier, Iterable<Artifact> resolvedData, diff --git a/src/main/java/com/google/devtools/build/lib/rules/extra/ActionListener.java b/src/main/java/com/google/devtools/build/lib/rules/extra/ActionListener.java index 1505e44054..105c4b7a52 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/extra/ActionListener.java +++ b/src/main/java/com/google/devtools/build/lib/rules/extra/ActionListener.java @@ -23,6 +23,8 @@ import com.google.devtools.build.lib.analysis.RuleContext; import com.google.devtools.build.lib.analysis.Runfiles; import com.google.devtools.build.lib.analysis.RunfilesProvider; import com.google.devtools.build.lib.analysis.TransitiveInfoCollection; +import com.google.devtools.build.lib.analysis.extra.ExtraActionMapProvider; +import com.google.devtools.build.lib.analysis.extra.ExtraActionSpec; import com.google.devtools.build.lib.collect.ImmutableSortedKeyListMultimap; import com.google.devtools.build.lib.packages.RuleClass.ConfiguredTargetFactory.RuleErrorException; import com.google.devtools.build.lib.syntax.Type; diff --git a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionFactory.java b/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionFactory.java index 1d0def104f..c3fe6b940b 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionFactory.java +++ b/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionFactory.java @@ -29,6 +29,7 @@ import com.google.devtools.build.lib.analysis.RuleContext; import com.google.devtools.build.lib.analysis.Runfiles; import com.google.devtools.build.lib.analysis.RunfilesProvider; import com.google.devtools.build.lib.analysis.TransitiveInfoCollection; +import com.google.devtools.build.lib.analysis.extra.ExtraActionSpec; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.packages.TargetUtils; import com.google.devtools.build.lib.syntax.Type; diff --git a/src/main/java/com/google/devtools/build/lib/runtime/BuildEventStreamer.java b/src/main/java/com/google/devtools/build/lib/runtime/BuildEventStreamer.java index a7697f4314..8888804698 100644 --- a/src/main/java/com/google/devtools/build/lib/runtime/BuildEventStreamer.java +++ b/src/main/java/com/google/devtools/build/lib/runtime/BuildEventStreamer.java @@ -32,6 +32,7 @@ import com.google.devtools.build.lib.actions.EventReportingArtifacts; import com.google.devtools.build.lib.analysis.BuildInfoEvent; import com.google.devtools.build.lib.analysis.NoBuildEvent; import com.google.devtools.build.lib.analysis.NoBuildRequestFinishedEvent; +import com.google.devtools.build.lib.analysis.extra.ExtraAction; import com.google.devtools.build.lib.buildeventstream.AbortedEvent; import com.google.devtools.build.lib.buildeventstream.AnnounceBuildEventTransportsEvent; import com.google.devtools.build.lib.buildeventstream.ArtifactGroupNamer; @@ -56,7 +57,6 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSetView; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventHandler; import com.google.devtools.build.lib.events.Reporter; -import com.google.devtools.build.lib.rules.extra.ExtraAction; import com.google.devtools.build.lib.util.Pair; import java.util.ArrayList; import java.util.Collection; diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java index 4b31bbd1cf..b47c717240 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java @@ -79,6 +79,7 @@ import com.google.devtools.build.lib.analysis.config.BuildConfigurationCollectio import com.google.devtools.build.lib.analysis.config.BuildOptions; import com.google.devtools.build.lib.analysis.config.ConfigurationFactory; import com.google.devtools.build.lib.analysis.config.PatchTransition; +import com.google.devtools.build.lib.analysis.extra.ExtraAction; import com.google.devtools.build.lib.buildtool.BuildRequest; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.LabelSyntaxException; @@ -115,7 +116,6 @@ import com.google.devtools.build.lib.pkgcache.LoadingResult; import com.google.devtools.build.lib.pkgcache.PackageCacheOptions; import com.google.devtools.build.lib.pkgcache.PackageManager; import com.google.devtools.build.lib.pkgcache.PathPackageLocator; -import com.google.devtools.build.lib.rules.extra.ExtraAction; import com.google.devtools.build.lib.rules.repository.RepositoryDelegatorFunction; import com.google.devtools.build.lib.rules.test.BaselineCoverageAction; import com.google.devtools.build.lib.rules.test.InstrumentedFilesProvider; @@ -127,6 +127,7 @@ import com.google.devtools.build.lib.skyframe.LegacyLoadingPhaseRunner; import com.google.devtools.build.lib.skyframe.PrecomputedValue; import com.google.devtools.build.lib.skyframe.SequencedSkyframeExecutor; import com.google.devtools.build.lib.skyframe.SkyValueDirtinessChecker; +import com.google.devtools.build.lib.skyframe.SkyframeExecutor; import com.google.devtools.build.lib.syntax.SkylarkSemanticsOptions; import com.google.devtools.build.lib.testutil.BlazeTestUtils; import com.google.devtools.build.lib.testutil.FoundationTestCase; @@ -140,6 +141,8 @@ import com.google.devtools.build.lib.vfs.FileSystemUtils; import com.google.devtools.build.lib.vfs.ModifiedFileSet; import com.google.devtools.build.lib.vfs.Path; import com.google.devtools.build.lib.vfs.PathFragment; +import com.google.devtools.build.skyframe.ErrorInfo; +import com.google.devtools.build.skyframe.MemoizingEvaluator; import com.google.devtools.build.skyframe.SkyFunction; import com.google.devtools.common.options.InvocationPolicyEnforcer; import com.google.devtools.common.options.Options; |