| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
| |
Java compile actions create unnecessary wrapper objects around a shared constant object. We can share the ActionEnviroment between these actions.
In the general spawn case there will be a lot of empty action environments. Make sure that these are shared too.
RELNOTES: None
PiperOrigin-RevId: 161389056
|
|
|
|
|
|
| |
Platform rule.
PiperOrigin-RevId: 161203491
|
|
|
|
|
|
|
|
|
|
| |
Some of the callers are not using the proper one from the configuration, and
are thus ignoring --action_env. Some are only using part of the configuration's
action environment. I tried to carefully not change the semantics in any case.
Semantic-changing changes come later.
PiperOrigin-RevId: 160891204
|
|
|
|
|
|
|
| |
Move everything to ActionExecutionContext, and drop Executor whereever possible.
This clarifies the API, makes it simpler to test, and simplifies the code.
PiperOrigin-RevId: 159414816
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 157124371
|
|
|
|
|
|
|
| |
* isShellCommand is now passed directly to SpawnAction
* Getting the associated params file action was a test-only thing. We can pull this out of the action graph instead.
PiperOrigin-RevId: 156060366
|
|
|
|
|
|
|
|
| |
Instead of parsing .d file generated by wrapper script,
we directly parse the output of /showIncludes option.
Change-Id: Id94e20a5cb05a494a793fd6a43756d44d27cea8a
PiperOrigin-RevId: 154161939
|
|
|
|
|
|
|
|
| |
implementation that uses crosstool for compilation.
--
PiperOrigin-RevId: 149083774
MOS_MIGRATED_REVID=149083774
|
|
|
|
|
|
|
|
|
|
|
|
| |
updateInputs() and inputsKnown() non-overridable and removing setInputs().
This comes at the cost of adding a flag to every action instance that's not used for non-input-discovering actions, but I think that's a deal. Simpler APIs are good, mmmmkay?
Also fixed a few pre-existing issues in TestAction and ObjcCompileAction.
--
PiperOrigin-RevId: 148749734
MOS_MIGRATED_REVID=148749734
|
|
|
|
|
|
|
|
|
|
| |
This time, if the action discovers inputs, the extra action is made to depend on the outputs of the action so that by the time the extra action runs, the inputs of the original action are discovered. This avoids us having to think about the state the shadowed action may keep.
Yes, actions should not keep state, but they do. Such is life.
--
PiperOrigin-RevId: 148627715
MOS_MIGRATED_REVID=148627715
|
|
|
|
|
|
|
|
| |
to generate extra action proto file.
--
PiperOrigin-RevId: 148479293
MOS_MIGRATED_REVID=148479293
|
|
|
|
|
|
| |
--
PiperOrigin-RevId: 147788295
MOS_MIGRATED_REVID=147788295
|
|
|
|
|
|
| |
--
PiperOrigin-RevId: 147515806
MOS_MIGRATED_REVID=147515806
|
|
|
|
|
|
|
|
|
|
|
|
| |
This method was used to return the discovered inputs for extra actions, but it turns out that we can use #discoverInputs() just as well.
Note that this makes it possible for #discoverInputs() to be called more than once per action instance (once for the action and once for each extra action), but this appears to work. A followup change may be able to dispense with that, but let's take baby steps for now.
Also note that this introduces synchronization between an action and its associated extra action.
--
PiperOrigin-RevId: 146450132
MOS_MIGRATED_REVID=146450132
|
|
|
|
|
|
| |
--
PiperOrigin-RevId: 146385106
MOS_MIGRATED_REVID=146385106
|
|
|
|
|
|
|
|
|
|
| |
of to resolve exec paths found in the action cache.
The resolution algorithm was the same in all cases where it was implemented.
--
PiperOrigin-RevId: 146344672
MOS_MIGRATED_REVID=146344672
|
|
|
|
|
|
|
|
|
|
| |
Action#getInputsWhenSkippingInputDiscovery().
This has the side effect of always allowing new inputs to be discovered when Action#discoversInputs() return true, but since those actions are very few and have mostly to do with C++, I think it's an acceptable tradeoff for th ecode being that much simpler.
--
PiperOrigin-RevId: 146098150
MOS_MIGRATED_REVID=146098150
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ActionSpawn/SpawnAction now deal exclusively in RunfilesSuppliers, manifests
maps are no more.
There is some lingering awkwardness, in particular:
- Manifests still need to be tracked in some places, we can work out if this is
still necessary on a case by case basis.
- Skylark makes actions' runfiles available via 'resolve_command' where they are
consumed by 'action'. I've updated the documentation, though the name isn't
entirely accurate anymore. That being said these interfaces _are_ marked as
experimental, so we _should_ be able to be flexible here.
Overall, I think the benefits consolidating runfiles into suppliers, from both
code cleanliness and performance perspectives (no longer needing to parse
manifests), outweights the awkwardnesses.
RELNOTES: resolve_command/action's input_manifest return/parameter is now list
--
PiperOrigin-RevId: 145817429
MOS_MIGRATED_REVID=145817429
|
|
|
|
|
|
|
|
|
|
|
| |
Instead, it skips discovery (include scanning), but provides all headers to
action
execution to allow for re-adding pruned sources in a sandbox.
This means that mis-capitalization errors will only break a build if --objc_use_dotd_pruning is one.
--
MOS_MIGRATED_REVID=139456194
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=139219934
|
|
|
|
|
|
|
|
|
| |
correct behavior in dotd pruning after a bazel shutdown - the action will
realize that its inputs are not known and will consult the on-disk action
cache.
--
MOS_MIGRATED_REVID=138868221
|
|
|
|
|
|
|
| |
headers pruned by .d pruning to be re-added if they are changed.
--
MOS_MIGRATED_REVID=138866385
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=137864618
|
|
|
|
|
|
|
| |
headers pruned by .d pruning to be re-added if they are changed.
--
MOS_MIGRATED_REVID=137697323
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=135495881
|
|
|
|
|
|
|
| |
false.
--
MOS_MIGRATED_REVID=134452391
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
We *still* have case discrepancies in objc code, which appears to be a hard blocker to .d pruning. This change will not work until we've found some way to enforce case-consistency.
*** Original change description ***
Implement input pruning using .d files in objc.
--
MOS_MIGRATED_REVID=134069949
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=133944059
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks Bigtop incremental build
*** Original change description ***
Implement input pruning using .d files in objc.
--
MOS_MIGRATED_REVID=133271059
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=132550233
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Prunes .modulemap files incorrectly. See [].
*** Original change description ***
Implement input pruning using .d files in objc.
--
MOS_MIGRATED_REVID=132246906
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=132061988
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=131990160
|
|
--
MOS_MIGRATED_REVID=131951535
|