aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe
Commit message (Collapse)AuthorAge
* Aspect terminology update.Gravatar Dmitry Lomov2015-11-10
| | | | | | | | Aspect => ConfiguredAspect AspectWithParameters => Aspect -- MOS_MIGRATED_REVID=107375211
* Refactor the loading phase runner creation and remove the test duplication.Gravatar Ulf Adams2015-11-06
| | | | | | | | | The loading phase runner is now always created by the SkyframeExecutor, and the duplicate test is dropped in favor of subclassing and overriding one method. -- MOS_MIGRATED_REVID=107188756
* Add a TODO for a known dynamic configuration problem: hostGravatar Greg Estren2015-11-06
| | | | | | | | | | | | | | configurations get trimmed to the same fragments as target configurations. This isn't correct, because null fragments in the target configuration (which in practice don't exist) shouldn't necessarily be excluded from the host config. In the worst case then can crash fragment loaders, which expect the fragment options to exist even if the fragment ends up being null. -- MOS_MIGRATED_REVID=107173093
* Implement the offset for the new skyframe-based LoadingPhaseRunner.Gravatar Ulf Adams2015-11-05
| | | | | -- MOS_MIGRATED_REVID=107071400
* Increase the concurrency level of the filesystem call caches used in legacy ↵Gravatar Nathan Harmata2015-11-05
| | | | | | | package loading from the LoadingCache default of 4 to value of --legacy_globbing_threads. -- MOS_MIGRATED_REVID=107056166
* Pass AspectWithParameters instead of separately passing AspectParameters and ↵Gravatar Carmi Grushko2015-11-04
| | | | | | | | | aspect-attributes. The former contains both. -- MOS_MIGRATED_REVID=106961145
* Post preliminary events so it doesn't crash outright.Gravatar Ulf Adams2015-11-04
| | | | | | | | This makes the new loading phase runner work for basic builds, but there are still a lot of broken tests if enabled by default. -- MOS_MIGRATED_REVID=106952054
* Add a skyframe-based loading phase runner hidden behind a compile-time const.Gravatar Ulf Adams2015-11-03
| | | | | | | More testing required before we even add a command-line option. -- MOS_MIGRATED_REVID=106922350
* Split the LoadingPhaseRunner into interface and implementation.Gravatar Ulf Adams2015-11-03
| | | | | | | | This is in preparation for adding a Skyframe-based implementation that uses the recently added TargetPatternPhaseFunction. -- MOS_MIGRATED_REVID=106920157
* When creating RuleContext, explicitly pass the set of attributes an attached ↵Gravatar Carmi Grushko2015-11-02
| | | | | | | Aspect provides. -- MOS_MIGRATED_REVID=106882046
* Parametrize aspect definition with AspectParameters.Gravatar Dmitry Lomov2015-11-02
| | | | | -- MOS_MIGRATED_REVID=106848269
* Move LoadingPhaseRunner.Options to top-level class LoadingOptions.Gravatar Ulf Adams2015-11-02
| | | | | -- MOS_MIGRATED_REVID=106836859
* Implement propagation along dependencies for Skylark aspects.Gravatar Dmitry Lomov2015-11-02
| | | | | -- MOS_MIGRATED_REVID=106694515
* Disable --watchfs on OSX in preparation for enabling it by default.Gravatar Ulf Adams2015-10-28
| | | | | | | | There's no timeline right now, but it's unusable on OSX and Oracle has no plans of fixing it. -- MOS_MIGRATED_REVID=106486015
* Visibility adjustmentsGravatar Michajlo Matijkiw2015-10-28
| | | | | -- MOS_MIGRATED_REVID=106444993
* Change default for rule classes that don't explicitlyGravatar Greg Estren2015-10-28
| | | | | | | | | | | | | | | declare required configuration fragments: from *everything* to *nothing*. Now that all builtin rules properly declare their fragments, the "backwards compatibility" concern that inspired the original behavior is no longer needed. This impacts, for example, filegroup rules, which have nothing to declare. -- MOS_MIGRATED_REVID=106433791
* Share SkyKey interning between evaluation and deserialization.Gravatar Eric Fellheimer2015-10-27
| | | | | -- MOS_MIGRATED_REVID=106323413
* Avoid unbounded growth in the GlobFunction cache. The cache is now given a ↵Gravatar Eric Fellheimer2015-10-27
| | | | | | | maximum size, based off a reasonably larged sized benchmark. -- MOS_MIGRATED_REVID=106180595
* Inline TargetMarker in TransitiveTraversalFunctionGravatar Mark Schaller2015-10-23
| | | | | | | | | | Simplifies the runtime graph when TransitiveTraversalFunction is used. Also moves an error reporting method from the base function to the TransitiveTargetFunction, which is the only one that uses it. -- MOS_MIGRATED_REVID=106109745
* Memoize TRANSITIVE_TRAVERSAL nodes to save memory.Gravatar Miguel Alcon Pinto2015-10-22
| | | | | -- MOS_MIGRATED_REVID=105994907
* Introduce an AspectClass: a representation of a class of aspects.Gravatar Dmitry Lomov2015-10-22
| | | | | | | For native aspects, AspectClass is a facade for Class<AspectFactory<...>>. -- MOS_MIGRATED_REVID=105986390
* Retain first error message during transitive traversalGravatar Mark Schaller2015-10-22
| | | | | | | | | | | | | | | | | | | | | | | | | Previously, a TransitiveTraversalFunction computed a value that contained an exception only if the exception resulted from a failure to load the function's immediate target. If the target had transitive dependencies on other targets, those other targets would be loaded, but any errors resulting from loading those targets would not be retained. SkyQueryEnvironment impromperly used a SkyFrame mechanism (which was solely intended to ensure equivalent semantics between keep-going and no-keep-going evaluations) to discover errors in the set of transitive children of TransitiveTraversal nodes. In order to transition SkyQueryEnvironment away from that mechanism, this CL changes TransitiveTraversalFunction to remember the first error message encountered while loading its target and its transitive dependencies. By remembering just the error message as a string, and not the full exception object, this also helps TransitiveTraversalValue have more consistent equality semantics for change-pruning. -- MOS_MIGRATED_REVID=105977182
* Narrow return type of ContainingPackageLookupValue.withContainingPackageGravatar Michajlo Matijkiw2015-10-22
| | | | | -- MOS_MIGRATED_REVID=105969015
* Remove the repository name from PACKAGE_NAME and move it to the new ↵Gravatar Lukacs Berki2015-10-21
| | | | | | | REPOSITORY_NAME symbol. -- MOS_MIGRATED_REVID=105954652
* Change the preprocessor interface to take the byte[] contents of the BUILD ↵Gravatar Nathan Harmata2015-10-21
| | | | | | | | | file rather than a ParserInputSource. This is part of a series of changes with the net result being that we open, read, and parse each BUILD file exactly once. -- MOS_MIGRATED_REVID=105911557
* Introduce Path#isSpecialFile, FileSystem#isSpecialFile, and ↵Gravatar Nathan Harmata2015-10-21
| | | | | | | FileStatus#isSpecialFile to help disambiguate between a regular file and a special file, since the file size of a special file cannot be trusted. -- MOS_MIGRATED_REVID=105903622
* Improve error diagnostics for Skylark aspects.Gravatar Dmitry Lomov2015-10-20
| | | | | -- MOS_MIGRATED_REVID=105851371
* Implement aspect(...) Skylark function.Gravatar Dmitry Lomov2015-10-20
| | | | | -- MOS_MIGRATED_REVID=105844221
* Rollback of commit ac7195025b073948785db8c6975a53fc305c5087.Gravatar Peter Schmitt2015-10-20
| | | | | | | | | | | | | *** Reason for rollback *** Uses tests that don't run on Bazel *** Original change description *** Implement aspect(...) Skylark function. -- MOS_MIGRATED_REVID=105808850
* Use a sorted set for the test suite expansion key to prevent non-determinism.Gravatar Ulf Adams2015-10-20
| | | | | | | | | | | | | | | | | While a normal set is theoretically sufficient, it can cause hard-to-reproduce problems. In particular, the iteration order of the expansion result depends on the iteration order of the requested targets. If there are multiple requests for the same set of targets, but with different orders, the results would depend on which request was made first. If a downstream function also inadvertantly depends on the iteration order, it can be hard to debug why it ended up with a different order than it requested. Alternatively, we could sort the result before returning it. We generally expect the key set to be smaller than the result set, so this should be ever so slightly more efficient. -- MOS_MIGRATED_REVID=105765514
* Fix two uses of generics that are causing errors in Eclipse for me.Gravatar Ulf Adams2015-10-19
| | | | | -- MOS_MIGRATED_REVID=105742091
* Implement the test suite expansion after target pattern evaluation.Gravatar Ulf Adams2015-10-19
| | | | | | | | This is still not hooked up, but it's now passing all the relevant tests that apply directly to the LoadingPhaseRunner; there are still a couple of TODOs. -- MOS_MIGRATED_REVID=105739507
* Make bazel not require a tools/defaults/BUILD file.Gravatar Lukacs Berki2015-10-19
| | | | | -- MOS_MIGRATED_REVID=105734972
* Avoid some Skyframe restarts.Gravatar Nathan Harmata2015-10-19
| | | | | -- MOS_MIGRATED_REVID=105648425
* Brief audit of singleton SkyValuesGravatar Michajlo Matijkiw2015-10-19
| | | | | | | Minimize indirection wrt singletons, turns out we had one that was completely unused. -- MOS_MIGRATED_REVID=105621494
* Implement aspect(...) Skylark function.Gravatar Dmitry Lomov2015-10-16
| | | | | -- MOS_MIGRATED_REVID=105596479
* Stop filtering when returning root causes -- the filter is always true, ↵Gravatar Janak Ramakrishnan2015-10-16
| | | | | | | | | since root causes are associated with top-level targets and labels, and the filter is for all top-level targets and labels. I noticed this when a huge --noanalyze build spent most of its time in filtering here. The passed-in "collection" was a list, which meant that we could have sped it up by using a set, but why not just get rid of it all. -- MOS_MIGRATED_REVID=105536485
* Cache BUILD file AST parsing results instead of preprocessing results (the ↵Gravatar Nathan Harmata2015-10-16
| | | | | | | | | former uses the latter). This way we parse BUILD files exactly once. This is part of a series of changes with the net result being that we open, read, and parse each BUILD file exactly once. -- MOS_MIGRATED_REVID=105528075
* Roll back [] that makes Bazel not require a tools/defaults/BUILD file ↵Gravatar Lukacs Berki2015-10-16
| | | | | | | because it breaks some internal tests. -- MOS_MIGRATED_REVID=105511798
* Make recursive package wildcards work in remote repositories.Gravatar Lukacs Berki2015-10-15
| | | | | | | Ideally, PrepareDepsOfPatternFunction and maybe even RecursivePkgFunction would also be changed to take a PackageIdentifier instead of RootedPath because the less places we store the set of roots, the better, but I've done enough refactoring in the past weeks to not be thrilled by the idea of doing more. -- MOS_MIGRATED_REVID=105486561
* Verify order of NestedSets wrapped by GlobValueGravatar Michajlo Matijkiw2015-10-15
| | | | | -- MOS_MIGRATED_REVID=105461876
* Avoid an unnecessary sorted copy: We add the result of this call to a Set. ↵Gravatar Eric Fellheimer2015-10-15
| | | | | | | No need for a specific ordering. -- MOS_MIGRATED_REVID=105438232
* Pass PackageIdentifier through a bit more code in target parsing in ↵Gravatar Lukacs Berki2015-10-14
| | | | | | | preparation for eventually implementing recursive target patterns for remote repositories. -- MOS_MIGRATED_REVID=105412566
* Reimplement target pattern parsing in Skyframe.Gravatar Ulf Adams2015-10-14
| | | | | | | | This is currently not hooked up, and we're passing (potentially) massive numbers of targets around. -- MOS_MIGRATED_REVID=105395404
* Only open and read the BUILD file when we don't have a cached preprocessing ↵Gravatar Nathan Harmata2015-10-13
| | | | | | | | | result. This is a step in the right direction towards the goal of opening and reading each BUILD file exactly once. -- MOS_MIGRATED_REVID=105338761
* Make the /... recursive package target wildcard traverse symlinks.Gravatar Lukacs Berki2015-10-13
| | | | | | | | | This works because we resolve the FileValue for every directory found during the traversal, therefore, symlink cycles and symlink structures giving rise to infinite directory trees are handled correctly (that is to say, the same way as they are handled during globbing) Fixes #274. -- MOS_MIGRATED_REVID=105290852
* Fix PackageFunction#loadPackage preprocessing result cache memory leak on ↵Gravatar Nathan Harmata2015-10-13
| | | | | | | | | error from SkylarkImportResult dep. This is part of a series of changes with the net result being that we open, read, and parse each BUILD file exactly once. -- MOS_MIGRATED_REVID=105253634
* Automated [] rollback of [] + merge with []Gravatar Nathan Harmata2015-10-13
| | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Original CL uncovered a depot issue which was fixed in []. I verified it was the only such issue (see []). *** Original change description *** Rollback of commit f87a414a6bf50613a2c419e53a96f76154f44ae3. *** Reason for rollback *** Rolling back until [] is submitted and we have verified that there are no other breakages *** Original change description *** Handle the case of infinite symlink expansion where a path in a symlink chain is a symlink to an ancestor of a path in the chain. -- MOS_MIGRATED_REVID=105251788
* Make SkyFunctions.SKYLARK_IMPORT_CYLCE publicGravatar Michajlo Matijkiw2015-10-13
| | | | | | | Makes it consistent with the rest of the file. -- MOS_MIGRATED_REVID=105233324
* Refactor cycle related skyvalues to use shared empty valueGravatar Michajlo Matijkiw2015-10-13
| | | | | | | | | | | Previously the cycle values (were supposed to) share a common abstract base class, however usage was inconsistent. Instead refactor to eliminate the specialized value classes, remove the abstract class, and share a common empty placeholder value, which should be useful for future/other current empty values. -- MOS_MIGRATED_REVID=105217399