| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change fixes links among Bazel docs to use relative paths links instead of
absolute path (either full URL or absolute from site root). This way, versioned
documentation will link to other pages within the same versioned directory
rather than to the site root, which will point to the latest version of the
page from HEAD.
Future improvements may include adding a lint tool to check links in
documentation to ensure that the correct convention is followed such that all
links to pages within a version of the docs will point to pages within the same
version.
RELNOTES: None
PiperOrigin-RevId: 160117865
|
|
|
|
|
|
|
|
|
|
| |
Replace all previous uses of Metadata with FileArtifactValue (or a simple inner
class in the case of ActionCacheChecker.CONSTANT_METADATA).
Care was taken to make the equals method obey the equals contract, even in the
presence of multiple implementations.
PiperOrigin-RevId: 160115080
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
The depot is fixed
RELNOTES: None.
PiperOrigin-RevId: 160115070
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The invocation policy must be the last step in determining the active options
for the current command. Take precautions to prevent accidental options editing
of options after the policy is applied by declaring the options as an
OptionsProvider (interface has no mutating methods); technically, this could
be circumvented by casting to OptionsParser, but it's at least safer than
before.
As part of this, I'm moving the BlazeCommand.editOptions call to before the
invocation policy, and also making minor changes to the CommandEnvironment.
Commands that expect to have the last word on options could therefore see
options changes after this commit.
There are three commands that override editOptions:
1. TestCommand
Current behavior: if test_output=streamed is set, also sets
--test_sharding_strategy=disabled and --test_strategy=exclusive.
Overriding --test_sharding_strategy is not a concern; in fact, maybe we
shouldn't be setting that in the first place, since it can cause tests to
timeout (timeout is usually applied per shard, so a 10-way sharded test will
very likely timeout). If you override the test_strategy to local or standalone,
then you may get interleaved stdout / stderr output from tests that run in
parallel - a bit surprising, but no showstopper. If you override the
test_strategy to remote, you won't get streamed output, because no remote
strategy currently supports that. You may get interleaved output, if multiple
tests finish very close to each other.
There are no correctness concerns, it's just a slightly worse user experience.
The code is safe in all cases, AFAICT.
We could consider changing streamed to not require serialized execution, and
instead use something like a lock - the first test to produce output gets
streamed, and all others get delayed until the lock is released, but could
still execute concurrently. However, it's unlikely that that's the desired
behavior for most users.
2. CoverageCommand
Current behavior: sets --collect_code_coverage, increases default
--test_timeout.
bazel coverage --nocollect_code_coverage is effectively bazel test. You can
actually now run bazel test --collect_code_coverage --test_timeout and it will
behave exactly the same way as bazel coverage. It's mostly a convenience thing.
Note that CoverageCommand inherits TestCommand, so the case above also applies.
3. MobileInstallCommand
Current behavior: sets --aspects, and --output_groups.
If you override the aspect or output_groups, then the command will fail or run
an old binary from a previous build. Not what you'd expect, but no correctness
concerns.
Summary:
IMO, the impact on the existing commands is minor. The advantage of this change
is that it's more secure, and gives us an escape hatch if a command ever
overrides options in a way that turns out to be wrong or broken in some way.
RELNOTES: None.
PiperOrigin-RevId: 160114902
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 160113701
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 160111047
|
|
|
|
|
|
|
| |
This is part of refactoring / simplifying the BlazeCommandDispatcher.
RELNOTES: None.
PiperOrigin-RevId: 160110866
|
|
|
|
|
|
|
|
|
|
|
| |
Don't add $TMP as cxx_builtin_include_directory, instead use
$TMP/nvcc_inter_files_tmp_dir
as tmp direcotry for nvcc.exe
Fixed https://github.com/bazelbuild/bazel/issues/3202
RELNOTES: None.
PiperOrigin-RevId: 160109290
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 160103230
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 160013691
|
|
|
|
|
|
|
|
| |
This rule will be used by the Skylark bundling rules for product types that use
stub binaries copied out of the SDK instead of user-built binaries.
RELNOTES: None.
PiperOrigin-RevId: 159998782
|
|
|
|
|
|
|
|
|
| |
DataBinding.isEnabled has outdated logic that enabled data binding
for a rule even if only its deps use data binding. It's now required
for all rules up the dependency chain to explictily enable data binding.
RELNOTES: None.
PiperOrigin-RevId: 159998478
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 159990790
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
While the build event protocol is mainly targeted for commands that actually
build, a minimal stream is generated for all commands. For commands like "query",
it is desirable that the stream contains the full output of the command.
To achieve this, introduce an optional second event indicating the end of the stream;
note that the NoBuildEvent has to come before the payload answer as the
experimental UI uses this event to determine the transition to the payload answer
that is passed through unchanged.
RELNOTES: None.
PiperOrigin-RevId: 159977543
|
|
|
|
|
|
|
| |
Now the MSVC CROSSTOOL can truly be wrapper-free! \o/
RELNOTES: None.
PiperOrigin-RevId: 159962674
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 159954456
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 159948522
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 159945909
|
|
|
|
|
|
|
| |
RELNOTES:
When using the dictionary literal syntax, it is now an error to have
duplicated keys (e.g. {'ab': 3, 'ab': 5}).
PiperOrigin-RevId: 159945431
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 159945244
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As described in the commit message for 5596d3b, the new docs.bazel.build
site will have one directory per released version and a master directory
for the latest documentation at HEAD. This change reworks the
jekyll-tree script to construct a final Jekyll tree containing the
documentation at HEAD with documentation under /versions/master and
redirect pages at the site root for each documentation page.
TESTED=scripts/serve-docs.sh
RELNOTES: None
PiperOrigin-RevId: 159920553
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 159920547
|
|
|
|
|
|
|
|
|
|
|
| |
--minimal-main-dex.
This matches dx's behavior.
Previously, DexFileMerger would override --multidex=off with --multidex=minimal if either --main-dex-list or --minimal-main-dex were passed.
RELNOTES: Incremental dexing errors on combination of --multidex=off and either --main-dex-list or --minimal-main-dex.
PiperOrigin-RevId: 159858242
|
|
|
|
|
|
|
| |
Refactor CSS structure to only contain shared and docs CSS
RELNOTES: None
PiperOrigin-RevId: 159837919
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 159837451
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reading project files happens very early in the command initialization, and
my plan is to change it so CommandEnvironment is created after we did that; the
reason for that is that it makes the options final upon CommandEnvironment
creation, which in turn allows simplifying the BlazeModule API.
Since we no longer need a CommandEnvironment, or a BlazeWorkspace, or a
BlazeRuntime, make the ProjectFileSupportTest a unit test.
PiperOrigin-RevId: 159830404
|
|
|
|
|
|
| |
To unblock, regression tests for the breakage will come in a follow-up CL.
PiperOrigin-RevId: 159829368
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
libraries
Before, Bazel would always use link_dynamic_library.sh, even though the
toolchain doesn't support interface libraries and therefore its arguments would
always be "no ignored ignored ignored". And since link_dynamic_library.sh is a
shell script, it unnecessarily complicates the Windows toolchain.
This cl also removes the script as a dependency of the toolchain (so it won't be set as an
input of c++ actions).
RELNOTES: None.
PiperOrigin-RevId: 159827038
|
|
|
|
|
|
|
|
| |
Without this change you can't work on any code that's not in src/{main,test} in IntelliJ, e.g. tools like the remote_worker.
Closes #3224.
PiperOrigin-RevId: 159812248
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 159811352
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adjust the interface of Metadata to match the interface of FileArtifactValue.
These classes are almost the same, but not quite, so we currently have to
create and return new objects whenever the MetadataHandler is called; by making
the interfaces identical, we can just return a FileArtifactValue instead (in a
future change).
This is in preparation for merging the ActionInputFileCache and MetadataHandler
interfaces.
PiperOrigin-RevId: 159802834
|
|
|
|
|
|
|
|
|
|
|
|
| |
Split original cc_configure.bzl into 4 different files:
lib_cc_configure.bzl: base library for C++ toolchain configuration
unix_cc_configure.bzl: For Unix platforms
osx_cc_configure.bzl: For macOS
windows_cc_configure.bzl: For Windows
Change-Id: I76fa44294c6ca4304f0a94f3a1c57d6e76141667
PiperOrigin-RevId: 159801973
|
|
|
|
|
|
|
|
| |
LIPO to ThinLTO mapping was added in https://github.com/bazelbuild/bazel/commit/c61f86f56b86e442369725ad79299ccc5519b000. This fixes a bug
to ignore lipo context when compiler is LLVM.
RELNOTES:None
PiperOrigin-RevId: 159776286
|
|
|
|
|
|
|
|
|
|
| |
Subinclude targets' packages are the package containing the load
statement. Subinclude targets' labels are the bzl files they refer to.
The latter has the appropriate package to display for --output=package.
Fixes #3122.
PiperOrigin-RevId: 159750840
|
|
|
|
|
|
|
|
|
|
| |
Regression test added for java_library. Unfortunately, due to the nature of the skylark provider, similar regression tests should probably be added to every Java providing rule.
In the long term, the better solution is to expose JavaProvider directly and remove JavaSkylarkApiProvider.
Fixes #3238
PiperOrigin-RevId: 159748655
|
|
|
|
|
|
|
| |
the same KeyExtractor used that the Uniquifier implementation uses. This fixes a hypothetical issue where we were previously relying on Target#equals/hashCode.
RELNOTES: None
PiperOrigin-RevId: 159741545
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 159740106
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Tickled a hidden bug in Blaze query.
RELNOTES: None
PiperOrigin-RevId: 159718294
|
|
|
|
|
|
|
| |
It's partially redundant with the 'Backward-incompatible changes' section.
RELNOTES: None.
PiperOrigin-RevId: 159705909
|
|
|
|
|
|
|
|
|
| |
The test didn't check for rules from the //external virtual package, that
caused Bazel to be broken at some point:
https://stackoverflow.com/questions/44398080/cc-grpc-library-for-bazel-0-5-1-fails-due-to-mandatory-files-to-run-provider-m/44671719
The original problem has been fixed in https://github.com/bazelbuild/bazel/commit/211a3ba2303c1df97383c810e17a031106c7271b.
PiperOrigin-RevId: 159703445
|
|
|
|
|
|
|
|
| |
Fixes #3055.
RELNOTES: `bazel info execution_root` returns the corrrect directory name
for the execution root.
PiperOrigin-RevId: 159701171
|
|
|
|
|
|
|
|
|
|
| |
This contains no real functional changes apart from slightly tweaked
log messages.
RELNOTES: None.
Change-Id: I84fb5cf7b1e31a5ec693bbf39e22573e1750ff04
PiperOrigin-RevId: 159700159
|
|
|
|
|
|
|
| |
Fixes #3189.
Fixes #2823.
PiperOrigin-RevId: 159699146
|
|
|
|
|
|
|
|
|
|
| |
Please refer to patch set 9 and its CI run for usage and test
results. In practice, users should create their own java_toolchain
rule in their project's BUILD file, and set the two attributes like
above instead of modifying //tools/jdk/BUILD.
Change-Id: Ic880f243086b00a58d453a8139ba4c957fe54bc7
PiperOrigin-RevId: 159694649
|
|
|
|
|
|
| |
This makes the URIs absolute, which makes them easier to process server-side.
PiperOrigin-RevId: 159694335
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR #2679 allowed parentheses ("(" and ")") in globs, but other bracket
style characters were not allowed at the time. It was decided in
issues #2583 and #3048 that other bracket characters should be allowed
as well, since there is no apparent historical reason for disallowing
them in the first place.
Closes #3166.
PiperOrigin-RevId: 159691498
|
|
|
|
|
|
|
|
| |
This will allow us to add new and optional flags like selecting a strategy used to spawn / wait for the child process.
No one except Bazel should be calling "process-wrapper" and I couldn't find any references, so this breaking change should be fine.
PiperOrigin-RevId: 159685867
|
|
|
|
|
|
|
|
| |
The "is is line with" should read "is in line with". While there,
also fix the formating of that comment.
RELNOTES: None.
PiperOrigin-RevId: 159683437
|
|
|
|
|
|
| |
used wait_for_completion field.
Change-Id: I83a16d22f49c44989ec7030b5d2c9c9b1387e6e0
|
|
|
|
|
|
|
|
|
|
| |
This cl finishes the last bit of c++ linking actions migration to crosstool's
action_configs. From now on, the action_config { tool_path: ... } will be used,
instead of top level tool { path: ... }.
RELNOTES: Bazel now uses tools from action_configs in Crosstool by default (as
oposed to using top level tools).
PiperOrigin-RevId: 159677525
|