aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main
Commit message (Collapse)AuthorAge
* Re-add WalkableGraph#isUpToDate and BuildDriver#alreadyEvaluatedGravatar Googler2018-01-18
| | | | | RELNOTES: None PiperOrigin-RevId: 182389876
* Add serialization codec for SkylarkImports. This is needed to serialize ↵Gravatar janakr2018-01-18
| | | | | | | | SkylarkAspectLoadingKey. Also add a @VisibleForSerialization annotation to @AutoCodec, since we're going to need to increase serialization visibility a lot here, and clean up some unnecessary modifiers. PiperOrigin-RevId: 182389162
* Start the process of getting Target out of ConfiguredTarget: add a new ↵Gravatar janakr2018-01-18
| | | | | | | | | | | | container, ConfiguredTargetAndTarget, that can be used to access Targets, and deprecate ConfiguredTarget#getTarget. ConfiguredAndTargetObjects are intended to be limited in scope, not being persisted to Skyframe. The eventual plan is to remove the target field from ConfiguredTarget. This CL is mostly straightforward, except for dealing with AliasConfiguredTargets, which cause some complications. A significant cleanup is still needed before #getTarget can be removed, but I don't see any impossible blockers. We will may still need to store a Target-like object in ConfiguredTarget (that has the RuleClass, or at least a string representation of it, for instance), but that will let us avoid storing a full Target together with its associated Package. PiperOrigin-RevId: 182371566
* Create function createJavaInfo with new API. Implement JavaExportsProvider.Gravatar dbabkin2018-01-18
| | | | | | | | | | | | Added tests for checking JavaExportsProvider state. Refactored logic working with collection in favor of using Streams to improve readability. All other providers will be implemented in next CLs. previous CL with JavaCompilationArgsProvider implementation is https://github.com/bazelbuild/bazel/commit/32dff21d00ad7d1bdf50e8761d675a6e7e002de9, JavaSourceJarsProvider : https://github.com/bazelbuild/bazel/commit/5bd53cb609480ca896ca2d011f415b424c63ce63 RELNOTES:none PiperOrigin-RevId: 182342490
* Make comment more readable and correct.Gravatar nharmata2018-01-17
| | | | | RELNOTES: None PiperOrigin-RevId: 182272900
* Introduce Root class.Gravatar tomlu2018-01-17
| | | | | | | | | | | This class represents a root (such as a package path or an output root) used for file lookups and artifacts. It is meant to be as opaque as possible in order to hide the user's environment from sky keys and sky functions. Roots are used by RootedPaths and ArtifactRoots. This CL attempts to make the minimum number of modifications necessary to change RootedPath and ArtifactRoot to use these fields. Deprecated methods and invasive accessors are permitted to minimise the risk of any observable changes. RELNOTES: None PiperOrigin-RevId: 182271759
* Suggest 'bazel clean --expunge' to fix Xcode errors in AppleCcToolchain.Gravatar ruperts2018-01-17
| | | | | RELNOTES: None. PiperOrigin-RevId: 182271042
* Add deprecation warning message to mobile-install classic mode.Gravatar Googler2018-01-17
| | | | | | | | | We've notified the top classic users by email that classic mode is deprecated. As we are no longer actively supporting classic mode, we'd like users to move over to skylark. RELNOTES: None. PiperOrigin-RevId: 182268733
* Fix forbidding of If statements in BUILD filesGravatar brandjon2018-01-17
| | | | | | | | | The bug also permitted For statements in BUILD files so long as they were contained within an If statement (i.e. not at the top level). Also add minor guidance to error messages. RELNOTES: None PiperOrigin-RevId: 182236172
* [Autocodec] Add a ImmutableSetCodec. ImmutableCollections have a deterministicGravatar Googler2018-01-17
| | | | | | iteration order so we should be okay. PiperOrigin-RevId: 182235068
* Fix blaze crashes with running under JDK9.Gravatar tomlu2018-01-17
| | | | | RELNOTES: None PiperOrigin-RevId: 182223038
* Migrate Apple providers to abide by Native Declared Provider best practices.Gravatar cparsons2018-01-17
| | | | | | | This has the effect of documenting exposed struct fields on these providers. RELNOTES: None. PiperOrigin-RevId: 182221042
* Filter out generated proto extension registry loader from instrumentation APK.Gravatar Googler2018-01-16
| | | | | RELNOTES: None PiperOrigin-RevId: 182145172
* Codec for Location.Gravatar shahan2018-01-16
| | | | | | * Moves SingletonCodec to third_party. PiperOrigin-RevId: 182143153
* Have UnixGlob explicitly handle RuntimeExceptions encountered by individual ↵Gravatar nharmata2018-01-16
| | | | | | | glob tasks. RELNOTES: None PiperOrigin-RevId: 182125500
* Add assets support to aar_import.Gravatar ajmichael2018-01-16
| | | | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/4439. Empty assets are handled by writing out an empty file named "assets/empty_asset_generated_by_bazel~", which will silently be ignored by AAPT. RELNOTES: aar_import now supports assets. PiperOrigin-RevId: 182110400
* Remove mtime field from FileStateValue.Gravatar janakr2018-01-16
| | | | | | We stopped treating empty files specially in the execution phase after unknown commit. So this code is mostly if not entirely orphaned. The only scenario in which this would lead to a semantic difference that I can think of is if the user is running with --nouse_action_cache and a running Bazel server, and they have an action they want to re-run when an empty input file changes, which isn't something we need to be concerned about. PiperOrigin-RevId: 182109952
* Default to filtering resources in analysisGravatar Googler2018-01-16
| | | | | RELNOTES: none PiperOrigin-RevId: 182100169
* Remove ConfigurationTransitionProxy.NULLGravatar gregce2018-01-16
| | | | PiperOrigin-RevId: 182099803
* Remove EventBus from SkyframeActionExecutorGravatar ulfjack2018-01-16
| | | | | | Post to the Skyframe Environment instead. PiperOrigin-RevId: 182096559
* Enable incremental dexing of proguarded Android binaries in Bazel (one ↵Gravatar kmb2018-01-16
| | | | | | | | | dexbuilder action by default). Binaries can opt in by adding "incremental_dexing = 1" attribute. RELNOTES: Proguarded Android binaries can be built with incremental dexing. PiperOrigin-RevId: 182092699
* Move RootedPathCodec to an inner class of RootedPath.Gravatar tomlu2018-01-16
| | | | PiperOrigin-RevId: 182087153
* Rename Root to ArtifactRoot.Gravatar tomlu2018-01-16
| | | | | | This is slightly more descriptive, and we will potentially want to use the name Root for a broader concept shared between ArtifactRoot and RootedPath. PiperOrigin-RevId: 182082367
* Fix value collision in builtins registryGravatar brandjon2018-01-16
| | | | | | | If two values compared equal (e.g., MethodLibrary#bool and SkylarkAttr#bool), we were dropping one of them in favor of the other. RELNOTES: None PiperOrigin-RevId: 182057611
* Support array fields in AutoCodec. To do this, introduceGravatar cpeyser2018-01-16
| | | | | | | SerializationCodeGenerator, which is a generalization of Marshaller that supports primitive and array values. PiperOrigin-RevId: 182053617
* Refactor py_wrap_cc to go through CcLibraryHelper.Gravatar plf2018-01-16
| | | | | RELNOTES:none PiperOrigin-RevId: 182051418
* Fix copy-paste error in py_test docsGravatar Rodrigo Queiro2018-01-16
| | | | | Change-Id: I5fa8412fe0673b71a6e17adb39be0a208ee54f63 PiperOrigin-RevId: 182048035
* C++: Fixes linkstamp not compiled with PIC.Gravatar plf2018-01-16
| | | | | RELNOTES:none PiperOrigin-RevId: 182044727
* Change the mnemonic of C++ link stamp compile actions so that extra actions ↵Gravatar lberki2018-01-16
| | | | | | | can be attached to C++ compile actions without tickling the bug that makes Blaze crash when extra actions are attached to shared actions that do input discovery. RELNOTES: None. PiperOrigin-RevId: 182044169
* Automated rollback of commit dafe71390340224e06eab0ac7afcebb2f5219f5a.Gravatar dslomov2018-01-16
| | | | | | | | | | | | | | *** Reason for rollback *** Breaks Bazel CI (https://ci.bazel.build/job/bazel-tests/1722/) *** Original change description *** Report unsuccessful error code if bazel fetch fails in "keep going" mode. Fixes #3234. PiperOrigin-RevId: 182042503
* C++: Updates documentation for cc_library.Gravatar plf2018-01-16
| | | | | RELNOTES:none PiperOrigin-RevId: 182033773
* Report unsuccessful error code if bazel fetch fails in "keep going" mode.Gravatar Dmitry Lomov2018-01-16
| | | | | | | Fixes #3234. Change-Id: I1bfbe856d35b98995f5a0684fe47c7566b8dd093 PiperOrigin-RevId: 182029085
* Create function createJavaInfo with new API. Implement JavaSourceJarsProvider.Gravatar dbabkin2018-01-16
| | | | | | | | | | Added tests for checking JavaSourceJarsProvider state. All other providers will be implemented in next CLs. previous CL with JavaCompilationArgsProvider implementation is https://github.com/bazelbuild/bazel/commit/32dff21d00ad7d1bdf50e8761d675a6e7e002de9 RELNOTES:none PiperOrigin-RevId: 182028182
* Remove use of Root#asDerivedRoot where the derived root == exec root.Gravatar tomlu2018-01-15
| | | | | | | | This method violates the invariant that derived roots are never equal to the exec root. Only source roots can be equal to the exec root. Note that this method was only used in tests, so this CL should be completely safe as long as its tests pass. PiperOrigin-RevId: 181998483
* Remove test methods from ArtifactFactory and Root that violate root invariants.Gravatar tomlu2018-01-15
| | | | | | In this case, the invariant violated is creating derived roots at the exec root. PiperOrigin-RevId: 181994080
* Fix typo in example codeGravatar Googler2018-01-15
| | | | | RELNOTES: None. PiperOrigin-RevId: 181990193
* Deletes unused code: ArtifactIdRegistry, ArtifactSerializer / Deserializer.Gravatar shahan2018-01-15
| | | | PiperOrigin-RevId: 181975994
* Export the runfiles path of the JVM executable to Skylark.Gravatar lberki2018-01-15
| | | | | RELNOTES: None. PiperOrigin-RevId: 181973847
* actions,temp: respect TMPDIR envvarGravatar Laszlo Csomor2018-01-15
| | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/4376 Change-Id: Id78bb0930044626304e54f07735db4d4b2c84720 PiperOrigin-RevId: 181959528
* Do not crash if 'bind' and external repo generate the same //external: target.Gravatar Dmitry Lomov2018-01-15
| | | | | | | | | | Work towards #3676. The behavior is still incorrect (we should in fact disallow this), but at least there is no hard crash. Change-Id: I5181dba73ad725d20b2ea82b2f19e86664b9dbff PiperOrigin-RevId: 181954820
* Properly report missing external repositiones during pattern evaluation.Gravatar Dmitry Lomov2018-01-15
| | | | | | | Fixes #3836. Change-Id: Icc9e8e08c4336fc20f46b6b878986b991d62ab18 PiperOrigin-RevId: 181949937
* Remove some unnecessary depsGravatar Ulf Adams2018-01-15
| | | | | | | | | Change-Id: Ib8dd9265b18fa0915f52427567845105fcdfa295 Closes #4447. Change-Id: Ib8dd9265b18fa0915f52427567845105fcdfa295 PiperOrigin-RevId: 181943004
* Clean up after ↵Gravatar cushon2018-01-15
| | | | | | https://github.com/bazelbuild/bazel/commit/3864a45afa368473a4a6a90d69edb48cb67d367a PiperOrigin-RevId: 181940016
* Introduce the blaze cquery command as the new ui for configurable query.Gravatar juliexxia2018-01-12
| | | | | | | | | | | | | | | | | | before: blaze build --nobuild //foo --experimental_post_build_query="deps(//foo)" after: blaze cquery "deps(//foo)" pros of ui change: - more concise - assumes query expression targets == targets to be built (but allows for flexibility through --top_level_targets flag) - separate from build command - cquery command recognizes query options, build options, and its own unique set of options cons of ui change: - adds another command to blaze - recognizes options that don't actually work yet -> requires more option validation RELNOTES: None PiperOrigin-RevId: 181816980
* Encapsulate SkylarkInfo layouts in a classGravatar brandjon2018-01-12
| | | | | | | | | This avoids invalid layouts (non-sequential map values), and provides better separation between a layout's representation as a map and its view as a list. Also removed a factory method that's unnecessary, now that the plan is not to closely tie SkylarkInfo to SkylarkProvider. RELNOTES: None PiperOrigin-RevId: 181807071
* PiperOrigin-RevId: 181797878Gravatar Googler2018-01-12
|
* Adds FileSystem check to Path.CODEC.serialize.Gravatar shahan2018-01-12
| | | | PiperOrigin-RevId: 181797078
* Honor repository when checking for conflictsGravatar Klaus Aehlig2018-01-12
| | | | | | | | | | When checking for conflicts between an input and an output file of a rule, honor the repository the label belongs to. It is a perfectly valid use case to create one file from an equally named (including path) in a different repository. Change-Id: I3aaa99eaa0c473ec31c5cc77beacf657c41ef56d PiperOrigin-RevId: 181761940
* Change packaging rules to operate on strings instead of path fragments.Gravatar tomlu2018-01-12
| | | | | | | | | | | | The upcoming path refactor will normalize all path fragments upon creation. That is fine 99% of the time, but sometimes we want to disallow non-normalized paths on rule attributes. Even this isn't usually a problem since we can validate the string prior to putting it in a path fragment. However, in the case of the packaging rule we do not know the rules of validation until the packaging rule is *consumed* by some other rule. Therefore, retain input as a string on these rules all the way through. We don't really do a lot of path fragmenty stuff with these strings. The main drawback is losing a bit of type safety / readability. SKIP_KOKORO PiperOrigin-RevId: 181760613
* Remove isMainRepo from Root.Gravatar tomlu2018-01-12
| | | | | | This is no longer used. PiperOrigin-RevId: 181754475