aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Fix SkylarkCallable-annotation detection to appropriately handle methods ↵Gravatar cparsons2018-05-24
| | | | | | | with generic parameters RELNOTES: None. PiperOrigin-RevId: 197932265
* RemoteFileArtifactValue no longer tracks mtime.Gravatar shahan2018-05-24
| | | | PiperOrigin-RevId: 197924560
* Remove the flag --fail_on_errors.Gravatar cnsun2018-05-24
| | | | | RELNOTES:none. PiperOrigin-RevId: 197923013
* GDPR Compliance: Add link to Google Privacy Policy to Bazel Site FooterGravatar Serge2018-05-24
| | | | | | Closes #5257. PiperOrigin-RevId: 197915412
* Log serialized BuildConfigurationValue$Key and its size, for easier ↵Gravatar janakr2018-05-24
| | | | | | diagnosing of bloat. PiperOrigin-RevId: 197915327
* Migrate struct() to skylarkbuildapiGravatar cparsons2018-05-24
| | | | | RELNOTES: None. PiperOrigin-RevId: 197915097
* Expose [AndroidAssetsInfo].local_assets, [AndroidAssetsInfo].local_asset_dir ↵Gravatar Googler2018-05-24
| | | | | | | and [AndroidResourcesInfo].r_txt to Skylark. RELNOTES: none PiperOrigin-RevId: 197902129
* With ActionFS, there is no need to delete previous output files. These ↵Gravatar felly2018-05-24
| | | | | | should not exist. PiperOrigin-RevId: 197895718
* Unfork SplitTransition / PatchTransition invocations.Gravatar gregce2018-05-24
| | | | | | Part of https://docs.google.com/document/d/1_UJKmAQ9EE8i3Pl0il3YLTYr-Q9EKYYyLatt2zohfyM/edit# PiperOrigin-RevId: 197890685
* Reject files when the first line is indented.Gravatar laurentlb2018-05-24
| | | | | | | | | | | | A bug in the lexer ignored indentation on the first line of a file. This now causes an error. Also, remove the COMMENT token from the lexer. Comments are now accessed separately. This will allow further optimizations in the lexer. It also aligns the code a bit more with the Go implementation. RELNOTES[INC]: Indentation on the first line of a file was previously ignored. This is now fixed. PiperOrigin-RevId: 197889775
* remote/http: simplify download logicGravatar Jakob Buchgraber2018-05-24
| | | | | | | | Netty's HttpClientCodec always emits a LastHttpContent event and so we don't need to track the received bytes manually to know when we are done reading. The HttpBlobStore compares the hashes of the received bytes to give us confidence that what we received is correct. Closes #5244. PiperOrigin-RevId: 197887877
* Expose FileProvider in skylarkbuildapiGravatar asteinb2018-05-24
| | | | | | | | | | | The Android data Skylark API includes references to FileProvider. To move that API to the skylarkbuildapi, we must first move this provider. For more information about this migration, see https://docs.google.com/document/d/1UDEpjP_qWQRYsPRvx7TOsdB8J4o5khfhzGcWplW7zzI/ RELNOTES: none PiperOrigin-RevId: 197882296
* Delete GlobListGravatar laurentlb2018-05-24
| | | | | RELNOTES: None. PiperOrigin-RevId: 197881012
* shallow_since tests and doc improvementsGravatar Ed Baunton2018-05-24
| | | | | | | | | | | | This changeset introduces tests for the `shallow_since` functionality that was introduced in 6496b1d1d25025f33406b1eaf9949cab126f08bd. We test that if the user specifies a tag as well as a `shallow_since` that it fails since they are incompatible. We also verify that specifying a commit before the `shallow_since` date causes the clone to fail (albeit currently with a non-useful error message; perhaps that could be improved at a later date). It also documents more clearly how to use the feature by explaining the format of the 'since' string. Closes #5183. PiperOrigin-RevId: 197875727
* distfile: pack the archives needed later in the buildGravatar Klaus Aehlig2018-05-24
| | | | | | | | | | | | ...and point --experimental_distdir there, so that offline builds are again possible out of the distribution archive. Related #5175. Fixes #5202. To be cherry-picked for #5056. Change-Id: I634296e9d83e4e18ed966b42f35acc63061259d9 PiperOrigin-RevId: 197866998
* runfiles,cc: merge strategies into RunfilesGravatar Laszlo Csomor2018-05-24
| | | | | | | | | | | | | | Merge the manifest- and directory-based runfiles strategies into the Runfiles class. The resulting Runfiles object can look up runfiles from the manifest or from the filesystem, as needed. Change-Id: Ifff4b76849ce67248bb9152901024e241aaea800 Closes #5251. Change-Id: Ifff4b76849ce67248bb9152901024e241aaea800 PiperOrigin-RevId: 197863872
* git.bzl: fall back to full clone if shallow options are not supportedGravatar Klaus Aehlig2018-05-24
| | | | | | | | | | The `--shallow-since` option of git was introduced only in version 2.11 of git. However, some widely used distributions ship older versions of git. So fall back to fully cloning or fetching a repository if the respective shallow option is not know to the ambient git command used. Change-Id: I8f0aa0a12e294ff9cc8325975bd9333f6bf50939 PiperOrigin-RevId: 197863797
* Make //src:derived_java_srcs RBE readyGravatar Jakob Buchgraber2018-05-24
| | | | | | | | | | If ${JAVABASE} is a relative path prefix it with ${PWD} but if it's an absolute path just use that i.e. when specified via --javabase. Closes #5238. PiperOrigin-RevId: 197863163
* Refactor analysis failure reporting, report loading failuresGravatar ulfjack2018-05-24
| | | | | | | | Split the AnalysisFailureEvent into a legacy and a new variant; always post an AnalysisFailureEvent, even if the legacy variant is not posted - this gives us some coverage for loading failures. PiperOrigin-RevId: 197862257
* PiperOrigin-RevId: 197857419Gravatar plf2018-05-24
|
* For compilations with C++ modules, treat private headers (header files inGravatar Googler2018-05-23
| | | | | | | | | | | | | | | 'srcs') as textually included headers. A private header is never exported to a different module and thus cannot be used by a different module. We never need to compile a module just because one of it's private headers is used from somewhere else. There must be a different cc_library (and thus module) that exports the header. At the same time, being compiled into a module doesn't provide benefits for the compilation of that cc_library itself, because a module created for a cc_library A is never used when compiling any of A's srcs. PiperOrigin-RevId: 197846388
* Make BuildOptions$OptionsDiffForReconstruction deterministic in its ↵Gravatar janakr2018-05-23
| | | | | | construction. Also restrict visibility of some test-only OptionsDiff methods, and remove a server-specific part of the ConfiguredTargetKey #toString representation. PiperOrigin-RevId: 197830577
* Make the SplitTransition, PatchTransition interfaces more compatible.Gravatar gregce2018-05-23
| | | | | | Part of https://docs.google.com/document/d/1_UJKmAQ9EE8i3Pl0il3YLTYr-Q9EKYYyLatt2zohfyM/edit# PiperOrigin-RevId: 197800831
* Rename some instances of overloaded skylark-accessible methodsGravatar cparsons2018-05-23
| | | | | RELNOTES: None. PiperOrigin-RevId: 197799961
* Remove colspan=2 from test encyclopedia entry.Gravatar Googler2018-05-23
| | | | | | Was creating an extra column that stuck out from the rest. PiperOrigin-RevId: 197785920
* Add --batch deprecation warning.Gravatar ccalvarin2018-05-23
| | | | | RELNOTES: --batch is deprecated PiperOrigin-RevId: 197780675
* De-document the Skylark "data" transition.Gravatar gregce2018-05-23
| | | | | | This is going away with the removal of C++ LIPO support. PiperOrigin-RevId: 197779736
* Simplify split transition semantics: noops now return the input build options.Gravatar gregce2018-05-23
| | | | | | This results in less special logic in the implementation and a simpler API. PiperOrigin-RevId: 197772283
* Initial implementation of a Skylark debug server API.Gravatar Googler2018-05-23
| | | | | | | | | | | | | | | | | | I've pulled out the API for separate review. It includes all hooks from blaze/skylark used by the debugger. Debuggable thread contexts are currently declared in 3 places: - BuildFileAST (top-level evaluation of BUILD files) - SkylarkRuleConfiguredTargetUtil (rules) - SkylarkAspectFactory (aspects) The purpose of declaring these contexts is so that the debugger can track currently-active threads (and stop tracking them when the task is completed). Details of the actual debugging server are in unknown commit. PiperOrigin-RevId: 197770547
* Rename PatchTransition.apply to PatchTransiton.patch.Gravatar gregce2018-05-23
| | | | | | | This unclashes with the incoming ConfigurationTransition.apply method described in https://docs.google.com/document/d/1_UJKmAQ9EE8i3Pl0il3YLTYr-Q9EKYYyLatt2zohfyM/edit#heading=h.96gongkwg852. PiperOrigin-RevId: 197769784
* Restrict module usage to C++ actions. Other actions don't support compilingGravatar Googler2018-05-23
| | | | | | | | using C++ modules (yet) and thus we are paying some of the cost such as building transitive modules and a taller critical path without reaping any benefits. PiperOrigin-RevId: 197768129
* Enable test properties to be exported for robolectric tests.Gravatar Googler2018-05-23
| | | | | | | | | With this change, all classes in com.google.testing.junit.runner.util will be loaded from the system classloader for robolectric tests. This fixes a problem where TestPropertyExporter and TestIntegrationsRunnerIntegration in the com.google.testing.junit.runner.util package were being loaded twice: once by the test runner into the system classloader, and again into the robolectric's classloader during test execution. Since there were two separate instances, the test properties exported during robolectric's testing lifecycle were disconnected from the test runner which writes out the properties. RELNOTES: none PiperOrigin-RevId: 197761010
* Rename an AppleToolchain method to prevent overloading a skylark-exposed methodGravatar cparsons2018-05-23
| | | | | RELNOTES: None. PiperOrigin-RevId: 197744356
* Create GlobalBootstrap and the Bootstrap interface to add portions of the ↵Gravatar cparsons2018-05-23
| | | | | | | build API to a global environment. RELNOTES: None. PiperOrigin-RevId: 197742427
* Create tests verifying appropriate propagation of InterruptedException ↵Gravatar cparsons2018-05-23
| | | | | | | during filesystem operations. RELNOTES: None. PiperOrigin-RevId: 197740585
* Remove FlagListGravatar hlopko2018-05-23
| | | | | | | This abstraction is not needed anymore. RELNOTES: None. PiperOrigin-RevId: 197739700
* Expose the runtime output jars in the JavaInfo provider to Skylark. This willGravatar Googler2018-05-23
| | | | | | | | | | the mobile-install aspect to pickup and desugar+dex only runtime jars without running a manual filter step (which breaks transitive_runtime_jars depset at every level). NOTE: The method that this one wraps was originially created for the native dex aspect which will eventually be migrated to Skylark too. PiperOrigin-RevId: 197739483
* C++: Expose additional methods for CcCompilationInfo and CcLinkingInfoGravatar plf2018-05-23
| | | | | | | This is needed for re-writing match_clif in Skylark. RELNOTES:none PiperOrigin-RevId: 197738067
* Stop passing RuleContext to all of the Android Data Skylark APIGravatar asteinb2018-05-23
| | | | | RELNOTES: none PiperOrigin-RevId: 197735344
* Remove deprecated method that no longer has any usages.Gravatar dannark2018-05-23
| | | | | RELNOTES: None PiperOrigin-RevId: 197731580
* Move resource busybox actions to BusyBoxActionBuilder and AndroidDataContextGravatar asteinb2018-05-23
| | | | | | | | | | | | | | | | | | | | | | | BusyBoxActionBuilder makes much cleaner action builders while making it harder to do Bad Things (like collapsing NestedSets in analysis, or adding an artifact to one of the command line and the inputs but not both). Also: - In merging, simplify the code somewhat by removing unneeded conditionals - for example, the parsed merging action will always be built given the current code. - In the few builders where we aren't doing so already, parameter files should always be shell quoted and always be used when the OS is Windows. The BusyBox should always support the former and require the latter (although sufficiently large inputs may have masked this by triggering parameter files in Windows anyway). - In the builder for linking (within validation), no longer collapse the NestedSet of transitiveCompiledSymbols when adding them to the inputs. Using the new BusyBoxActionBuilder code, trying to do this would throw an IllegalStateException. RELNOTES: none PiperOrigin-RevId: 197728382
* runfiles,cc: Runfiles uses manifest AND directoryGravatar Laszlo Csomor2018-05-23
| | | | | | | | | | | | | | | | | | | | | | | | Change the C++ runfiles library so it can use the runfiles manifest (if present) and the runfiles directory (if present) simultaneously. If the Runfiles object fails to look up a runfile from the manifest (or the manifest didn't exist or wasn't found) then it looks it up from the runfiles directory. This change allows using the same binary with and without a runfiles tree, which is often what sets local and remote runs apart. https://github.com/bazelbuild/bazel/issues/4460 Change-Id: Iae879ff084ba084fcd7c111638ddeae4c6754f4f Closes #5235. Change-Id: Iae879ff084ba084fcd7c111638ddeae4c6754f4f PiperOrigin-RevId: 197726412
* Rollforward of CL/197136304:Gravatar tomlu2018-05-23
| | | | | | | | | | | | | | Remove java support from proto_library. NEW: Allow java_* rules to depend on proto_libraries via runtime_deps and exports. This should avoid the breakage that caused the original rollback. The edges are no-ops and could be removed. *** Reason for rollback *** Targets in the repository are still able to depend on proto_library rules even after the --noemit_proto_java_outputs flag flip. Removal of the Java support from proto_library breaks them. PiperOrigin-RevId: 197725926
* Automated rollback of commit 724bdbfa47576c67eeec5c74d594203fe05188c7.Gravatar laszlocsomor2018-05-23
| | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Change introduced flakiness in //src/test/java/com/google/devtools/build/lib:actions_test Verified the culprit commit using: bazel test //src/test/java/com/google/devtools/build/lib:actions_test --runs_per_test=100 --notest_keep_going -t- See https://github.com/bazelbuild/bazel/issues/5242. *** Original change description *** Relax the threshold for calling getDigestInExclusiveMode(). If the policy goal is to minimize disk seeks, this should be equally good. RELNOTES: None. PiperOrigin-RevId: 197720793
* http.bzl: add http_jarGravatar Klaus Aehlig2018-05-23
| | | | | | | | http_jar is another version of the native http_archive. So add it to the Skylark-implementation as well. Change-Id: Icbaafe18d4836e14b0f5eb09dc3ab0607f9e391d PiperOrigin-RevId: 197719717
* Windows: Fix link parameter file for dynamic linkingGravatar pcloudy2018-05-23
| | | | | | | | Related issue: https://github.com/bazelbuild/bazel/issues/1013 Fix https://github.com/bazelbuild/bazel/issues/5243 RELNOTES: PiperOrigin-RevId: 197715690
* Add a flag to disallow LIPO to aid in the rollout of the removal of LIPO ↵Gravatar lberki2018-05-23
| | | | | | | support. RELNOTES: None. PiperOrigin-RevId: 197708692
* Rename CcRunfiles fields one more time to be perfectly accurate.Gravatar hlopko2018-05-23
| | | | | RELNOTES: None. PiperOrigin-RevId: 197707463
* Remove some dead AbstractAction constructorsGravatar ulfjack2018-05-23
| | | | | | | | The constructors which don't accept an action environment should not be called, with the exception of subclasses that don't run any subprocesses, and therefore don't need an environment. PiperOrigin-RevId: 197706734
* RepositoryResolvedEvent: only record the explicitly set original attributesGravatar Klaus Aehlig2018-05-23
| | | | | | | | | | Prune down the list of attributes to the explicitly set ones when reporting the original attributes. The attribute list also contains attributes implicitly added from default values, but the original attributes are intended to record the original way the rule was invoked from the WORKSPACE file. Change-Id: I918656159850a52e9afc9f045701b0ea065f4125 PiperOrigin-RevId: 197702283