diff --git a/navigation.json b/navigation.json index 59780a3c..fd3c4b14 100644 --- a/navigation.json +++ b/navigation.json @@ -16,14 +16,6 @@ } ] }, - { - "version": "8.6", - "languages": [ - { - "$ref": "./navigation/8.6.en.json" - } - ] - }, { "version": "8.5", "languages": [ diff --git a/navigation/8.6.en.json b/navigation/8.6.en.json deleted file mode 100644 index f2a104b4..00000000 --- a/navigation/8.6.en.json +++ /dev/null @@ -1,278 +0,0 @@ -{ - "language": "en", - "tabs": [ - { - "tab": "About Bazel", - "groups": [ - { - "group": "Why Bazel?", - "pages": [ - "versions/8.6.0/about/intro", - "versions/8.6.0/about/why", - "versions/8.6.0/about/vision", - "versions/8.6.0/about/faq" - ] - }, - { - "group": "Build system basics", - "pages": [ - "versions/8.6.0/basics/index", - "versions/8.6.0/basics/build-systems", - "versions/8.6.0/basics/task-based-builds", - "versions/8.6.0/basics/artifact-based-builds", - "versions/8.6.0/basics/distributed-builds", - "versions/8.6.0/basics/dependencies", - "versions/8.6.0/basics/hermeticity" - ] - } - ] - }, - { - "tab": "Getting started", - "groups": [ - { - "group": "Install", - "pages": [ - "versions/8.6.0/install/index", - "versions/8.6.0/install/bazelisk", - "versions/8.6.0/install/os-x", - "versions/8.6.0/install/windows", - "versions/8.6.0/install/ubuntu", - "versions/8.6.0/install/suse", - "versions/8.6.0/install/docker-container", - "versions/8.6.0/install/compile-source", - "versions/8.6.0/install/completion", - "versions/8.6.0/install/ide" - ] - }, - { - "group": "First build tutorials", - "pages": [ - "versions/8.6.0/start/cpp", - "versions/8.6.0/start/java", - "versions/8.6.0/start/android-app", - "versions/8.6.0/start/ios-app" - ] - }, - { - "group": "Concepts", - "pages": [ - "versions/8.6.0/concepts/build-ref", - "versions/8.6.0/concepts/labels", - "versions/8.6.0/concepts/build-files", - "versions/8.6.0/concepts/dependencies", - "versions/8.6.0/concepts/visibility", - "versions/8.6.0/concepts/platforms" - ] - } - ] - }, - { - "tab": "User guide", - "groups": [ - { - "group": "Releases", - "pages": [ - "versions/8.6.0/release/index", - "versions/8.6.0/release/rolling", - "versions/8.6.0/release/backward-compatibility", - "versions/8.6.0/release/rule-compatibility" - ] - }, - { - "group": "Basics", - "pages": [ - "versions/8.6.0/build/style-guide", - "versions/8.6.0/build/share-variables", - "versions/8.6.0/community/recommended-rules", - "versions/8.6.0/run/build" - ] - }, - { - "group": "Advanced", - "pages": [ - "versions/8.6.0/configure/attributes", - "versions/8.6.0/configure/integrate-cpp", - "versions/8.6.0/configure/coverage", - "versions/8.6.0/configure/best-practices", - "versions/8.6.0/configure/windows", - "versions/8.6.0/advanced/performance/build-performance-metrics", - "versions/8.6.0/advanced/performance/build-performance-breakdown", - "versions/8.6.0/advanced/performance/json-trace-profile", - "versions/8.6.0/advanced/performance/memory", - "versions/8.6.0/advanced/performance/iteration-speed" - ] - }, - { - "group": "Remote Execution", - "pages": [ - "versions/8.6.0/remote/rbe", - "versions/8.6.0/remote/rules", - "versions/8.6.0/remote/ci", - "versions/8.6.0/remote/dynamic", - "versions/8.6.0/remote/caching", - "versions/8.6.0/remote/sandbox", - "versions/8.6.0/remote/workspace", - "versions/8.6.0/remote/cache-remote", - "versions/8.6.0/remote/cache-local", - "versions/8.6.0/remote/output-directories", - "versions/8.6.0/remote/persistent", - "versions/8.6.0/remote/multiplex", - "versions/8.6.0/remote/creating", - "versions/8.6.0/remote/bep", - "versions/8.6.0/remote/bep-examples", - "versions/8.6.0/remote/bep-glossary" - ] - }, - { - "group": "Tutorials", - "pages": [ - "versions/8.6.0/tutorials/cpp-use-cases", - "versions/8.6.0/tutorials/ccp-toolchain-config", - "versions/8.6.0/tutorials/cpp-dependency", - "versions/8.6.0/tutorials/cpp-labels" - ] - }, - { - "group": "Migrate", - "pages": [ - "versions/8.6.0/migrate/index", - "versions/8.6.0/migrate/maven", - "versions/8.6.0/migrate/xcode" - ] - } - ] - }, - { - "tab": "Reference", - "groups": [ - { - "group": "Build encyclopedia", - "pages": [ - "versions/8.6.0/reference/be/overview", - "versions/8.6.0/reference/be/common-definitions", - "versions/8.6.0/reference/be/make-variables", - "versions/8.6.0/reference/be/functions", - "versions/8.6.0/reference/be/platforms-and-toolchains" - ] - }, - { - "group": "Command line reference", - "pages": [ - "versions/8.6.0/reference/command-line-reference" - ] - }, - { - "group": "Query Language", - "pages": [ - "versions/8.6.0/query/language", - "versions/8.6.0/query/quickstart" - ] - }, - { - "group": "Glossary", - "pages": [ - "versions/8.6.0/reference/glossary" - ] - }, - { - "group": "Flag cheatsheet", - "pages": [ - "versions/8.6.0/reference/flag-cheatsheet" - ] - } - ] - }, - { - "tab": "Extending", - "groups": [ - { - "group": "Concepts", - "pages": [ - "versions/8.6.0/extending/concepts" - ] - }, - { - "group": "Writing rules", - "pages": [ - "versions/8.6.0/rules/rules-tutorial", - "versions/8.6.0/rules/macro-tutorial", - "versions/8.6.0/rules/legacy-macro-tutorial", - "versions/8.6.0/rules/verbs-tutorial", - "versions/8.6.0/rules/language", - "versions/8.6.0/rules/bzl-style", - "versions/8.6.0/rules/challenges", - "versions/8.6.0/rules/windows" - ] - }, - { - "group": "Distributing rules", - "pages": [ - "versions/8.6.0/rules/testing", - "versions/8.6.0/rules/performance", - "versions/8.6.0/rules/deploying" - ] - }, - { - "group": "APIs", - "pages": [ - "versions/8.6.0/rules/lib/overview", - "versions/8.6.0/rules/lib/globals", - "versions/8.6.0/rules/lib/globals/bzl", - "versions/8.6.0/rules/lib/globals/module" - ] - }, - { - "group": "Repo rules", - "pages": [ - "versions/8.6.0/rules/lib/repo/index", - "versions/8.6.0/rules/lib/repo/cache", - "versions/8.6.0/rules/lib/repo/git", - "versions/8.6.0/rules/lib/repo/http", - "versions/8.6.0/rules/lib/repo/local", - "versions/8.6.0/rules/lib/repo/utils" - ] - } - ] - }, - { - "tab": "Community", - "groups": [ - { - "group": "Contributing", - "pages": [ - "versions/8.6.0/contribute/index", - "versions/8.6.0/contribute/policy", - "versions/8.6.0/contribute/patch-acceptance", - "versions/8.6.0/contribute/maintainers-guide", - "versions/8.6.0/contribute/codebase", - "versions/8.6.0/contribute/search", - "versions/8.6.0/contribute/statemachine-guide", - "versions/8.6.0/contribute/docs", - "versions/8.6.0/contribute/docs-style-guide", - "versions/8.6.0/contribute/design-documents", - "versions/8.6.0/contribute/release-notes" - ] - }, - { - "group": "Programs", - "pages": [ - "versions/8.6.0/community/sig", - "versions/8.6.0/community/experts", - "versions/8.6.0/community/partners", - "versions/8.6.0/community/users", - "versions/8.6.0/community/recommended-rules", - "versions/8.6.0/community/remote-execution-services" - ] - }, - { - "group": "Getting help", - "pages": [ - "versions/8.6.0/help", - "versions/8.6.0/contribute/policy" - ] - } - ] - } - ] -} diff --git a/query/cquery.mdx b/query/cquery.mdx index e734f231..9d01b98b 100644 --- a/query/cquery.mdx +++ b/query/cquery.mdx @@ -150,7 +150,6 @@ Of the [set of functions](/query/language#functions "list of query functions") supported by `query`, `cquery` supports all but [`allrdeps`](/query/language#allrdeps), [`buildfiles`](/query/language#buildfiles), -[`loadfiles`](/query/language#loadfiles), [`rbuildfiles`](/query/language#rbuildfiles), [`siblings`](/query/language#siblings), [`tests`](/query/language#tests), and [`visible`](/query/language#visible). diff --git a/reference/be/general.mdx b/reference/be/general.mdx index 600b189a..df401f06 100644 --- a/reference/be/general.mdx +++ b/reference/be/general.mdx @@ -242,7 +242,7 @@ cc_library( | Attributes | | | --- | --- | | `name` | [Name](/concepts/labels#target-names); required A unique name for this target. | -| `srcs` | List of [labels](/concepts/labels); default is `[]` The list of targets that are members of the file group. Targets named in the `srcs` attribute will be added to the `runfiles` of this `filegroup` rule. It is common to use the result of a [glob](/reference/be/functions#glob) expression for the value of the `srcs` attribute. | +| `srcs` | List of [labels](/concepts/labels); default is `[]` The list of targets that are members of the file group. It is common to use the result of a [glob](/reference/be/functions#glob) expression for the value of the `srcs` attribute. | | `data` | List of [labels](/concepts/labels); default is `[]` The list of files needed by this rule at runtime. Targets named in the `data` attribute will be added to the `runfiles` of this `filegroup` rule. When the `filegroup` is referenced in the `data` attribute of another rule its `runfiles` will be added to the `runfiles` of the depending rule. See the [data dependencies](/concepts/dependencies#data-dependencies) section and [general documentation of `data`](/reference/be/common-definitions#common.data) for more information about how to depend on and use data files. | | `output_group` | String; default is `""` The output group from which to gather artifacts from sources. If this attribute is specified, artifacts from the specified output group of the dependencies will be exported instead of the default output group. An "output group" is a category of output artifacts of a target, specified in that rule's implementation. | diff --git a/reference/command-line-reference.mdx b/reference/command-line-reference.mdx index 8c01b3e4..53f1ea8b 100644 --- a/reference/command-line-reference.mdx +++ b/reference/command-line-reference.mdx @@ -448,7 +448,7 @@ Options that let the user configure the intended output, affecting its value, as [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`experimental`](#metadata_tag_EXPERIMENTAL) `--[no]incompatible_repo_env_ignores_action_env` default: "true" -: If true, `--action_env=NAME=VALUE` will no longer affect repository rule and module extension environments. +: If true, <code>--action_env=NAME=VALUE</code> will no longer affect repository rule and module extension environments. Tags: [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`incompatible_change`](#metadata_tag_INCOMPATIBLE_CHANGE) @@ -496,7 +496,7 @@ Options that let the user configure the intended output, affecting its value, as [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS) `--repo_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable>` multiple uses are accumulated -: Specifies additional environment variables to be available only for repository rules. Note that repository rules see the full environment anyway, but in this way variables can be set via command-line flags and `.bazelrc` entries. The special syntax `=NAME` can be used to explicitly unset a variable. The string `%bazel_workspace%` in a value will be replaced with the absolute path of the workspace as printed by `bazel info workspace`. +: Specifies additional environment variables to be available only for repository rules. Note that repository rules see the full environment anyway, but in this way variables can be set via command-line flags and <code>.bazelrc</code> entries. The special syntax <code>=NAME</code> can be used to explicitly unset a variable. The string <code>%bazel_workspace%</code> in a value will be replaced with the absolute path of the workspace as printed by <code>bazel info workspace</code>. Tags: [`action_command_lines`](#effect_tag_ACTION_COMMAND_LINES) @@ -578,7 +578,7 @@ This option affects semantics of the Starlark language or the build API accessib [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`experimental`](#metadata_tag_EXPERIMENTAL) `--[no]experimental_isolated_extension_usages` default: "false" -: If true, enables the `isolate` parameter in the [`use_extension`](https://bazel.build/rules/lib/globals/module#use_extension) function. +: If true, enables the <code>isolate</code> parameter in the <a href="https://bazel.build/rules/lib/globals/module#use_extension"><code>use_extension</code></a> function. Tags: [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS) @@ -723,7 +723,7 @@ This option affects semantics of the Starlark language or the build API accessib [`build_file_semantics`](#effect_tag_BUILD_FILE_SEMANTICS), [`incompatible_change`](#metadata_tag_INCOMPATIBLE_CHANGE) `--[no]incompatible_locations_prefers_executable` default: "true" -: Whether a target that provides an executable expands to the executable rather than the files in `DefaultInfo.files` under $(locations ...) expansion if the number of files is not 1. +: Whether a target that provides an executable expands to the executable rather than the files in <code>DefaultInfo.files</code> under $(locations ...) expansion if the number of files is not 1. Tags: [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`incompatible_change`](#metadata_tag_INCOMPATIBLE_CHANGE) @@ -741,7 +741,7 @@ This option affects semantics of the Starlark language or the build API accessib [`build_file_semantics`](#effect_tag_BUILD_FILE_SEMANTICS), [`incompatible_change`](#metadata_tag_INCOMPATIBLE_CHANGE) `--[no]incompatible_no_implicit_watch_label` default: "true" -: If true, then methods on `repository_ctx` that are passed a Label will no longer automatically watch the file under that label for changes even if `watch = "no"`, and `repository_ctx.path` no longer causes the returned path to be watched. Use `repository_ctx.watch` instead. +: If true, then methods on <code>repository_ctx</code> that are passed a Label will no longer automatically watch the file under that label for changes even if <code>watch = "no"</code>, and <code>repository_ctx.path</code> no longer causes the returned path to be watched. Use <code>repository_ctx.watch</code> instead. Tags: [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`incompatible_change`](#metadata_tag_INCOMPATIBLE_CHANGE) @@ -1269,7 +1269,7 @@ Options that affect the verbosity, format or location of logging: : Controls the output of BEP ActionSummary and BuildGraphMetrics, limiting the number of mnemonics in ActionData and number of entries reported in BuildGraphMetrics.AspectCount/RuleClassCount. By default the number of types is limited to the top 20, by number of executed actions for ActionData, and instances for RuleClass and Asepcts. Setting this option will write statistics for all mnemonics, rule classes and aspects. `--[no]experimental_record_skyframe_metrics` default: "false" -: Controls the output of BEP BuildGraphMetrics, including expensive to compute skyframe metrics about Skykeys, RuleClasses and Aspects. With this flag set to false BuildGraphMetrics.rule_count and aspect fields will not be populated in the BEP. +: Controls the output of BEP BuildGraphMetrics, including expensiveto compute skyframe metrics about Skykeys, RuleClasses and Aspects.With this flag set to false BuildGraphMetrics.rule_count and aspectfields will not be populated in the BEP. `--[no]experimental_run_bep_event_include_residue` default: "false" : Whether to include the command-line residue in run build events which could contain the residue. By default, the residue is not included in run command build events that could contain the residue. @@ -1787,7 +1787,7 @@ Options relating to query output and semantics: [`build_file_semantics`](#effect_tag_BUILD_FILE_SEMANTICS) `--[no]consistent_labels` default: "false" -: If enabled, every query command emits labels as if by the Starlark `str` function applied to a `Label` instance. This is useful for tools that need to match the output of different query commands and/or labels emitted by rules. If not enabled, output formatters are free to emit apparent repository names (relative to the main repository) instead to make the output more readable. +: If enabled, every query command emits labels as if by the Starlark <code>str</code> function applied to a <code>Label</code> instance. This is useful for tools that need to match the output of different query commands and/or labels emitted by rules. If not enabled, output formatters are free to emit apparent repository names (relative to the main repository) instead to make the output more readable. Tags: [`terminal_output`](#effect_tag_TERMINAL_OUTPUT) @@ -1883,7 +1883,7 @@ Options relating to query output and semantics: [`terminal_output`](#effect_tag_TERMINAL_OUTPUT) `--output_file=<a string>` default: "" -: When specified, query results will be written directly to this file, and nothing will be printed to Bazel's standard output stream (stdout). In benchmarks, this is generally faster than `bazel query > file`. +: When specified, query results will be written directly to this file, and nothing will be printed to Bazel's standard output stream (stdout). In benchmarks, this is generally faster than <code>bazel query > file</code>. Tags: [`terminal_output`](#effect_tag_TERMINAL_OUTPUT) @@ -2625,6 +2625,12 @@ Options that let the user configure the intended output, affecting its value, as Tags: [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS), [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`experimental`](#metadata_tag_EXPERIMENTAL) +`--[no]experimental_android_databinding_v2` default: "true" +: Use android databinding v2. This flag is a no-op. + + Tags: + [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS), [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`loses_incremental_state`](#effect_tag_LOSES_INCREMENTAL_STATE), [`experimental`](#metadata_tag_EXPERIMENTAL) + `--[no]experimental_android_resource_shrinking` default: "false" : Enables resource shrinking for android_binary APKs that use ProGuard. @@ -5309,6 +5315,12 @@ Options that let the user configure the intended output, affecting its value, as Tags: [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS), [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`experimental`](#metadata_tag_EXPERIMENTAL) +`--[no]experimental_android_databinding_v2` default: "true" +: Use android databinding v2. This flag is a no-op. + + Tags: + [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS), [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`loses_incremental_state`](#effect_tag_LOSES_INCREMENTAL_STATE), [`experimental`](#metadata_tag_EXPERIMENTAL) + `--[no]experimental_android_resource_shrinking` default: "false" : Enables resource shrinking for android_binary APKs that use ProGuard. @@ -6300,7 +6312,7 @@ Options relating to query output and semantics: [`build_file_semantics`](#effect_tag_BUILD_FILE_SEMANTICS) `--[no]consistent_labels` default: "false" -: If enabled, every query command emits labels as if by the Starlark `str` function applied to a `Label` instance. This is useful for tools that need to match the output of different query commands and/or labels emitted by rules. If not enabled, output formatters are free to emit apparent repository names (relative to the main repository) instead to make the output more readable. +: If enabled, every query command emits labels as if by the Starlark <code>str</code> function applied to a <code>Label</code> instance. This is useful for tools that need to match the output of different query commands and/or labels emitted by rules. If not enabled, output formatters are free to emit apparent repository names (relative to the main repository) instead to make the output more readable. Tags: [`terminal_output`](#effect_tag_TERMINAL_OUTPUT) @@ -6366,7 +6378,7 @@ Options relating to query output and semantics: [`terminal_output`](#effect_tag_TERMINAL_OUTPUT) `--output_file=<a string>` default: "" -: When specified, query results will be written directly to this file, and nothing will be printed to Bazel's standard output stream (stdout). In benchmarks, this is generally faster than `bazel query > file`. +: When specified, query results will be written directly to this file, and nothing will be printed to Bazel's standard output stream (stdout). In benchmarks, this is generally faster than <code>bazel query > file</code>. Tags: [`terminal_output`](#effect_tag_TERMINAL_OUTPUT) @@ -7132,6 +7144,12 @@ Options that let the user configure the intended output, affecting its value, as Tags: [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS), [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`experimental`](#metadata_tag_EXPERIMENTAL) +`--[no]experimental_android_databinding_v2` default: "true" +: Use android databinding v2. This flag is a no-op. + + Tags: + [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS), [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`loses_incremental_state`](#effect_tag_LOSES_INCREMENTAL_STATE), [`experimental`](#metadata_tag_EXPERIMENTAL) + `--[no]experimental_android_resource_shrinking` default: "false" : Enables resource shrinking for android_binary APKs that use ProGuard. @@ -8782,6 +8800,12 @@ Options that let the user configure the intended output, affecting its value, as Tags: [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS), [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`experimental`](#metadata_tag_EXPERIMENTAL) +`--[no]experimental_android_databinding_v2` default: "true" +: Use android databinding v2. This flag is a no-op. + + Tags: + [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS), [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`loses_incremental_state`](#effect_tag_LOSES_INCREMENTAL_STATE), [`experimental`](#metadata_tag_EXPERIMENTAL) + `--[no]experimental_android_resource_shrinking` default: "false" : Enables resource shrinking for android_binary APKs that use ProGuard. @@ -10742,7 +10766,7 @@ Options relating to query output and semantics: [`build_file_semantics`](#effect_tag_BUILD_FILE_SEMANTICS) `--[no]consistent_labels` default: "false" -: If enabled, every query command emits labels as if by the Starlark `str` function applied to a `Label` instance. This is useful for tools that need to match the output of different query commands and/or labels emitted by rules. If not enabled, output formatters are free to emit apparent repository names (relative to the main repository) instead to make the output more readable. +: If enabled, every query command emits labels as if by the Starlark <code>str</code> function applied to a <code>Label</code> instance. This is useful for tools that need to match the output of different query commands and/or labels emitted by rules. If not enabled, output formatters are free to emit apparent repository names (relative to the main repository) instead to make the output more readable. Tags: [`terminal_output`](#effect_tag_TERMINAL_OUTPUT) @@ -10862,7 +10886,7 @@ Options relating to query output and semantics: [`terminal_output`](#effect_tag_TERMINAL_OUTPUT) `--output_file=<a string>` default: "" -: When specified, query results will be written directly to this file, and nothing will be printed to Bazel's standard output stream (stdout). In benchmarks, this is generally faster than `bazel query > file`. +: When specified, query results will be written directly to this file, and nothing will be printed to Bazel's standard output stream (stdout). In benchmarks, this is generally faster than <code>bazel query > file</code>. Tags: [`terminal_output`](#effect_tag_TERMINAL_OUTPUT) @@ -11784,6 +11808,12 @@ Options that let the user configure the intended output, affecting its value, as Tags: [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS), [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`experimental`](#metadata_tag_EXPERIMENTAL) +`--[no]experimental_android_databinding_v2` default: "true" +: Use android databinding v2. This flag is a no-op. + + Tags: + [`affects_outputs`](#effect_tag_AFFECTS_OUTPUTS), [`loading_and_analysis`](#effect_tag_LOADING_AND_ANALYSIS), [`loses_incremental_state`](#effect_tag_LOSES_INCREMENTAL_STATE), [`experimental`](#metadata_tag_EXPERIMENTAL) + `--[no]experimental_android_resource_shrinking` default: "false" : Enables resource shrinking for android_binary APKs that use ProGuard. diff --git a/remote/output-directories.mdx b/remote/output-directories.mdx index c6683792..69abcb65 100644 --- a/remote/output-directories.mdx +++ b/remote/output-directories.mdx @@ -25,8 +25,8 @@ Requirements for an output directory layout: The solution that's currently implemented: -* Bazel must be invoked from a directory containing a repository boundary file, - or a subdirectory thereof. In other words, Bazel must be invoked from inside a +* Bazel must be invoked from a directory containing a repo boundary file, or a + subdirectory thereof. In other words, Bazel must be invoked from inside a [repository](../external/overview#repository). Otherwise, an error is reported. * The _outputRoot_ directory defaults to ~/.cache/bazel on Linux, @@ -45,7 +45,7 @@ The solution that's currently implemented: it is an `installBase` directory whose name is the MD5 hash of the Bazel installation manifest. * Beneath the `outputUserRoot` directory, an `outputBase` directory - is also created whose name is the MD5 hash of the path of the workspace + is also created whose name is the MD5 hash of the path name of the workspace root. So, for example, if Bazel is running in the workspace root `/home/user/src/my-project` (or in a directory symlinked to that one), then an output base directory is created called: @@ -80,12 +80,9 @@ The directories are laid out as follows: outputUserRoot install/ fba9a2c87ee9589d72889caf082f1029/ <== Hash of the Bazel install manifest: installBase - A-server.jar <== The main Bazel server Java application, unpacked - from the data section of the bazel executable on first run. - linux-sandbox <== Sandboxing helper binary (platform-specific). - process-wrapper <== Process wrapper binary for action execution. - embedded_tools/ <== Contains the bundled JDK, build tool sources, - and other resources needed by the server. + _embedded_binaries/ <== Contains binaries and scripts unpacked from the data section of + the bazel executable on first run (such as helper scripts and the + main Java file BazelServer_deploy.jar) 7ffd56a6e4cb724ea575aba15733d113/ <== Hash of the client's workspace root (such as /home/user/src/my-project): outputBase action_cache/ <== Action cache directory hierarchy @@ -96,9 +93,8 @@ The directories are laid out as follows: recent bazel command. external/ <== The directory that remote repositories are downloaded/symlinked into. - server/ <== The Bazel server puts all server-related files here - (such as the server PID, the TCP command port, - request/response cookies, and JVM logs). + server/ <== The Bazel server puts all server-related files (such + as socket file, logs, etc) here. jvm.out <== The debugging output for the server. execroot/ <== The working directory for all actions. For special cases such as sandboxing and remote execution, the @@ -114,11 +110,8 @@ The directories are laid out as follows: _tmp/actions/ <== Action output directory. This contains a file with the stdout/stderr for every action from the most recent bazel run that produced output. - k8-fastbuild/ <== One subdirectory per unique target BuildConfiguration instance; - named by a mnemonic encoding the CPU and compilation mode - (such as k8-fastbuild, k8-opt, or k8-dbg). Configurations - with Starlark transitions append an ST-hash suffix - (such as k8-fastbuild-ST-abc123). + local_linux-fastbuild/ <== one subdirectory per unique target BuildConfiguration instance; + this is currently encoded bin/ <== Bazel outputs binaries for target configuration here: $(BINDIR) foo/bar/_objs/baz/ <== Object files for a cc_* rule named //foo/bar:baz foo/bar/baz1.o <== Object files from source //foo/bar:baz1.cc @@ -129,13 +122,16 @@ The directories are laid out as follows: MANIFEST _main/ ... + genfiles/ <== Bazel puts generated source for the target configuration here: + $(GENDIR) + foo/bar.h such as foo/bar.h might be a headerfile generated by //foo:bargen testlogs/ <== Bazel internal test runner puts test log files here foo/bartest.log such as foo/bar.log might be an output of the //foo:bartest test with foo/bartest.status foo/bartest.status containing exit status of the test (such as PASSED or FAILED (Exit 1), etc) - k8-opt-exec/ <== BuildConfiguration for the exec platform, used for - building prerequisite tools (such as the Protocol Compiler) - that will be used in later stages of the build. + host/ <== BuildConfiguration for build host (user's workstation), for + building prerequisite tools, that will be used in later stages + of the build (ex: Protocol Compiler) <packages>/ <== Packages referenced in the build appear as if under a regular workspace ``` @@ -143,7 +139,6 @@ The layout of the \*.runfiles directories is documented in more detail in the pl ## `bazel clean` -`bazel clean` clears the on-disk action cache and then removes the entire -`execroot` directory (which contains the symlink forest and all build -outputs). It also removes the convenience symlinks from the workspace -directory. The `--expunge` option will clean the entire outputBase. +`bazel clean` does an `rm -rf` on the `outputPath` and the `action_cache` +directory. It also removes the workspace symlinks. The `--expunge` option +will clean the entire outputBase. diff --git a/upstream b/upstream index f615bae0..ab7369e8 160000 --- a/upstream +++ b/upstream @@ -1 +1 @@ -Subproject commit f615bae052d6b281d7c8d95c8ef53473c598f7e4 +Subproject commit ab7369e827de7d68f71b8d1235737dc9389a70e5