These 52 commits are when the Protocol Buffers files have changed:
| Commit: | b61ec62 | |
|---|---|---|
| Author: | David M. Bryson | |
Fixup proto names
The documentation is generated from this commit.
| Commit: | a524573 | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David M. Bryson | |
Remove swift-tools-support-async dependency and restructure module hierarchy Vendor all Swift and C sources from swift-tools-support-async directly into the llbuild2 package, organized into a layered module structure: - FXCore: public client-facing types (FXDataID, FXCASDatabase, FXCASObject, FXFuture/FXPromise/FXByteBuffer typealiases, FXSerializable). This is the only module re-exported to clients via llbuild2fx. - FXAsyncSupport: package-scoped internals (process executor, futures utilities, in-memory CAS database implementation, BLAKE3 hashing). Not visible to clients. - FXCBLAKE3: vendored BLAKE3 C implementation with fx_ symbol prefix to avoid linker conflicts when coexisting with swift-tools-support-async. - FXCProcessSpawnSync: vendored process spawning C code. All types renamed from LLB prefix to FX prefix (FXDataID, FXCASDatabase, FXCASObject, FXFuture, FXByteBuffer, etc.) to prevent type clashes when clients use swift-tools-support-async alongside llbuild2. Additional changes: - Remove BazelRemoteAPI, LLBBazelBackend, LLBCASTool, and llcastool - Move FXExampleRuleset to its own module (not shipped in the library) - Move CAS file tree implementation to llbuild2Testing - Remove FileBackedCASDatabase (unused) - Add FXCASTreeService protocol with export, importTree, and exportFile methods for client-provided tree operations - Add FXTreeMaterializer.materialize(file:filename:) for file materialization - Add FXLocalCASTreeService in llbuild2Testing for test use - Add FXInteropTests verifying TSFCAS types bridge cleanly to FX types - Port all tests from swift-tools-support-async (futures, CAS, file tree, process executor, CAS utilities) into FXCoreTests, FXAsyncSupportTests, and llbuild2TestingTests - Replace fatalError with thrown FXError.missingCASTreeService - Remove load() from FXNodeID/FXTreeID/FXFileID/FXExecutableFileID protocol requirements (dead code, no callers) - Rename tsf_ prefixed identifiers to fx_ - Prefer throw over fatalError (documented in CLAUDE.md) swift-tools-support-async is retained in Package.swift only as a dependency of the FXInteropTests test target. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
| Commit: | 4d6691b | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David M. Bryson | |
Update protobufs
| Commit: | 31a4d81 | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David M. Bryson | |
Refactor API surface to be llbuild2fx-only - Remove legacy LLBBuildSystem layer - Combine llbuild2 core functionality into llbuild2fx - Remove some unnecessary indirection, reduce public API surface
| Commit: | 651aa2c | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David Bryson | |
Add BLOB artifact type and functionID argument to action execution specs
| Commit: | 1b6e19c | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for action chaining, useful for splitting actions into cacheable pieces but still being treated as a single unit in terms of failures and logs
| Commit: | e753d79 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for common action environment configuration fragment
| Commit: | 4051b9b | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Rename inconditional to the proper unconditional
| Commit: | 6c4ecac | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for outputs that are returned even on action failures
| Commit: | c18e922 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add java package options to protos
| Commit: | ce74f98 | |
|---|---|---|
| Author: | Lev Walkin | |
| Committer: | Lev Walkin | |
Regenerated protocols
| Commit: | 1cade72 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Update gRPC and proto related things
| Commit: | 85b95bc | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Remove stderr from APIs and propagate error instead of fake stdout messages for event failures
| Commit: | 90eab6f | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campama | |
Update Bazel protos
| Commit: | 689a040 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campama | |
Add logsID to ArtifactValue (and update generated protos)
| Commit: | 995c514 | |
|---|---|---|
| Author: | Sergio Campama | |
Add support for additional extra data for remote action requests
| Commit: | 56816b7 | |
|---|---|---|
| Author: | Sergio Campama | |
Add additionalData to action execution request
| Commit: | 56bd74a | |
|---|---|---|
| Author: | Igor Milyakov | |
| Committer: | Sergio Campamá | |
Add untyped additionalData field to LLBActionExecutionResponse proto
| Commit: | 0840b87 | |
|---|---|---|
| Author: | Sergio Campama | |
Add support for propagating the label as the owner of the action in the build event delegate
| Commit: | 01a1b62 | |
|---|---|---|
| Author: | Sergio Campama | |
Add support for marking actions as being able to be cached even on action failures (exitCode != 0)
| Commit: | f6b8efd | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add description to action keys for better UX for clients
| Commit: | 6d58a83 | |
|---|---|---|
| Author: | Sergio Campama | |
Add stdout and stderr to action value
| Commit: | 936bd92 | |
|---|---|---|
| Author: | Sergio Campama | |
Add support for mnemonics for command actions
| Commit: | 289fcce | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David Bryson | |
Adopt tools-support-async common dependency
| Commit: | 9dd95a7 | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David Bryson | |
Fix downstream dependency problems - Remove integral zstd module - Disable unused CASFileTree compression support for now
| Commit: | 0e84db9 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Refactor ProviderMap management from the client developers. This introduces a new API for clients of LLBBuildSystem to declare dependencies for LLBConfiguredTarget implementations that allows for a cleaner management by the build system. It also introduces new APIs into the ruleContext to retrieve those providers with typed methods. This effectively hides the fact that LLBProviderMap even exists, which is better encapsulation.
| Commit: | ee708da | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for dynamic action execution.
| Commit: | 48a692e | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David Bryson | |
Move AnySerializable to the core - Moves the type registry into the Engine - Uses AnySerializable to wrap auto conformance to CASObjectRepresentable
| Commit: | 2dd11a7 | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David Bryson | |
Move BuildSystemProtocol into the engine
| Commit: | 365204b | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | David Bryson | |
Use different field number
| Commit: | 83ea332 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Renamed LLBAnyCodable to LLBAnySerializable
| Commit: | 3995f55 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add LLBPrefix to all public types coming from the build system component
| Commit: | 870d3c9 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campama | |
Add root support for ConfigurationValue to be used for artifact roots
| Commit: | dbf865e | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Fix upload of static writes and actions into the CAS to ensure it happens after artifact updates
| Commit: | 432d47d | |
|---|---|---|
| Author: | Sergio Campama | |
Update bazel remote protos
| Commit: | f59bd14 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for tree merging for rule evaluation
| Commit: | 4b4d927 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for static writes from rule implementations
| Commit: | 9467f05 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for configurations fragments and configuration transitions
| Commit: | 366b611 | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David Bryson | |
Unify LLBDataID and LLBPBDataID
| Commit: | 48f65b0 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add EvaluatedTarget and RuleEvaluation functions.
| Commit: | fa0feb5 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for ConfiguredTarget extensibility into llbuild2. In order to be flexible at runtime, we also introduce the LLBAnyCodable mechanism for serializing and deserializing with type information through a global registry. This is similar in nature to the Google_Protobuf_Any approach.
| Commit: | fe34a79 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add basic support for a label type for identifying targets
| Commit: | ea19a6b | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add link between Artifact and ActionKeys to model the action graph
| Commit: | f1df9a2 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for ActionKey that resolves inputs before execution
| Commit: | be1e20c | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for ActionExecutionKey, plus some changes for test infrastructure
| Commit: | 33e3d1b | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David Bryson | |
Add CAS File Tree definition - Defines protocol - Models file system objects in CAS form - Supports chunked, compressed CAS representations - Renames LLBCASProtocol module to LLBCAS
| Commit: | 52746c3 | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David Bryson | |
Add a protobuf definition for CASObject, reorganize a bit
| Commit: | 5ec9c11 | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add support for Artifacts to the build system engine
| Commit: | 2d080ea | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campama | |
Rename LLBExecutionProtocol to LLBBuildSystemProtocol
| Commit: | 3b15534 | |
|---|---|---|
| Author: | David M. Bryson | |
| Committer: | David Bryson | |
Add BazelRemoteAPI module
| Commit: | a8ecaf4 | |
|---|---|---|
| Author: | Sergio Campama | |
Fix typo in proto definition
| Commit: | a86f0db | |
|---|---|---|
| Author: | Sergio Campama | |
| Committer: | Sergio Campamá | |
Add action execution protocol buffer definitions, plus note on serialization