aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib
Commit message (Collapse)AuthorAge
* Move the runfiles for external repositories to under the x.runfiles/ directoryGravatar Kristina Chodorow2016-04-20
| | | | | | | | | | | | | | | This also sets the Bazel workspace name to io_bazel_source. Fixes #848. Relevant to #1116, #1124, RELNOTES[INC]: All repositories are now directly under the x.runfiles directory in the runfiles tree (previously, external repositories were at x.runfiles/main-repo/external/other-repo. This simplifies handling remote repository runfiles considerably, but will break existing references to external repository runfiles. --- Furthermore, if a Bazel project does not provide a workspace name in the WORKSPACE file, Bazel will now default to using __main__ as the workspace name (instead of "", as previously). The repository's runfiles will appear under x.runfiles/__main__/. -- MOS_MIGRATED_REVID=120224534
* Allow external repositories to have includes attributes that point to ↵Gravatar Janak Ramakrishnan2016-04-19
| | | | | | | | | packages not in third_party. We don't need to police users' external repositories. Fixes #1151 -- MOS_MIGRATED_REVID=120222222
* Review a number of action subclasses and update them according to the spec.Gravatar Ulf Adams2016-04-19
| | | | | | | | Consists of adding @Immutable annotations, adding final modifiers, and changing the types of fields to immutable types. -- MOS_MIGRATED_REVID=120221067
* Add mechanism to crosstool language to specify action-specific execution ↵Gravatar Cal Peyser2016-04-19
| | | | | | | requirements. Uses this mechanism to configure c/c++ compilation and linking for darwin execution from the crosstool. -- MOS_MIGRATED_REVID=120218079
* Review a number of action subclasses and update them according to the spec.Gravatar Ulf Adams2016-04-19
| | | | | | | | | | Second pass. Consists of adding @Immutable annotations, adding final modifiers, and changing the types of fields to immutable types. -- MOS_MIGRATED_REVID=120216592
* Rename LateBoundLabel#getDefault(Rule, AttributeMap, T) to #resolve().Gravatar Lukacs Berki2016-04-19
| | | | | | | Its old name was confusing because resolve() and getDefault() do radically different things: getDefault() returns a good enough lie for when BuildConfiguration is not available, and resolve() resolves the dependency when we do have a BuildConfiguration. -- MOS_MIGRATED_REVID=120212630
* Bind the gRPC command server port only to localhost.Gravatar Lukacs Berki2016-04-19
| | | | | | | Work towards #930. -- MOS_MIGRATED_REVID=120205147
* Signal that the version command does not buildGravatar Klaus Aehlig2016-04-19
| | | | | | | | | | | | The version command is not expected to every run any actions. Hence any messages about progress of the build process or running actions would be confusing. Therefore, signal this fact to allow the experimental UI to present information accordingly. -- Change-Id: I8a75704a39e161f52c4d008677f62e4b36097647 Reviewed-on: https://bazel-review.googlesource.com/#/c/3387 MOS_MIGRATED_REVID=120203058
* Make it possible to interrupt commands when communicating over gRPC.Gravatar Lukacs Berki2016-04-19
| | | | | | | | | | | Drive-by fix: eliminate the GRPC messages from the console by passing a null logging function. This also prepares us for the time when multiple commands will be running, because then we'll need to tell which command exactly we want to interrupt. Work towards #930. -- MOS_MIGRATED_REVID=120203008
* Do not start the AF_UNIX server when in gRPC mode.Gravatar Lukacs Berki2016-04-19
| | | | | | | Work towards #930. With this, it's conceivable that server mode works on Windows to some degree (I haven't tried, though, because there are many issues that need to be fixed) -- MOS_MIGRATED_REVID=120202037
* Deprecate top-level Java toolchain flags in favour of java_toolchainGravatar Liam Miller-Cushon2016-04-19
| | | | | | | | | | | | | This change disables --java_langtools, --javabuilder_top, --singlejar_top, --genclass_top, and --ijar_top, and finishes replacing them with java_toolchain.{javac,javabuilder,singlejar,genclass,ijar}. RELNOTES: Replace --java_langtools, --javabuilder_top, --singlejar_top, --genclass_top, and --ijar_top with java_toolchain.{javac,javabuilder,singlejar,genclass,ijar} -- MOS_MIGRATED_REVID=120154954
* Check for the presence of an AndroidSdkProvider in JackAspect.Gravatar Michael Staib2016-04-19
| | | | | | | | | If no AndroidSdkProvider is present, JackAspect exits with an error instead of throwing and thus crashing Bazel. This is acceptable; the Android rules which JackAspect is attached to will do the same. -- MOS_MIGRATED_REVID=120150996
* Tokenize java_toolchain.miscGravatar Liam Miller-Cushon2016-04-19
| | | | | | | For consistency with java_library.javacopts and the top-level --javacopts flag. -- MOS_MIGRATED_REVID=120145920
* Extract common logic for detecting action and artifact prefix conflicts.Gravatar Rumou Duan2016-04-19
| | | | | -- MOS_MIGRATED_REVID=120145833
* Change misleading warning when an error is encountered while loading a ↵Gravatar Janak Ramakrishnan2016-04-19
| | | | | | | target. We also no longer say that the target will not be built because it may well happen during a query, when no building is happening anyway. -- MOS_MIGRATED_REVID=120130554
* Add the option to have non-interface dependencies. This can greatly speed upGravatar Googler2016-04-19
| | | | | | | | builds with C++ modules as modules can be built without waiting on dependencies that are only required for the module's implementation. -- MOS_MIGRATED_REVID=120119435
* Update the documentation for the Action class.Gravatar Ulf Adams2016-04-18
| | | | | -- MOS_MIGRATED_REVID=120117310
* Remove option to include transitive header module srcs in the compilation.Gravatar Googler2016-04-18
| | | | | -- MOS_MIGRATED_REVID=120115843
* Remove directories field from MavenServerFunction.Gravatar Ulf Adams2016-04-18
| | | | | -- MOS_MIGRATED_REVID=120114796
* Refactor the coverage report module to make it less stateful.Gravatar Ulf Adams2016-04-18
| | | | | -- MOS_MIGRATED_REVID=120112783
* Module cleanup - don't hold on to stuff after the command completes.Gravatar Ulf Adams2016-04-18
| | | | | -- MOS_MIGRATED_REVID=120111522
* experimental UI: avoid empty lines between one-line FAILURE notesGravatar Klaus Aehlig2016-04-18
| | | | | | | | | | | | | | When reporting a multi-line test-failure message (the test that failed, plus the paths to the log files) to the scrollback buffer, it makes sense to end this whole block by an empty line. If, however, the test failure does not report any logs (e.g., if the build was interrupted), the next scroll-back buffer line can follow immediately to keep the scroll-back buffer more compact. -- Change-Id: I59d8ba9416d0a9bcbc8d959fee21cc94fa89018e Reviewed-on: https://bazel-review.googlesource.com/#/c/3386 MOS_MIGRATED_REVID=120108504
* Rename field names in command_server.proto so that they don't conflict with ↵Gravatar Lukacs Berki2016-04-18
| | | | | | | | | C symbols. Fixed #1155. -- MOS_MIGRATED_REVID=120107746
* Tolerate NoSuchPackageException when processing subdirectories.Gravatar Janak Ramakrishnan2016-04-18
| | | | | | | | | | | In RecursiveDirectoryTraversalFunction, we must tolerate NoSuchPackageException being thrown by subdirectories' nodes, since that can happen in a nokeep_going build. -- Change-Id: Id9a48256aa209775f27130186c58e03c788d20a9 Reviewed-on: https://bazel-review.googlesource.com/#/c/3392/5 MOS_MIGRATED_REVID=120081575
* Fix SkyQuery bug where we weren't respecting the package blacklist. We do ↵Gravatar Nathan Harmata2016-04-18
| | | | | | | | | this by changing both the relevant Skyframe and the SkyQuery code to propagate (minimal!) blacklist information in the SkyKeys themselves. There are other approaches to solving this problem, but I like how this solution doesn't involve duplication of logic. Also, it has the following nice benefit: previously, RecursiveDirectoryTraversalFunction would declare a dep on the blacklist for every directory traversed which adds an edge for each directory traversed. -- MOS_MIGRATED_REVID=120049635
* Use DexBuilder tool such that it can be a persistent workerGravatar Googler2016-04-18
| | | | | -- MOS_MIGRATED_REVID=119999213
* Add a crunch_png attribute to android_binaryGravatar Googler2016-04-18
| | | | | | | | | | | This allows a user to turn off png crunching during the final merge (with crunch_png = 0), but it does not skip nine-patch processing. RELNOTES: adds crunch_png attribute to android_binary -- MOS_MIGRATED_REVID=119986498
* Add cpp-style source processing to experimental_objc_library.Gravatar Cal Peyser2016-04-18
| | | | | -- MOS_MIGRATED_REVID=119980586
* Tests for apple_cc_toolchain.Gravatar Cal Peyser2016-04-18
| | | | | -- MOS_MIGRATED_REVID=119960754
* Introduces experimental_objc_library. This rule builds objc code with the ↵Gravatar Cal Peyser2016-04-18
| | | | | | | c++ rule implementation backend and an OSX crosstool. -- MOS_MIGRATED_REVID=119954578
* Make ExperimentalStateTracker aim for target widthGravatar Klaus Aehlig2016-04-18
| | | | | | | | | | | | Optionally support a target width for the experimental state tracker; if given, it will try to produce a status bar with lines shorter than that limit, if possible, so that the status bar does not have to be broken. -- Change-Id: Ic5843285300ec10cf3e21b9b7402a6557f6bdb5e Reviewed-on: https://bazel-review.googlesource.com/#/c/3374 MOS_MIGRATED_REVID=119954289
* Fixed bugs for "bazel test" command on WindowsGravatar Yun Peng2016-04-15
| | | | | | | | | | After this fix, we can run shell test, python test and cpp test with msvc toolchain on Windows using bazel test command -- Change-Id: I61e3984b6df2c4aef8762037a91a0f3a29d01691 Reviewed-on: https://bazel-review.googlesource.com/#/c/3385 MOS_MIGRATED_REVID=119950353
* Make LineWrappingAnsiTerminalWriter more efficientGravatar Klaus Aehlig2016-04-15
| | | | | | | | | | ...by only starting the new line, if needed and not already if the last usable character of the line is written. -- Change-Id: I86519389fe64fe74ba9045be07483ce5f55d5e9a Reviewed-on: https://bazel-review.googlesource.com/#/c/3384 MOS_MIGRATED_REVID=119949042
* Initial version of client-server communication over gRPC. Gravatar Lukacs Berki2016-04-15
| | | | | | | | | | | | | | | | This still has a number of issues, including, but not limited to: - When switching between gRPC and AF_UNIX mode, you need to do a manual shutdown - The console is spammed with "connection refused" messages on server startup - When in gRPC mode, server also starts up an AF_UNIX server even though it's not necessary and concurrent requests probably make Bazel crash and burn - I have no idea how concurrent gRPC requests are handled and now many threads gRPC creates - Not tested except under Linux - The request/response cookies are written in an odd format (negative bytes are not handled correctly). This is only a cosmetic issue, since the data content of the string is the same either way. Can be tested with the --grpc_port=0 (or a valid port number) startup option. -- MOS_MIGRATED_REVID=119948959
* Add a position-aware wrapper around AnsiTerminalWriterGravatar Klaus Aehlig2016-04-15
| | | | | | | | | | | | | When generating output targeted for a specific terminal width, it is important to know the current position in order to appropriately shorten the message still to be added to the current line. So make it possible to add this functionality to the terminal writer itself, to avoid too many lengthy position computations at call site. -- Change-Id: I03400b9544c32567fc6ea7ab35e742c4ccd7b610 Reviewed-on: https://bazel-review.googlesource.com/#/c/3373 MOS_MIGRATED_REVID=119946982
* Expose __init__.py filenames to SkylarkGravatar Brian Silverman2016-04-15
| | | | | | | | | | | | This is important for packaging Python code in a way which is compatible with the way Bazel builds its standard runfiles directory. Refs #671 -- Change-Id: Ica2adab481cfecabb84b608cd952b0cae5a8653c Reviewed-on: https://bazel-review.googlesource.com/#/c/2900/ MOS_MIGRATED_REVID=119945845
* Remove the directories field from RepositoryDelegatorFunction.Gravatar Ulf Adams2016-04-15
| | | | | -- MOS_MIGRATED_REVID=119942803
* Assume that the targets required by LabelVisitor have already been loaded.Gravatar Lukacs Berki2016-04-15
| | | | | | | | | LabelVisitor is only used in BlazeQueryEnvironment#buildTransitiveClosure(), which takes care of this. Very preliminary work for #1140. -- MOS_MIGRATED_REVID=119933021
* Inject the BlazeDirectories in SkyframeExecutor.Gravatar Ulf Adams2016-04-15
| | | | | | | | | The BlazeDirectories are also needed for loading the WORKSPACE file, so inject them as part of preparePackageLoading rather than in createConfigurations, which is too late. -- MOS_MIGRATED_REVID=119931633
* Get the current time when generating the workspace status.Gravatar Ming Zhao2016-04-15
| | | | | | | | | | | | | The old implementation cached the timestamp when the workspace status action is created, which may be much earlier then the action gets executed and end up leaving stale timestamp in volatile-status. Close #1103 -- Change-Id: I0f09ac66681a134aeb10daf2455f3c3f98d8cd8f Reviewed-on: https://bazel-review.googlesource.com/#/c/3221/ MOS_MIGRATED_REVID=119930493
* Fix compiler warning due to lack of generic parameter.Gravatar Nathan Harmata2016-04-15
| | | | | -- MOS_MIGRATED_REVID=119920313
* Allow ProtoOutputFormatter to filter aspect attributesGravatar Michajlo Matijkiw2016-04-15
| | | | | -- MOS_MIGRATED_REVID=119902657
* Allows CcLibraryHelper's acceptance of objc source to be paramaterized. For ↵Gravatar Cal Peyser2016-04-15
| | | | | | | | | cc_* targets, CcLibraryHelper will not process objc source files, which may have been provided accidentally though a filegroup. Note: This is note intended to prevent illegal sources for cc_* targets - that will be implemented in a different CL. This will involve making changes to filtering occuring in CcCommon, which for now will permit objc source. -- MOS_MIGRATED_REVID=119897621
* Use Iterables.addAll() in SkylarkList.Gravatar Googler2016-04-15
| | | | | | | | | It is probably more efficient in the common case where the Iterable is a collection. String and list handling in Skylark results in a *lot* of calls to this method, and the use of addAll should reduce the amount of copying and GCing that needs to occur. An alternative would be to change the underlying type of SkylarkList from ArrayList to LinkedList, which would reduce the copying and GCing due to list concatenation even more. There is probably a downside to that but it is not clear if it is significant. -- MOS_MIGRATED_REVID=119891128
* Say which target is being processed in the progress message for Android resourceGravatar Alex Humesky2016-04-15
| | | | | | | processing. -- MOS_MIGRATED_REVID=119873729
* Add an afterCommand hook to AbstractBlazeQueryEnvironment.Gravatar Nathan Harmata2016-04-15
| | | | | -- MOS_MIGRATED_REVID=119868282
* Do not collide intermediate and final output dsym artifacts.Gravatar Peter Schmitt2016-04-14
| | | | | -- MOS_MIGRATED_REVID=119848254
* Rollback of commit bbf59ed1be85354457ad1d8123cc1973aa3ba298.Gravatar Florian Weikert2016-04-14
| | | | | -- MOS_MIGRATED_REVID=119843072
* Fix JDK 7 build of BazelGravatar Damien Martin-Guillerez2016-04-14
| | | | | -- MOS_MIGRATED_REVID=119832385
* Add the --grpc_port startup option and start a Java server if it's passed in.Gravatar Lukacs Berki2016-04-14
| | | | | | | | | | | | | Note that the presence of server/grpc_port does not guarantee that the server actually listens to it and we can't guarantee it, either, because it can always be kill -9'd. I haven't decided yet how the transition between AF_UNIX and gRPC will work. For now, I'm happy that we can start up a Java server. The way to get the kernel-chosen port is truly awful, but it is apparently impossible to do so in a different way: https://github.com/grpc/grpc-java/issues/72 -- MOS_MIGRATED_REVID=119828354