| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
uid and gid of -1 (set when not linux) can not really be used anywhere.
Closes #5165.
PiperOrigin-RevId: 196974660
|
|
|
|
|
|
|
|
|
| |
This constructor was creating an Exception with a null message leading to possible
NullPointerExceptions in a few places in our codebase. The call sites have
been replaced with calls to AbruptException(String message, ExitCode exitCode) with
a meaningful message.
PiperOrigin-RevId: 196973540
|
|
|
|
|
|
|
|
|
|
| |
These were previously ignoring the inhertied environment, i.e.,
--action_env=PATH did _not_ result in the PATH variable being forwarded from
the client environment.
Fixes #5142.
PiperOrigin-RevId: 196966822
|
|
|
|
|
|
|
| |
Nobody reads the documentation, apparently. It also clearly states that
getCommonCommandOptions should be used to add options to all commands.
PiperOrigin-RevId: 196965665
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196953169
|
|
|
|
|
|
|
|
| |
The difference between them is that user_link_flags will stay after we remove
legacy fields from the crosstool.
RELNOTES: None.
PiperOrigin-RevId: 196940832
|
|
|
|
|
|
|
|
|
| |
This flag assumes llvm supports an experimental 'prefetch-hints-flag' flag. The Bazel support simply plumbs the provided file through to the compiler.
The flag is independent from the other fdo_ flags, and may be applied in any combination with them.
RELNOTES: Introduce build support for providing cache prefetch hints.
PiperOrigin-RevId: 196916547
|
|
|
|
| |
PiperOrigin-RevId: 196881464
|
|
|
|
|
|
|
|
|
|
|
|
| |
The main motivation for this change is to act as a workaround for #4751. Additionally,
this reduces the number of stat() system calls significantly e.g. by 50% when building Bazel
(600K vs 1.2M).
cc: @werkt @ola-rozenfeld
Closes #5204.
PiperOrigin-RevId: 196878093
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196870840
|
|
|
|
|
|
|
|
|
|
| |
Also allow overrides for SkyQuery's
getBuildFileTargetsForPackageKeysAndProcessViaCallback.
Lastly, some cleanup in ParallelSkyQueryUtils.
RELNOTES: SkyQuery's rbuildfiles now returns targets corresponding to broken packages.
PiperOrigin-RevId: 196868692
|
|
|
|
|
|
|
|
| |
Since the glob() function now returns a standard list, some code can be
simplified.
RELNOTES: None.
PiperOrigin-RevId: 196867957
|
|
|
|
|
|
|
| |
checking direct dependencies.
RELNOTES: None.
PiperOrigin-RevId: 196860008
|
|
|
|
|
|
|
|
| |
be filtered by spawn inputs downstream.
Documents why the manifest is passed to the RunfilesSupplierImpl constructor.
PiperOrigin-RevId: 196858753
|
|
|
|
|
|
| |
RELNOTES:
Flag `--incompatible_disable_glob_tracking` is removed.
PiperOrigin-RevId: 196852718
|
|
|
|
|
|
|
| |
This enables users of config_feature_flags to specify the flags used by the transitive closure of a particular target in the transitive_configs attribute of all targets. It also adds a flag - --enforce_transitive_configs_for_config_feature_flag - which enforces this specification and uses it to trim the set of flags available to that target.
RELNOTES: None.
PiperOrigin-RevId: 196846092
|
|
|
|
|
|
|
| |
channel used to connect with BES.
RELNOTES: none.
PiperOrigin-RevId: 196845127
|
|
|
|
| |
PiperOrigin-RevId: 196840344
|
|
|
|
|
|
| |
out of CppConfiguration.
PiperOrigin-RevId: 196838680
|
|
|
|
|
|
|
|
|
| |
This way the documentation logs them correctly as named "bazel," and describes the correct behavior.
Needed for #4502.
RELNOTES: None.
PiperOrigin-RevId: 196837021
|
|
|
|
|
|
|
|
| |
Fixes #5047
Closes #5209.
PiperOrigin-RevId: 196832678
|
|
|
|
|
|
|
|
|
|
|
| |
...by using the ShellEscaper rather than the ad-hoc "escaping"
in LocationExpander.
Fixes #5190. At least to the extend that a context-independent
quoting can work.
Change-Id: I858662861a2504139c19d773690aef2befc23948
PiperOrigin-RevId: 196832574
|
|
|
|
|
|
| |
TestsInSuiteValue serializable.
PiperOrigin-RevId: 196831698
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196825564
|
|
|
|
|
| |
RELNOTES: none
PiperOrigin-RevId: 196824775
|
|
|
|
|
|
|
|
|
|
| |
whether FDO optimization is used (--fdo_optimize or --fdo_profile)
As part of the work of removing usage of c++ toolchain from CppConfiguration, CppConfiguration#isLLVMCompiler method needs to be removed.
Currently, CppConfiguration#shouldIncludeZipperInToolchain (former CppConfiguration#isLLVMOptimizedFdo) method uses the CppConfiguration#isLLVMCompiler method to determine whether the compiler is LLVM and conditionally includes the zipper if the compiler is LLVM and FDO optimization is in place.
Instead of rerouting the information on the compiler and FDO profile through FeatureFlagInfo, we make the inclusion of the zipper executable depend only on usage of FDO optimization.
PiperOrigin-RevId: 196819907
|
|
|
|
|
|
|
|
| |
This change makes the field match the semantics of the legacy mechanism that
is not open source. This is intended for migration only and the field should
not be used otherwise (that is why the field is deprecated).
PiperOrigin-RevId: 196817282
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Print the stacktrace of unexpected I/O errors in
StandaloneTestStrategy, to ease diagnosing the
root cause of the exception.
See https://github.com/bazelbuild/bazel/issues/4924
Without the stacktrace, all we see in BuildKite
is, for example:
```
ERROR: Caught I/O exception: java.io.IOException: C:/users/b/_bazel_b/bnp8s_vg/execroot/io_bazel/_tmp/b6bda2f0385d1152d3a7f550c6cc1938/_bazel_b/install/23a47abea50baae4d7e032437c1cecc9/_embedded_binaries/embedded_tools/jdk/bin/java.exe (Permission denied)
ERROR: C:/build/buildkite-worker-windows-java8-lfl8-1/bazel/google-bazel-presubmit/src/test/py/bazel/BUILD:71:1: Couldn't build file src/test/py/bazel/bazel_windows_test/test.log: failed: unexpected I/O exception: C:/users/b/_bazel_b/bnp8s_vg/execroot/io_bazel/_tmp/b6bda2f0385d1152d3a7f550c6cc1938/_bazel_b/install/23a47abea50baae4d7e032437c1cecc9/_embedded_binaries/embedded_tools/jdk/bin/java.exe (Permission denied)
```
The above log contains no information on what
exactly tried accessing java.exe and how, and why
it failed. With a stacktrace I'm hoping to shed
light on the culprit.
Change-Id: I4f3851cd1bc1b2b348217de5b41069591a8f4446
Closes #5207.
Change-Id: I792f4a36c1e31ca6332db2dc2d37bd8e597050b3
PiperOrigin-RevId: 196815410
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This cl enabled skylark rules to create build variables used for C++ compile
actions (in a limited form, e.g. build variables for modules are not exposed
etc).
Working towards #4571.
This is an encore of https://github.com/bazelbuild/bazel/commit/c4fc6201fdfa71993e2e9e295a946150e6990c75 after fixing memory regression
(CompileBuildVariables.getSafePathStrings fixed to return ImmutableList, which
has smaller memory footprint).
RELNOTES: None
PiperOrigin-RevId: 196797581
|
|
|
|
|
|
|
| |
Since it's not a provider, it doesn't need the Info suffix anymore.
RELNOTES:none
PiperOrigin-RevId: 196793557
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This overrides --bazelrc and --[no]master_bazelrc regardless of order. Like --bazelrc and --[no]master_bazelrc, it cannot be mentioned in an rc file, this would be a contradiction. This flag is useful for testing, and for having a version-agnostic way to turn off all rc files, such as in the canonical command line reporting. Now that blazerc and bazelrc are separate, this is necessary.
If explicit values for --bazelrc or --master_bazelrc are provided which are now ignored, Bazel will warn the user.
#4502
Alternatives considered - We could avoid this flag but would need to have some well-documented, reusable list of the startup flags that effectively come to the same effect. This would be necessary in our integration tests and in the CommandLineEvent and other places where rc files need to be completely disabled for correctness. We decided that this startup option was more straightforward and usable for both users and Bazel devs: it shouldn't be used when more fine-grained control is needed, but provides warnings if users are likely to be confused by the outcome.
RELNOTES: None.
PiperOrigin-RevId: 196750704
|
|
|
|
|
|
|
|
|
| |
Extracts a class, InputArtifactData to hold the input data instead of using a raw map. This provides the flexibility needed to support both ActionFS and existing code so ActionFS does not need to rekey the input data.
Uses the smaller, getDeclaredIncludeSrcs instead of getAllowedDerivedInputs
when possible for staging optional inputs in ActionFS.
PiperOrigin-RevId: 196736703
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196726540
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196722758
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196722413
|
|
|
|
| |
PiperOrigin-RevId: 196719433
|
|
|
|
|
|
| |
Also pass the GraphInconsistencyReciever into SkyframeExecutor as a parameter.
PiperOrigin-RevId: 196716642
|
|
|
|
|
| |
RELNOTES: Remove vestigial java_plugin.data attribute
PiperOrigin-RevId: 196707434
|
|
|
|
|
|
| |
CommonCommandOptions to better facilitate certain kinds of benchmarking.
PiperOrigin-RevId: 196695342
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a command-line option which can be used to force Bazel to split up
very large events, e.g., events with hundreds of thousands of entries. This is
rare, but happens occasionally.
It would be better to control the maximum event size directly, but that is
significantly more difficult to do here.
PiperOrigin-RevId: 196690600
|
|
|
|
|
|
| |
with a package whitelist
PiperOrigin-RevId: 196688645
|
|
|
|
|
|
|
|
| |
it off after a release.
Discarding actions hasn't been shown to have a significant positive effect on heap memory usage, after careful research by mschaller@. It's holding back other projects (threading Fileset metadata through) and adding complexity, so it's time to kill it. Out of an abundance of caution, I'll keep actions in memory via a flag flip, then, if it sticks, I'll change the default, and then I'll unwire everything.
PiperOrigin-RevId: 196682768
|
|
|
|
|
|
| |
overridden by classes which would?ve otherwise thrown an NPE.
PiperOrigin-RevId: 196680390
|
|
|
|
|
|
|
|
| |
This class is not necessary anymore. We can use CcLinkParamsStoreImpl directly
which has been renamed to CcLinkParamsStore.
RELNOTES:none
PiperOrigin-RevId: 196656488
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Partly addresses #374.
Specifically allow !%^`"'&;<>?[]{|} in target and package names. It's actually
simpler now to declare what we don't allow. In target names:
0-31 (control characters)
58 ':' (colon)
92 '\' (backslash)
127 (delete)
In package names:
0-31 (control characters)
58 ':' (colon)
64 '@' (at-sign)
92 '\' (backslash)
127 (delete)
- '\' is a path segment separator on Windows, and allowing it can lead to
silent output file conflicts and - therefore - data corruption. We may be
able to allow it in the future, but I didn't want to make that call.
- ':' is a special character that Bazel interprets as the package name / target
name separator.
- '@' in package names can probably be allowed; at the beginning of a label it
indicates a workspace name, but not within a segment. We actually have some
tests that disallow it specifically, but those can probably just be deleted;
however, it does require a bit of investigation, so I decided to delay that
change.
It is possible that we don't correctly escape filenames in all cases. Also note
that the shell may require escaping for specific characters, and that Bazel
treats a single '*' (star) target name specially when given on the command
line.
RELNOTES: Bazel now allows almost all 7-bit ASCII characters in labels.
PiperOrigin-RevId: 196650651
|
|
|
|
|
|
|
| |
This is in preparation for fixing env handling as well as cache key (to use
env) computations in subclasses of SpawnAction.
PiperOrigin-RevId: 196626495
|
|
|
|
|
|
| |
(3-8x faster than StringCodec).
PiperOrigin-RevId: 196615858
|
|
|
|
|
|
|
|
|
| |
Use update() and other methods which properly respect the trimming
transition over those which don't. Avoid using the target configuration
if the configuration actually used by a target is available.
RELNOTES: None.
PiperOrigin-RevId: 196588405
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Caused a memory regression
*** Original change description ***
Expose cc_common.create_compile_build_variables
This cl enabled skylark rules to create build variables used for C++ compile
actions (in a limited form, e.g. build variables for modules are not exposed
etc).
Working towards #4571.
RELNOTES: None
PiperOrigin-RevId: 196566686
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196561473
|