aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Pulls in two changes from github for the dd_plist library.Gravatar Dave MacLachlan2016-12-15
| | | | | | | | | | | | | | https://github.com/3breadt/dd-plist/commit/3fa1fa56c82df169e06079feb54ba281ad41cae6 which stabilizes the ordering of items in the plist and is equivalent to what happens in Apple's reference code. https://github.com/3breadt/dd-plist/commit/a5fb37384d4ca7a3b5039a7605ca0e9ca926a6ec which outputs ids in the plist equivalent to Apple's reference code. We still differ from Apple's code in that we de-dupe booleans, arrays, and dictionaries which produces smaller binaries. Via testing I have determined that the tooling that was having trouble with our "bad" plists, appears to be happy with our output if we continue our de-duping so I left it in there. Fixing it so that it was exactly equivalent to Apple's output would be a significantly larger engineering effort. -- PiperOrigin-RevId: 142166474 MOS_MIGRATED_REVID=142166474
* Add a missing 'function' keywordGravatar Dmitry Shevchenko2016-12-15
| | | | | | -- PiperOrigin-RevId: 142158214 MOS_MIGRATED_REVID=142158214
* Move TestStrategy to lib.exec package.Gravatar Ulf Adams2016-12-15
| | | | | | | | | | | | | | | | This is part of refactoring test strategy to unify its implementation between Bazel and Blaze (Google's internal version of Bazel), which should fix several issues in Bazel. It's also necessary to untangle lib.rules and lib.exec to enforce proper layering by separating compilation of these packages, and to provide a minimal Bazel binary. In particular, no core part of Bazel should depend on any of the rules, to facilitate moving them out of Bazel / reimplementing them in Skylark (except for some core rules like test_suite, alias, and genquery). -- PiperOrigin-RevId: 142151901 MOS_MIGRATED_REVID=142151901
* Streamline Fingerprint implementationGravatar Michajlo Matijkiw2016-12-15
| | | | | | | | | | | | Thread all updates through a CodedOutputStream. This has the benefit of potentially hashing less data, as many int values can be represented more compactly, and reducing the churn of hashing strings (generally), since CodedOutputStream is already heavily optimized for this. While the buffer size is a little generous, it winds up paying off. -- PiperOrigin-RevId: 142151062 MOS_MIGRATED_REVID=142151062
* Fix PathFragment to not use Java8-only static hashCode methods.Gravatar John Cater2016-12-15
| | | | | | | | Fixes #2247. -- PiperOrigin-RevId: 142143520 MOS_MIGRATED_REVID=142143520
* New operators for Skylark:Gravatar Andreas Bergmeier2016-12-15
| | | | | | | | | | | | | - list * int - int * list RELNOTES[NEW]: Skylark: you can now multiply a list by an integer to get the concatenation of N copies of this list, e.g. [a,b] * 3 = [a,b,a,b,a,b] -- Change-Id: I2068ad30e11df26dc7b4b8c41e51f85db56f0390 Reviewed-on: https://github.com/bazelbuild/bazel/pull/1524 PiperOrigin-RevId: 142140726 MOS_MIGRATED_REVID=142140726
* Delete dead codeGravatar Marcel Hlopko2016-12-15
| | | | | | -- PiperOrigin-RevId: 142129925 MOS_MIGRATED_REVID=142129925
* Bazel client, Windows: use file_windows under MSYSGravatar Laszlo Csomor2016-12-15
| | | | | | | | | | | | | | | | | | | | | | | Use file_windows.cc and file_posix.cc when compiling for MSYS/GCC (--cpu=x64_windows). This way we can implement functions in file_windows.cc one by one, start using them with MSYS, and put #ifdef __CYGWIN__ ... #endif around these functions in file_posix.cc, until all functions are implemented in file_windows.cc. The change contains a lot of code deletion, but nothing should change because of that. The deleted code was not being used at all: neither with MSVC (it was behind #else // not COMPILER_MSVC) nor with MSYS (the file was not in the `select` of the rule's `srcs`). See https://github.com/bazelbuild/bazel/issues/2107 -- PiperOrigin-RevId: 142128611 MOS_MIGRATED_REVID=142128611
* Bazel client, Windows: implement GetUserNameGravatar Laszlo Csomor2016-12-15
| | | | | | | | See https://github.com/bazelbuild/bazel/issues/2107 -- PiperOrigin-RevId: 142128121 MOS_MIGRATED_REVID=142128121
* Windows, JNI: implement nativeGetLongPathGravatar Laszlo Csomor2016-12-15
| | | | | | | | | | | | | | | | | | | | Implement a JNI method that can resolve 8dot3 style paths. This is necessary because we need to be able to compare 8dot3 style paths and long paths [1], and because implementing this correctly in Java seems to be impossible [2]. This change also adds tests for the JNI isJunction implementation. See https://github.com/bazelbuild/bazel/issues/2101 [1] https://github.com/bazelbuild/bazel/issues/2145 [2] https://github.com/bazelbuild/bazel/issues/2145#issuecomment-266766716 -- PiperOrigin-RevId: 142123750 MOS_MIGRATED_REVID=142123750
* Bazel client: get rid of RunProgramGravatar Laszlo Csomor2016-12-15
| | | | | | | | | | | | | | | | | | Move GetJvmVersion from blaze_util to blaze_util_platform, and remove the RunProgram declaration from blaze_util.h. Since GetJvmVersion is the only user of RunProgram this is safe to do, and allows making RunProgram static as well as simplifying its implementation on Windows, while also changing it to use CreateProcessW instead of CreateProcessA. See https://github.com/bazelbuild/bazel/issues/2181 -- PiperOrigin-RevId: 142122045 MOS_MIGRATED_REVID=142122045
* blaze_util_windows: use some widechar Win32 APIGravatar Laszlo Csomor2016-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | In this change: - implement PrintErrorW (copy of PrintError but uses FormatMessageW) - use GetModuleFileNameW in GetSelfPath and do not worry about UNC paths, we'll automatically handle them in the future when we use widechar functions everywhere. Until then, if a path happens to have the "\\?\" prefix and that causes an error, we won't be worse off than today; today we just call `pdie` - use GetTempPathW in GetOutputRoot; in theory this might also return an UNC path but again that shouldn't be a problem - add comments for the arguments of CreateFileA and CreateProcessA calls, to make the code a bit more readable See https://github.com/bazelbuild/bazel/issues/2181 -- PiperOrigin-RevId: 142118854 MOS_MIGRATED_REVID=142118854
* Make sure that --proto_toolchain_for_cc works in the HOST configuration.Gravatar Carmi Grushko2016-12-15
| | | | | | -- PiperOrigin-RevId: 142074257 MOS_MIGRATED_REVID=142074257
* Rollback of commit 27cd7f6bb4a02f56f9ad73e57e71e69a1c00d5ea.Gravatar Adam Michael2016-12-15
| | | | | | | | | | | | *** Reason for rollback *** Rolling forward, intentionally breaking loading phase (and therefore `bazel fetch`) for android_binary in Bazel if no android_sdk_repository is set up. Will not submit until Tensorflow's use case is cleaned up in https://github.com/tensorflow/tensorflow/pull/6225. -- PiperOrigin-RevId: 142068703 MOS_MIGRATED_REVID=142068703
* Creates a new BundleLoaderProvider that propagates necessary artifacts, ↵Gravatar Sergio Campama2016-12-15
| | | | | | | | paths, etc, for test binaries (bundle binaries) to compile successfully against a bundle loader artifact. -- PiperOrigin-RevId: 142063256 MOS_MIGRATED_REVID=142063256
* I don't know why we had these but let's get rid of them.Gravatar Adam Michael2016-12-15
| | | | | | -- PiperOrigin-RevId: 142056062 MOS_MIGRATED_REVID=142056062
* Extract swiftc input calculation from swift_libraryGravatar Googler2016-12-14
| | | | | | -- PiperOrigin-RevId: 142046117 MOS_MIGRATED_REVID=142046117
* Fix an analysis phase performance regression with dynamic configurations.Gravatar Greg Estren2016-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The short story is that env.valuesMissing() returns true without regard for which Skyframe evaluation missed values. In other words, given: env.getValues(missingValues); // Not all values ready. env.getValues(presentValues); // All value ready. if (env.valuesMissing()) { return null; } this returns null even if "env.getValues(presentValues)" has all its results. This doesn't have correctness consequences, but it does have (major) performance consequences, particularly in ConfiguredTargetFunction. The quick reason is that the successful call can still do useful followup work, but that gets short-circuited if the function nulls out early. See the code changes for full details. This eliminates a 30% hit on analysis time with dynamic configurations. With this change, that goes down to 0. The takeaway: ConfiguredTargetFunction is both unintuitively complex and performance-critical. C'est la vie. -- PiperOrigin-RevId: 142044069 MOS_MIGRATED_REVID=142044069
* fix declaration of Pipe variableGravatar Thiago Farina2016-12-14
| | | | | | | | | | | While at it fix a typo of "receive" and fix some other documentation comments. -- Change-Id: Ifb7df972200627730114d6cf751033c0d5e3bc46 Reviewed-on: https://cr.bazel.build/7710 PiperOrigin-RevId: 142015037 MOS_MIGRATED_REVID=142015037
* Bazel client: implement Cstring-Wstring conversionGravatar Laszlo Csomor2016-12-14
| | | | | | | | | | | | Implement conversion methods between char strings and wchar_t strings. This is necessary to use widechar Windows functions. See https://github.com/bazelbuild/bazel/issues/2181 -- PiperOrigin-RevId: 142009930 MOS_MIGRATED_REVID=142009930
* Fixing typo.Gravatar Googler2016-12-14
| | | | | | -- PiperOrigin-RevId: 141942246 MOS_MIGRATED_REVID=141942246
* Windows, JNI: build the DLL with /O2 optimizationGravatar Laszlo Csomor2016-12-14
| | | | | | -- PiperOrigin-RevId: 141939490 MOS_MIGRATED_REVID=141939490
* Extract swiftc argument generation from swift_library implementationGravatar Googler2016-12-13
| | | | | | | | | | | Make it possible to use compiler args that swift_library creates in other rules that do not depend on it. Also rename _module_name to swift_module_name and make it public because proper usage of swiftc_args requires a module name to be passed in. -- PiperOrigin-RevId: 141926959 MOS_MIGRATED_REVID=141926959
* Make Argument factory methods public.Gravatar Nathan Harmata2016-12-13
| | | | | | -- PiperOrigin-RevId: 141920696 MOS_MIGRATED_REVID=141920696
* Record correct exit code for uncaught exceptions in async threads.Gravatar Chloe Calvarin2016-12-13
| | | | | | | | | | Async threads are divorced from the server's error-reporting mechanism. In the event of a server shutdown originating in an async-thread, write the exit code to a file that can be read by the client. -- PiperOrigin-RevId: 141920284 MOS_MIGRATED_REVID=141920284
* Fix doc typo.Gravatar Alex Humesky2016-12-13
| | | | | | -- PiperOrigin-RevId: 141916305 MOS_MIGRATED_REVID=141916305
* Move dot conversion to doc gen pipelineGravatar Kristina Chodorow2016-12-13
| | | | | | -- PiperOrigin-RevId: 141913623 MOS_MIGRATED_REVID=141913623
* Enables the propagation of the XcodeVersionProperties provider for reading ↵Gravatar Sergio Campama2016-12-13
| | | | | | | | from Skylark. -- PiperOrigin-RevId: 141912220 MOS_MIGRATED_REVID=141912220
* Fix repositories to use 'BUILD.bazel' as the name for the symlinked/new ↵Gravatar John Cater2016-12-13
| | | | | | | | | | build file, which has less changes of causing conflicts. Fixes #2226. -- Change-Id: I4a378d693004d4d6857c78d7ffe886ada3fb9239 Reviewed-on: https://cr.bazel.build/7850 PiperOrigin-RevId: 141909918 MOS_MIGRATED_REVID=141909918
* Rephrase query transformation in terms of composition of QueryExpressionMappers.Gravatar Nathan Harmata2016-12-13
| | | | | | -- PiperOrigin-RevId: 141904124 MOS_MIGRATED_REVID=141904124
* Work around interrupt bug in download_and_extractGravatar Justine Tunney2016-12-13
| | | | | | | | | | | The actual issue is with the code that calls this method by way of reflection. This is a temporary work around to fix #2232. RELNOTES: An IE bug was fixed in repository_ctx.download_and_extract -- PiperOrigin-RevId: 141899395 MOS_MIGRATED_REVID=141899395
* Fix error message that gives incomplete informationGravatar Jon Brandvein2016-12-13
| | | | | | -- PiperOrigin-RevId: 141896569 MOS_MIGRATED_REVID=141896569
* Delete some unused Bazel third party deps.Gravatar Adam Michael2016-12-13
| | | | Change-Id: I4e99ca21c95a1f6a4f46885adbee560f2a08ef17
* Release script: stays in the release branch after creating itGravatar Damien Martin-Guillerez2016-12-13
| | | | | | | | | | | Getting back to the previous branch was confusing for users and not really useful. -- Change-Id: Icc3d4b30ab7d75de73fcb5885a215a08b96dfeb3 Reviewed-on: https://cr.bazel.build/7593 PiperOrigin-RevId: 141892852 MOS_MIGRATED_REVID=141892852
* Disable failing tests related to code coverage work.Gravatar John Cater2016-12-13
| | | | | | | | | | | This will silence the problems in #2227 and #2228 until the actual underlying issues can be fixed. -- Change-Id: Id2bc062104b4111bbcde8455f30059b3cb04eff6 Reviewed-on: https://cr.bazel.build/7870 PiperOrigin-RevId: 141892371 MOS_MIGRATED_REVID=141892371
* Switch to using multi-level repository names by default.Gravatar Googler2016-12-13
| | | | | | | | | | | | When these rules were originally written, I'd wanted the repository names embeded in the tarball to have a similar shape to Blaze's output trees, but unfortunately multi-level names were not yet supported. Support for multiple levels was introduced as part of the v2 registry specification, which is now all DockerHub supports, and the vast majority of clients in circulation support multi-level names. This change implements my original intention, which is to name the resulting image: bazel/{target}. To get the legacy naming system use the attribute: embed_flat_names=True. RELNOTES[INC]: docker_build: change the repository names embedded by docker_build. You can revert to the old behavior by setting legacy_repository_naming=True. -- PiperOrigin-RevId: 141886976 MOS_MIGRATED_REVID=141886976
* Document aar_import in Bazel.Gravatar Adam Michael2016-12-13
| | | | | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/564. RELNOTES: aar_import rule is now documented. -- PiperOrigin-RevId: 141843994 MOS_MIGRATED_REVID=141843994
* Make Bazel android_integration_test.sh pass with NDK12.Gravatar Adam Michael2016-12-13
| | | | | | | | | | | NDK12 removed the thumb and hard armeabi cpu variants, but android_integration_test.sh still tried to build with them. Fixes https://github.com/bazelbuild/bazel/issues/2184. -- PiperOrigin-RevId: 141843012 MOS_MIGRATED_REVID=141843012
* Fix ijar's timestamp normalizationGravatar Liam Miller-Cushon2016-12-13
| | | | | | | | 0 is not a valid DOS timestamp, days and months start at 1. -- PiperOrigin-RevId: 141818782 MOS_MIGRATED_REVID=141818782
* Add a flag for disabling local fallback for actions that failed remotely.Gravatar Ola Rozenfeld2016-12-13
| | | | | | -- PiperOrigin-RevId: 141817345 MOS_MIGRATED_REVID=141817345
* Debugging flag (will rarely be used by actual users) that disables remoteGravatar Ola Rozenfeld2016-12-13
| | | | | | | | execution cache. -- PiperOrigin-RevId: 141807596 MOS_MIGRATED_REVID=141807596
* Printing the stack trace of remote failures on --verbose_failures.Gravatar Ola Rozenfeld2016-12-13
| | | | | | | | Helps debugging. -- PiperOrigin-RevId: 141802189 MOS_MIGRATED_REVID=141802189
* Propagate all providers from CcLibraryHelper into cc_proto_library.Gravatar Carmi Grushko2016-12-13
| | | | | | | | Previously, at least one critical provider was not propagated (CppCompilationContext) which resulted in cc_library's being unable to find the generated headers. -- PiperOrigin-RevId: 141800408 MOS_MIGRATED_REVID=141800408
* Delete some Android JARs that we aren't using.Gravatar Adam Michael2016-12-13
| | | | | | These are just bloating the git repository size. Change-Id: I734cf6282eb6853217f68f0b33109b16424bde50
* Break out xcrun env from xcrun_actionGravatar Dmitry Shevchenko2016-12-12
| | | | | | -- PiperOrigin-RevId: 141784902 MOS_MIGRATED_REVID=141784902
* Add tuple() method to Skylark.Gravatar Googler2016-12-12
| | | | | | | | This method coerces any collection to a Skylark tuple, analogous to list() or set(). -- PiperOrigin-RevId: 141779268 MOS_MIGRATED_REVID=141779268
* Migrates TestEnvironmentProvider to using the new Skylark declared providers ↵Gravatar Sergio Campama2016-12-12
| | | | | | | | API. This enables creating a TestEnvironmentProvider from Skylark. -- PiperOrigin-RevId: 141775285 MOS_MIGRATED_REVID=141775285
* Fix bad bug with the parallel implementation of BinaryOperatorExpression. ↵Gravatar Nathan Harmata2016-12-12
| | | | | | | | | | | | | | Turns out that ForkJoinTask#adapt(Callable) returns a ForkJoinTask whose Future#get on error throws a ExecutionException wrapping a RuntimeException wrapping the thrown checked exception from the callable. This is documented behavior [1] that I incorrectly didn't know about. The additional level of wrapping meant that the catch-block of the parallel implementation of BinaryOperatorExpression wasn't rethrowing the InterruptedException/QueryException that the parallel task threw. The subtly in this bug is that the query expression being evaluated needs to be of the form "e1 + e2", where evaluation of "e1" throws a QueryException even in keepGoing mode (note that most of the query errors actually go through AbstractBlazeQueryEnvironment#reportBuildFileError). The test I wrote picks on LetExpression's evaluation-time (rather than e.g. parsing time) validation of the variable name. [1] https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ForkJoinTask.html#adapt(java.util.concurrent.Callable) -- PiperOrigin-RevId: 141772584 MOS_MIGRATED_REVID=141772584
* Add a basic ij.bazelproject file for developing Bazel with IntelliJ.Gravatar John Cater2016-12-12
| | | | | | | | -- Change-Id: Iedbdf32a80e0a4390ff8084a67eba191f544517f Reviewed-on: https://cr.bazel.build/7770 PiperOrigin-RevId: 141771456 MOS_MIGRATED_REVID=141771456
* Fixed PackageLookupFunction to check for all possible build file names when ↵Gravatar John Cater2016-12-12
| | | | | | | | | | | | loading external repositories. Fixes #2198. -- Change-Id: Ife0232f8e4652a90bc3b7dceec6e67312a142879 Reviewed-on: https://cr.bazel.build/7691 PiperOrigin-RevId: 141771126 MOS_MIGRATED_REVID=141771126