| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 208676674
|
|
|
|
|
|
|
| |
Move the message-digest cloning to DigestHashFunction and out of Fingerprint, to make it possible to configure Fingerprint to use different hash functions. We keep the default MD5 for now, we'd like it to use the global default but want to isolate the configuration change from any change adding potential contention.
RELNOTES: None.
PiperOrigin-RevId: 208502993
|
|
|
|
|
|
|
|
|
| |
This will cause bazel to write the parameter file during action execution instead of as a separate action. This is faster and requires less memory than using a separate action.
When using remote execution, pass --materialize_param_files if you wish to inspect the file locally (for debugging purposes).
RELNOTES: Set --defer_param_files to default to true.
PiperOrigin-RevId: 207300073
|
|
|
|
|
|
| |
https://github.com/bazelbuild/bazel/commit/129c3e2fd3dfdfe1cd312826988f0944bdd69236.
PiperOrigin-RevId: 207140930
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a new PrepareAnalysisPhaseFunction, which started out as a copy of
some existing code from SkyframeExecutor, BuildView, AnalysisPhaseRunner,
AnalysisUtils, and ConfigurationResolver, which was then modified to work
inside Skyframe.
Most of our tests already work with the new code, except for some of the tests
related to configuration trimming in combination with dependency cycles. The
reason for this is that we can only recover from dependency cycles at the end
of a Skyframe invocation, but never inside a Skyframe invocation. The new code
therefore cannot return partial results like the old code.
This seems to make null builds a bit faster. In my testing, I saw null build
times for a single test target go from ~50ms to ~40ms. This is probably due to
slightly better caching - it seems that computing the configuration transitions
and top-level targets is non-negligible, even if there's only a single
top-level configuration for a single top-level target.
This might be an even bigger win if there are a lot of top-level targets and
configurations.
PiperOrigin-RevId: 207083192
|
|
|
|
|
| |
Specifically: mention trimming less and rule transitions more.
PiperOrigin-RevId: 206980126
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Rolling forward with fixes.
*** Original change description ***
PiperOrigin-RevId: 206339696
|
| |
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 205665675
|
|
|
|
|
|
| |
encountered in a Fileset as a regular file.
PiperOrigin-RevId: 205152271
|
|
|
|
|
|
|
| |
preceding integer when serializing BuildOptions.DiffForReconstruction.
Reorder the cache map inserts due to a subtle race condition that can occur.
PiperOrigin-RevId: 204376273
|
|
|
|
| |
PiperOrigin-RevId: 204154609
|
|
|
|
|
|
|
| |
PiperOrigin-RevId: 203300374
Change-Id: Iaa47f870ab2e0cad40a202aad2c7f9430f73c856
PiperOrigin-RevId: 203407392
|
|
|
|
| |
PiperOrigin-RevId: 202704472
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 202360925
|
|
|
|
|
|
|
|
| |
Based on work of Sun Zhiyi <zhiyisun@gmail.com>.
Closes #5360.
PiperOrigin-RevId: 201339882
|
|
|
|
| |
PiperOrigin-RevId: 200801973
|
|
|
|
| |
PiperOrigin-RevId: 200763653
|
|
|
|
|
| |
RELNOTES: Support for LIPO has been fully removed.
PiperOrigin-RevId: 200724578
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the output from composeTransitions is one of the input PatchTransitions, return it.
If it's a composed transition, make sure to wrap it in a class which respects equality.
Without this change, running the same RuleTransitionFactory on the same attribute and
target twice will produce two non-equal Dependencies which can't be deduplicated by
OrderedSetMultimap - no lambda is equal to any other instance of the same lambda.
RELNOTES: None.
PiperOrigin-RevId: 200472777
|
|
|
|
|
|
|
|
|
| |
If this exception is thrown, performance no longer matters - we're detonating
the place and riding the explosion out to stderr. So we might as well just
dump everything we know.
RELNOTES: None.
PiperOrigin-RevId: 200290439
|
|
|
|
| |
PiperOrigin-RevId: 198877280
|
|
|
|
|
|
| |
and remove unused repositoryName field from BuildConfiguration.
PiperOrigin-RevId: 198723339
|
|
|
|
|
|
| |
Part of https://docs.google.com/document/d/1_UJKmAQ9EE8i3Pl0il3YLTYr-Q9EKYYyLatt2zohfyM/edit#
PiperOrigin-RevId: 198420365
|
|
|
|
|
|
|
| |
with generic parameters
RELNOTES: None.
PiperOrigin-RevId: 197932265
|
|
|
|
|
|
| |
Part of https://docs.google.com/document/d/1_UJKmAQ9EE8i3Pl0il3YLTYr-Q9EKYYyLatt2zohfyM/edit#
PiperOrigin-RevId: 197890685
|
|
|
|
|
|
| |
construction. Also restrict visibility of some test-only OptionsDiff methods, and remove a server-specific part of the ConfiguredTargetKey #toString representation.
PiperOrigin-RevId: 197830577
|
|
|
|
|
|
| |
Part of https://docs.google.com/document/d/1_UJKmAQ9EE8i3Pl0il3YLTYr-Q9EKYYyLatt2zohfyM/edit#
PiperOrigin-RevId: 197800831
|
|
|
|
|
|
| |
This results in less special logic in the implementation and a simpler API.
PiperOrigin-RevId: 197772283
|
|
|
|
|
|
|
| |
This unclashes with the incoming ConfigurationTransition.apply
method described in https://docs.google.com/document/d/1_UJKmAQ9EE8i3Pl0il3YLTYr-Q9EKYYyLatt2zohfyM/edit#heading=h.96gongkwg852.
PiperOrigin-RevId: 197769784
|
|
|
|
|
|
|
| |
TestConfiguration.
RELNOTES:none
PiperOrigin-RevId: 197135911
|
|
|
|
|
|
|
|
| |
BuildOptions$DiffForReconstruction serializations are reached in this way, so we get better efficiency. Also, it was already a custom codec, so less new handrolling.
Also use serialization framework for FragmentClassSet, instead of doing serialization directly. Default FragmentClassSet should be a constant, so it will serialize down to a byte or three. Future changes can make all the classes constants as well, if we're getting misses on them.
PiperOrigin-RevId: 196546279
|
|
|
|
|
|
| |
BuildOptions$OptionsDiffForReconstruction. The fingerprint uniquely identifies the "baseline" BuildOptions object and the checksum uniquely identifies the "overlay", so we don't need to incorporate the rest of the data.
PiperOrigin-RevId: 196532013
|
|
|
|
| |
PiperOrigin-RevId: 196310244
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196287081
|
|
|
|
|
|
|
| |
Since configuration fragments will extend from build API classes, @SkylarkConfigurationField no longer needs to annotate a method defined on a @SkylarkModule class. Ideally, we would ensure that a configuration fragment with a @SkylarkConfigurationField method implements an interface with @SkylarkModule, but this seems impossible to perform at the level of an annotation processor.
RELNOTES: None.
PiperOrigin-RevId: 195651344
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 195422399
|
|
|
|
|
|
|
|
|
| |
Remove all unnecessesary accesses to ConfigurationEnvironment and
deprecate the accesses that actually need ConfigurationEnvironment.
For review, check out ConfigurationFragmentFactory first.
PiperOrigin-RevId: 195099768
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 194540141
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 194536202
|
|
|
|
|
|
|
|
| |
late bound option defaults
BuildConfiguration.Fragment#lateBoundOptionDefaults() is going away soon, this flag is added to decouple its removal with the release process.
PiperOrigin-RevId: 194527657
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 194459347
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 194433721
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Design doc: https://docs.google.com/document/d/1JXqwwVHYosZOgmjN8xrfTalyhiUYJ99Qe2D0qBcqZ1c
The behaviour is gated on --defer_param_files (default off) and is controlled by --min_param_file_size.
This CL adds support for VirtualActionInputs to LocalSpawnRunner, and all remote runners already supports them. The sandboxed runners are not yet supported, but that can be added in a future CL.
This CL does not add support for spawn runner using different param file limits. This will require refactoring of the spawn strategies and runners to be viable.
RELNOTES: None
PiperOrigin-RevId: 194265291
|
|
|
|
|
|
|
|
|
|
| |
This RuleTransitionFactory will be applied to all targets after other
transitions, and is intended to be used to manually trim the configuration
based on tagging of that target. This is a stopgap feature until automatic
trimming of configuration can be implemented.
RELNOTES: None.
PiperOrigin-RevId: 193573013
|
|
|
|
|
|
|
|
| |
- Move test_timeout to BuildConfiguration.
- Add test_timeout_seconds field to BEP TargetCompleteEvent.
- Deprecate test_timeout field in ExecutionInfo. Data is still written to deprecated field to allow consumer transition.
PiperOrigin-RevId: 193192636
|
|
|
|
|
|
| |
of a StringBuilder.
PiperOrigin-RevId: 192681870
|
|
|
|
|
|
|
|
|
| |
BuildConfiguration.Fragment#compatibleWithStrategy().
The experiment did not work out.
RELNOTES: None.
PiperOrigin-RevId: 192567832
|
|
|
|
| |
PiperOrigin-RevId: 192479952
|
|
|
|
|
|
| |
now unused ConfigurationEnvironment#getBlazeDirectories()
PiperOrigin-RevId: 192443323
|