| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactor the FileSystem class to include the hash function as an
instance field. This allows us to have a different hash function
per FileSystem and removes technical debt, as currently that's
somewhat accomplished by a horrible hack that has a static method
to set the hash function for all FileSystem instances.
The FileSystem's default hash function remains MD5.
RELNOTES: None
PiperOrigin-RevId: 177479772
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 174229364
|
|
|
|
|
|
| |
This requires a fairly large amount of changes to fundamental objects like BlazeRuntime, Executor, and so on, as well as changing a lot of test code to thread the file system through. I expect future CLs to be much smaller.
PiperOrigin-RevId: 173678144
|
|
|
|
|
|
|
|
|
| |
Split collect, concurrent, vfs, windows into package-level BUILD files.
Move clock classes out of "util", into their own Java package.
Move CompactHashSet into its own Java package to break a dependency cycle.
Give nestedset and inmemoryfs their own package-level BUILD files.
PiperOrigin-RevId: 167702127
|
|
|
|
|
|
|
|
|
|
|
| |
This isn't ideal, but is the fastest way to split analysis, execution, and
rules into separate java libraries, with lib.skyframe still being in the
analysis library. Ideally, we'd split up the lib.skyframe package, move the
analysis stuff to the analysis library, the execution stuff to the execution
library, and so on. That wouldn't require us moving OutputService out of
lib.exec.
PiperOrigin-RevId: 164856998
|
|
|
|
|
|
|
|
| |
These are depended upon by analysis code, so need to live in the same library
as lib.analysis. Moving them here makes it possible to split the build-base
library into separate libraries for analysis, execution, and rules.
PiperOrigin-RevId: 164847161
|
|
|
|
|
|
|
| |
Now that we have the options before calling beforeCommand, there's no need for
a separate handleOptions method in the BlazeModule API. Remove it.
PiperOrigin-RevId: 162002300
|
|
|
|
|
|
|
|
| |
In order for BlazeModule.workspaceInit to be self-contained, also pass in the
BlazeRuntime; we have use cases where this context is relevant, and there's
currently no other way to get a reference to the BlazeRuntime.
PiperOrigin-RevId: 158861142
|
|
|
|
|
|
|
|
|
|
|
| |
Don't pass the Command annotation explicitly, but add it to CommandEnvironment
instead; most modules don't need it in the first place, so it was a lot of
boilerplate for not much. Also change it so that the command is passed to the
constructor.
Add some documentation to the beforeCommand method.
PiperOrigin-RevId: 158847128
|
|
|
|
|
|
|
|
|
|
| |
Besides writing console output to the console and the command log, allow
modules to register other places where the output should be recorded to.
This will allow the build-event protocol to also report on the console
output.
Change-Id: Ie700243120b0db7c3c68d192abeb0ab7033dc175
PiperOrigin-RevId: 154528369
|
|
|
|
|
|
|
|
|
|
|
| |
RELNOTES: Adds a --override_repository option that takes a repository
name and path. This forces Bazel to use the directory at that path
for the repository. Example usage:
`--override_repository=foo=/home/user/gitroot/foo`.
Fixes #1266
PiperOrigin-RevId: 153599291
|
|
|
|
|
|
|
|
|
| |
This should be a no-op change, primarily intended to improve the BlazeModule
API. The code simplification in the distributor code path is incidental.
--
PiperOrigin-RevId: 144441458
MOS_MIGRATED_REVID=144441458
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change is part of the mu-bazel effort, which aims to build a minimally
useful Bazel binary with most extraneous functionality removed. As part of
that, we want to enforce layering of packages. In particular, lib.actions must
not depend on lib.rules or lib.exec. lib.rules must not depend on lib.exec.
Moving these classes is a necessary step to enforce that layering.
--
PiperOrigin-RevId: 142668172
MOS_MIGRATED_REVID=142668172
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=137955061
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=137936478
|
|
|
|
|
|
|
| |
This significantly simplifies several of our modules.
--
MOS_MIGRATED_REVID=137713119
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a new "shutdown on crash" hook to the Blaze modules and call it when we
exit due to a crash. This allows modules to perform necessary cleanup of
internal state when exiting abruptly.
Note that the need for implementing "shutdown on crash" is rare. As an
example of when this may be useful is a module that has spawned background
threads to communicate with a remote server and we want to shut down those
connections in a controlled manner.
--
MOS_MIGRATED_REVID=136330678
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the first step on a journey toward allowing commands to AbruptExit
wherever they please, similar to how the user can press Ctrl+C at any time
and we (should) bail out as fast as we can.
By interrupting the command's main thread, we at least offer the command
the ability to see that an error requiring a bail has happened, and it should
trigger at potentially more locations, rather than just between phases.
--
MOS_MIGRATED_REVID=135152330
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=131569674
|
|
|
|
|
|
|
| |
Initialize these from BlazeModule.serverInit instead of on-the-fly.
--
MOS_MIGRATED_REVID=131564738
|
|
|
|
|
|
|
| |
file systems).
--
MOS_MIGRATED_REVID=131280794
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=130742362
|
|
|
|
|
|
|
| |
Also allow AbruptExitException from all server startup hooks.
--
MOS_MIGRATED_REVID=130513167
|
|
|
|
|
|
|
|
| |
It's never used, and it's tricky to run with multiple different file systems
in the same process -> remove it to simplify.
--
MOS_MIGRATED_REVID=129858142
|
|
|
|
|
|
|
| |
This allows us to make the coverage module stateless if it depends on options.
--
MOS_MIGRATED_REVID=129852270
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is done in preparation for allowing multiple workspaces / commands in a
single server. That requires changes to the module API, which currently
hard-codes a 1:1 correspondence between workspaces and servers. Note how
BlazeDirectories exists even when it runs outside a workspace.
It's not ideal that the output base is in ServerDirectories, and the
BlazeRuntime creation also still requires a BlazeDirectories instance.
--
MOS_MIGRATED_REVID=129736613
|
|
|
|
|
|
|
| |
This change is similar to a previous change that introduced WorkspaceBuilder.
--
MOS_MIGRATED_REVID=126799657
|
|
|
|
|
|
|
|
|
| |
An instance of the builder is passed to all modules, which can each add / set
things on the builder. This reduces the BlazeModule API surface, while also
being more flexible for future changes.
--
MOS_MIGRATED_REVID=126613981
|
|
|
|
|
|
|
|
|
|
|
| |
Several modules now explicitly add common command options. Of the remaining
ones, most add options to the build command, except one, which adds options
to query. They now all use the canonical implementation.
Also updated the documentation to clarify what this method actually does.
--
MOS_MIGRATED_REVID=125560058
|
|
|
|
|
|
|
| |
after the Package is fully loaded.
--
MOS_MIGRATED_REVID=124260910
|
|
|
|
|
|
|
| |
creating fresh Package instances. Also make a few Package methods public.
--
MOS_MIGRATED_REVID=123247246
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rollback of commit cda4b4eae0c495a8f90f2a70a8db46e34062ee26.
*** Reason for rollback ***
Roll-forward with fixes (see ExternalPackageBuilder).
*** Original change description ***
Automated [] rollback of commit 178a3dfda8bf72abf22758597a90a4afb8eed181.
*** Reason for rollback ***
Broke ci.bazel.io.
See #1234.
*** Original change description ***
Allow modules to inject a custom AttributeContainer.
--
MOS_MIGRATED_REVID=122100417
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Broke ci.bazel.io.
See #1234.
*** Original change description ***
Allow modules to inject a custom AttributeContainer.
--
MOS_MIGRATED_REVID=121658474
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=121497233
|
|
|
|
|
|
|
|
|
| |
InfoItems can
now take parameters.
--
MOS_MIGRATED_REVID=121379097
|
|
|
|
|
|
|
|
|
| |
These attributes are going away imminently.
select() is the new abi_deps.
--
MOS_MIGRATED_REVID=121294764
|
|
|
|
|
|
|
|
| |
As part of that, move a BinTools and the WorkspaceStatusActionFactory to the
BlazeWorkspace.
--
MOS_MIGRATED_REVID=119633702
|
|
|
|
|
|
|
| |
optionally expose a custom factory implementation.
--
MOS_MIGRATED_REVID=117546934
|
|
|
|
|
|
|
| |
Remove the constant.
--
MOS_MIGRATED_REVID=115555161
|
|
|
|
|
|
|
|
|
| |
Fixes #352.
RELNOTES: Files in external repositories are now treated as mutable, which will make the correctness guarantees of using external repositories stronger (existent), but may cause performance penalties.
--
MOS_MIGRATED_REVID=109676408
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=106961863
|
|
|
|
|
|
|
| |
namespace of the WORKSPACE file.
--
MOS_MIGRATED_REVID=104952808
|
|
|
|
|
|
|
|
|
|
|
| |
The headers were modified with
`find . -type f -exec 'sed' '-Ei' 's|Copyright 201([45]) Google|Copyright 201\1 The Bazel Authors|' '{}' ';'`
And manual edit for not Google owned copyright. Because of the nature of ijar, I did not modified the header of file owned by Alan Donovan.
The list of authors were extracted from the git log. It is missing older Google contributors that can be added on-demand.
--
MOS_MIGRATED_REVID=103938715
|
|
|
|
|
|
|
|
|
|
| |
- Label parsing can be simplified
- lib.syntax is only contains the code for Skylark and is reasonably independent from the problem domain of building things
This change is mostly only changes to imports declarations. The rest is reversing the dependency between :cmdline and :syntax and moving a tiny amount of code between Printer and FilesetEntry and the addition of SkylarkPrintableValue that I couldn't be bothered to separate out into its own change.
--
MOS_MIGRATED_REVID=103527877
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103367814
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103276489
|
|
|
|
|
|
|
|
|
| |
I wanted to merge it into beforeCommand, but the reporter isn't set up yet
when we call beforeCommand. Hopefully we can refactor the code to merge it
in the future.
--
MOS_MIGRATED_REVID=103179268
|
|
|
|
|
|
|
|
| |
The very long term plan is to make BlazeRuntime immutable, so that we can
run multiple commands in the same server.
--
MOS_MIGRATED_REVID=103080946
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=100814605
|
|
|
|
|
|
|
|
|
|
|
| |
use this functionality to properly invalidate http download nodes if the downloaded zip file doesn't match the specified hash.
This still means that the actual files downloaded may not match, but checking all such files may be too expensive.
This helps with #336 but before that issue can be closed all remote repositories (git, etc.), should have similar functionality added.
--
MOS_MIGRATED_REVID=99317085
|