aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build
Commit message (Collapse)AuthorAge
* 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 ConfiguredTarget.getTarget() calls from Build View. Replace them with ↵Gravatar mjhalupka2018-01-29
| | | | | | getting Target from the SkyframeExecutor's PackageManager. PiperOrigin-RevId: 183710251
* Remove references to ConfiguredTarget.getTarget() in BuildTool.Gravatar mjhalupka2018-01-29
| | | | PiperOrigin-RevId: 183704507
* Allows @AutoCodec to use factory methods.Gravatar shahan2018-01-29
| | | | | | Generalizes @AutoCodec.Constructor to @AutoCodec.Instantiator. PiperOrigin-RevId: 183702768
* Remove quotes from argv in android_instrumentation_test stub template and ↵Gravatar jingwen2018-01-29
| | | | | | | add the argv to the java args RELNOTES: None. PiperOrigin-RevId: 183685024
* Rephrase RootCodec as an InjectingObjectCodec.Gravatar cpeyser2018-01-29
| | | | PiperOrigin-RevId: 183677348
* Remove unused constructor for TargetAndConfiguration.Gravatar mjhalupka2018-01-29
| | | | PiperOrigin-RevId: 183676997
* Support explicitly specifying a location for jvm.outGravatar michajlo2018-01-29
| | | | | | | | Allows users to monitor server output without needing to fish the output base. Windows support is copied more or less verbatim from recommendations, I unfortunately don't know how to test this on windows. PiperOrigin-RevId: 183674130
* Move BazelRuleClassProvider.TESTING_SUPPORT to its own class in rules/test.Gravatar lpino2018-01-29
| | | | PiperOrigin-RevId: 183672444
* Do not crash when ctx.action.args.add map_fn returns a list of the wrong length.Gravatar tomlu2018-01-29
| | | | PiperOrigin-RevId: 183668291
* Additional Serializers and Serializer bugfixes needed to serialize ↵Gravatar shahan2018-01-29
| | | | | | BuildConfiguration. PiperOrigin-RevId: 183667795
* Support symlinks in external zip archivesGravatar Klaus Aehlig2018-01-29
| | | | | | | | | | Allow symbolic links in zip archives, as long as they refer to a file within the same archive. Fixes #2656. Change-Id: I0b21b8bb79a7e999ef191baa2a71d29745ac65e4 PiperOrigin-RevId: 183664725
* Add codec for ConfiguredTargetKey and remove stray LegacySkyKey constructors ↵Gravatar janakr2018-01-27
| | | | | | that took ConfiguredTargetKey. PiperOrigin-RevId: 183519981
* 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
* Remove a ConfiguredTarget.getTarget() call in PrintActionCommand.Gravatar mjhalupka2018-01-26
| | | | PiperOrigin-RevId: 183416882
* Remove ConfiguredTarget.getTarget() from RunCommand. Replace it with gettingGravatar mjhalupka2018-01-26
| | | | | | target from CommandEnvironment. PiperOrigin-RevId: 183416006
* remote: Rewrite the HTTP caching client in Netty. Fixes #4481Gravatar buchgr2018-01-26
| | | | | | | | | | | | | | * This puts in the foundation of HTTP/2 support for remote caching. * Allows us to remove the Apache HTTP library as a dependency, reducing the Bazel binary size by 1MiB. On fast networks (i.e. GCE to GCS) we can see a >2x speed improvement for TLS throughput. Even from my workstation to GCS I get significant build time improvements when using Netty's TLS 18s vs 12s. Closes #4481. PiperOrigin-RevId: 183411787
* Add a type that explicitly limits the CppSemantics implementations that can beGravatar cpeyser2018-01-26
| | | | | | | a member of CcProtoAspect. This is to prevent a heavy implementation like ObjcCppSemantics from weighing down AspectKey. PiperOrigin-RevId: 183408339
* CanonicalReferenceResolver for KryoGravatar shahan2018-01-26
| | | | | | | | Uses type and object equality to determine references. This results in a canonical serialized representation. ObjectCodecTester and SerializerTester now log some timing information. PiperOrigin-RevId: 183403658
* Remove aspect configuration from AspectKey. Instead, store an appropriate ↵Gravatar cpeyser2018-01-26
| | | | | | SkyKey and perform the lookup in AspectFunction, in parallel with the lookup for the base configured target introduced in unknown commit. PiperOrigin-RevId: 183399436
* C++: Refactors CLIF rule to go through CcLibraryHelper.Gravatar plf2018-01-26
| | | | | | | | | | | TBD: finish pulling out CLIF logic from the C++ rules implementation. This involves refactoring ArtifactCategory and CppSource.Type. CLIF does PIC compilation now. This detail should be irrelevant to users since CLIF only cares about the matched protobuf output file. SKIP_KOKORO=flakes RELNOTES:none PiperOrigin-RevId: 183396902
* Added AndroidInstrumentationTestRule to RuleClassProviders.Gravatar jingwen2018-01-26
| | | | | RELNOTES: None. PiperOrigin-RevId: 183388075
* Reduce garbage generated from JavaCompileAction#getArtifactGeneralizedLabel.Gravatar tomlu2018-01-26
| | | | PiperOrigin-RevId: 183380025
* Make experimental_inmemory_dotd_files not fail with local executionGravatar ulfjack2018-01-26
| | | | | | If actions are executed locally, silently fall back to reading the on-disk .d file. PiperOrigin-RevId: 183376432
* Add a few options that tweak the host configuration to parallel those that ↵Gravatar lberki2018-01-26
| | | | | | | | | | | do the same with the target one. I'm not exactly happy at this development, but we already have a host of --host_* options so it's only incremental badness. Fixes #4484. RELNOTES: None. PiperOrigin-RevId: 183375817
* BEP: report analysis failure eventsGravatar Klaus Aehlig2018-01-26
| | | | | | | | | | | | | | ...as completion of the respective top-level targets. In this way, a failure is associated to its root cause, even if the cause is at analysis phase; in particular, visibility errors are correctly associated. For the time beeing, we associate visibility root causes only with labels; it is planned to change that to the more accurate configured labels in a follow-up change. Change-Id: I04121a7cd2099fc65171eae0719fd77b98aef09b PiperOrigin-RevId: 183359798
* Serializers for HashCode, Map.Entry and OptionalGravatar shahan2018-01-25
| | | | | | This should bring Serializers to parity with AutoCodec Marshallers. PiperOrigin-RevId: 183330231
* Serializer implementation for NestedSetGravatar shahan2018-01-25
| | | | | | | | | | | | | Adds some logging to test helpers for size of serialized data. Jan 25, 2018 7:16:25 AM com.google.devtools.build.lib.skyframe.serialization.testutils.SerializerTester testSerializeDeserialize INFO: total serialized bytes = 70 Jan 25, 2018 7:16:25 AM com.google.devtools.build.lib.skyframe.serialization.testutils.ObjectCodecTester testSerializeDeserialize INFO: total serialized bytes = 208 Kryo output is significantly smaller. PiperOrigin-RevId: 183300353
* cquery output: change the output config to be "HOST" for targets configured ↵Gravatar juliexxia2018-01-25
| | | | | | in the host config instead of the usual hash of options. PiperOrigin-RevId: 183293164
* Remove package restriction on android_tools_defaults_jar rule.Gravatar ajmichael2018-01-25
| | | | | RELNOTES: None PiperOrigin-RevId: 183286641
* Step 1 of removing android_sdk.annotations_jar.Gravatar ajmichael2018-01-25
| | | | | | | | | | It seems we don't actually need it for anything. The next step will be to remove the flag from the tools, to stop passing it in all android_sdk rules and then to delete it from android_sdk. RELNOTES: None PiperOrigin-RevId: 183285855
* Add CommandLineItem interface.Gravatar tomlu2018-01-25
| | | | | | | | This interface makes it clearer in the type system exactly how items that go into a CustomCommandLine are turned into strings. It is a preparatory change to allow command line fingerprints to be more cheaply calculated, but it is valuable in itself from a code quality standpoint. PiperOrigin-RevId: 183274022
* Move .includes files, which are required for include scanning, out of theGravatar cpeyser2018-01-25
| | | | | | | | includes output directory, which is wiped for every symlink action. Instead, put .includes files in genfiles. TESTED=manually using repro instructions in b/64534488#comment15 PiperOrigin-RevId: 183268700
* Remove ios_test from Bazel. ios_test is an old rule and this removal is part ↵Gravatar kaipi2018-01-25
| | | | | | of the final steps of the migration process into Skylark. If you were using ios_test, please take a look at ios_unit_test provided by the github.com/bazelbuild/rules_apple project. PiperOrigin-RevId: 183251623
* Serializer implementations for Guava CollectionsGravatar shahan2018-01-25
| | | | PiperOrigin-RevId: 183248133
* Static libraries are not a valid input to arGravatar Googler2018-01-25
| | | | | RELNOTES: None PiperOrigin-RevId: 183246711
* Remove ConfiguredTarget.getTarget() from AspectFunction and replace it with aGravatar mjhalupka2018-01-25
| | | | | | ConfiguredTargetAndTarget.getTarget(). PiperOrigin-RevId: 183241259
* Delete documentation for --analysis_warnings_as_errors.Gravatar Benjamin Peterson2018-01-25
| | | | | | | This option has no effect, so don't give documentation readers false hope. Change-Id: Ibbc0d2f62375fd146fedaa113a39027bd7d65d6c PiperOrigin-RevId: 183240947
* Set $DISPLAY=:0 by default for android_instrumentation_test for Android ↵Gravatar jingwen2018-01-24
| | | | | | | emulators to show up. RELNOTES: None. PiperOrigin-RevId: 183188581
* SerializerAdapterGravatar shahan2018-01-24
| | | | | | Allows ObjectCodec to be registered as a Kryo Serializer. PiperOrigin-RevId: 183149177
* Add codecs for TestConfiguration, ConfiguredFragmentValue, and ↵Gravatar janakr2018-01-24
| | | | | | | | TestConfigFragment. Thanks to shahan@ for the TestConfigFragment code. PiperOrigin-RevId: 183127152
* Remove some references to configuredTarget.getTarget() by getting the target ↵Gravatar mjhalupka2018-01-24
| | | | | | from package. PiperOrigin-RevId: 183121812
* Automated rollback of commit 8e006399c42830855da11898db6707ac9f759762.Gravatar eaftan2018-01-24
| | | | | | | | | | | | | | | | | *** Reason for rollback *** Made obsolete by https://github.com/bazelbuild/bazel/commit/e734c479956df7a675c61f531d769609d3af3e5d *** Original change description *** Blaze now passes an extra flag to JavaBuilder, --testonly, to mark compilations of test code. We plan to use this for Error Prone checks that need to distinguish between test and production code, such as enforcing @VisibleForTesting. PiperOrigin-RevId: 183121768
* Stop storing the base configuration in AspectKey. As with ↵Gravatar janakr2018-01-24
| | | | | | | | https://github.com/bazelbuild/bazel/commit/3863b536bcab8de2000f342c85c31c7ea91cccbe, we don't want to have to serialize/deserialize a BuildConfiguration in a SkyKey. Cutting the edge to the aspect configuration will come in a follow-up. PiperOrigin-RevId: 183117915
* RELNOTES: Fix how libraries to link is specified to archiver actions.Gravatar Googler2018-01-24
| | | | | | 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: 183107904
* Store a SkyKey inside BuildInfoCollectionValue.KeyAndConfig instead of a ↵Gravatar janakr2018-01-24
| | | | | | | | BuildConfiguration: BuildConfigurations are too heavy to be in SkyKeys. This adds an extra dependency for BuildInfoCollectionValues, but there are not many in the graph, and the dep request is now batched, which is better than before. PiperOrigin-RevId: 183106788
* Add codecs for SkyKeys that are needed for null build.Gravatar janakr2018-01-24
| | | | PiperOrigin-RevId: 183102476
* PiperOrigin-RevId: 183094604Gravatar ajmichael2018-01-24
|
* Introduce a wrapper around the ImmutableSortedSet<Class<? extends ↵Gravatar janakr2018-01-24
| | | | | | | | BuildConfiguration.Fragment>> set of Fragment classes that is part of the BuildConfigurationValue.Key. This class allows us to compute a fingerprint of the wrapped ImmutableSortedSet, making equality comparisons fast. The number of additional wrapper objects is the number of distinct sets of fragment classes, so 1. (In fact, we don't even need to compute a fingerprint, since reference equality does the job for us here, but we do it just to be conservative.) This CL has a performance benefit for Bazel currently, but has a bigger performance benefit in the following changes, where there are more BuildConfigurationValue.Key objects to compare. PiperOrigin-RevId: 183090122