| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
and [AndroidResourcesInfo].r_txt to Skylark.
RELNOTES: none
PiperOrigin-RevId: 197902129
|
|
|
|
|
|
|
|
|
|
|
|
| |
A bug in the lexer ignored indentation on the first line of a file. This now
causes an error.
Also, remove the COMMENT token from the lexer. Comments are now accessed separately. This will allow further optimizations in the lexer. It also aligns the code a bit more with the Go implementation.
RELNOTES[INC]:
Indentation on the first line of a file was previously ignored. This is now fixed.
PiperOrigin-RevId: 197889775
|
|
|
|
|
|
|
|
| |
Netty's HttpClientCodec always emits a LastHttpContent event and so we don't need to track the received bytes manually to know when we are done reading. The HttpBlobStore compares the hashes of the received bytes to give us confidence that what we received is correct.
Closes #5244.
PiperOrigin-RevId: 197887877
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 197881012
|
|
|
|
|
|
|
|
| |
Split the AnalysisFailureEvent into a legacy and a new variant; always post an
AnalysisFailureEvent, even if the legacy variant is not posted - this gives us
some coverage for loading failures.
PiperOrigin-RevId: 197862257
|
|
|
|
|
|
| |
construction. Also restrict visibility of some test-only OptionsDiff methods, and remove a server-specific part of the ConfiguredTargetKey #toString representation.
PiperOrigin-RevId: 197830577
|
|
|
|
|
|
| |
Part of https://docs.google.com/document/d/1_UJKmAQ9EE8i3Pl0il3YLTYr-Q9EKYYyLatt2zohfyM/edit#
PiperOrigin-RevId: 197800831
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 197799961
|
|
|
|
|
|
| |
This results in less special logic in the implementation and a simpler API.
PiperOrigin-RevId: 197772283
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I've pulled out the API for separate review. It includes all
hooks from blaze/skylark used by the debugger.
Debuggable thread contexts are currently declared in 3 places:
- BuildFileAST (top-level evaluation of BUILD files)
- SkylarkRuleConfiguredTargetUtil (rules)
- SkylarkAspectFactory (aspects)
The purpose of declaring these contexts is so that the debugger
can track currently-active threads (and stop tracking them when
the task is completed).
Details of the actual debugging server are in unknown commit.
PiperOrigin-RevId: 197770547
|
|
|
|
|
|
|
| |
This unclashes with the incoming ConfigurationTransition.apply
method described in https://docs.google.com/document/d/1_UJKmAQ9EE8i3Pl0il3YLTYr-Q9EKYYyLatt2zohfyM/edit#heading=h.96gongkwg852.
PiperOrigin-RevId: 197769784
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 197744356
|
|
|
|
|
|
|
| |
build API to a global environment.
RELNOTES: None.
PiperOrigin-RevId: 197742427
|
|
|
|
|
|
|
| |
during filesystem operations.
RELNOTES: None.
PiperOrigin-RevId: 197740585
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
BusyBoxActionBuilder makes much cleaner action builders while making it harder
to do Bad Things (like collapsing NestedSets in analysis, or adding an artifact
to one of the command line and the inputs but not both).
Also:
- In merging, simplify the code somewhat by removing unneeded conditionals -
for example, the parsed merging action will always be built given the current
code.
- In the few builders where we aren't doing so already, parameter files should
always be shell quoted and always be used when the OS is Windows. The BusyBox
should always support the former and require the latter (although
sufficiently large inputs may have masked this by triggering parameter files
in Windows anyway).
- In the builder for linking (within validation), no longer collapse the
NestedSet of transitiveCompiledSymbols when adding them to the inputs. Using
the new BusyBoxActionBuilder code, trying to do this would throw an
IllegalStateException.
RELNOTES: none
PiperOrigin-RevId: 197728382
|
|
|
|
|
|
| |
visibility in Skyframe classes.
PiperOrigin-RevId: 197665817
|
|
|
|
|
|
| |
Makes it easier to serialize Events.
PiperOrigin-RevId: 197640007
|
|
|
|
|
|
|
| |
This dramatically improves documentation generation for JavaInfo and it makes it far more maintainable and extensible going forward.
RELNOTES: None.
PiperOrigin-RevId: 197619040
|
|
|
|
|
|
| |
Also consolidate code with getattr so getattr now also gets typo detection.
PiperOrigin-RevId: 197612666
|
|
|
|
|
|
|
|
|
| |
Remove all references to `Token` (except one) in the parser. In particular,
remove the mechanism to push tokens back. This change will make possible for
the lexer to reuse tokens instead of allocating new objects each time.
RELNOTES: None.
PiperOrigin-RevId: 197585185
|
|
|
|
|
|
|
|
| |
With this change, the parser explicitly asks the lexer to give the next token.
To avoid changing the lexer too much, the tokenize() method populates a queue (it may add multiple tokens at the same time). While this reduces the peak memory usage, further work is needed to actually improve the performance.
RELNOTES: None.
PiperOrigin-RevId: 197576326
|
|
|
|
|
|
|
|
| |
Instead, internally look up the correct context by mnemonic. This simplifies
all the callers. We still need a little bit of special casing when constructing
the action context map.
PiperOrigin-RevId: 197572357
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Manifest processing methods are particularly messy for this migration, since
the old ApplicationManifest class is still around. Anyway, pass around
AndroidDataContext instead of RuleContext everywhere we can.
Note that the built-in expander does not seem able to be modified to support
decoupling attributes and other information, and thus really can't be done once
we get rid of RuleContext. Instead, for Skylark rules, document that expansion
must happen outside of the Android data Skylark method calls (for example, for
manifest_values and nocompress_extensions).
RELNOTES: none
PiperOrigin-RevId: 197567541
|
|
|
|
|
|
|
|
| |
As before, actual action builders will be changed in a future CL; this just
starts moving AndroidDataContext in so it's available.
RELNOTES: none
PiperOrigin-RevId: 197561737
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the first step towards using AndroidDataContext in all of Android data
processing.
This change does not actually modify the asset and resource processing action
builders themselves - they will be migrated in an upcoming change.
Also, add AndroidSemantics to some rules so they can make an
AndroidDataContext.
RELNOTES: none
PiperOrigin-RevId: 197555938
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change makes Bazel respect artifact name patterns specified in
CROSSTOOL.
Users cannot specify any arbitrary name pattern, it must ends with allowed
extensions. For example, for dynamic library, it can only ends with .so,
.dylib or .dll, otherwise Bazel throws an error.
Change-Id: I21d9e6fa7c3a282e1a9b8ff29679b00925cddb33
PiperOrigin-RevId: 197553413
|
|
|
|
|
|
|
|
| |
In particular, fix its use of client make variables.
Fixes #4750.
PiperOrigin-RevId: 197545415
|
|
|
|
|
|
| |
longer worth it.
PiperOrigin-RevId: 197477783
|
|
|
|
| |
PiperOrigin-RevId: 197465288
|
|
|
|
| |
PiperOrigin-RevId: 197461794
|
|
|
|
|
|
| |
the String's underlying raw bytes. This avoids byte copying and UTF interpretation. Experiments show it is approximately 15(!) times faster than the naive StringCodec for serialization and 2 times faster for deserialization (10 times faster for non-ASCII strings).
PiperOrigin-RevId: 197441758
|
|
|
|
| |
PiperOrigin-RevId: 197408318
|
|
|
|
|
|
|
| |
The important_outputs field is deprecated, and this adds a flag to disable
its generation entirely.
PiperOrigin-RevId: 197186530
|
|
|
|
|
|
|
| |
Small self-contained part of the debug server (see unknown commit for the
larger picture).
PiperOrigin-RevId: 197140094
|
|
|
|
|
|
|
| |
TestConfiguration.
RELNOTES:none
PiperOrigin-RevId: 197135911
|
|
|
|
|
| |
RELNOTES:none
PiperOrigin-RevId: 197132230
|
|
|
|
|
|
|
|
| |
Instead of using a string pattern, we replace it with a prefix and an
extension.
RELNOTES: NONE
PiperOrigin-RevId: 197132215
|
|
|
|
|
|
|
|
|
|
| |
Allows for ThinLTO to be enabled once the --features=fdo_implicit_thinlto feature is enabled in the crosstool. Also allows for --features=-thin_lto to override and prevent ThinLTO from being enabled.
This is essentially the same as https://github.com/bazelbuild/bazel/commit/8e3afccd8bea45105752ddeb33bde111c556fb8b but for instrumentation FDO
instead of AFDO.
RELNOTES: None.
PiperOrigin-RevId: 197038710
|
|
|
|
|
|
|
| |
This is in preparation for adding options to the class, which can be used
to modify the behavior of build events posted to the BEP.
PiperOrigin-RevId: 196997573
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a cleanup to clarify the code.
1. The getEnvironment method in the CommandAction interface does not have
access to the clientEnv, so it's return value is necessarily incomplete.
Rename to getIncompleteEnvironmentForTesting.
2. Add a final getEnvironment method to AbstractAction, which returns the
ActionEnvironment, which is intended to be a complete description of the
intended final environment of the action (technically, of any spawn running
within the action). This is not currently used, but is provided to prevent
action subclasses to add such a method (it may be used in the future).
PiperOrigin-RevId: 196991091
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
RELNOTES:none
PiperOrigin-RevId: 196972194
|
|
|
|
|
|
|
| |
Nobody reads the documentation, apparently. It also clearly states that
getCommonCommandOptions should be used to add options to all commands.
PiperOrigin-RevId: 196965665
|
|
|
|
|
|
|
|
| |
The difference between them is that user_link_flags will stay after we remove
legacy fields from the crosstool.
RELNOTES: None.
PiperOrigin-RevId: 196940832
|
|
|
|
| |
PiperOrigin-RevId: 196881464
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 196870840
|
|
|
|
|
|
|
| |
checking direct dependencies.
RELNOTES: None.
PiperOrigin-RevId: 196860008
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
out of CppConfiguration.
PiperOrigin-RevId: 196838680
|