| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 201544076
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
toolchain API
This is a part of the []
This is an encore of unknown commit which includes fixes for:
* //miles ([]
* clif tests ([]
* exoblaze ([]
RELNOTES: None.
PiperOrigin-RevId: 201541210
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- remove blaze-side thread creation/destruction hooks
- remove ListThreads, ThreadStarted, ThreadEnded events from protocol
- don't track unpaused, not stepping threads in ThreadHandler
The threading model didn't provide useful information -- in practice,
users never want to list currently-running threads, and the debug
client doesn't need to list currently-paused threads, since it receives
each ThreadPaused and ThreadContinued event, so its model is always up to date.
Not tracking thread creation/destruction greatly simplifies the API, and
reduces the blaze-side hooks -- it was also only semi-implemented, as
plenty (/most?) skylark threads were never registered.
The biggest cost to removing this is lack of nice thread names. In
practice, I think the benefits greatly outweigh this cost. If it ever
becomes a problem, there are other lighter-weight ways of communicating
thread names.
TAG_CHANGE_OK=This proto has never yet been used
TYPE_CHANGE_OK=This proto has never yet been used
PiperOrigin-RevId: 201532462
|
|
|
|
|
|
| |
When there are no uploaders in BuildEventArtifactUploaderMap then we should use the BuildEventArtifactUploader.LOCAL_FILES_UPLOADER as a fallback. Added some unit tests as regression tests for the underlying issue.
PiperOrigin-RevId: 201529578
|
|
|
|
|
|
|
|
|
|
| |
We are seeing quite a lot of test timeouts of very long
running tests. This significantly adds to presubmit times
as we retry failing tests up to 3 times. This change increases
the test timeout from 15 to 20 minutes.
RELNOTES: None
PiperOrigin-RevId: 201514589
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Enable on Windows:
//src/test/shell/bazel:bazel_experimental_ui_test
//src/test/shell/bazel:bazel_random_characters_test
Also document the (surprising) semantics of
http_file() on Windows.
See https://github.com/bazelbuild/bazel/issues/4292
Change-Id: Id636b9cf03cc8d12449eed2be493dcfc176146c7
Closes #5409.
Change-Id: I15677548f2f3fd6b4822e8e6af4b78d8517f953a
PiperOrigin-RevId: 201512812
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The only non-deprecated way to declare new files in Skylark is using ctx.actions
(https://docs.bazel.build/versions/master/skylark/lib/actions.html). And these
files are created in binfiles (there is one way to generate a file in Skylark in
genfiles: a rule can be tagget with 'output_to_genfiles = True'
attribute, but that forces all files of all actions in the rule to be generated
in genfiles. And this attribtue is deprecated).
Similarly, https://github.com/bazelbuild/bazel/commit/6c2f499b21e36c59d7da5e8b2e6c9b1804a36c64 added binfiles for <> includes when using
cc_library.includes attribute.
RELNOTES: None.
PiperOrigin-RevId: 201504199
|
|
|
|
|
|
|
|
|
| |
CrosstoolInfo carries the necessary information from the CROSSTOOL text proto. Later on, instead from the CROSSTOOL file and the corresponding CToolchain, CrosstoolInfo will be derived from a skylark_crosstool rule implemented in Skylark. Therefore CToolchain involvement in CppConfiguration and CcToolchain creation needs to be eliminated.
Work towards issue #5380
RELNOTES: None.
PiperOrigin-RevId: 201491207
|
|
|
|
|
|
| |
RELNOTES[NEW]: Allow @ in package names.
PiperOrigin-RevId: 201487916
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks Javascript compilation.
There's currently no way to iterate over a depset of Artifacts and deduplicate by identical paths in Skylark. This means that actions that want to do something once per Artifact in a depset (add a flag to the command line with the path of the Artifact for instance) will have duplicate entries if there are multiple Artifacts with the same path.
This is not a true automated rollback, since I tried to make this as minimal as possible, to avoid merge conflicts and keep some of the benefits of the rolled back CL. In particular, the tests that were changed in the original CL to give artifacts their correct owners did not need to be changed back, since the owners are still correct.
Moreover, this effectively contains rollbacks of unknown commit and https://github.com/bazelbuild/bazel/commit/39d6f89644107a8f7c080c4f4aec8527c1a73954, but keeps test coverage from those CLs as well. Comments added to CL thread where not a clean rollback (there are plenty of files not changed at all: ActionArtifactCycleReporter is the main wart, since it can still handle SkyKeys with Artifact as the argument, but Artifact is no longer the argument to any SkyKey).
RELNOTES: None
*** Original change description ***
Make Artifact#equals take the owner into account for derived artifacts.
Derived artifacts' owners are important because they are used to determine the artifact's generating action. Source artifacts' owners are not used in this way, so I left them alone.
This allows us to get rid of most uses of ArtifactSkyKey. We may be able to delete it entirely in a follow-up.
PiperOrigin-RevId: 201464780
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This corresponds to the os version in the clang target triple, though clang
does have corresponding os_version_min flags for Apple platforms.
Currently, Bazel has --XX_minimum_os flags for XX values corresponding to Apple
platforms.
This flag is the generic version of that (and can and will be set after the
Apple split transition, and will eventually be set in the Android split as
well) to support various Android API level improvements for native code.
PiperOrigin-RevId: 201453961
|
|
|
|
|
|
|
|
| |
https://github.com/bazelbuild/bazel/commit/2a9e125499c8fadb731420a1a9dfe7adc8f08792
Bazel now supports @bazel_tools//tools/jdk:current_host_java_runtime.
PiperOrigin-RevId: 201441513
|
|
|
|
|
|
|
| |
tests.
RELNOTES: None.
PiperOrigin-RevId: 201432990
|
|
|
|
|
|
|
|
|
|
| |
Label.parseAbsoluteUnchecked. Label already interns all labels, so the additional interning being done in every ConfiguredRuleClass.Builder was pointless memory and CPU.
Keeping the RuleDefinitionEnvironment around makes things harder to serialize.
Done using IntelliJ structural replace and then a super-painful adding of imports to every file that didn't compile (have to learn a better way to do this).
PiperOrigin-RevId: 201427027
|
|
|
|
|
|
|
|
|
|
|
| |
The master bazelrc is now defined by preprocessor macro at (Bazel's) compile time. The default is still /etc/bazel.bazelrc for most platforms, but windows now has a %ProgramData% relative default value as well. Users wishing to change this default when building Bazel for a new platform should edit BAZEL_SYSTEM_BAZELRC_PATH in src/main/cpp/BUILD.
Part of https://github.com/bazelbuild/bazel/issues/4502, relevant to the duplicate issue #4809.
TESTED: default settings were tested manually, since they cannot be tested in a sandbox
RELNOTES: Windows default system bazelrc is read from the user's ProgramData if present.
PiperOrigin-RevId: 201423446
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The corresponding flags have been flipped and there should be no code in the depot that violates these rules.
* Make it completely illegal for proto_library to appear in any Java/Android rule
* Delete code that uses the old migration flags.
* Delete tests that check that Java/Android rules *can* depend on proto_library rules when certain flags are off.
* Update tests (the error messages are now slightly different)
RELNOTES: None
PiperOrigin-RevId: 201384236
|
|
|
|
|
|
|
| |
It looks like this test was intended to add coverage for these option-like values that we accept as commands, but it did not actually test this.
RELNOTES: None.
PiperOrigin-RevId: 201380534
|
|
|
|
|
|
|
|
|
|
| |
useEnvironment
Unfortunately this doesn't work for all callers, namely NativeInfo objects, as they may have structField callables invoked from contexts that have no environment available.
RELNOTES[INC]: Skylark structs (using struct()) may no longer have to_json and to_proto overridden.
PiperOrigin-RevId: 201376969
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 201367075
|
|
|
|
|
| |
RELNOTES=None
PiperOrigin-RevId: 201365986
|
|
|
|
|
|
| |
The general handling should be fine for this.
PiperOrigin-RevId: 201352916
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now we have:
bool AsAbsoluteWindowsPath(const std::wstring& path, std::wstring* result, std::string* error);
This change helps making the C++ native launcher work with UTF-16.
See https://github.com/bazelbuild/bazel/issues/4473
Closes #5406.
Change-Id: I7eaf55f9fe5a4d41e3dd09edc2a21e9b3cc9277c
PiperOrigin-RevId: 201352866
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix breakage introduced in #5385 due to incorrect use of `std::move` on local temporary variable after function returns (found by Clang on Windows).
Since `OneYearDelay` function will return the same value and `kOneYear` is only used in one place, remove unused `OneYearDelay` function and move `kOneYear` to `GetFuture` as a `constexpr` constant.
Drive-by improvement: remove some const reference in function signatures. `FILETIME` is a plain C struct with size of 64-bit, so it is trivially-copyable and can easily fit into a 64-bit register. It is more efficient to pass `FILETIME` by value (smaller code size).
/cc @laszlocsomor
Closes #5434.
Change-Id: I136fe4a8ce1b274a80e3206b62e6087dd0f8f5eb
PiperOrigin-RevId: 201343053
|
|
|
|
|
|
|
|
| |
Based on work of Sun Zhiyi <zhiyisun@gmail.com>.
Closes #5360.
PiperOrigin-RevId: 201339882
|
|
|
|
|
|
|
|
|
|
| |
This gives us more coverage for command startup, especially wrt. modules. We
have some modules that are known to be slow, and this immediately shows any
such issues. I've already tracked down two issues with this change, and it
would also have shown a recently fixed regression.
RELNOTES: None.
PiperOrigin-RevId: 201337059
|
|
|
|
|
|
|
| |
I will put cc_import.bzl in Bazel in a follow up CL.
RELNOTES:none
PiperOrigin-RevId: 201332133
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a regression test for the size of the Bazel
binary, by asserting the number of embedded tools.
Sudden, unexpectedly large changes in the number
of embedded tools can be indicative of an
unintentional addition/removal of embedded tools
and unexpected growth/shrinkage of the Bazel
binary.
Fixes https://github.com/bazelbuild/bazel/issues/5378
Change-Id: I7880f4544c560eb627ef5fb8a55ff1b377ec156b
Closes #5399.
Change-Id: I10c8cdcd5e675cbc0bac43003741a8af27248992
PiperOrigin-RevId: 201318396
|
|
|
|
|
|
| |
RELNOTES[INC]: The $(JAVA_TRANSLATIONS) Make variable is not supported anymore.
PiperOrigin-RevId: 201278971
|
|
|
|
|
|
|
| |
statistics tests, and increase granularity of the waits.
RELNOTES: None.
PiperOrigin-RevId: 201254824
|
|
|
|
|
|
|
| |
To start we add just a single metric, the number of actions constructed in the current build.
RELNOTES: None
PiperOrigin-RevId: 201248490
|
|
|
|
|
|
| |
Reviewed at: https://github.com/bazelbuild/bazel/pull/5425
PiperOrigin-RevId: 201241451
|
|
|
|
|
|
|
| |
ExecutionPlatformConstraintsAllowed set to PER_TARGET and also have an
alread-existing exec_compatible_with attribute.
PiperOrigin-RevId: 201238805
|
|
|
|
|
|
|
|
| |
LinkedHashMultimap as well. Let ImmutableSetRuntimeCodec handle some other sets. We squash these extra types into the same codec because we want them to become immutable anyway, and they can be dealt with easily by the existing codecs.
Add some more non-Bazel classes that should be DynamicCodec'ed. Also, when a disallowed value is serialized, throw a SerializationException instead of crashing. This makes it easier to recover in tests.
PiperOrigin-RevId: 201237631
|
|
|
|
| |
PiperOrigin-RevId: 201228699
|
|
|
|
|
|
|
|
|
| |
When set, any action parameter files are written locally upon action execution, even when the action is executed remotely. This is mainly useful for debugging.
This option is effectively implied by --subcommands and --verbose_failures, as it is likely that the user is debugging actions when using these flags.
RELNOTES: Add --materialize_param_files flag to write parameter files even when actions are executed remotely.
PiperOrigin-RevId: 201225566
|
|
|
|
|
|
| |
but the "exec_compatible_with" attribute is present.
PiperOrigin-RevId: 201219412
|
|
|
|
|
|
| |
default.
PiperOrigin-RevId: 201218341
|
|
|
|
|
|
|
|
|
|
| |
Turns out the event handler (BlazeCommandEventHandler) prints almost all
event types, and I don't believe there's a way to tune it.
We certainly don't want these messages printed to the console unless
we're debugging the debugger, so turn them off by default.
PiperOrigin-RevId: 201211355
|
|
|
|
|
|
| |
and have DynamicCodec add to it. It's very useful to have this trail available when debugging or whitelisting.
PiperOrigin-RevId: 201205884
|
|
|
|
| |
PiperOrigin-RevId: 201205388
|
|
|
|
| |
PiperOrigin-RevId: 201203706
|
|
|
|
|
|
| |
Get rid of a useless tag, because the Function being tagged is a concrete class, so won't be serializable. Will deal with it in a follow-up. Implement equality for BazelInfo.
PiperOrigin-RevId: 201199255
|
|
|
|
|
|
|
| |
checked for restricted_to and compatible_with constraints, because they are part
of the execution, not providing new dependencies.
PiperOrigin-RevId: 201196891
|
|
|
|
|
|
| |
lambdas as Serializable.
PiperOrigin-RevId: 201191461
|
|
|
|
|
|
| |
expect equality, not because there's no implementation.
PiperOrigin-RevId: 201191262
|
|
|
|
|
|
|
|
|
|
|
| |
For paths passed to Bazel on the command line, the shell expands these variables, but for hardcoded defaults, we must make the library call ourselves.
We do not add similar support in Posix systems, where it is less common to rely on standard path-related variables.
Prerequisit for issue #4502.
RELNOTES: None.
PiperOrigin-RevId: 201183214
|
|
|
|
|
|
|
|
|
| |
Rolls forward https://github.com/bazelbuild/bazel/commit/c720152ec1936a537c9519d522d3cb41d19cff77.
This CL includes testing to make sure that linker parameters coming from every possible provider in Python rules is propagated.
RELNOTES:none
PiperOrigin-RevId: 201160720
|
|
|
|
|
|
|
|
|
|
|
| |
CcToolchainFeatures.ActionConfig that are needed for FeatureConfiguration creation
In the future CcToolchainFeatures will not be created from a CToolchain but from a CrosstoolInfo provider that will encapsule all relevant information from the CROSSTOOL. Feature and ActionConfig classes need to carry all the information that is currently obtained from CToolchain.
Work towards issue #5380
RELNOTES: None.
PiperOrigin-RevId: 201147336
|
|
|
|
| |
PiperOrigin-RevId: 201144030
|