| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
--
MOS_MIGRATED_REVID=110151036
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=110150657
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=110148583
|
|
|
|
|
|
|
|
|
| |
Make killing worker processes more robust.
Hopefully this gets rid of all flakes from this test.
--
MOS_MIGRATED_REVID=110144458
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=110143616
|
|
|
|
|
|
|
| |
will get rid of all the "ghost flakes" where tests crashed with no apparant reason printed into our logs. Now a stack trace is printed and an easy to understand failure reason, too.
--
MOS_MIGRATED_REVID=110142957
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=110141376
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
directory that I should populate". The directory itself is not created because local_repository actually puts a symlink in its place.
As a side effect, make HTTP downloading, git cloning and archive decompressing not be SkyFunctions. This is necessary because it needs to be the RepositoryFunction and not a
dependent SkyFunction that populates the output directory, because it that's the case what happens is:
1. RepositoryDelegatorFunction cleans up the directory and prepares it for RepositoryFunction
2. RepositoryFunction calls env.getValue(<function that populates the directory>)
3. That value hasn't been computed yet, thus RepositoryDelegatorFunction returns early
4. The function that populates the directory is called
5. RepositoryDelegatorFunction is restarted
6. RepositoryDelegatorFunction cleans up the directory
7. RepositoryFunction calls env.getValue(), and nothing is done because the value has already been computed
8. RepositoryDelegatorFunction proudly returns, even though the directory is actually empty
Another way to solve this problem would be to make RepositoryFunction not clean the directory up on Skyframe restarts, but that means that we'd need to keep state somewhere, which doesn't strike me as a particularly great idea because let's keep state outside of Skyframe only when absolutely necessary (e.g. the marker files for cross-server instance persistence of downloaded repositories). That "somewhere" could either be a member variable of RepositoryDelegatorFunction or the file system.
Note that this change causes external communication to be re-done in a few more cases than before (see that changes to the test cases), but I'd rather we be correct and simple than fast. We can optimize things later if needed and there is enough complexity going around, thank you very much.
--
MOS_MIGRATED_REVID=110134397
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=110025690
|
|
|
|
|
|
|
| |
such.
--
MOS_MIGRATED_REVID=109991616
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109942021
|
|
|
|
|
|
|
| |
Reduces garbage.
--
MOS_MIGRATED_REVID=109914243
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109899239
|
|
|
|
|
|
|
|
|
|
| |
On calls to fail, the failure message is written to $TEST_TMPDIR/__fail. This
is cat-ed to get the message, but if the test exited without calling fail then
an annoying 'cat: blah/blah/blah/__fail: No such file or directory' message is
printed. This throws out the error message if the cat fails.
--
MOS_MIGRATED_REVID=109896051
|
|
|
|
|
|
|
| |
Also changed the setup of BazelAnalysisMock.
--
MOS_MIGRATED_REVID=109890009
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109885964
|
|
|
|
|
|
|
|
|
| |
package and the prefix of external packages in the execroot.
This is in preparation for renaming that path segment from "external" to "bazel-external" so that we can provide a symlink to it from the source tree so that the source tree looks like the execroot.
--
MOS_MIGRATED_REVID=109882753
|
|
|
|
|
|
|
| |
"overlaid BUILD files" hack in RepositoryValue.
--
MOS_MIGRATED_REVID=109877252
|
|
|
|
|
|
|
|
|
| |
transitively transient". Some followup changes will use this method.
Previously, ErrorInfo#isTransient was only used internally in ParallelEvaluator; I think this method was originally added to ErrorInfo solely for the sake of convenience.
--
MOS_MIGRATED_REVID=109840031
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109835697
|
|
|
|
|
|
|
| |
Such providers have a create() method which returns an object whose runtime class differs from its compile-time class, which makes the shortcut methods behave unexpectedly.
--
MOS_MIGRATED_REVID=109815042
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109797588
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109795225
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In particular:
- Separate the implementation of maven_server into a RepositoryFunction and one that creates the MavenServerValue (ideally, maven_server wouldn't exist but we'll have to make to for the time being)
- Refactor the logic of determining whether an external repository needs to be re-fetched to RepositoryDelegatorFunction
- Make RepositoryFunctions not be SkyFunctions anymore (they are called from RepositoryDelegatorFunction, though, who *is* a SkyFunction)
- Add a Skyframe dirtiness checker that makes --nofetch RepositoryValues not be cached
- Add a bunch of test cases and javadoc
There is only one wart that I know of that remains: changes to BUILD files of new_* repository rules that weren't refetched when their RepositoryValue was initiall created on server restart won't take effect. This is because we don't add those BUILD files to the created RepositoryValue. This will fix itself once the ExternalFilesHelper refactoring is submitted.
--
MOS_MIGRATED_REVID=109768345
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109690378
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109683354
|
|
|
|
|
|
|
|
|
| |
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=109673753
|
|
|
|
|
|
|
|
|
| |
They accumulate indefinitely and take up space.
--
Change-Id: I74c7ffd795b21793f8654e0e30785e1b8ba99ca4
Reviewed-on: https://bazel-review.googlesource.com/#/c/2510/
MOS_MIGRATED_REVID=109656651
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109581214
|
|
|
|
|
|
|
|
|
|
|
|
| |
We achieve this by computing the directory symlink's metadata hash, which the
Google-internal Fileset rule writes in the fileset_manifest file, from the
hashes of all files under it. This adds complexity but is necessary, because
the symlink's FileStateValue remains the same even if the directory's contents
change, so the FileStateValue alone is inadequate to compute the metadata for
the fileset_manifest.
--
MOS_MIGRATED_REVID=109577723
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109577273
|
|
|
|
|
|
|
|
| |
Using this class it's easier to create ResolvedFile instances for tests that
don't care about metadata eqality.
--
MOS_MIGRATED_REVID=109562578
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109561975
|
|
|
|
|
|
|
|
|
|
|
|
| |
versions:
devtools/build/lib/analysis/util/AnalysisTestCase.java
devtools/build/lib/analysis/util/BuildViewTestCase.java
devtools/build/lib/packages/util/PackageLoadingTestCase.java
devtools/build/lib/testutil/FoundationTestCase.java
--
MOS_MIGRATED_REVID=109560679
|
|
|
|
|
|
|
| |
AutoValue_* classes from being provider keys.
--
MOS_MIGRATED_REVID=109440137
|
|
|
|
|
|
|
| |
Previously, TautologyTest was added to all test suites in order to prevent empty one. However, this was done regardless of whether the suite was actually empty or not.
--
MOS_MIGRATED_REVID=109413743
|
|
|
|
|
|
|
| |
Old name is vestigial, new home makes more sense.
--
MOS_MIGRATED_REVID=109410381
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL changes the class structure, moving from inheritance to implementation
and composition. In particular, it turns the abstract base class ResolvedFile
into an interface which the earlier subclasses now simply implement rather than
extending it.
This change makes the code cleaner: implementors may write more complicated
getters (and that's my plan to do in a subsequent CL) instead of just returning
the members.
--
MOS_MIGRATED_REVID=109405650
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109404922
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109308423
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109307285
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109305952
|
|
|
|
|
|
|
|
| |
This change ensures that the symlink is excluded because it was in the exclusion
set, not because its target is missing or any other reason.
--
MOS_MIGRATED_REVID=109295933
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109287267
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109286530
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109208102
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109205227
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109205207
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109195723
|