aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com
Commit message (Collapse)AuthorAge
* Remove hard-wired basenames for the test setup and the coverage collection ↵Gravatar lberki2018-02-09
| | | | | | | | | script. Accomplished by creating an explicit attribute for both of them on test actions. RELNOTES: None. PiperOrigin-RevId: 185132460
* Simplify BinTools setup for integration testsGravatar ulfjack2018-02-09
| | | | | | Progress on #4608. PiperOrigin-RevId: 185126689
* experimental_repository_cache: support relative pathsGravatar Klaus Aehlig2018-02-09
| | | | | | | | | | ...and interpret them relative to the workspace directory. Improves on #3516. In fact, fixes the original request of supporting relative paths. Change-Id: Ibbb6fd43179d589ad477427e47e26c773c7a04de PiperOrigin-RevId: 185121629
* Support local search for http archivesGravatar Klaus Aehlig2018-02-09
| | | | | | | | | | | | | | | | | | With --experimental_repository_cache, bazel has means of avoiding downloading the same archive again. However, this requires bazel to first download it itself, as we make no guarantee about the internal structure of that cache; this, in turn, does not play well in situations where bazel has to cooperate with other tools, e.g., because the bazel build is just one step in a larger package building process. Therefore, add an experimental option allowing to specify directories where the outer process may have placed needed files and make bazel not download them if a file with correct name and hash could be found in one of those directories. In this way, cooperation is possible without patching all entries in the WORSPACE file. Change-Id: I43240b8b59bf8472ec0310661015899e46491236 PiperOrigin-RevId: 185115713
* Replace path implementation.Gravatar tomlu2018-02-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Path and PathFragment have been replaced with String-based implementations. They are pretty similar, but each method is dissimilar enough that I did not feel sharing code was appropriate. A summary of changes: PATH ==== * Subsumes LocalPath (deleted, its tests repurposed) * Use a simple string to back Path * Path instances are no longer interned; Reference equality will no longer work * Always normalized (same as before) * Some operations will now be slower, like instance compares (which were previously just a reference check) * Multiple identical paths will now consume more memory since they are not interned PATH FRAGMENT ============= * Use a simple string to back PathFragment * No more segment arrays with interned strings * Always normalized * Remove isNormalized * Replace some isNormalizied uses with containsUpLevelReferences() to check if path fragments try to escape their scope * To check if user input is normalized, supply static methods on PathFragment to validate the string before constructing a PathFragment * Because PathFragments are always normalized, we have to replace checks for literal "." from PathFragment#getPathString to PathFragment#getSafePathString. The latter returns "." for the empty string. * The previous implementation supported efficient segment semantics (segment count, iterating over segments). This is now expensive since we do longer have a segment array. ARTIFACT ======== * Remove Path instance. It is instead dynamically constructed on request. This is necessary to avoid this CL becoming a memory regression. RELNOTES: None PiperOrigin-RevId: 185062932
* Remove references to getTarget(). Requires threading through anGravatar mjhalupka2018-02-08
| | | | | | | ExtendedEventHandler so we can get the target via the package manager during rule dumps. PiperOrigin-RevId: 185042522
* Add support for javabeans-style getters ("getFoo()", "isFoo()") to AutoCodec'sGravatar cpeyser2018-02-08
| | | | | | AutoValue support. This is required to serialize ActionOwner. PiperOrigin-RevId: 185037291
* remote: Add support for HTTP Basic AuthGravatar Jakob Buchgraber2018-02-08
| | | | | | Closes #4609. PiperOrigin-RevId: 185032751
* Add a CODEC for LibraryToLink, which is required to serialize CppLinkAction.Gravatar cpeyser2018-02-08
| | | | PiperOrigin-RevId: 185029456
* Move BazelRuleClassProvider.SH_RULES to its own class.Gravatar lpino2018-02-08
| | | | PiperOrigin-RevId: 185021810
* Add an AutoCodec marshaller for UUID. This is required to serializeGravatar cpeyser2018-02-08
| | | | | | CppCompileAction. PiperOrigin-RevId: 185020942
* Change $cc_toolchain_type to NODEP_LABEL so there is no actual dependency.Gravatar jcater2018-02-08
| | | | PiperOrigin-RevId: 185018321
* User-friendlier representation of a missing digest.Gravatar olaola2018-02-08
| | | | | | | | I moved it into DigestUtil preemptively in case we switch to binary instead of hex representation. TESTED=manually RELNOTES: None PiperOrigin-RevId: 185007558
* Remove another getTarget() call from PrintActionCommand.Gravatar mjhalupka2018-02-08
| | | | PiperOrigin-RevId: 185006324
* Avoid integer overflow breaking protobuf artifact ordering.Gravatar cparsons2018-02-08
| | | | | | | An integer overflow caused by taking the difference between two hashcodes would result in nondeterministically having sortedCopy fail. Integer.compare is safer. RELNOTES: None. PiperOrigin-RevId: 185005542
* Add TODO for removing LipDataTransitionRuleSet when LIPO is goneGravatar gregce2018-02-08
| | | | | | Followup to a5d00d6db98a09b0a644db77301d9b6ed4f2a2ff PiperOrigin-RevId: 185001965
* Remove usesFuse output service method.Gravatar felly2018-02-08
| | | | PiperOrigin-RevId: 184998166
* Refactor RunCommand so that it's a bit less messy.Gravatar lberki2018-02-08
| | | | | RELNOTES: None. PiperOrigin-RevId: 184996540
* Give a reasonable environment for tests run by "blaze run --direct_run".Gravatar lberki2018-02-08
| | | | | | | | | | | | It's not entirely correct, but almost. The code in RunCommand becomes somewhat more confusing. Cleanup change incoming. Fixes #2815. RELNOTES[INC]: "blaze run --direct_run" with tests now gives the test an approximation of the official test environment. PiperOrigin-RevId: 184992651
* Fixing #4585: broken re-execution of orphaned actions.Gravatar olaola2018-02-08
| | | | | | | | This is an important regression, we will want to patch the fix into 0.10 TESTED=fixed unit test, with A/B testing RELNOTES: Resolved an issue where a failure in the remote cache would not trigger local re-execution of an action. PiperOrigin-RevId: 184991670
* Suppress ThinLTO indexing for testonly targetsGravatar Googler2018-02-08
| | | | | | | | Applies ThinLTO scalability fix https://github.com/bazelbuild/bazel/commit/8c5e290dfab3cab378a9ca107ecdd6267403cd4b to targets (e.g. cc_binary) marked "testonly = 1". RELNOTES: None PiperOrigin-RevId: 184991176
* Move BazelRuleClassProvider.J2OBJC_RULES to its own class.Gravatar lpino2018-02-08
| | | | PiperOrigin-RevId: 184983111
* Introduce -c source_file -o output_file build variablesGravatar hlopko2018-02-08
| | | | | | | | | | | | | | Prior to this cl CompileCommandLine would (almost) unconditionally emit -c and -o flags. This cl removes this logic and relies on crosstool to emit these flags. This is another small step towards platform independent C++ rules. Memory use is not affected, since the build variables used by this cl are already exposed, this cl just forces crosstools to use it. Encore of https://github.com/bazelbuild/bazel/commit/f26e8694ae78599b3e2004e3360eaf3443fa53a6. RELNOTES: None. PiperOrigin-RevId: 184981106
* Split CppIncludeScanningContext out of CppCompileActionContextGravatar ulfjack2018-02-08
| | | | | | Rename IncludeScanningContext to CppIncludeExtractionContext, which more closely matches its semantics. PiperOrigin-RevId: 184974810
* C++: Split C++ library into two classes, compilation and linkingGravatar plf2018-02-08
| | | | | | | These will be separate calls in the Skylark API. RELNOTES:none PiperOrigin-RevId: 184961734
* Remove fixture_args from android_instrumentation_test.Gravatar jingwen2018-02-07
| | | | | | | These can be part of the fixture targets. RELNOTES: None. PiperOrigin-RevId: 184943342
* Extract registry functionality from ObjectCodecsGravatar michajlo2018-02-07
| | | | | | | | | | This partially solves the age old problem of how to find a codec for a value we don't know the type of at compile time, and allows us to represent such values on the wire more compactly. @AutoCodec's injecting codec should be able to make use of this right away - we'll need to make an API change to the ObjectCodec interface to allow the existing system to make use. PiperOrigin-RevId: 184918173
* Automated rollback of commit e01d0c8f9019b7e0beb406ea3932e7dc84b6f333.Gravatar Googler2018-02-07
| | | | | | | | | | | | | *** Reason for rollback *** Has no effect, since one version violation does not use _deploy.jar/_filtered.jar. *** Original change description *** Filter out generated proto extension registry loader from instrumentation APK. RELNOTES: None PiperOrigin-RevId: 184918011
* Drive-by clean-up: Remove unused visitedMapGravatar shreyax2018-02-07
| | | | PiperOrigin-RevId: 184913521
* Hooks to support core library desugaring in Android buildsGravatar kmb2018-02-07
| | | | | | RELNOTES: None. PiperOrigin-RevId: 184909685
* Add a CODEC for some dependencies of CppCompileAction: CompileCommandLine andGravatar cpeyser2018-02-07
| | | | | | | | CcToolchainFeatures.Variables. We rephrase the nocopts filter from a Predicate<String> to a custom class, since AutoCodec cannot serialize a Predicate. PiperOrigin-RevId: 184902162
* @AutoCodec adds Singleton strategy.Gravatar shahan2018-02-07
| | | | PiperOrigin-RevId: 184889583
* Refactor to get rid of some getConfiguredTarget() calls in tests and replaceGravatar mjhalupka2018-02-07
| | | | | | | them with getConfiguredTargetAndTarget() so we can get rid of ConfiguredTarget.getTarget() callers. This should be a test only change. PiperOrigin-RevId: 184877255
* When requesting nodes* look first in target configuration, then host (used ↵Gravatar juliexxia2018-02-07
| | | | | | | | | | | | to be the other way around). This fixes b/72817591 which saw the following - (1) somepath(//foo, //bar) --nohost_deps -> empty query results (2) deps(//foo) --nohost_deps | grep '//bar' -> found //bar This happened because //bar was configured in both the host and the target config. There was no path from //foo-target -> //bar-host because of the --nohost_deps setting (1) but //bar-target did exist in the results of (2) PiperOrigin-RevId: 184868484
* Non-test AspectClass codecs.Gravatar shahan2018-02-07
| | | | PiperOrigin-RevId: 184862552
* Improved invalid/unsupported NDK revision warning message.Gravatar jingwen2018-02-07
| | | | | | | | Suggestion from @angersson on GitHub: https://github.com/bazelbuild/bazel/issues/4068#issuecomment-347627252 GITHUB: https://github.com/bazelbuild/bazel/issues/4068 RELNOTES: Improved clarity of warning message for unsupported NDK revisions. PiperOrigin-RevId: 184852316
* BEP: ensure that TestAttempts are reported after their targetGravatar Klaus Aehlig2018-02-07
| | | | | | | | | | Ensure that each test attempt is only reported after the report of the completion of the build of the corresponding test target. Normally this should happen anyway, but due to races on the internal event bus, the order of the report might be messed up. So add an explicit order constraint. Change-Id: I4d325bc31a46dcdf8763ba5416b5135a0978536e PiperOrigin-RevId: 184825306
* Add NestedSetCodec to AutoCodec's deploy jar.Gravatar cpeyser2018-02-06
| | | | PiperOrigin-RevId: 184784669
* Generate a CODEC for CppCompilationContext using AutoCodec. This is ↵Gravatar cpeyser2018-02-06
| | | | | | | | required in order to serialize CppCompileAction. Rephrase CppCompilationContext's pregreppedHeaders field as its own value class instead of Pair<Artifact, Artifact>. We do this because NestedSet support in AutoCodec cannot serialize a NestedSet of a generic type. PiperOrigin-RevId: 184740075
* RELNOTES: Fix FDO_STAMP_MACRO to only be set when fdoBuildStamp is not null.Gravatar Googler2018-02-06
| | | | PiperOrigin-RevId: 184734801
* PiperOrigin-RevId: 184726412Gravatar Googler2018-02-06
|
* Don't generate the blaze generated extension registry for Android tests that ↵Gravatar Googler2018-02-06
| | | | | | | | | | define a binary_under_test. They are filtered out for deployment anyways so it's unnecessary work and it confuses the one version detector. RELNOTES: n/a PiperOrigin-RevId: 184725205
* Always do filtering in execution (even after doing it in analysis)Gravatar Googler2018-02-06
| | | | | | | | | | | | Filtering only in analysis was neglecting the possibility of resources being in filesets, the contents of which are not available in analysis. As such, we must *always* filter in execution, even though it's usually just going to be a no-op. Also, add some documentation of same. RELNOTES: none PiperOrigin-RevId: 184722564
* @AutoCodec support for superclasses having generic parameters.Gravatar shahan2018-02-06
| | | | PiperOrigin-RevId: 184720361
* Add Supplier support to AutoCodec.Gravatar cpeyser2018-02-06
| | | | PiperOrigin-RevId: 184710375
* Update ToolchainResolutionFunction to consider multiple availableGravatar John Cater2018-02-06
| | | | | | | | | execution platforms. Part of #4442. Change-Id: I6678d57f4aaadcb19032bf58820606242ba66a25 PiperOrigin-RevId: 184707708
* Throw NoCodecException on ByteString getCodec specializationGravatar michajlo2018-02-06
| | | | | | Looks like this got missed. PiperOrigin-RevId: 184701334
* Fix CrosstoolConfigurationLoader to not assume the presense of a BUILDGravatar John Cater2018-02-06
| | | | | | | file. Change-Id: I5b66b91f016e12e546600f585546fc56d9511303 PiperOrigin-RevId: 184698749
* Delete the now-useless interfaces ServerCommand and CommandExecutor.Gravatar lberki2018-02-06
| | | | | | | | | We apparently don't have any other implementations of these interfaces than BlazeCommandDispatcher, so let's not have them at all; we can always put back an interface with the exec() method if need be. RELNOTES: None. PiperOrigin-RevId: 184698573
* Makes @AutoCodec only use Instantiator parameter type information and ignoreGravatar shahan2018-02-06
| | | | | | field type information. PiperOrigin-RevId: 184695891