| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 206157591
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is accomplished by:
- Setting the APPLE_CROSSTOOL configuration distinguisher in AppleCrosstoolTransition
- Doing nothing in AppleCrosstoolTransition in case we are already in an Apple configuration so that funky use cases like a binary having a dependency on a swift_library both directly and through an objc_library work
- Adding the "apl-" prefix to the output directory name in APPLE_CROSSTOOL configurations
Plus a few minor cleanups:
- Removed some unused methods
- Nopped out --enable_apple_crosstool_transition if the new flag is set
- Nopped out --target_uses_apple_crosstool if the new flag is set
These latter reduce the possible space of Apple configurations, thus making the code a bit more comprehensible.
RELNOTES: None.
PiperOrigin-RevId: 206157413
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 206156886
|
|
|
|
|
|
|
| |
This significantly reduces the size of the resulting profiles. Do we need the
events that I remove? What do we do with the data? Who knows?
PiperOrigin-RevId: 206153368
|
|
|
|
|
|
|
|
| |
This is in preparation for deleting CcLinkParamsStore. All remaining calls
to the setCcLinkparamsStore method of the CcLinkingInfo builder have been removed.
RELNOTES:none
PiperOrigin-RevId: 206128439
|
|
|
|
|
|
|
|
|
|
| |
This is in preparation for deleting CcLinkParamsStore. Not all calls to
setCcLinkparamsStore have been removed in this CL.
Roll forward with bzl change in separate CL (unknown commit) and giving a proper error in Skylark instead of a crash when CcLinkingInfo is not built correctly.
RELNOTES:none
PiperOrigin-RevId: 206122870
|
|
|
|
|
|
|
|
|
| |
This allows loading data inputs to annotation processors and Error Prone plugins.
Previously the only supported way to do this was using Java resources, but in
the case of per-package configuration that ties any changes to the resources
to JavaBuilder's release process.
PiperOrigin-RevId: 206106802
|
|
|
|
| |
PiperOrigin-RevId: 206102499
|
|
|
|
|
| |
RELNOTES: Removed the gen_jars output group
PiperOrigin-RevId: 206092599
|
|
|
|
|
|
|
|
|
| |
Param annotations only once.
This change has been manually verified to greatly reduce analysis time (~50%) on very large builds, as it mitigates a previous regression brought on by the migration of @SkylarkSignature to @SkylarkCallable.
RELNOTES: None.
PiperOrigin-RevId: 206063684
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 206063489
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Crash (see linked bug).
PiperOrigin-RevId: 206060905
|
|
|
|
|
|
|
|
|
| |
`keyWordArgs` is already `ImmutableMap<String, Object>` and `copyOf` contains enough
overhead to show up on parse profiles.
Closes #5651.
PiperOrigin-RevId: 206051798
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
struct.to_json.
Dictionaries are frequently used for generic configuration descriptions especially
given that `struct` is not allowed in build files.
In order to be JSON-compatible, only dictionaries with string keys are allowed.
Technically Python also allows integers and booleans by automatically converting
them to strings, but this is confusing and not necessarily a good thing to do.
Fixes #5542
Closes #5543.
PiperOrigin-RevId: 206049754
|
|
|
|
|
| |
RELNOTES: none.
PiperOrigin-RevId: 206035881
|
|
|
|
|
| |
RELNOTES: none.
PiperOrigin-RevId: 206035420
|
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 206021118
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add an option to provide a file with a resolved value, that will be
used to verify that the repositories mentioned in this file produce
a correct directory tree.
RELNOTES: newly added options --experimental_repository_hash_file and
--experimental_verify_repository_rules allow to verify for repositories
the directory generated against pre-recorded hashes. See documentation
for those options.
Work towards #5660.
Change-Id: I2d8becb188d0fa51e890fb8f6139f321cca14b7b
PiperOrigin-RevId: 206016792
|
|
|
|
|
|
|
|
|
|
| |
to avoid confusion between the LHS and RHS host_javabases.
The LHS --host_javabase option should be considered deprecated and will
eventually be removed.
RELNOTES: Rename the startup flag --host_javabase to --server_javabase to avoid confusion with the build flag --host_javabase
PiperOrigin-RevId: 206015757
|
|
|
|
|
|
|
| |
This avoids bazel crashes for illegally formatted strings. Previously the code would assume that a correct string was passed with only minimal validation.
RELNOTES: None
PiperOrigin-RevId: 206012819
|
|
|
|
|
|
|
|
|
|
| |
When there is a hard limit on the output of the experimental UI, change
the behavior to only write to the underlying stream on flush. In this
way, we can avoid semantically incomplete writes at the moment we
run out of characters.
Change-Id: I024c776ae2139d76d380bb89d13b8fe61d6cfe51
PiperOrigin-RevId: 206000817
|
|
|
|
|
|
|
|
| |
This is in preparation for deleting CcLinkParamsStore. Not all calls to
setCcLinkparamsStore have been removed in this CL.
RELNOTES:none
PiperOrigin-RevId: 205998687
|
|
|
|
|
|
|
| |
detected by FileSystemUtils#readWithKnownFileSize.
RELNOTES: None
PiperOrigin-RevId: 205995852
|
|
|
|
|
|
|
|
|
|
|
| |
Instead, refactor the code to use TargetPatternPhaseValue exclusively. This
removes the need to convert from TargetPatternPhaseValue to LoadingResult, and
prepares for interleaving.
It also reduces the number of Skyframe calls which may speed up null builds a
bit, as a followup for https://github.com/bazelbuild/bazel/commit/1067310e18cb9ac203110726de0be53bdc403cea.
PiperOrigin-RevId: 205989338
|
|
|
|
| |
PiperOrigin-RevId: 205985818
|
|
|
|
|
|
|
| |
aren't used anymore.
RELNOTES: None.
PiperOrigin-RevId: 205984908
|
|
|
|
|
|
|
|
|
| |
There were convoluted cases with multiple JavaInfo created from Skylark that
didn't have the JavaStrictCompilationArgsProvider. If these were to be merged
and later forwarded with exports we would miss them as dependencies.
RELNOTES: None
PiperOrigin-RevId: 205980933
|
|
|
|
| |
PiperOrigin-RevId: 205980620
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For downloading output files / directories we trigger all
downloads concurrently and asynchronously in the background
and after that wait for all downloads to finish. However, if
a download failed we did not wait for the remaining downloads
to finish but immediately started deleting partial downloads
and continued with local execution of the action.
That leads to two interesting bugs:
* The cleanup procedure races with the downloads that are still
in progress. As it tries to delete files and directories, new
files and directories are created and that will often
lead to "Directory not empty" errors as seen in #5047.
* The clean up procedure does not detect the race, succeeds and
subsequent local execution fails because not all files have
been deleted.
The solution is to always wait for all downloads to complete
before entering the cleanup routine. Ideally we would also
cancel all outstanding downloads, however, that's not as
straightfoward as it seems. That is, the j.u.c.Future API does
not provide a way to cancel a computation and also wait for
that computation actually having determinated. So we'd need
to introduce a separate mechanism to cancel downloads.
RELNOTES: None
PiperOrigin-RevId: 205980446
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
3 providers had AbstractCcLinkParamsStore as a class field, now they wrap
CcLinkingInfo instead.
This is being rolled forward, first try caused a NullPointerException in
go_wrap_cc rules that had the attribute use_default_import set to False.
GoWrapCcConfiguredTargetTest now has a go_wrap_cc rule that has this attribute
set to false and fails with the previous version of this CL.
RELNOTES:none
PiperOrigin-RevId: 205959266
|
|
|
|
|
|
|
|
|
| |
the declared directories. Especially when doing validation during input
discovery, the discovery's over-approximation can lead to isDeclaredIn walking
the full path to the root without finding a declared include directory.
RELNOTES: None.
PiperOrigin-RevId: 205958078
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Crash with NullPointerException
*** Original change description ***
C++: Remove AbstractCcLinkParamsStore from providers.
3 providers had AbstractCcLinkParamsStore as a class field, now they wrap
CcLinkingInfo instead.
RELNOTES:none
PiperOrigin-RevId: 205885939
|
|
|
|
| |
PiperOrigin-RevId: 205876673
|
|
|
|
|
| |
RELNOTES: The JDK shipped with Bazel was updated to JDK10.
PiperOrigin-RevId: 205865966
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Fixed duplicate derived inputs bug. Test is in diffbase.
RELNOTES[INC]: If the same artifact is generated by two distinct but identical actions, and a downstream action has both those actions' outputs in its inputs, the artifact will now appear twice in the downstream action's inputs. If this causes problems in Skylark actions, you can use the uniquify=True argument in Args.add_args.
PiperOrigin-RevId: 205863806
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 205850479
|
|
|
|
|
|
|
| |
Comments are misleading, as discussed on https://github.com/bazelbuild/bazel/pull/5305#issuecomment-396288826
RELNOTES: None.
PiperOrigin-RevId: 205841782
|
|
|
|
|
|
|
| |
Fixes #5592.
RELNOTES: Deleting deprecated no-op flag --show_package_location
PiperOrigin-RevId: 205834069
|
|
|
|
|
|
|
|
| |
RELNOTES: java_common.compile creates the native headers jar accesible via JavaInfo.outputs.native_headers.
Closes #5662.
PiperOrigin-RevId: 205832180
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 205825362
|
|
|
|
|
|
|
|
| |
3 providers had AbstractCcLinkParamsStore as a class field, now they wrap
CcLinkingInfo instead.
RELNOTES:none
PiperOrigin-RevId: 205821081
|
|
|
|
|
|
|
| |
This will be used to compute the critical path using Spawns instead of Actions,
which should be more accurate.
PiperOrigin-RevId: 205817400
|
|
|
|
|
|
|
|
|
|
|
| |
Also simplify LoadingPhaseCompleteEvent, and SkyframeExecutor, and remove
LoadingCallback, which is unnecessary now that we only have a single
implementation (previously LoadingPhaseRunner).
This also removes some of the excessive Skyframe calls introduced by
https://github.com/bazelbuild/bazel/commit/1067310e18cb9ac203110726de0be53bdc403cea, and prepares for interleaving target pattern eval and loading.
PiperOrigin-RevId: 205813197
|
|
|
|
|
|
|
| |
treat java_proto_library.
RELNOTES: None
PiperOrigin-RevId: 205812269
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DeletePath and CreateJunction are now even more
tolerant with errors, particularly the class of
errors where access is denied.
Also in this change:
- remove DeletePathResult::kParentMissing, as this
case is handled by CreateFileW's error handling
later
- do not error-check CreateDirectoryW; if failed,
just proceed as if the directory already existed
- print more debugging info where possible
Change-Id: I1162dae2c6b7524f14d8892047f9eb51831470dd
Closes #5611.
Change-Id: I78fe6aed6d0b120815339c0923c8a903990921d9
PiperOrigin-RevId: 205796307
|
|
|
|
|
|
|
|
|
|
|
| |
The conversion approach we were previously using is not stable - the resulting
offsets can differ based on what other things are going on on the same machine
at the same time.
By using an interface and passing it to the relevant places (and only computing
the offset once), we ensure that all conversions are consistent with each other.
PiperOrigin-RevId: 205787309
|
|
|
|
|
|
|
| |
Each FileSystem instance has a digest function, but the getDigest and getHashDigest functions also accepted their own custom parameter functions. We only support 1 hash per filesystem instance, these parameters are redundant.
RELNOTES: None.
PiperOrigin-RevId: 205758571
|
|
|
|
| |
PiperOrigin-RevId: 205751282
|
|
|
|
| |
PiperOrigin-RevId: 205729963
|
|
|
|
|
|
|
| |
in a very specific window of time inbetween enqueueing one top-level node for evaluation and checking if another top-level node is done. See the added unit test for details.
RELNOTES: None
PiperOrigin-RevId: 205718683
|