aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google/devtools/build/lib
Commit message (Collapse)AuthorAge
* Remove alphabetical sorting of options in the canonical list.Gravatar ccalvarin2018-04-09
| | | | | | | This was broken for --config. Doing this properly requires keeping the order in which the options were given, which could be done either by filtering the ordered list according to which values affect the final outcome or by tracking the order correctly. I picked the later: the option order was not explicitly tracked for expansions before but now it is. RELNOTES: canonicalize-flags no longer reorders the flags PiperOrigin-RevId: 192132260
* Remove BuildConfiguration.Fragment#getReservedActionMnemonics() in favor of ↵Gravatar lberki2018-04-09
| | | | | | | | | encoding the same in ConfiguredRuleClassProvider. This is a step towards dumbing down BuildConfiguration.Fragment and the ConfigurationFactoryLoader, which is in needed so that we can rewrite C++/Java/Python rules in Skylark without having to introduce the concept of "configuration loader" in Skylark, too. RELNOTES: None. PiperOrigin-RevId: 192104912
* Cleanup Artifact.getPath() usage in Runfiles.Gravatar shahan2018-04-06
| | | | PiperOrigin-RevId: 191971225
* Flip default value of --experimental_shortened_obj_file_path to trueGravatar pcloudy2018-04-06
| | | | | | RELNOTES: Flip default value of --experimental_shortened_obj_file_path to true, Bazel now generates short object file path by default. PiperOrigin-RevId: 191958480
* Cleanup @SkylarkCallable parameters and their error handling.Gravatar cparsons2018-04-06
| | | | | | | This involves enforcing additional compiletime restrictions on Param ordering and semantics. RELNOTES: None. PiperOrigin-RevId: 191927206
* DynamicCodec emits a trail of type names when it encounters ↵Gravatar shahan2018-04-06
| | | | | | | | NoSuchCodecException. This will make it easier to trace down missing codecs. PiperOrigin-RevId: 191920743
* Delete dead codeGravatar carmi2018-04-06
| | | | | RELNOTES: None PiperOrigin-RevId: 191916828
* Disallow undefined configs by default.Gravatar ccalvarin2018-04-06
| | | | | | | | This brings it in line with other flags, where a malformed value is an error. RELNOTES(INC): --config=foo will error if no 'foo' config exists. PiperOrigin-RevId: 191910781
* Automated rollback of commit 77c5582fa0f5c829df576d9f8d66f4975fe415a6.Gravatar hlopko2018-04-06
| | | | PiperOrigin-RevId: 191880445
* C++: Introduce provider that wraps C++ compilation providers.Gravatar plf2018-04-06
| | | | | | | For now, only CcCompilationContextInfo is wrapped. CcCompilationContextInfo will be renamed CcCompilationContext since the *Info suffix is used for providers. This will be done in a follow-up CL. RELNOTES:none PiperOrigin-RevId: 191876504
* Move shell executable to its own configuration fragment.Gravatar lberki2018-04-06
| | | | | RELNOTES: None. PiperOrigin-RevId: 191861074
* Make DynamicCodec always memoize. Since it replaces Java serialization, ↵Gravatar janakr2018-04-05
| | | | | | which memoizes, we should too. PiperOrigin-RevId: 191813677
* Split Args#add into three methods.Gravatar tomlu2018-04-05
| | | | | | | | | | | Args#add(value, *, arg, format) Args#add_all(value, *, arg, map_each, format_each, before_each, omit_if_empty, uniquify) Args#add_joined(value, *, arg, join_with, map_each, format_each, format_joined, omit_if_empty, uniquify) The old Args#add remains backwards compatible, but we add a flag to disable this compatibility mode. RELNOTES: None PiperOrigin-RevId: 191804482
* Use @AutoCodec for NestedSet serialization.Gravatar janakr2018-04-05
| | | | PiperOrigin-RevId: 191797413
* Remove legacy manifest merging from Bazel.Gravatar ajmichael2018-04-05
| | | | | RELNOTES: android_binary.manifest_merger is no longer supported. PiperOrigin-RevId: 191791177
* Transform StackOverflowError thrown in ArrayCodec into ↵Gravatar janakr2018-04-05
| | | | | | SerializationException. This can happen with deep nested sets. PiperOrigin-RevId: 191790431
* Make statically linking cpp-runtimes as a crosstool feature.Gravatar Googler2018-04-05
| | | | | | | | | | | This cl should result in no user-visible change. It simply sets the feature based on the field in the crosstool proto. A subsequent cl will expose this feature for people to actually use. DELTA_BY_EXTENSION=java=100,py=15 RELNOTES: None PiperOrigin-RevId: 191761838
* Fix strict module map propagation for j2objc.Gravatar allevato2018-04-05
| | | | | | J2Objc needs special consideration to implement strict Swift-ObjC deps. The module maps for the generated Objective-C code are associated with their originating java_library targets (via the J2Objc aspect), which a swift_library cannot directly depend on. So those deeper down module maps need to be propagated transitively *until* a j2objc_library is reached; at that point, the j2objc_library should propagate all of its Java deps module maps, but *not* any of its j2objc_library deps (because that would be non-strict). PiperOrigin-RevId: 191754811
* Avoids calling getPath() in Artifact.toDetailString().Gravatar shahan2018-04-05
| | | | | | | | Also deletes obsolete Artifact.serializeToString() method. "Semantic" change: replaces the actual exec root with <execution_root> in the toString() representation. PiperOrigin-RevId: 191742669
* Fix the definition of Argument in the Skylark specificationGravatar vladmos2018-04-05
| | | | PiperOrigin-RevId: 191717115
* Remove c++-link-interface-dynamic-library from crosstools, it's not usedGravatar hlopko2018-04-05
| | | | | RELNOTES: None. PiperOrigin-RevId: 191713379
* Add codec for Object[]. This may be useful for NestedSetCodec, pushing up so ↵Gravatar janakr2018-04-04
| | | | | | | | that my uncommitted change chain is a little more manageable. Unfortunately we can't get rid of the array marshaller because this only handles Object[], not any other type of array. PiperOrigin-RevId: 191662535
* Disallow empty environment groups.Gravatar gregce2018-04-04
| | | | PiperOrigin-RevId: 191651271
* Internal changeGravatar dannark2018-04-04
| | | | PiperOrigin-RevId: 191642942
* Migrate SkylarkNativeModule methods to use @SkylarkCallable instead of ↵Gravatar cparsons2018-04-04
| | | | | | | | | @SkylarkSignature Most notably, this involves introduction of a new function abstraction, BuiltinMethod, which can wrap a {objc, SkylarkCallable} pair into a BaseFunction for later calling. (This is required due to the current layer of indirection on the end "native" module) RELNOTES: None. PiperOrigin-RevId: 191642467
* Migrate depset.union() and depset.to_list() to SkylarkCallableGravatar cparsons2018-04-04
| | | | | RELNOTES: None. PiperOrigin-RevId: 191641410
* Save the lookup and write of the codec index when the object is memoized, as ↵Gravatar janakr2018-04-04
| | | | | | well as the NEW_VALUE/BACKREF enum write. Probably doesn't actually take much space/time, but free optimization. PiperOrigin-RevId: 191633484
* Add option to restrict format strings to %sGravatar brandjon2018-04-04
| | | | | | | This is useful for contexts like ctx.actions.args()'s methods, where %d and %r aren't appropriate placeholders. RELNOTES: None PiperOrigin-RevId: 191629195
* Add ObjectCodec for AtomicReference.Gravatar janakr2018-04-04
| | | | PiperOrigin-RevId: 191615301
* Replaces JavaSerializableCodec with DynamicCodec as the defaultGravatar shahan2018-04-04
| | | | | | | | | * Skylark serialization was previously dropping location in error, which this fixes. * Deletes a lot of codecs with fidelity issues (DynamicCodec has full fidelity). * Deletes EnumRuntimeCodec which can now be replaced with the superior EnumCodec. * This should eventually allow us to delete Serializable from all Blaze. The remaining blocker is NoSuchPackageExceptionCodec. PiperOrigin-RevId: 191603929
* C++: Migrate CcExecutionDynamicLibrary to new provider styleGravatar plf2018-04-04
| | | | | RELNOTES:none PiperOrigin-RevId: 191574019
* Make the "output files of compilation" file group official.Gravatar lberki2018-04-04
| | | | | | | This is so that callers of Blaze can tell languages implemented in Skylark (e.g. TypeScript) to do compilation only, just like they can with e.g. C++. RELNOTES: None. PiperOrigin-RevId: 191570604
* Disable nested set sharing across multiple nested set deserialization ↵Gravatar janakr2018-04-03
| | | | | | | | sessions. This is incorrect in the presence of memoization: a single element may be serialized as just a pair of integers (type + memoization index). Lots of different nested sets may contain elements that are serialized this way, so they will have the same digests. We could consider doing a parallel hash computation, but for now just disable. This is not a full rollback of https://github.com/bazelbuild/bazel/commit/39cef6d6a4a9e3ae80b11a9ccc0f35325852777c since there was a refactoring in it that it doesn't seem worth it to roll back. PiperOrigin-RevId: 191509089
* BazelPackageLoader to be invoked on additional tests.Gravatar carmi2018-04-03
| | | | | | | I originally blacklisted BazelPackageLoader on some tests because they became flaky with it. RELNOTES: None PiperOrigin-RevId: 191504852
* Also add blaze-bin directory for "includes" attributeGravatar Googler2018-04-03
| | | | | | | | This fixes cc_library rules for third-party packages using generated headers in blaze-bin. RELNOTES: None. PiperOrigin-RevId: 191485462
* PiperOrigin-RevId: 191459280Gravatar Googler2018-04-03
|
* Fix build results for aspect builds.Gravatar tomlu2018-04-03
| | | | | | | | | The current output was pretty much completely incorrect. However since the result output was always hidden for the default value of --show_result, users simply didn't see the incorrect output (instead getting no output at all). This CL fixes both the --show_result problem and makes the output correct. RELNOTES: Print correct build result for builds with --aspects flag. PiperOrigin-RevId: 191456352
* Isolate C++ link build variablesGravatar hlopko2018-04-03
| | | | | | | | | | | | | This is a preparation work to expose Variables instance for all link actions to Skylark. Compile build variables were done in https://github.com/bazelbuild/bazel/commit/31ab0b88ec52f293e713b9369ea4a706b6c0a57d. This is also in line with our goal to make build variables more discoverable and better document. RELNOTES: None. PiperOrigin-RevId: 191446799
* C++: Rename CcCompilationInfo to CcCompilationContextInfo.Gravatar plf2018-04-03
| | | | | | | | | This is done so that the name CcCompilationInfo can be used for the C++ provider that will wrap all providers for compilation, similar to JavaInfo in Java. RELNOTES:none PiperOrigin-RevId: 191445120
* Add stats about cache hits and execution strategies to Bazel's UI.Gravatar Googler2018-04-03
| | | | | | | Fixes: 2846 RELNOTES: Bazel now displays information about remote cache hits and execution strategies used in its UI after every build and test, and adds a corresponding line "process stats" to BuildToolLogs in BEP. PiperOrigin-RevId: 191441770
* Add methods to parse resources without assetsGravatar asteinb2018-04-03
| | | | | | | | | | | | | | - Add ParsedAndroidResources to wrap AndroidResources and resource parsing output. - Implement parse() method in AndroidResources, and support for it elsewhere - Move some supporting methods to the right place (setting up an aapt2 sdk for tests goes to the base test rule, and creating a dummy DataBinding zip goes to the DataBinding class). - Tests for new parse() method, including support for getting a test RuleContext instance RELNOTES: none PiperOrigin-RevId: 191436027
* Remove CcToolchainProvider#getEnvironment() and all the supporting ↵Gravatar lberki2018-04-03
| | | | | | | | | | | infrastructure. This was added in unknown commit to provide a different environment to Apple toolchains, then its use removed in unknown commit in favor of getting the environment variables from the CToolchain proto. I haven't done my research if that's a better approach, but it looks like it (the less hard-coded stuff we have in Java, the better), but worst of all is surely to have *two* such mechanisms. RELNOTES: None. PiperOrigin-RevId: 191411878
* Remove Android jar from android_local_test bootclasspathGravatar ajmichael2018-04-02
| | | | | | | | | Instead, treat it as a regular compile-time library dependency. This fixes Java8 compilation in android_local_test. RELNOTES: None PiperOrigin-RevId: 191359834
* Remove some unnecessary params.Gravatar nharmata2018-04-02
| | | | | RELNOTES: None PiperOrigin-RevId: 191354727
* Moves the decision to enable memoization from codecs to the top-level ↵Gravatar shahan2018-04-02
| | | | | | | | invocation. Also, makes it benign to registerInitialValue when memoization is disabled. PiperOrigin-RevId: 191338253
* Add codec for ImmutableMultimap.Gravatar cpeyser2018-04-02
| | | | PiperOrigin-RevId: 191323243
* Automated rollback of commit 9bfbefc13f2b6ae9a86fd46a8470e3b4cd8efd1a.Gravatar asteinb2018-04-02
| | | | | | | | | | | | | | *** Reason for rollback *** Roll forward with fix and test - turns out I didn't distinguish properly between list and item seperators. *** Original change description *** Rollback "Allow Merge action to take an interface as primary, not just ResourceContainer", as it breaks some android rule integration tests. RELNOTES: none PiperOrigin-RevId: 191322706
* Rollback "Allow Merge action to take an interface as primary, not just ↵Gravatar cparsons2018-04-02
| | | | | | | ResourceContainer", as it breaks some android rule integration tests. RELNOTES: none PiperOrigin-RevId: 191304264
* Change profiling to only accept strings for its "description" argument. ↵Gravatar janakr2018-04-01
| | | | | | Profiling can hold onto objects for the duration of the build, and some of those objects may be temporary that should not be persisted. In particular, UnixGlob and its inner classes should not outlive loading and analysis. For the most part, care was taken in this CL to only use strings that required no additional construction, mainly to minimize garbage (retaining references to newly created strings is not as great a concern since only the strings corresponding to the slowest K tasks are retained, for some relatively small values of K). Action descriptions for actually executing actions are eagerly expanded because that work is minimal compared to the work of actually executing an action. PiperOrigin-RevId: 191251488
* Don't test for reference equality of the underlying IOException. It's ↵Gravatar nharmata2018-03-30
| | | | | | | overkill for these unit tests. RELNOTES: None PiperOrigin-RevId: 191122418