aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Add expansion functions to options parserGravatar Jon Brandvein2017-03-22
| | | | | | | | | | | | This provides a way to programmatically define expansions of options based on what other options are defined for the parser. In particular, it will be used for the --incompatible_* changes mechanism, to turn on all incompatible change flags. Expansion functions are specified in the @Option annotation, similar to converters. They are computed when an OptionsParser is constructed, and inspect a preliminary version of its OptionsData to determine the expansion result. This is then cached in the final OptionsData used by the parser. Expansion information for usage strings is available, but only when the usage strings are obtained via the parser. -- PiperOrigin-RevId: 150817553 MOS_MIGRATED_REVID=150817553
* --Gravatar Carmi Grushko2017-03-22
| | | | | PiperOrigin-RevId: 150810735 MOS_MIGRATED_REVID=150810735
* Recover a link that seems to have been lost in a doc migration.Gravatar Googler2017-03-22
| | | | | | -- PiperOrigin-RevId: 150783779 MOS_MIGRATED_REVID=150783779
* Remove only-in-tests null checks in SkyframeActionExecutor.Gravatar Janak Ramakrishnan2017-03-22
| | | | | | | | Still on step -0.5, let's be honest. -- PiperOrigin-RevId: 150783638 MOS_MIGRATED_REVID=150783638
* Make ArtifactFunctionTest#testMiddlemanArtifact more realistic by making the ↵Gravatar Janak Ramakrishnan2017-03-22
| | | | | | | | | | output artifact of a middleman action a middleman artifact. Step -0.5. -- PiperOrigin-RevId: 150769517 MOS_MIGRATED_REVID=150769517
* Open source AndroidLibraryTestGravatar Adam Michael2017-03-22
| | | | | | -- PiperOrigin-RevId: 150764277 MOS_MIGRATED_REVID=150764277
* Handle Ctrl+C / Ctrl+Break on Windows. Gravatar Dmitry Lomov2017-03-22
| | | | | | | | | | | Using ::SetConsoleCtrlHanlder() Win32 API. Tested manually (not sure how to test this automatically :() -- Change-Id: Ibb5b311d6412d77d16a7f7c1658a9f3435d3cd55 Reviewed-on: https://cr.bazel.build/9464 PiperOrigin-RevId: 150760724 MOS_MIGRATED_REVID=150760724
* Split up InvocationPolicyEnforcerTest.Gravatar Chloe Calvarin2017-03-22
| | | | | | | | It was large and unwieldy - keep common logic in the original file but split out the tests into groups by invocation policy operation type. -- PiperOrigin-RevId: 150759733 MOS_MIGRATED_REVID=150759733
* Fix compilation error because of vague JDK version check in compile.sh Gravatar Harsh Vardhan2017-03-22
| | | | | | | | | | Fixes: https://github.com/bazelbuild/bazel/issues/2677 -- Change-Id: Ie8518530dfd9a7eed41c44230e59afbd5724544b Reviewed-on: https://cr.bazel.build/9455 PiperOrigin-RevId: 150754975 MOS_MIGRATED_REVID=150754975
* If resources were prefiltered, ignore unavailable resources from dependenciesGravatar Googler2017-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Filtering resources in analysis allows Bazel to save time by not copying unwanted resources to the execution phase and by having less resource for execution to process. However, analysis-phase resource filtering currently happens only for android_binary targets. android_library dependencies will contain references to all of their resources in their R and symbol files, even if those resources are filtered out and not made available to execution. Eventually, we want to use dynamic configuration to propogate the filters being used on android_binary targets to android_library dependencies as well, and filter those in analysis also. Until then, however, we need a way of ignoring unwanted resources if they don't exist. This change adds a flag to the AndroidResourceProcessingAction to indicate that resources were filtered in analysis. If the flag is passed, if a resource referred to in a parsed symbols file is not actually visible, it will be ignored (otherwise, the action would go on to merging and eventually crash when it tried to use the missing resource). If the flag is passed, execution-time resource filtering by density will also be skipped (execution-time filtering by other resource qualifiers happens in aapt, but is a much simpler process). -- PiperOrigin-RevId: 150752270 MOS_MIGRATED_REVID=150752270
* Fix --nouse_action_cache for tests.Gravatar Googler2017-03-22
| | | | | | | | | | Moves management of the unconditionalExecution status in TestRunnerAction to a lazily initialized value internal to TestRunnerAction, since the class can no longer rely on ActionCacheChecker calling unconditionalExecution(). -- PiperOrigin-RevId: 150751922 MOS_MIGRATED_REVID=150751922
* Rollback of commit 65a9bc9a79a660291210719862bc194a87311943.Gravatar Googler2017-03-22
| | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Root cause for issue addressed in unknown commit so rolling back rollback. *** Original change description *** Automated [] rollback of commit e450c00bf487c711f9b0615e9eb89980c5732b4a. *** Reason for rollback *** Breaks nightly, see []. *** Original change description *** Inject aidl_lib only to android_library targets that have idl_srcs -- PiperOrigin-RevId: 150751650 MOS_MIGRATED_REVID=150751650
* Support Fission (-gsplit-dwarf) when generating C++ modular object files.Gravatar Googler2017-03-22
| | | | | | -- PiperOrigin-RevId: 150751431 MOS_MIGRATED_REVID=150751431
* --Gravatar Luis Fernando Pino Duque2017-03-22
| | | | | PiperOrigin-RevId: 150750972 MOS_MIGRATED_REVID=150750972
* Add Action context mnemonic to imprecise spawn strategy error message.Gravatar Chloe Calvarin2017-03-22
| | | | | | -- PiperOrigin-RevId: 150750767 MOS_MIGRATED_REVID=150750767
* Fix linux sandbox to create empty files correctly.Gravatar Ulf Adams2017-03-22
| | | | | | | | | | | Using /dev/null was causing it to create symlinks to /dev/null, which breaks Python programs. I didn't catch this earlier, because my machine had an old linux kernel installed that didn't support sandboxing. There's an existing integration test, which just broke in our CI. -- PiperOrigin-RevId: 150750032 MOS_MIGRATED_REVID=150750032
* Remove unused, unpassed AarGeneratorAction flag.Gravatar Adam Michael2017-03-22
| | | | | | -- PiperOrigin-RevId: 150748157 MOS_MIGRATED_REVID=150748157
* Parse params via a built-in, and lock msys2 version Gravatar Peter Mounce2017-03-22
| | | | | | | | | | | | | @laszlocsomor - This addresses https://github.com/bazelbuild/bazel/issues/2449#issuecomment-278059161. Note - this is _not_ in the 0.4.5 package, since I was waiting for that release to go out prior to this. Closes #2690. -- Reviewed-on: https://github.com/bazelbuild/bazel/pull/2690 PiperOrigin-RevId: 150745085 MOS_MIGRATED_REVID=150745085
* Windows, protoc: create io_win32.{h,cc}Gravatar László Csomor2017-03-21
| | | | | | | | | | | | | | | | | | | | Create dedicated files for the long-path-aware Windows implementations of open/access/mkdir. This commit updates many BUT NOT ALL usages of <io.h> functions in protobuf's code base. Reason being is that there are no Bazel build rules for the unittest files that include <io.h>, so I decided to leave those alone. Thanks to this commit I can now build Bazel with MSVC without needing a short --output_user_base. Fixes https://github.com/bazelbuild/bazel/issues/2634 See https://github.com/bazelbuild/bazel/issues/2107 See https://github.com/google/protobuf/issues/2891 Change-Id: I374726452300854a36e4628bb22cb7bbb12f3bad
* Windows, protoc: support long pathsGravatar László Csomor2017-03-21
| | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/2634 Fixes https://github.com/google/protobuf/issues/2891 Change-Id: I5b82954cbced4e0d3fcd7ac6f168cca34e57f731
* Enable CppCodeGenerator for benchmark.Gravatar Yue Gan2017-03-21
| | | | | | | | | | | Before push: add a dummy 8-target json file in the beginning of file_list, so there will be 8 charts initialized. RELNOTES: Bazel benchmark (perf.bazel.build) supports Java and Cpp targets. -- PiperOrigin-RevId: 150740780 MOS_MIGRATED_REVID=150740780
* Blog post about the design of Skylark.Gravatar Laurent Le Brun2017-03-21
| | | | | | -- PiperOrigin-RevId: 150738983 MOS_MIGRATED_REVID=150738983
* Add support to write desugared outputs to a directoryGravatar Googler2017-03-21
| | | | | | | | RELNOTES: n/a -- PiperOrigin-RevId: 150737949 MOS_MIGRATED_REVID=150737949
* Re-enable test_java_test in bazel_windows_example_test Gravatar Yun Peng2017-03-21
| | | | | | | | | | This test is passing in batch mode -- Change-Id: I0d098359f833240af4463d810d750442d3a97c40 Reviewed-on: https://cr.bazel.build/9460 PiperOrigin-RevId: 150737541 MOS_MIGRATED_REVID=150737541
* Add a BuildEvent capable of storing the original command line Gravatar Klaus Aehlig2017-03-21
| | | | | | | | | | | | ...so we can report it in the build event protocol no matter what changes the various option parsers and modules do to the command line. -- Change-Id: I497d6dbbf1fc2849580271833797755cb0c9d13c Reviewed-on: https://cr.bazel.build/9452 PiperOrigin-RevId: 150737198 MOS_MIGRATED_REVID=150737198
* Bazel client, Windows: ignore dead server processGravatar Laszlo Csomor2017-03-21
| | | | | | | | | | | | | | | | | | | Do not attempt to kill the server process if it's already dead. This gets rid of the spurious "Could not terminate process (Access Denied)" errors, which we got for attempting to TerminateProcess twice (without checking whether the process was still alive), because we apparently assumed that if we can get a HANDLE to the process then it must be alive, which is not true. This is a follow-up to unknown commit. Fixes https://github.com/bazelbuild/bazel/issues/2684 -- PiperOrigin-RevId: 150735254 MOS_MIGRATED_REVID=150735254
* Fix python stub template for python3 on Windows Gravatar Yun Peng2017-03-21
| | | | | | | | | | | | | | | | | | | 1. Adding UNC prefix after os.path.join, so that paths will be normalized and absolute. 2. Make example/py_native/bin.py work in python3 3. Add a shell test for building python binary with python3 4. Run all tests in batch mode Fix https://github.com/bazelbuild/bazel/issues/2708 -- Change-Id: I8dc18c80ebba87e965fe6fef9978732e6c35b1f0 Reviewed-on: https://cr.bazel.build/9456 PiperOrigin-RevId: 150734716 MOS_MIGRATED_REVID=150734716
* Add SpawnInputExpander helper class to arrange runfiles for spawn strategiesGravatar Ulf Adams2017-03-21
| | | | | | | | | | | | | | | | | | | | | This new class is a combination of SpawnHelper and our internal code; the plan is to migrate all spawn strategies to the new class. The strict flag should be enabled by default, but that's a breaking change, so we need to do it later. - Use it in SandboxStrategy. - Add ActionInput.getExecPath to return a PathFragment; this avoids lots of back and forth between path fragments and strings. This is a step towards #1593. The previous attempt was missing a one-line patch in StandaloneTestStrategy, which broke all tests with sandboxing. StandaloneTestStrategy was fixed in a separate change, so this should be safe now. -- PiperOrigin-RevId: 150733457 MOS_MIGRATED_REVID=150733457
* Add name of missing class to ClassNotFoundExceptionGravatar Googler2017-03-21
| | | | | | | | Add name of missing class to ClassNotFoundException can help the user to understand which entry is missing on its classpath or bootclasspath. -- PiperOrigin-RevId: 150725247 MOS_MIGRATED_REVID=150725247
* fix typo in javasemantics docsGravatar Googler2017-03-21
| | | | | | -- PiperOrigin-RevId: 150713396 MOS_MIGRATED_REVID=150713396
* adds feature_of and feature_after attrs to android_binary. these are ↵Gravatar Googler2017-03-21
| | | | | | | | android_binary rules whose .apk artifacts get piped through appt to support split apks -- PiperOrigin-RevId: 150701976 MOS_MIGRATED_REVID=150701976
* Clean up InvocationPolicyEnforcerTest.Gravatar Chloe Calvarin2017-03-21
| | | | | | | | Remove magic constants and convert to Truth. -- PiperOrigin-RevId: 150692720 MOS_MIGRATED_REVID=150692720
* --Gravatar Adam Michael2017-03-21
| | | | | PiperOrigin-RevId: 150684447 MOS_MIGRATED_REVID=150684447
* Factor out local variables in FilesystemValueCheckerTest, just to reduce the ↵Gravatar Janak Ramakrishnan2017-03-21
| | | | | | | | | | number of ActionExecutionValue.key calls. Step -1, maybe? -- PiperOrigin-RevId: 150681863 MOS_MIGRATED_REVID=150681863
* Clarifies some javadoc in Rule and AttributeContainer.Gravatar Alex Humesky2017-03-21
| | | | | | -- PiperOrigin-RevId: 150675067 MOS_MIGRATED_REVID=150675067
* Enforce that the SkyKey returned by ActionLookupKey#getSkyKey is an ↵Gravatar Janak Ramakrishnan2017-03-21
| | | | | | | | | | ActionLookupKey. It was only being violated for some singleton keys. Also do some drive-by cleanups of unused variables. Step approximately -2. -- PiperOrigin-RevId: 150668944 MOS_MIGRATED_REVID=150668944
* fix path in busybox example usageGravatar Googler2017-03-21
| | | | | | -- PiperOrigin-RevId: 150667585 MOS_MIGRATED_REVID=150667585
* Enable rules to transition based on their Rule objects.Gravatar Michael Staib2017-03-21
| | | | | | | | | | | | This begins to allow for cases where a rule sets configuration based on its attributes, such as where a rule attribute names flags and their values - sort of a reverse select. There are no such cases yet, but they're coming! -- PiperOrigin-RevId: 150648357 MOS_MIGRATED_REVID=150648357
* RELNOTES[NEW]: If grte_top is a label, it can now follow non-configurable ↵Gravatar Googler2017-03-21
| | | | | | | | redirects. -- PiperOrigin-RevId: 150647389 MOS_MIGRATED_REVID=150647389
* Make explicit that no I/O is done when constructing a FileArtifactValue for ↵Gravatar Janak Ramakrishnan2017-03-21
| | | | | | | | | | | | an ordinary Artifact in ArtifactFunction. If the data available in the FileValue is not sufficient to recreate the FileArtifactValue without disk access, then ActionMetadataHandler already stores the FileArtifactValue separately. This is approximately step -3 in a grand plan to save a bunch more memory when building with --batch --discard_analysis_cache --keep_going. -- PiperOrigin-RevId: 150646007 MOS_MIGRATED_REVID=150646007
* Define the ConfigFeatureFlagConfiguration fragment.Gravatar Michael Staib2017-03-21
| | | | | | | | | | | | This will eventually be used to store the values of user-defined configuration flags, once such a rule is added. Because this rule does not exist yet, this fragment is currently not part of the rule class provider. This will have to be done when that rule is turned on. -- PiperOrigin-RevId: 150638292 MOS_MIGRATED_REVID=150638292
* Make the spell checker a bit more conservative.Gravatar Laurent Le Brun2017-03-21
| | | | | | | | | Reduce the max spell-checking distance for matching words. "target" will not match "range" anymore. -- PiperOrigin-RevId: 150638073 MOS_MIGRATED_REVID=150638073
* Rationalize null-ness checks in RunfilesGravatar Ulf Adams2017-03-21
| | | | | | | | | | | This now also checks symlink maps for null pointers, which it previously did not. Unfortunately, there's still one case where we add a null target to Runfiles (to represent an empty file) - this happens in Runfiles itself, and this change prevents any callers from doing so. -- PiperOrigin-RevId: 150634481 MOS_MIGRATED_REVID=150634481
* Replace native AndroidStudioInfoAspect with an error message.Gravatar Googler2017-03-21
| | | | | | | | BUG=33295755 -- PiperOrigin-RevId: 150633735 MOS_MIGRATED_REVID=150633735
* Bazel client, Windows: fix server kill failuresGravatar Laszlo Csomor2017-03-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the (spurious) error messages about the Bazel client's failure to kill the server process, with "Access Denied" errors. This was caused by our attempt to kill the server process twice, and the error was coming from the second attempt. The culprit was an unimplemented VerifyServerProcess method (which ensures that the PID read from the server.pid.txt indeed refers to a running Bazel server) which always returned false, to avoid accidentally killing an unrelated process that got the same PID as the last alive Bazel server. The new code follows the same logic as the Linux version of Bazel, namely storing the process' start time in a file next to the PID file, and checking that the process with said PID was indeed started at the time we read from the file. This change also fixes a problem that the now working VerifyServerProcess uncovered: we need to wait for the previous Bazel server to properly shut down before we can open the new jvm.out log file. Fixes https://github.com/bazelbuild/bazel/issues/2684 -- PiperOrigin-RevId: 150632429 MOS_MIGRATED_REVID=150632429
* Add ActionInput.getExecPath, which returns a PathFragmentGravatar Ulf Adams2017-03-21
| | | | | | | | | | | | Update some callers to use getExecPath, which generally results in less intermediate garbage generation (almost all callers need a PathFragment, not a String). Another small step towards #1593. -- PiperOrigin-RevId: 150631279 MOS_MIGRATED_REVID=150631279
* Rollback of commit b88e9f3ea66fa839185e88de7dad3e6af0b403b4.Gravatar Laszlo Csomor2017-03-21
| | | | | | | | Roll forward commit ae4b02fb21772effd6836599a7e1792b26ff95e0. -- PiperOrigin-RevId: 150627891 MOS_MIGRATED_REVID=150627891
* Document default_provider.Gravatar Vladimir Moskva2017-03-21
| | | | | | | | | The documentation is not final as default_provider is not completely implemented now, but it reflects its current state. -- PiperOrigin-RevId: 150627015 MOS_MIGRATED_REVID=150627015
* Use a relative path for the runfiles treeGravatar Ulf Adams2017-03-21
| | | | | | | | | | Add preconditions to enforce this and remove some now unnecessary code. A small step towards #1593. -- PiperOrigin-RevId: 150625693 MOS_MIGRATED_REVID=150625693
* Fix a bug whereupon a String was compared to a PathFragment.Gravatar Lukacs Berki2017-03-21
| | | | | | -- PiperOrigin-RevId: 150623623 MOS_MIGRATED_REVID=150623623