aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test
Commit message (Collapse)AuthorAge
* Report the structured Bazel command line via the BEP.Gravatar ccalvarin2017-10-10
| | | | | | | | | This is part of the effort outlined in https://bazel.build/designs/2017/07/13/improved-command-line-reporting.html. The refactoring of the options parser is not yet complete, so we still do not have complete & correct information about the canonical command line. Where the information is blatantly incorrect, a best approximation was made, with comments and tests documenting the deficiencies. Change the names of the initial CommandLine fields in the BEP to be explicitly identified as unstructured. RELNOTES: None. PiperOrigin-RevId: 171625377
* Support --forceJumbo flag with incremental dexingGravatar kmb2017-10-10
| | | | PiperOrigin-RevId: 171622639
* Pull clearing of legacy configured target data up to SkyframeExecutor and ↵Gravatar janakr2017-10-10
| | | | | | rename method to better reflect what it is primarily doing. PiperOrigin-RevId: 171621356
* Allow NodeEntry implementations to keep just deps, as opposed to all edges ↵Gravatar janakr2017-10-10
| | | | | | or no edges. Also add option to disable checks in MemoizingEvaluatorTest that don't make sense for implementations that don't keep track of dirty nodes. Also extract RecordingDifferencer to an interface. And add a test for the situation that a node changes during a build that it's not requested, and which fails, necessitating cleanup. PiperOrigin-RevId: 171616817
* Fix the location of load statements in Skylark.Gravatar fzaiser2017-10-10
| | | | | | | Previously, the closing parenthesis was not included in the location. RELNOTES: none PiperOrigin-RevId: 171527078
* Skylint: add integration tests for the java binaryGravatar fzaiser2017-10-10
| | | | | RELNOTES: none PiperOrigin-RevId: 171526636
* Remove ctx.fragments.apple.{xcode_version,ios_minimum_os}.Gravatar lberki2017-10-10
| | | | | | | | | | These are now accessible using ctx.attr._xcode_config[apple_common.XcodeVersionConfig]. Progress towards #3424. RELNOTES[INC]: ctx.fragments.apple.{xcode_version,ios_minimum_os} is not supported anymore. The same information is accessible through the target @bazel_tools//tools/osx:current_xcode_config: point an implicit attribute to it (i.e. attr.label(default=Label("@bazel_tools//tools/osx:current_xcode_config")) then use ctx.attr._xcode_config[apple_common].XcodeVersionConfig]. PiperOrigin-RevId: 171517550
* Fix file permissions on aild_integration_test.shGravatar aehlig2017-10-09
| | | | | RELNOTES: None PiperOrigin-RevId: 171504480
* Clean up TODOs.Gravatar László Csomor2017-10-09
| | | | | | | | | | | | | | | | | | | In this commit: * buildenv.sh: restore its state to that as of commit 511c35b46cead500d4e76706e0a709e50995ceba * CommonCommandOptions.java: remove a deprecated no-op flag * WindowsPathFragment.java: implement an ASCII-only isLetter function, use that instead of Character.isLetter, because the latter returns true for some Unicode characters too * bazel_bootstrap_distfile_test: remove logging that we no longer need, since the bugfix for issue #3618 will be pushed to GitHub later today Change-Id: Ibda70219e974f0c47bc82addc647d8951f4bd701 PiperOrigin-RevId: 171498977
* Consolidate ObjectCodec<String> creationGravatar michajlo2017-10-09
| | | | | | | | Opens the door to swapping in different implementations without needing to touch a ton of code. RELNOTES: None PiperOrigin-RevId: 171412555
* Bubble errors up even in the case of keep_going builds that failed due to ↵Gravatar janakr2017-10-07
| | | | | | | | catastrophes. Our stricter behavior in the face of errors means that it is no longer possible for a done node to depend on a not-done node in this build. This opens up the possibility to discard graph edges on all --batch builds, or at least those with --discard_analysis_cache. PiperOrigin-RevId: 171375405
* Add an integration test for android_library IDL support.Gravatar Adam Michael2017-10-07
| | | | | | | This should catch breakages due to changes in the AIDL tools bundled in the SDK. Change-Id: Iaff6ce058112a57b2b8da3e00a1172ee49cfdd85 PiperOrigin-RevId: 171357883
* More SpawnResult-related plumbing changes to Actions, Strategies, ↵Gravatar ruperts2017-10-07
| | | | | | | | | ActionContexts, etc., so that SpawnResult metadata is returned upwards. Note that the TODOs mostly refer to changes that will appear in a subsequent CL (a CL to return SpawnResults, contained in ActionResults, from Actions/AbstractActions). I split off the remaining SpawnResult-related changes into this CL and kept the ActionResult-related changes separate. RELNOTES: None. PiperOrigin-RevId: 171355611
* Do not rewrite static interface method invocations from bootclasspathGravatar Googler2017-10-07
| | | | | RELNOTES: n/a PiperOrigin-RevId: 171344856
* Move SkylarkSemanticsOptions to the packages/ directory, alongside ↵Gravatar brandjon2017-10-07
| | | | | | | | | SkylarkSemanticsCodec Note that the syntax package and its test package still depend indirectly on the options parser via other Bazel-specific packages. RELNOTES: None PiperOrigin-RevId: 171342823
* PackageLoader.loadPackages() tolerates duplicates in the list of packages to ↵Gravatar carmi2017-10-06
| | | | | | | load. RELNOTES: None PiperOrigin-RevId: 171298089
* testenv.sh: don't run Bazel in a subshellGravatar Laszlo Csomor2017-10-06
| | | | | | | | | | | | | | | | | | | | | | | | In this commit: - testenv.sh no longer runs Bazel in a subshell - testenv.sh prints informative log messages that show the origin (testenv.sh) and the date - testenv.sh logs to $TEST_log by appending to it, not by overwriting it This change speeds up //src/test/shell/bazel:bazel_windows_example_test from ~260s to ~165s. On Windows, Bash (MSYS) waits for all subprocesses of a subshell to terminate before allowing the subshell itself to terminate too, even if some subprocesses are daemons. I think this is a bug, and it's the culprit of https://github.com/bazelbuild/bazel/issues/3148 Change-Id: If97ea6dfeb904af560b291a7acebd09e43863ab4 PiperOrigin-RevId: 171267462
* Pass SkylarkSemantics through Skyframe instead of the options classGravatar brandjon2017-10-06
| | | | | | | Also remove the use of the @UsesOnlyCoreTypes annotation on SkylarkSemanticsOptions. It was only there to help mark that the options class was safe to put in Skyframe. RELNOTES: None PiperOrigin-RevId: 171248504
* Provide a source exec path -> path mapping in the ArtifactFactory, which is ↵Gravatar janakr2017-10-06
| | | | | | potentially more principled than just accessing the execRoot willy-nilly. PiperOrigin-RevId: 171234480
* Couple of Fileset micro-optimizations:Gravatar kush2017-10-06
| | | | | | | | 1. Prevent a redundant map.get() in SkyframeFilesetManifestAction#establishSkyframeDependencies 2. Make a more memory efficient FilesetEntrykey instead of reusing the LegacySkyKey. RELNOTES: none PiperOrigin-RevId: 171222499
* Make Fdo use straight zip files, delete ZipFileSystem.Gravatar tomlu2017-10-06
| | | | PiperOrigin-RevId: 171221156
* Open-source unit tests for proguard actions.Gravatar ajmichael2017-10-06
| | | | | RELNOTES: None PiperOrigin-RevId: 171205009
* Fix the strict-ordering of symlinks created with Filesets which was ↵Gravatar kush2017-10-06
| | | | | | | inadvartently lost due to https://github.com/bazelbuild/bazel/commit/d8ba904a3b0598e97601bc670840e39f21799ead RELNOTES: none PiperOrigin-RevId: 171204884
* Add a whitelist for packages that can contain android_devices rules. ↵Gravatar ajmichael2017-10-06
| | | | | | | Currently, this whitelist includes every package. RELNOTES: None PiperOrigin-RevId: 171192613
* Migrate from deprecated MutableList constructor to copyOf, fixing bug in latterGravatar michajlo2017-10-06
| | | | PiperOrigin-RevId: 171176871
* Fix codec tests that weren't runningGravatar brandjon2017-10-06
| | | | | | | Added @RunWith, and modified test data to satisfy arg requirements. RELNOTES: None PiperOrigin-RevId: 171175255
* Use bundled proguard 5.3.3 instead of 4.7 from the SDKGravatar ajmichael2017-10-06
| | | | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/3777 Also adds a proguard integration test so that hopefully we notice next time it breaks. RELNOTES: Updated Android proguard to 5.3.3. It now works with android-24+. PiperOrigin-RevId: 171162295
* Windows,launcher: add LauncherFileWriteActionGravatar Laszlo Csomor2017-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce LauncherFileWriteAction, a FileWriteAction that can create a native {java,sh,py}_binary launcher from the launcher stub and the user-specified launch information. The LauncherFileWriteAction class does not use the "copy" command of cmd.exe so it's not restricted with path lengths. The class stores a LaunchInfo object, which describes the launch data that the launcher stub reads to identify its payload. The LaunchInfo is a lazy object, similar to CustomCommandLine. LaunchInfo won't fully construct the launch data until it is about to write the data to the output. Thus LaunchInfo is memory efficient because it won't create any String objects in the analysis phase that it would only read in the execution phase. Fixes https://github.com/bazelbuild/bazel/issues/3802 Change-Id: I4ddd83369e7131d42e2e9b35f105ad2dc60bcc52 PiperOrigin-RevId: 171115105
* Rather than logging the amount of free physical memory on Linux systems, log ↵Gravatar Googler2017-10-06
| | | | | | the amount of *available* physical memory. This includes memory used as cache or buffer that will be evicted if an application requests memory, and is a much more realistic metric of utilization than free memory, which is usually <1% of memory available to the machine. PiperOrigin-RevId: 171087122
* Add debug_key attribute to android_binary.Gravatar ajmichael2017-10-06
| | | | | | RELNOTES: android_binary now supports custom debug keys via the debug_key attribute. PiperOrigin-RevId: 171081759
* Add yum clean all to all yum installGravatar Damien Martin-Guillerez2017-10-06
| | | | | | | | The current build on ci.bazel.io fails with "Rpmdb checksum is invalid: dCDPT(pkg checksums)" errors and our favorite search engine seems to recommend to do a yum clean all to fix it. Change-Id: I0d574d56755bf3ce6c8ea043b698f4e1ecc3ac27 PiperOrigin-RevId: 171064618
* Split off SkylarkSemanticsOptions into an immutable classGravatar brandjon2017-10-06
| | | | | | | | | | | This is a first step toward making the core Skylark interpreter (the syntax/ directory) not depend on the options parser. Subsequent CLs will replace uses of SkylarkSemanticsOptions within the interpreter with uses of SkylarkSemantics, and move SkylarkSemanticsOptions to the packages/ directory alongside SkylarkSemanticsCodec. SkylarkSemantics will also replace SkylarkSemanticsOptions as the value that gets passed through Skyframe. This is nice because SkylarkSemantics is strictly immutable, whereas options classes are only kinda-sorta-immutable. The downside is significantly more redundancy when defining new options. But some of the work is saved by using AutoValue, and there are tests that protect us from dumb mechanical errors. The details are outlined in the javadoc for SkylarkSemanticsOptions and SkylarkSemanticsConsistencyTest. RELNOTES: None PiperOrigin-RevId: 171060034
* Categorize build options for BuildConfiguration.Gravatar gregce2017-10-06
| | | | PiperOrigin-RevId: 171017483
* Remove support for ProtocolBuffers2.Gravatar kaipi2017-10-06
| | | | PiperOrigin-RevId: 171013687
* Fix more linter errorsGravatar ruperts2017-10-06
| | | | | RELNOTES: None. PiperOrigin-RevId: 170955877
* tests for new desugar packageGravatar kmb2017-10-06
| | | | | | RELNOTES: none PiperOrigin-RevId: 170893783
* add flags to desugar to emit metadata that can be used for double-checking ↵Gravatar kmb2017-10-06
| | | | | | | | correctness of default and static interface desugaring. RELNOTES: none PiperOrigin-RevId: 170779637
* Fixing displayed retry attempts one-off error, when the error is non-retriable.Gravatar olaola2017-10-06
| | | | | | | | Adding unit tests. TESTED=unit tests RELNOTES: None PiperOrigin-RevId: 170750220
* In apple integration tests, for fat simulator builds, specify a ↵Gravatar cparsons2017-10-06
| | | | | | | | | minimum_os_version < 11.0, as they are unsupported at 11.0. Fixes https://github.com/bazelbuild/bazel/issues/3841. RELNOTES: None. PiperOrigin-RevId: 170731919
* Skylark parser: make the end position of location ranges inclusive.Gravatar fzaiser2017-10-06
| | | | | | | | | Previously, the end line and column of a location were the position past the actual end of a location. This makes sense for the end offset, because one can use `input.substring(startOffset, endOffset)` to get the string belonging to an ASTNode. However the line and column (as opposed to the offset) aren't used for that. Therefore I made the change that the end line and column now point to the last character in the location. This is also they way every compiler I know does it. RELNOTES: none PiperOrigin-RevId: 170723732
* Rewrite LocationExpanderGravatar ulfjack2017-10-02
| | | | | | | | | | | | | | | Split up the functionality into separate classes, and test each independently. (Keep one integration test to make sure it still works together.) This is in preparation for adding another location function for runfiles paths. Currently we have to decide ahead of time whether to expand artifacts as exec paths or root-relative (runfiles) paths, but there are cases where we can't make that decision ahead of time and / or need both to coexist, even in the same attribute. Progress on #2475. PiperOrigin-RevId: 170691666
* Extract Fileset manifest parsing out of SpawnInputExpanderGravatar ulfjack2017-10-02
| | | | | | | | | | - add a mode to control how to handle relative symlinks - if set, attempt to resolve relative symlinks in manifests by looking for another entry that defines a file with the intended symlink target (we don't do recursive resolution for now) - add more test coverage; fix a bug in handling empty target locations PiperOrigin-RevId: 170691492
* Prevent overriding android_library srcless deps configuration value from ↵Gravatar jingwen2017-10-02
| | | | | | | HostTransition. RELNOTES: None. PiperOrigin-RevId: 170549656
* Fix aapt2 actions to use the compiled intermediate resource files for ↵Gravatar Googler2017-10-02
| | | | | | | linking. Also include assets in the aapt2 packaging action. RELNOTES: none PiperOrigin-RevId: 170532322
* Use intermediate compiled resource symbols for linking rather than static ↵Gravatar Googler2017-10-02
| | | | | | | resource library APK's. RELNOTES: none PiperOrigin-RevId: 170517806
* Don't symlink into the execroot if possible in SymlinkAction: instead, ↵Gravatar janakr2017-10-02
| | | | | | symlink directly to the target artifact. Also offer the option to not provide the package roots to create the execroot: we would like to avoid the execroot if possible. PiperOrigin-RevId: 170515263
* build_event_stream_test: fix usage of ed(1)Gravatar Klaus Aehlig2017-09-29
| | | | | | | | | | | | | | Unfortunately the various ed(1)s are different in subtle ways. The difference that hit us here is the different treatment of the implicit 'e' command when ed is started with a file as argument; GNU ed writes the answer of that command (i.e., the number of bytes read) on stderr, whereas ed on FreeBSD writes it on stdout. So, let's merge the two output channels and throw away the first answer explicitly. Fixes #3842. Change-Id: I4ef394957cdc316f896b54ca218d4f118465caff PiperOrigin-RevId: 170506490
* Switch ExtraActionFactory over to the new Expander interfaceGravatar ulfjack2017-09-29
| | | | PiperOrigin-RevId: 170494940
* Disable testCommandHonorsEnvironment on MacOS for nowGravatar ulfjack2017-09-29
| | | | | | Temporary workaround for #3795. PiperOrigin-RevId: 170473363
* Pass CppSemantics down to the CppLinkActionBuilderGravatar hlopko2017-09-29
| | | | | | | | | Currently CppLinkActionBuilder is not using CppSemantics, but it will when we use full CppCompileAction for linkstamp compiles. This cl is a preparation for that. RELNOTES: None. PiperOrigin-RevId: 170467826