aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java
Commit message (Collapse)AuthorAge
...
* Basic tooling to desugar select core librariesGravatar kmb2018-02-05
| | | | | | RELNOTES: None. PiperOrigin-RevId: 184619885
* Fix test compilation failure.Gravatar felly2018-02-05
| | | | PiperOrigin-RevId: 184587712
* Fix Fileset incrementality bug when Fileset consumes a generated file. The ↵Gravatar felly2018-02-05
| | | | | | | | | | | | | | | | native skyframe implementation was actually quite incorrect in this case: It was adding a skyframe dependency on a FileValue for the output file. Without a transitive dependency on the source files and actions that determine the output file's state, this could never work (and explains why the incremental build would fail). Instead, we now depend on the Artifact corresponding to the output file instead. This change updates the business logic RecursiveFilesystemTraversalFunction. This approach keeps the business logic of Fileset filesystem traversal centralized in RFTF. To avoid making weird recursive Skyframe nodes in the output tree, we inline Skyframe dependencies and do direct filesystem operations over the output tree. There are now three states we can be in when looking up a file: 1. Source file: As before, make a skyframe dep on the corresponding file 2. Top-level file of an output tree: Make a dep on the corresponding Artifact 3. Recursive file under an output directory: Do direct filesystem operations. It doesn't make sense to make Skyframe nodes corresponding to these files. In the future, I think we should consider failing fast on this case. RELNOTES: None PiperOrigin-RevId: 184556044
* Refactor ArtifactSkyKey to get rid of an unnecessary wrapper class: actually ↵Gravatar janakr2018-02-05
| | | | | | | | essentially promote OwnedArtifact to ArtifactSkyKey and rename it to ArtifactSkyKey. The king is dead... Also add some other execution-phase codecs. PiperOrigin-RevId: 184552706
* Simplify RuleClassProviders by making most RuleSets have their own class.Gravatar lpino2018-02-05
| | | | PiperOrigin-RevId: 184540561
* Add type assertion that TreeFileArtifact's parentTreeArtifact member is aGravatar cpeyser2018-02-05
| | | | | | SpecialArtifact. PiperOrigin-RevId: 184539696
* Pass ctime to the TimestampGranularityMonitorGravatar ulfjack2018-02-05
| | | | | | | | We're now using ctime to detect file changes, so the timestamp granularity monitor should as well. Unfortunately, we currently get nanosecond ctime from Linux, but then only return millis from FileStatus, so this doesn't change the accuracy of the monitor at all. PiperOrigin-RevId: 184536539
* Add a "direct" mode to "blaze run" that makes the process being run a directGravatar lberki2018-02-05
| | | | | | | | | | | | | | child of the process where the Blaze client itself was run. Limitations: - Untested on Windows; it should work because ExecuteProgram() is implemented there, too, but since Windows doesn't support exec(), there is at least one process in between Progress towards #2815. RELNOTES[NEW]: The new "--direct_run" flag on "blaze run" lets one run interactive binaries. PiperOrigin-RevId: 184528845
* Expose structField callable methods of skylark objects to dir() and str() callsGravatar cparsons2018-02-05
| | | | | RELNOTES: None. PiperOrigin-RevId: 184498836
* Convert "-" to "" when generating module nameGravatar Googler2018-02-05
| | | | | RELNOTES: None. PiperOrigin-RevId: 184492828
* Remove redundant function prettyJarNames from ActionsTestUtilGravatar dbabkin2018-02-03
| | | | | RELNOTES:none PiperOrigin-RevId: 184411715
* Stop allowing generic LateBoundDefault value types. Such types are always ↵Gravatar janakr2018-02-02
| | | | | | | | either a Label or a List<Label>. We can easily enforce this through static type checking, so do it. This will help with LateBoundDefault serialization, since we don't have to serialize an arbitrary object. PiperOrigin-RevId: 184347100
* Remove Root#getCodec, to bring Root in line with general style for codecGravatar cpeyser2018-02-02
| | | | | | declaration. PiperOrigin-RevId: 184304653
* Fix error handling in skyframe target pattern parsingGravatar ulfjack2018-02-02
| | | | | | | | | Bazel completely swallowed errors in some cases, e.g., if the pattern is invalid like bazel build foo//bar:baz. Note that it previously silently ignored empty targets if --experimental_skyframe_target_pattern_evaluator was passed, and now fails (which is consistent with legacy behavior). This is an intentional change, but may break users who are using the experimental flag and are passing empty strings to Bazel. PiperOrigin-RevId: 184282856
* Implement Merge logic for all new providers in JavaInfoGravatar dbabkin2018-02-02
| | | | | | | In scope of b/69780248 three new provider had been added to JavaInfo. This CL implements merge logic for its. RELNOTES:none PiperOrigin-RevId: 184273903
* Change how the libraries_to_link are expanded for archiverGravatar hlopko2018-02-02
| | | | | | | | | This makes object_file_group work correctly for archiving (So far object_file_group was only possible for linking, but with the introduction of tree artifact support, it can appear also for archiving). RELNOTES: Fix how libraries_to_link are expanded in the archiver command line. PiperOrigin-RevId: 184258745
* PiperOrigin-RevId: 184203570Gravatar Googler2018-02-01
|
* Remove unused code from bazel.Gravatar kaipi2018-02-01
| | | | | RELNOTES: PiperOrigin-RevId: 184191201
* Add NO_PROXY environment variable support to downloaderGravatar Zack Lalanne2018-02-01
| | | | | | | | | | | | Check the no_proxy and NO_PROXY environment variables for a list of URLs that should not use a proxy. If the requested URL matches the no_proxy list, don't proxy the download. Fixes #4299 Closes #4307. PiperOrigin-RevId: 184149118
* Add a CODEC for Artifact.Gravatar cpeyser2018-02-01
| | | | PiperOrigin-RevId: 184144301
* Add a codec for FeatureConfiguration using AutoCodec. This is necessary forGravatar cpeyser2018-02-01
| | | | | | CppCompileAction serialization. PiperOrigin-RevId: 184141676
* Automated rollback of commit aa8ce5653f92473b331e500a3614245dae38dfc4.Gravatar hlopko2018-02-01
| | | | | | | | | | | | | | *** Reason for rollback *** Breaks //third_party/msvc crosstool *** Original change description *** RELNOTES: Fix how libraries to link is specified to archiver actions. start-lib/end-lib should not be passed to ar. Fix how the libraries to link are passed to ar by not using the generic feature "libraries_to_link" PiperOrigin-RevId: 184140734
* Allow CustomCommandLine's mapFn to expand each object into multiple items.Gravatar tomlu2018-02-01
| | | | | | This is needed to migrate JavaCompileAction away from CustomMultiArgv. PiperOrigin-RevId: 184136486
* Renamed android_instrumentation_test.instrumentation to ↵Gravatar jingwen2018-01-31
| | | | | | | android_instrumentation_test.test_app RELNOTES: None PiperOrigin-RevId: 184063294
* Improve safety of NestedSetFingerprintCache by detecting multiple instances ↵Gravatar tomlu2018-01-31
| | | | | | | | | | | | of the same mapFn class. This code tries to add protection against the user creating new mapFn instances per-rule. This would cause the nested set cache to be computed per-rule instead of shared across rule instances, causing memory bloat and slowdowns. Since this can only happen in native code, we can get away with detecting this and crashing blaze. I think this is a better choice than silently allowing it / falling back to slow computations. The user can override this behaviour by inheriting from CommandLineItem.CapturingMapFn, in which case the user is explicitly saying they assume responsibility for the number of instances of the mapFn the application will use. PiperOrigin-RevId: 184061642
* Change ConfiguredAspectFactory.create signature to take in aGravatar mjhalupka2018-01-31
| | | | | | | ConfiguredTargetAndTarget instead of a ConfiguredTarget. This is to assist in deprecating ConfiguredTarget.getTarget(). PiperOrigin-RevId: 184043491
* Add DeviceBrokerInfo to Skylark top level.Gravatar ajmichael2018-01-31
| | | | | | | This allows writing Android testing rules that consume DeviceBrokerInfo. RELNOTES: None PiperOrigin-RevId: 184026202
* Add memory-efficient map for storing nested set -> digest.Gravatar tomlu2018-01-31
| | | | | | | | | Instead of using ConcurrentHashMap, we use a dead-simple open addressed hash hable with a giant byte array with 16-byte slots. We then read or write fingerprints straight into and out of the array, obviating the need to generate intermediate garbage. Locking mechanism is a read-write lock. This should be faster than full synchronisation for read-heavy loads. RELNOTES: None PiperOrigin-RevId: 184019301
* Add neverlink support to java_common.compile.Gravatar elenairina2018-01-31
| | | | | | | Fixes #3735. RELNOTES: java_common.compile supports neverlink PiperOrigin-RevId: 184017410
* Fix string_list_dict values to be skylark lists in all casesGravatar cparsons2018-01-31
| | | | | RELNOTES: None. PiperOrigin-RevId: 184016150
* Move BazelRuleClassProvider.LIPO_DATA_TRANSITION to its own class.Gravatar lpino2018-01-31
| | | | PiperOrigin-RevId: 183990860
* Remove the CppConfiguration field from CppCompileAction. MakingGravatar cpeyser2018-01-30
| | | | | | CppCompileAction smaller improves serialization. PiperOrigin-RevId: 183871454
* Rename Transition to ConfigurationTransition.Gravatar gregce2018-01-30
| | | | PiperOrigin-RevId: 183859414
* Obsolete and begin removing the toolchain_resolution_override flag.Gravatar John Cater2018-01-30
| | | | | | | | | It is not compatible with multiple execution platforms. Part of #4442. Change-Id: I683beaae1624130352a6f02bae3f4dfff263ea00 PiperOrigin-RevId: 183855561
* Add tests for execution platforms to ExternalPackageUtilTest.Gravatar John Cater2018-01-30
| | | | | | | Part of #4442. Change-Id: Ia9c4403817d9c1e6497212712f96dbf6618138e9 PiperOrigin-RevId: 183855255
* Fix RegularFileArtifactValue.equalsGravatar ulfjack2018-01-30
| | | | | | | | If two SkyValue objects are equal, then Skyframe caches and returns the old one, instead of the new one. That's a problem for the detection of file changes, which uses the FileContentsProxy, which wasn't part of the equals check before this change. Progress on #3360. PiperOrigin-RevId: 183834897
* Stop warning about resource filters with "deprecated" qualifiersGravatar Googler2018-01-30
| | | | | | | | | | | | | | | Resource qualifiers of the form "en_US" are deprecated for resources (in favor of qualifiers of the form "en-rUS") but are apparently the recommended (if not only) way of specifying locales in resource filter strings. Removing the warning (and reverting any changes that tried following it) should solve this problem - the original filter strings from the rule are passed unmodified to aapt, but these filters are still "fixed" so that android_ide_common (which doesn't support the "deprecated" qualifier form) can still be used to filter resources in analysis. RELNOTES: none PiperOrigin-RevId: 183830253
* Remove DynamicTransitionMapper, ConfigurationTransitionProxy.Gravatar gregce2018-01-30
| | | | PiperOrigin-RevId: 183826311
* Add universal transform function. Small refactoring to eliminate duplication.Gravatar dbabkin2018-01-30
| | | | | RELNOTES:none PiperOrigin-RevId: 183806762
* Remove Skylark ConfigurationTransition.DATA references.Gravatar gregce2018-01-29
| | | | PiperOrigin-RevId: 183733621
* Remove unused "pattern" feature in RecursiveFilesystemTraversalFunction.Gravatar felly2018-01-29
| | | | PiperOrigin-RevId: 183731563
* Use nested set cache in key computation for CustomCommandLine.Gravatar tomlu2018-01-29
| | | | | RELNOTES: None PiperOrigin-RevId: 183727976
* Add alternative interface for LIPO data transitions, opt in native rules.Gravatar gregce2018-01-29
| | | | | | | | | | | This removes the need for ConfigurationTransitionProxy.DATA by providing a way for the C++ rule defs to directly inject the transition for all rules to use. Skylark attributes work differently, so they'll be addressed in another change. PiperOrigin-RevId: 183721293
* Expose ApkInfo and AndroidInstrumentationInfo to Skylark.Gravatar ajmichael2018-01-29
| | | | | | | This will enable us to write testing rules in Skylark. RELNOTES: None PiperOrigin-RevId: 183719720
* Remove -Xbootclasspath/p for JDK 9.Gravatar cnsun2018-01-29
| | | | | RELNOTES:none PiperOrigin-RevId: 183714603
* Remove ConfiguredTarget.getTarget() calls from Build View. Replace them with ↵Gravatar mjhalupka2018-01-29
| | | | | | getting Target from the SkyframeExecutor's PackageManager. PiperOrigin-RevId: 183710251
* Rephrase RootCodec as an InjectingObjectCodec.Gravatar cpeyser2018-01-29
| | | | PiperOrigin-RevId: 183677348
* Do not crash when ctx.action.args.add map_fn returns a list of the wrong length.Gravatar tomlu2018-01-29
| | | | PiperOrigin-RevId: 183668291
* Remove hard coded prelude names from some unit tests.Gravatar shreyax2018-01-29
| | | | PiperOrigin-RevId: 183662908
* Support Android testing with Skylark-defined device rules.Gravatar ajmichael2018-01-26
| | | | | | | | | Do this by exposing DeviceBrokerInfo and a constructor for it in android_common. See AndroidInstrumentationTestTest for an example. RELNOTES: None PiperOrigin-RevId: 183432674