aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools
Commit message (Collapse)AuthorAge
* Move global objects to RuntimeGravatar Francois-Rene Rideau2015-08-31
| | | | | | | | Move away global constants and global namespaces out of Environment and into a new file Runtime. -- MOS_MIGRATED_REVID=101940218
* For standalone tests, cd into the workspace directory before running the ↵Gravatar Chris Parsons2015-08-31
| | | | | | | test script. -- MOS_MIGRATED_REVID=101937276
* Fixes to Skylark function callGravatar Francois-Rene Rideau2015-08-31
| | | | | | | | Allow a call to a struct's field when it's a function. Check whether a java method exists before issuing KwArg error. -- MOS_MIGRATED_REVID=101937143
* Remove the OFFLINE coverage file constant.Gravatar Ulf Adams2015-08-31
| | | | | | | | | | | All the code paths to the baseline coverage action now go through the InstrumentedFilesCollector, which only passes the local sources for baseline coverage, which are only those files matching the instrumentation spec, which in turn are only files that are valid for offline coverage (in combination with the withBaselineCoverage flag). -- MOS_MIGRATED_REVID=101935566
* Skylark: All executable rules now have an attribute 'args'.Gravatar Florian Weikert2015-08-31
| | | | | -- MOS_MIGRATED_REVID=101932897
* For Java, only collect .java source files for coverage.Gravatar Ulf Adams2015-08-31
| | | | | -- MOS_MIGRATED_REVID=101930967
* Create baseline coverage actions for local sources only and aggregate.Gravatar Ulf Adams2015-08-31
| | | | | | | | | | | | | | | | We no longer generate baseline coverage for all transitive source files in every target; instead, we generate baseline coverage for the files in the current target and collect all of them transitively. That means much smaller but more baseline coverage files; the total content is smaller if you were providing more than one target with overlapping transitive closures on the command line. In addition, we now collect baseline coverage for all targets in the transitive closure of the top-level targets. Previously, if you only passed test targets, you would not get any baseline coverage. -- MOS_MIGRATED_REVID=101929897
* Refactor the InstrumentedFilesCollector.Gravatar Ulf Adams2015-08-31
| | | | | | | | | | Inline everything into the collect() method (which is now documented) and clearly mark local sources (for future changes). Previously, we were creating an intermediate object, which did all its work in the constructor. This means less garbage and slightly clearer code flow (IMO). -- MOS_MIGRATED_REVID=101927041
* Fix namespace-sandbox executable name.Gravatar Dmitry Lomov2015-08-31
| | | | | -- MOS_MIGRATED_REVID=101926862
* Drop the baseline artifact output group.Gravatar Ulf Adams2015-08-31
| | | | | | | | | | The baseline artifacts are part of the instrumented files provider now, and are strongly tied to the collect_code_coverage flag. It seems to be simpler to collect them explicitly in the BuildView (which already collects them for post-processing), than to rely on the output group selection. -- MOS_MIGRATED_REVID=101926341
* Only print the label (and not the configuration hash key) for error messages ↵Gravatar Lukacs Berki2015-08-31
| | | | | | | with --keep_going. -- MOS_MIGRATED_REVID=101921704
* Merge the baseline coverage code path into the coverage codepath.Gravatar Ulf Adams2015-08-31
| | | | | | | | | | | | | | | | | We're currently doing too much work for baseline coverage - every rule creates an action for its entire transitive closure; these actions are added to the output group for baseline coverage, but not transitively accumulated. It would be better for every rule to create an action for local baseline coverage, and to aggregate the baseline coverage artifacts down the dependency tree. By merging the code paths, the InstrumentedFilesCollector can perform the aggregation, because it can distinguish local and transitive files; I'm planning to implement that in a subsequent change. -- MOS_MIGRATED_REVID=101914334
* Remove the deprecated unused addTransitiveLangTargets method.Gravatar Ulf Adams2015-08-31
| | | | | -- MOS_MIGRATED_REVID=101913201
* Check argument isn't null when creating TransitiveTraversalValue error valuesGravatar Michajlo Matijkiw2015-08-31
| | | | | -- MOS_MIGRATED_REVID=101812326
* Description redacted.Gravatar Janak Ramakrishnan2015-08-31
| | | | | -- MOS_MIGRATED_REVID=101809192
* Presize some collections at the core of ParallelEvaluatorGravatar Michajlo Matijkiw2015-08-31
| | | | | | | | | | We know what size these will be ahead of time, and they can get large, presize since there's no reason not to. Also change arg type for related methods to be Set since it's all we deal in and we know it will have better performance on size than generic Iterable. -- MOS_MIGRATED_REVID=101806154
* Add a convenience method to InstrumentedFilesCollector.Gravatar Ulf Adams2015-08-31
| | | | | | | This simplifies the users a bit, and makes it easier to refactor the code. -- MOS_MIGRATED_REVID=101802767
* Roll back "When a Skylark macro creates a native rule, it also..."Gravatar Michajlo Matijkiw2015-08-31
| | | | | -- MOS_MIGRATED_REVID=101798931
* Move PackageIdentifier to cmdlineGravatar Kristina Chodorow2015-08-31
| | | | | | | | This is necessary to have TargetResolver depend on it without making it depend on the packages target. First step of #389. -- MOS_MIGRATED_REVID=101790345
* In GlobVisitor, use a ConcurrentHashSet and sort the results at the end ↵Gravatar Nathan Harmata2015-08-31
| | | | | | | | | rather than use a synchronized TreeSet that maintains the result in sorted order. Consider M adds to the set resulting in N unique elements (so M >= N). The old approach was O(MlogN) and the new approach is O(M + NlogN) and has less lock contention; the time spent holding the lock is O(N) vs O(MlogN) - and actually ought to be small in practice because of the internal striping in CHS. -- MOS_MIGRATED_REVID=101784791
* Fix required fragments for Bazel j2objc_library rule.Gravatar Rumou Duan2015-08-31
| | | | | -- MOS_MIGRATED_REVID=101777944
* Fix Jack's proguard specs.Gravatar Michael Staib2015-08-31
| | | | | | | | | Jack dexing currently only includes proguard specs from the binary itself, not from any dependencies. There's no reason for this, just an accidental inconsistency in the original implementation. -- MOS_MIGRATED_REVID=101776897
* Fixes #400: Linux sandboxing and relative symbolic links.Gravatar Philipp Wollermann2015-08-28
| | | | | | | Symlink resolution did not work in all cases and broke ./compile.sh on certain Linux distros. -- MOS_MIGRATED_REVID=101775459
* When a Skylark macro creates a native rule, it also sets the following rule ↵Gravatar Florian Weikert2015-08-28
| | | | | | | attributes: generator_{function, name, location} -- MOS_MIGRATED_REVID=101774632
* Remove an unnecessary semicolon.Gravatar Ulf Adams2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101771182
* Add profiling for Skylark lexer, parser, user- and built-in functions.Gravatar Googler2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101769963
* Inline Constants.IOS_DEVICE_RULE_CLASSES.Gravatar Ulf Adams2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101769828
* Remove the WATCHFS_BLACKLIST from Constants.java.Gravatar Ulf Adams2015-08-28
| | | | | | | Instead, inject the list from the corresponding module. -- MOS_MIGRATED_REVID=101769355
* Push local and shard_count documentation.Gravatar Ulf Adams2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101768878
* Improve documentation and error messages for sets.Gravatar Laurent Le Brun2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101765937
* Fix a typo.Gravatar Ulf Adams2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101762412
* Fix $(location //external:some_tool) expansion for genrules.Gravatar Brian Silverman2015-08-28
| | | | | | | | | | | | Previously, targets in "tools" of genrules could only be expanded in $(location)s as the target of the bind. This is another part of fully fixing #90. -- Change-Id: I91444fbfe551b651c46811014639f08f779c70aa Reviewed-on: https://bazel-review.googlesource.com/#/c/1750/ MOS_MIGRATED_REVID=101760690
* Fix C++ link order for py_library and py_binary rules.Gravatar Ulf Adams2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101756783
* Make dangling symlinks in external repositories work to some degree.Gravatar Lukacs Berki2015-08-28
| | | | | | | | | | | | | | | | | This seems to be the least insane approach within the following boundaries: - Skyframe apparently doesn't allow GlobFunction to recover if FileFunction had already raised an exception that Skyframe knows about (this is somewhat surprising) - I didn't want to change FileFunction not to throw an exception for dangling symlinks because this part of the code is scary - I didn't want to revert to Skyframe-based symlink resolution for symlinks in immutable directories because that would be a performance hit - I didn't want to write yet another symlink resolver and the two existing ones (FileSystem#resolveSymlinks() and and FileFunction#getSymlinkTargetRootedPath()) don't work: the former cannot resolve just one level of symlinks and the latter cannot do its job without adding Skyframe dependencies I had to put in a placeholder value for realRootedPath when the FileValue represents a dangling symlink, because FileStateValue.create() relies on the symlink target being different than the symlink itself. RELNOTES: -- MOS_MIGRATED_REVID=101756189
* Don't unnecessarily concatenate Strings just for an error message in an ↵Gravatar Nathan Harmata2015-08-28
| | | | | | | IllegalStateException that might not be thrown at all. -- MOS_MIGRATED_REVID=101748191
* Presize the LinkedHashSet to which we add glob results.Gravatar Nathan Harmata2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101743615
* Add a @deprecated annotation to Runfiles#addArtifacts.Gravatar Carmi Grushko2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101730178
* Avoid internal resizing when converting ListType.Gravatar Eric Fellheimer2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101723683
* Change blaze default arguments for ObjC 'fastbuild' to match better ↵Gravatar Googler2015-08-28
| | | | | | | | | -DDEBUG=1 (from -DDEBUG). RELNOTES: change ObjC -DDEBUG in fastbuild to -DDEBUG=1 -- MOS_MIGRATED_REVID=101716428
* Stop removing onlyLoadingPhase bindingsGravatar Francois-Rene Rideau2015-08-28
| | | | | | | | They are now disabled based on a dynamic flag instead. It's all too easy to bypass removal with duplication, anyway, as in my_native_glob = native.glob -- MOS_MIGRATED_REVID=101714237
* Avoid repeated copies of RuleClass attributes.Gravatar Eric Fellheimer2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101707604
* Verify values for selects in attributes with allowed values.Gravatar Michael Staib2015-08-28
| | | | | | | | | | Currently, the selector list is passed to the allowed value predicate. Since the allowed value predicate obviously does not understand this, it fails with an ugly error. This change causes it to instead check every possible value of the attribute to ensure they're all valid. -- MOS_MIGRATED_REVID=101705850
* Only construct ErrorInfo string when error is not a cycleGravatar Mark Schaller2015-08-28
| | | | | | | | | | | | Occasionally, when there is an error, but it's an acceptable error because it's a cycle, the ErrorInfo string is too large to construct. We should only construct the string for an error when we're going to print it out, which is when it's not a cycle. (We don't expect to see any non-cycle errors though.) -- MOS_MIGRATED_REVID=101697924
* Always create a generating action for _proguard.jar, even if no specs are ↵Gravatar Michael Staib2015-08-28
| | | | | | | | | | | | | | specified. Because configurable attributes can be used to create an android_binary which has no proguard_specs, and because it's impossible to tell this case at the time the implicit outputs are defined, some generating action must be defined even if no proguard_specs actually make it to the rule. If the proguard_generate_mapping attribute is specified, the mapping is also generated. Both are generated by a FailAction and so are not actually produced. -- MOS_MIGRATED_REVID=101694294
* Be resilient to a non-decreasing clock in ↵Gravatar Nathan Harmata2015-08-28
| | | | | | | | | BlazeRuntime#recordLastExecutionTime. Also add @Nullable annotations as appropriate. Fixes #394. -- MOS_MIGRATED_REVID=101685096
* Improve debugging of EvalExceptionGravatar Francois-Rene Rideau2015-08-28
| | | | | -- MOS_MIGRATED_REVID=101679755
* Make load() work in remote repositories too.Gravatar Lukacs Berki2015-08-27
| | | | | | | | | Previously, load() always looked up .bzl files in the main repository. Ideally, it would just take a label and then it would work by default, but for the time being, this quick fix will do. I had to put in an evil hack to make load() statements work in the prelude, because we currently have no way to distinguish load() statements from the prelude and from the BUILD file. Again, a proper label-based load() would solve this. -- MOS_MIGRATED_REVID=101677502
* Expose FilesToRun provider to Skylark.Gravatar Brian Silverman2015-08-27
| | | | | | | | | | It is now possible to get the main executable of *_binary rules with target.files_to_run.executable. -- Change-Id: I4a81f216bdd237fc5b0e7dbd7d0a312558f3cf2c Reviewed-on: https://bazel-review.googlesource.com/#/c/1760/ MOS_MIGRATED_REVID=101675365
* EvalExceptionWithStackTrace does no longer remove non-EvalException ↵Gravatar Florian Weikert2015-08-27
| | | | | | | exceptions from its cause. -- MOS_MIGRATED_REVID=101673097
* Fix link order for all rules using the java library helper.Gravatar Ulf Adams2015-08-27
| | | | | | | | | | | By default, we collect Java-specific link options first, and only collect C++ link options if the dependency does not have Java ones. Longer term, the language-specific link options providers should be replaced by aspects. -- MOS_MIGRATED_REVID=101669588