Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DO NOT MERGE] Add integration tests for Android resource processing with aapt and aapt2 #5222

Closed
wants to merge 1,139 commits into from
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Jul 23, 2018

  1. Transition --defer_param_files into host options.

    RELNOTES: None.
    PiperOrigin-RevId: 205665675
    Googler authored and Copybara-Service committed Jul 23, 2018
    Configuration menu
    Copy the full SHA
    b53d056 View commit details
    Browse the repository at this point in the history
  2. Fix bazel vision layout

    RELNOTES: None
    PiperOrigin-RevId: 205668909
    dslomov authored and Copybara-Service committed Jul 23, 2018
    Configuration menu
    Copy the full SHA
    a5b6063 View commit details
    Browse the repository at this point in the history
  3. Fix block_for_lock.

    On two fronts: First, it should follow standard command line semantics. Second, it should work as intended: --noblock_for_lock means the client will not wait for another command to finish, but will exit eagerly. It can be useful for preventing hanging in applications that are non-interactively calling bazel.
    
    It should have standard startup-option semantics: the default value is accepted as a no-op or can be provided to override a previous value.
    
    The next issue involves 2 different locks - the client lock, and the server-side command lock. This duality exists because we would like, one day, to be able to run certain commands, like info or help, at the same time, so multiple commands would need specialized locks that allow some duality but blocks others. This can only be done at the server level, so as soon as the client gets the "we're connected" grpc message from the server, it releases the client lock and lets the server manage  multiple requests.
    
    There are basically 3 possible states that are relevant to this option:
    
    1) no other client is active, so no one holds the client lock or the command lock - the server can be used, shutdown or started as needed. - no blocking, but no need to block, either, so we're safe
    2) another client (client1) holds the lock, but it is currently using a server that we want to reuse. If client1 still holds the client lock, we fail fast. Same thing if client1 is holding the server-side lock: we will exit gracefully when the BlazeCommandDispatcher responds with a failure.
    3) client1 holds the lock but its server cannot be reused. (batch clients also fall into this category, as there is no server to reuse - but in this case, the client lock is still in play). However, for server mode, this is broken - the following happens:
       - Server is occupied with client1's request, holds the command lock
       - client2 wants to restart the server, so sends the old server a "shutdown" command
       - the BlazeCommandDispatcher says - nuh-uh, this is busy, and you said you didn't want to wait for the lock
       - client2 absorbs this response
       - waits (blocks...)
       - for a minute
       - then force shuts-down the old server.
    
    So we had 2 problems - we block, and we shutdown a server that we truly intended to keep going. Now, if the server responds saying another action is using it, the client will exit correctly, and leave the old server to do its thing.
    
    RELNOTES: None.
    PiperOrigin-RevId: 205671817
    cvcal authored and Copybara-Service committed Jul 23, 2018
    Configuration menu
    Copy the full SHA
    6c8166e View commit details
    Browse the repository at this point in the history
  4. Fileset manifests now propagate Artifact metadata.

    PiperOrigin-RevId: 205682761
    ericfelly authored and Copybara-Service committed Jul 23, 2018
    Configuration menu
    Copy the full SHA
    186b887 View commit details
    Browse the repository at this point in the history
  5. Annotate conditional edges with corresponding conditions in `query

    --output graph`.
    
    Implementation:
    AIUI, currently the "edges' conditions" are lost [1] when the larger graph is initially constructed. It now does a second pass over dependency subgraph to find all the conditional edges and annotates them in dot output. This can be easily extended in other forms of output, but for now it only annotates edges in dot output.
    
    [1]: https://github.com/bazelbuild/bazel/blob/32e9fee4e2192a340d0b1823538bf8e9fdf92b65/src/main/java/com/google/devtools/build/lib/query2/output/OutputFormatter.java#L745-L770
    
    PiperOrigin-RevId: 205685823
    JayNakrani authored and Copybara-Service committed Jul 23, 2018
    Configuration menu
    Copy the full SHA
    eb29656 View commit details
    Browse the repository at this point in the history
  6. Only expand dynamic_library_linker_tool feature when generate_interfa…

    …ce_library is available
    
    This way users of the Skylark API don't see this feature expanded.
    
    RELNOTES: None.
    PiperOrigin-RevId: 205704719
    hlopko authored and Copybara-Service committed Jul 23, 2018
    Configuration menu
    Copy the full SHA
    3da60d2 View commit details
    Browse the repository at this point in the history
  7. Fix crash bug in AbstractExceptionalParallelEvaluator#doMutatingEvalu…

    …ation in a very specific window of time inbetween enqueueing one top-level node for evaluation and checking if another top-level node is done. See the added unit test for details.
    
    RELNOTES: None
    PiperOrigin-RevId: 205718683
    haxorz authored and Copybara-Service committed Jul 23, 2018
    Configuration menu
    Copy the full SHA
    6571091 View commit details
    Browse the repository at this point in the history
  8. Make the docs for --javabase less misleading

    PiperOrigin-RevId: 205718853
    cushon authored and Copybara-Service committed Jul 23, 2018
    Configuration menu
    Copy the full SHA
    7d9596c View commit details
    Browse the repository at this point in the history
  9. Clarified documentation of remote_execution_properties attribute.

    PiperOrigin-RevId: 205729963
    katre authored and Copybara-Service committed Jul 23, 2018
    Configuration menu
    Copy the full SHA
    13a03b7 View commit details
    Browse the repository at this point in the history

Commits on Jul 24, 2018

  1. ArtifactFactory.getSourceArtifact returns SourceArtifact.

    PiperOrigin-RevId: 205751282
    aoeui authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    63c1711 View commit details
    Browse the repository at this point in the history
  2. GenClass: Assume that prefixes that don't correspond to a known non-g…

    …enerated source are generated.
    
    PiperOrigin-RevId: 205756917
    cushon authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    69301af View commit details
    Browse the repository at this point in the history
  3. Remove redundancy in DigestHashFunction use in FileSystem.

    Each FileSystem instance has a digest function, but the getDigest and getHashDigest functions also accepted their own custom parameter functions. We only support 1 hash per filesystem instance, these parameters are redundant.
    
    RELNOTES: None.
    PiperOrigin-RevId: 205758571
    cvcal authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    dd9f60e View commit details
    Browse the repository at this point in the history
  4. Use an interface to convert from nanos to millis since epoch

    The conversion approach we were previously using is not stable - the resulting
    offsets can differ based on what other things are going on on the same machine
    at the same time.
    
    By using an interface and passing it to the relevant places (and only computing
    the offset once), we ensure that all conversions are consistent with each other.
    
    PiperOrigin-RevId: 205787309
    ulfjack authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    1af71e5 View commit details
    Browse the repository at this point in the history
  5. Quiet more proto/unsafe warnings

    Fixes bazelbuild#5599
    
    PiperOrigin-RevId: 205794997
    cushon authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    543918d View commit details
    Browse the repository at this point in the history
  6. Windows,JNI: more tolerance for errors

    DeletePath and CreateJunction are now even more
    tolerant with errors, particularly the class of
    errors where access is denied.
    
    Also in this change:
    - remove DeletePathResult::kParentMissing, as this
      case is handled by CreateFileW's error handling
      later
    - do not error-check CreateDirectoryW; if failed,
      just proceed as if the directory already existed
    - print more debugging info where possible
    
    Change-Id: I1162dae2c6b7524f14d8892047f9eb51831470dd
    
    Closes bazelbuild#5611.
    
    Change-Id: I78fe6aed6d0b120815339c0923c8a903990921d9
    PiperOrigin-RevId: 205796307
    laszlocsomor authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    2b4a22c View commit details
    Browse the repository at this point in the history
  7. Treat java_lite_proto_library and java_mutable_proto_library the same…

    … as we
    
    treat java_proto_library.
    
    RELNOTES: None
    PiperOrigin-RevId: 205812269
    meisterT authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    0b2f868 View commit details
    Browse the repository at this point in the history
  8. Move LoadingPhaseCompleteEvent posting to TargetPatternPhaseFunction

    Also simplify LoadingPhaseCompleteEvent, and SkyframeExecutor, and remove
    LoadingCallback, which is unnecessary now that we only have a single
    implementation (previously LoadingPhaseRunner).
    
    This also removes some of the excessive Skyframe calls introduced by
    bazelbuild@1067310, and prepares for interleaving target pattern eval and loading.
    
    PiperOrigin-RevId: 205813197
    ulfjack authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    8483758 View commit details
    Browse the repository at this point in the history
  9. Open source SpawnExecutedEvent

    This will be used to compute the critical path using Spawns instead of Actions,
    which should be more accurate.
    
    PiperOrigin-RevId: 205817400
    ulfjack authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    7fdd49c View commit details
    Browse the repository at this point in the history
  10. C++: Remove AbstractCcLinkParamsStore from providers.

    3 providers had AbstractCcLinkParamsStore as a class field, now they wrap
    CcLinkingInfo instead.
    
    RELNOTES:none
    PiperOrigin-RevId: 205821081
    oquenchil authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    6f19151 View commit details
    Browse the repository at this point in the history
  11. Minor readability cleanup.

    RELNOTES: None
    PiperOrigin-RevId: 205825362
    meisterT authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    9d0495d View commit details
    Browse the repository at this point in the history
  12. Create the native headers jar in java_common.compile.

    RELNOTES: java_common.compile creates the native headers jar accesible via JavaInfo.outputs.native_headers.
    
    Closes bazelbuild#5662.
    
    PiperOrigin-RevId: 205832180
    Irina Iancu authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    ff0c491 View commit details
    Browse the repository at this point in the history
  13. Delete --show_package_location, which has been deprecated / no-op for…

    … years.
    
    Fixes bazelbuild#5592.
    
    RELNOTES: Deleting deprecated no-op flag --show_package_location
    PiperOrigin-RevId: 205834069
    ericfelly authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    7c7e566 View commit details
    Browse the repository at this point in the history
  14. Update comments

    Comments are misleading, as discussed on bazelbuild#5305 (comment)
    
    RELNOTES: None.
    PiperOrigin-RevId: 205841782
    laurentlb authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    c7865d5 View commit details
    Browse the repository at this point in the history
  15. ProtoSourcesProvider docs: Add link to FileDescriptorSet definition

    RELNOTES: None.
    PiperOrigin-RevId: 205850479
    Googler authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    78930ae View commit details
    Browse the repository at this point in the history
  16. Automated rollback of commit f309ad3.

    *** Reason for rollback ***
    
    Fixed duplicate derived inputs bug. Test is in diffbase.
    
    RELNOTES[INC]: If the same artifact is generated by two distinct but identical actions, and a downstream action has both those actions' outputs in its inputs, the artifact will now appear twice in the downstream action's inputs. If this causes problems in Skylark actions, you can use the uniquify=True argument in Args.add_args.
    
    PiperOrigin-RevId: 205863806
    janakdr authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    bf4123d View commit details
    Browse the repository at this point in the history
  17. update to embedded jdk to jdk10

    RELNOTES: The JDK shipped with Bazel was updated to JDK10.
    PiperOrigin-RevId: 205865966
    buchgr authored and Copybara-Service committed Jul 24, 2018
    2 Configuration menu
    Copy the full SHA
    4c9149d View commit details
    Browse the repository at this point in the history
  18. Configured targets register created source artifacts with Skyframe.

    PiperOrigin-RevId: 205876673
    aoeui authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    168e7c9 View commit details
    Browse the repository at this point in the history
  19. Update truth dependency to 0.42

    Truth 0.42 includes Fact which is needed by an upcoming change to
    Subject
    
    Change-Id: I791daceed18953f31bd21b184e4349baae5e30ca
    jlavallee authored and dkelmer committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    59b044c View commit details
    Browse the repository at this point in the history
  20. Automated rollback of commit 6f19151.

    *** Reason for rollback ***
    
    Crash with NullPointerException
    
    *** Original change description ***
    
    C++: Remove AbstractCcLinkParamsStore from providers.
    
    3 providers had AbstractCcLinkParamsStore as a class field, now they wrap
    CcLinkingInfo instead.
    
    RELNOTES:none
    PiperOrigin-RevId: 205885939
    laurentlb authored and Copybara-Service committed Jul 24, 2018
    Configuration menu
    Copy the full SHA
    fe187cb View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2018

  1. Prevent unnecessary file stats when looking at whether an include is …

    …in one of
    
    the declared directories. Especially when doing validation during input
    discovery, the discovery's over-approximation can lead to isDeclaredIn walking
    the full path to the root without finding a declared include directory.
    
    RELNOTES: None.
    PiperOrigin-RevId: 205958078
    Googler authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    fac9b3b View commit details
    Browse the repository at this point in the history
  2. C++: Remove AbstractCcLinkParamsStore from providers.

    3 providers had AbstractCcLinkParamsStore as a class field, now they wrap
    CcLinkingInfo instead.
    
    This is being rolled forward, first try caused a NullPointerException in
    go_wrap_cc rules that had the attribute use_default_import set to False.
    GoWrapCcConfiguredTargetTest now has a go_wrap_cc rule that has this attribute
    set to false and fails with the previous version of this CL.
    
    RELNOTES:none
    PiperOrigin-RevId: 205959266
    oquenchil authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    024ca68 View commit details
    Browse the repository at this point in the history
  3. Update Guava to 25.1

    philwo committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    dbc4f1f View commit details
    Browse the repository at this point in the history
  4. Revert "Update truth dependency to 0.42"

    Truth 0.42 adds a dependency on com.googlecode.java-diff-utils, which
    we currently don't have in Bazel. We have to discuss first, whether we
    actually want to add that library, too.
    
    This reverts commit 59b044c.
    philwo committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    65a5e09 View commit details
    Browse the repository at this point in the history
  5. Fix Guava version in compile.sh.

    RELNOTES: None.
    PiperOrigin-RevId: 205975626
    philwo authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    bed8c5f View commit details
    Browse the repository at this point in the history
  6. Increase sharding for SkylarkTests

    This makes the tests run much faster.
    Fixes bazelbuild#5443
    
    RELNOTES: None.
    PiperOrigin-RevId: 205980410
    laurentlb authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    04eeca4 View commit details
    Browse the repository at this point in the history
  7. remote: fix race on download error. Fixes bazelbuild#5047

    For downloading output files / directories we trigger all
    downloads concurrently and asynchronously in the background
    and after that wait for all downloads to finish. However, if
    a download failed we did not wait for the remaining downloads
    to finish but immediately started deleting partial downloads
    and continued with local execution of the action.
    
    That leads to two interesting bugs:
    * The cleanup procedure races with the downloads that are still
    in progress. As it tries to delete files and directories, new
    files and directories are created and that will often
    lead to "Directory not empty" errors as seen in bazelbuild#5047.
    * The clean up procedure does not detect the race, succeeds and
    subsequent local execution fails because not all files have
    been deleted.
    
    The solution is to always wait for all downloads to complete
    before entering the cleanup routine. Ideally we would also
    cancel all outstanding downloads, however, that's not as
    straightfoward as it seems. That is, the j.u.c.Future API does
    not provide a way to cancel a computation and also wait for
    that computation actually having determinated. So we'd need
    to introduce a separate mechanism to cancel downloads.
    
    RELNOTES: None
    PiperOrigin-RevId: 205980446
    buchgr authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    bca1912 View commit details
    Browse the repository at this point in the history
  8. Skip invalidation entirely if the diff is empty

    PiperOrigin-RevId: 205980620
    ulfjack authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    8fd1afd View commit details
    Browse the repository at this point in the history
  9. Fake a JavaStrictCompilationArgsProvider if there's none.

    There were convoluted cases with multiple JavaInfo created from Skylark that
    didn't have the JavaStrictCompilationArgsProvider. If these were to be merged
    and later forwarded with exports we would miss them as dependencies.
    
    RELNOTES: None
    PiperOrigin-RevId: 205980933
    meisterT authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    54a381b View commit details
    Browse the repository at this point in the history
  10. Remove AbstractQueueVisitor.runConcurrently and .activeParallelTasks …

    …which
    
    aren't used anymore.
    
    RELNOTES: None.
    PiperOrigin-RevId: 205984908
    Googler authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    4661219 View commit details
    Browse the repository at this point in the history
  11. Add the thread name as metadata to the Json profile

    PiperOrigin-RevId: 205985818
    ulfjack authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    d7177ab View commit details
    Browse the repository at this point in the history
  12. Remove Hazelcast dependency

    The only remaining use was a testing REST backend in the LRE.
    
    I wrote a replacement for that using netty, which we use for our network stuff in Bazel, which means we can now get rid of Hazelcast. :)
    
    I'll remove the Hazelcast files in a separate change when this is merged.
    
    PiperOrigin-RevId: 205985996
    philwo authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    bbc94eb View commit details
    Browse the repository at this point in the history
  13. Remove LoadingResult

    Instead, refactor the code to use TargetPatternPhaseValue exclusively. This
    removes the need to convert from TargetPatternPhaseValue to LoadingResult, and
    prepares for interleaving.
    
    It also reduces the number of Skyframe calls which may speed up null builds a
    bit, as a followup for bazelbuild@1067310.
    
    PiperOrigin-RevId: 205989338
    ulfjack authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    12bb59f View commit details
    Browse the repository at this point in the history
  14. Remove obsolete stuff related to JDK7 support

    Closes bazelbuild#5626.
    
    PiperOrigin-RevId: 205991094
    philwo authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    77234d6 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    7699f20 View commit details
    Browse the repository at this point in the history
  16. Use a structured Exception type for the "unexpected short read" error…

    … detected by FileSystemUtils#readWithKnownFileSize.
    
    RELNOTES: None
    PiperOrigin-RevId: 205995852
    haxorz authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    e1ed9f5 View commit details
    Browse the repository at this point in the history
  17. C++: Removes calls to setCcLinkparamsStore of CcLinkingInfo.Builder

    This is in preparation for deleting CcLinkParamsStore. Not all calls to
    setCcLinkparamsStore have been removed in this CL.
    
    RELNOTES:none
    PiperOrigin-RevId: 205998687
    oquenchil authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    16dde0d View commit details
    Browse the repository at this point in the history
  18. Experimental UI: only write on flush for limited output

    When there is a hard limit on the output of the experimental UI, change
    the behavior to only write to the underlying stream on flush. In this
    way, we can avoid semantically incomplete writes at the moment we
    run out of characters.
    
    Change-Id: I024c776ae2139d76d380bb89d13b8fe61d6cfe51
    PiperOrigin-RevId: 206000817
    aehlig authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    80b4b95 View commit details
    Browse the repository at this point in the history
  19. Use the single-string arg formatter for param file format.

    This avoids bazel crashes for illegally formatted strings. Previously the code would assume that a correct string was passed with only minimal validation.
    
    RELNOTES: None
    PiperOrigin-RevId: 206012819
    tomlu authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    61f477e View commit details
    Browse the repository at this point in the history
  20. Add a --server_javabase startup option as an alias for the LHS --host…

    …_javabase
    
    to avoid confusion between the LHS and RHS host_javabases.
    
    The LHS --host_javabase option should be considered deprecated and will
    eventually be removed.
    
    RELNOTES: Rename the startup flag --host_javabase to --server_javabase to avoid confusion with the build flag --host_javabase
    PiperOrigin-RevId: 206015757
    cushon authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    2a8b657 View commit details
    Browse the repository at this point in the history
  21. Support optional repository verification

    Add an option to provide a file with a resolved value, that will be
    used to verify that the repositories mentioned in this file produce
    a correct directory tree.
    
    RELNOTES: newly added options --experimental_repository_hash_file and
      --experimental_verify_repository_rules allow to verify for repositories
      the directory generated against pre-recorded hashes. See documentation
      for those options.
    
    Work towards bazelbuild#5660.
    
    Change-Id: I2d8becb188d0fa51e890fb8f6139f321cca14b7b
    PiperOrigin-RevId: 206016792
    aehlig authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    24d3a01 View commit details
    Browse the repository at this point in the history
  22. Add new debug_prefix_map_pwd_is_dot CROSSTOOL feature

    This feature sets `-fdebug_prefix_map=$PWD=.` as an argument to Clang
    in order to standardize the paths to debug symbols (by making them
    relative to the exec root).
    
    Note that this needs to be implemented inside wrapped_clang instead
    of as an argument to the action itself for caching purposes, as PWD
    can change based on the action's executor.
    
    PiperOrigin-RevId: 206019016
    Googler authored and Copybara-Service committed Jul 25, 2018
    1 Configuration menu
    Copy the full SHA
    3f46dd0 View commit details
    Browse the repository at this point in the history
  23. Remove unused method "hasActionFilesystem()".

    RELNOTES: None
    
    PiperOrigin-RevId: 206021118
    ericfelly authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    6d73e0a View commit details
    Browse the repository at this point in the history
  24. Kill the deps map

    PiperOrigin-RevId: 206025645
    cushon authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    c8895b5 View commit details
    Browse the repository at this point in the history
  25. Allow the AndroidResourcesInfo to be created from Skylark.

    RELNOTES: none.
    PiperOrigin-RevId: 206035420
    Googler authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    beb5530 View commit details
    Browse the repository at this point in the history
  26. Expose the JavaConfiguration get fields to Skylark for the android_sd…

    …k rule.
    
    RELNOTES: none.
    PiperOrigin-RevId: 206035881
    Googler authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    55f4145 View commit details
    Browse the repository at this point in the history
  27. Remove cookbook

    The cookbook was not maintained and was replaced by https://github.com/bazelbuild/examples
    
    RELNOTES: None.
    PiperOrigin-RevId: 206046316
    laurentlb authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    59a0b3f View commit details
    Browse the repository at this point in the history
  28. [Skylark] Support dictionaries in structs when serializing them using…

    … struct.to_json.
    
    Dictionaries are frequently used for generic configuration descriptions especially
    given that `struct` is not allowed in build files.
    
    In order to be JSON-compatible, only dictionaries with string keys are allowed.
    Technically Python also allows integers and booleans by automatically converting
    them to strings, but this is confusing and not necessarily a good thing to do.
    
    Fixes bazelbuild#5542
    
    Closes bazelbuild#5543.
    
    PiperOrigin-RevId: 206049754
    ttsugriy authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    7fe7047 View commit details
    Browse the repository at this point in the history
  29. [Perf] Remove unnecessary ImmutableMap.copyOf invocation.

    `keyWordArgs` is already `ImmutableMap<String, Object>` and `copyOf` contains enough
    overhead to show up on parse profiles.
    
    Closes bazelbuild#5651.
    
    PiperOrigin-RevId: 206051798
    ttsugriy authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    03bd99d View commit details
    Browse the repository at this point in the history
  30. Automated rollback of commit 16dde0d.

    *** Reason for rollback ***
    
    Crash (see linked bug).
    
    PiperOrigin-RevId: 206060905
    janakdr authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    1ed89aa View commit details
    Browse the repository at this point in the history
  31. Weave the artifact path resolver through the Spawn execution context.

    RELNOTES: None
    PiperOrigin-RevId: 206063489
    ericfelly authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    8e6a1b9 View commit details
    Browse the repository at this point in the history
  32. Cache default parameter values for skylark methods, and compute types…

    … of Param annotations only once.
    
    This change has been manually verified to greatly reduce analysis time (~50%) on very large builds, as it mitigates a previous regression brought on by the migration of @SkylarkSignature to @SkylarkCallable.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206063684
    c-parsons authored and Copybara-Service committed Jul 25, 2018
    Configuration menu
    Copy the full SHA
    dc6f1cb View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2018

  1. Internal change

    PiperOrigin-RevId: 206085005
    cushon authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    d424dee View commit details
    Browse the repository at this point in the history
  2. PiperOrigin-RevId: 206091795

    cushon authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    2143ff2 View commit details
    Browse the repository at this point in the history
  3. Remove the gen_jars output group

    RELNOTES: Removed the gen_jars output group
    PiperOrigin-RevId: 206092599
    cushon authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    75810d5 View commit details
    Browse the repository at this point in the history
  4. Automated rollback of commit ce8f520.

    PiperOrigin-RevId: 206102499
    cushon authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    ca2977c View commit details
    Browse the repository at this point in the history
  5. Add support for data dependencies to java_plugin and java_package_con…

    …figuration
    
    This allows loading data inputs to annotation processors and Error Prone plugins.
    Previously the only supported way to do this was using Java resources, but in
    the case of per-package configuration that ties any changes to the resources
    to JavaBuilder's release process.
    
    PiperOrigin-RevId: 206106802
    cushon authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    9b29a1b View commit details
    Browse the repository at this point in the history
  6. C++: Removes calls to setCcLinkparamsStore of CcLinkingInfo.Builder

    This is in preparation for deleting CcLinkParamsStore. Not all calls to
    setCcLinkparamsStore have been removed in this CL.
    
    Roll forward with bzl change in separate CL (unknown commit) and giving a proper error in Skylark instead of a crash when CcLinkingInfo is not built correctly.
    
    RELNOTES:none
    PiperOrigin-RevId: 206122870
    oquenchil authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    071a441 View commit details
    Browse the repository at this point in the history
  7. Automatic code cleanup.

    PiperOrigin-RevId: 206124597
    Googler authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    59b0856 View commit details
    Browse the repository at this point in the history
  8. C++: Removes calls to setCcLinkparamsStore of CcLinkingInfo.Builder

    This is in preparation for deleting CcLinkParamsStore. All remaining calls
    to the setCcLinkparamsStore method of the CcLinkingInfo builder have been removed.
    
    RELNOTES:none
    PiperOrigin-RevId: 206128439
    oquenchil authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    71479d3 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    63883b3 View commit details
    Browse the repository at this point in the history
  10. Internal change

    PiperOrigin-RevId: 206130934
    philwo authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    bafd898 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    3388d80 View commit details
    Browse the repository at this point in the history
  12. Remove third_party/bytebuddy

    philwo committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    5bd5b50 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    6c99cf1 View commit details
    Browse the repository at this point in the history
  14. Reduce the set of profiler events for the json profile

    This significantly reduces the size of the resulting profiles. Do we need the
    events that I remove? What do we do with the data? Who knows?
    
    PiperOrigin-RevId: 206153368
    ulfjack authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    46f3524 View commit details
    Browse the repository at this point in the history
  15. docs: update Windows installation and setup docs

    Also update the Java Tutorial page to say you have
    to install the JDK and set JAVA_HOME.
    
    See bazelbuild#5208
    
    Change-Id: I14b792589c39f03572518aaff6f6f8e5ca8a65c8
    
    Closes bazelbuild#5617.
    
    Change-Id: I45c841189b0c220365ab9aeeb67f26b32059be4a
    PiperOrigin-RevId: 206156529
    laszlocsomor authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    7574865 View commit details
    Browse the repository at this point in the history
  16. Add the .py3 extension as a valid Python source.

    RELNOTES: None.
    PiperOrigin-RevId: 206156886
    Googler authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    676e0cd View commit details
    Browse the repository at this point in the history
  17. Add a flag to make Apple rules not share C++ compile actions.

    This is accomplished by:
    
    - Setting the APPLE_CROSSTOOL configuration distinguisher in AppleCrosstoolTransition
    - Doing nothing in AppleCrosstoolTransition in case we are already in an Apple configuration so that funky use cases like a binary having a dependency on a swift_library both directly and through an objc_library work
    - Adding the "apl-" prefix to the output directory name in APPLE_CROSSTOOL configurations
    
    Plus a few minor cleanups:
    
    - Removed some unused methods
    - Nopped out --enable_apple_crosstool_transition if the new flag is set
    - Nopped out --target_uses_apple_crosstool if the new flag is set
    
    These latter reduce the possible space of Apple configurations, thus making the code a bit more comprehensible.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206157413
    lberki authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    74146fd View commit details
    Browse the repository at this point in the history
  18. Use the path resolver when dealing with tree artifacts.

    RELNOTES: None
    PiperOrigin-RevId: 206157591
    ericfelly authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    09efb3f View commit details
    Browse the repository at this point in the history
  19. Target pattern eval: use the same number of threads as loading

    Instead of using the default thread pool size of 200, use the number set for
    the loading phase. This is in preparation for interleaving the loading and
    target pattern eval phases.
    
    PiperOrigin-RevId: 206172915
    ulfjack authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    e24a591 View commit details
    Browse the repository at this point in the history
  20. PiperOrigin-RevId: 206181674

    aoeui authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    db01c6f View commit details
    Browse the repository at this point in the history
  21. Fix databinding after bazelbuild@9b29a1b

    PiperOrigin-RevId: 206182289
    cushon authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    2f37aca View commit details
    Browse the repository at this point in the history
  22. Update truth dependency to 0.42

    Truth 0.42 includes Fact which is needed by an upcoming change to
    Subject
    
    Adds diffutils which is needed by truth >= 0.40
    
    Changed filename of diffutils jar to include version number
    
    Diffutils jar from http://repo1.maven.org/maven2/com/googlecode/java-diff-utils/diffutils/1.3.0/
    
    See also https://code.google.com/archive/p/java-diff-utils/
    
    Change-Id: Iecd60c921c2562750d1075e0afbb7777e6b86ed2
    jlavallee authored and jin committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    5582965 View commit details
    Browse the repository at this point in the history
  23. Make timestamps of InternalOrderedBuildEvent immutable.

    Similar to the sequence number, the timestamp should be immutable and computed when the event is enqueued (not at serialization time).
    
    PiperOrigin-RevId: 206186036
    Googler authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    e2f31cb View commit details
    Browse the repository at this point in the history
  24. Make skydoc java binary publicly visible.

    RELNOTES: None.
    PiperOrigin-RevId: 206195789
    c-parsons authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    458bcb5 View commit details
    Browse the repository at this point in the history
  25. Automatic code cleanup.

    PiperOrigin-RevId: 206195967
    Googler authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    ecceb0c View commit details
    Browse the repository at this point in the history
  26. Keep track of tree artifact inputs in CustomCommandLine.Builder .

    PiperOrigin-RevId: 206203357
    Googler authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    2d90b6a View commit details
    Browse the repository at this point in the history
  27. Update build-ref.html

    Add a missing indefinite article
    
    Closes bazelbuild#5673.
    
    PiperOrigin-RevId: 206203662
    AlexBeggs authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    cd91d1c View commit details
    Browse the repository at this point in the history
  28. Modify --subcommands to allow pretty printing the arguments of a subc…

    …ommand
    
    as a list, rather than as a single line (i.e., newline delimited rather than
    space delimited).
    
    Before:
    
    SUBCOMMAND: # //src/main/java/com/google/devtools/build/lib:string_util [action 'Building src/main/java/com/google/devtools/build/lib/libstring_util.jar (2 source files) [for host]']
    (cd /tmp/devbazel_output_base/execroot/io_bazel && \
      exec env - \
        LC_CTYPE=en_US.UTF-8 \
      external/embedded_jdk/bin/java -XX:+UseParallelOldGC -XX:-CompactStrings '--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED' '--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED' '--add-exports=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED' '--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED' '--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED' '--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED' '--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED' '--add-opens=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED' '--patch-module=java.compiler=external/bazel_tools/third_party/java/jdk/langtools/java_compiler.jar' '--patch-module=jdk.compiler=external/bazel_tools/third_party/java/jdk/langtools/jdk_compiler.jar' '--add-opens=java.base/java.nio=ALL-UNNAMED' -jar external/bazel_tools/tools/jdk/JavaBuilder_deploy.jar @bazel-out/host/bin/src/main/java/com/google/devtools/build/lib/libstring_util.jar-2.params)
    
    After:
    
    SUBCOMMAND: # //src/main/java/com/google/devtools/build/lib:string_util [action 'Building src/main/java/com/google/devtools/build/lib/libstring_util.jar (2 source files) [for host]']
    (cd /tmp/devbazel_output_base/execroot/io_bazel && \
      exec env - \
        LC_CTYPE=en_US.UTF-8 \
      external/embedded_jdk/bin/java \
        -XX:+UseParallelOldGC \
        -XX:-CompactStrings \
        '--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED' \
        '--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED' \
        '--add-exports=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED' \
        '--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED' \
        '--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED' \
        '--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED' \
        '--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED' \
        '--add-opens=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED' \
        '--patch-module=java.compiler=external/bazel_tools/third_party/java/jdk/langtools/java_compiler.jar' \
        '--patch-module=jdk.compiler=external/bazel_tools/third_party/java/jdk/langtools/jdk_compiler.jar' \
        '--add-opens=java.base/java.nio=ALL-UNNAMED' \
        -jar \
        external/bazel_tools/tools/jdk/JavaBuilder_deploy.jar \
        @bazel-out/host/bin/src/main/java/com/google/devtools/build/lib/libstring_util.jar-2.params)
    
    RELNOTES: --subcommands can now take a "pretty_print" value ("--subcommands=pretty_print") to print the
    arguments of subcommands as a list for easier reading.
    PiperOrigin-RevId: 206213009
    ahumesky authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    be31bb8 View commit details
    Browse the repository at this point in the history
  29. Cut long lines in xcode-locator.m.

    This is just a style fix so it should have no functional changes.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206220348
    jmmv authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    0ccfde8 View commit details
    Browse the repository at this point in the history
  30. Remove default MD5 in most of Bazel's virtual filesystems.

    This forces the ex-default to be explicit in a lot of tests, but I'd rather that than have the risk of implicit md5-use in production code.
    
    To keep this CL smaller, do not remove the default from UnixFS quite yet.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206223521
    cvcal authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    7e87730 View commit details
    Browse the repository at this point in the history
  31. Send xcode-locator error messages to stderr, not stdout.

    RELNOTES: None.
    PiperOrigin-RevId: 206224046
    jmmv authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    1f3d3ea View commit details
    Browse the repository at this point in the history
  32. Don't retain memory used by Artifact->owner Label multimap after it's…

    … been used at the start of execution.
    
    PiperOrigin-RevId: 206230049
    janakdr authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    5194dfd View commit details
    Browse the repository at this point in the history
  33. Fix skydoc following of nontrivial relative labels.

    Previously, only trivial relative paths (within the same package) were handled correctly. Now paths such as ":foo/bar.bzl" are handled appropriately.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206237161
    c-parsons authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    6964a0b View commit details
    Browse the repository at this point in the history
  34. Generalize fix to not emit a -gensrc.jar if the annotation processor …

    …classpath is
    
    non-empty but there are no annotation processors to run.
    
    PiperOrigin-RevId: 206244327
    cushon authored and Copybara-Service committed Jul 26, 2018
    Configuration menu
    Copy the full SHA
    1d96c7c View commit details
    Browse the repository at this point in the history

Commits on Jul 27, 2018

  1. Unconditionally run the SJD machinery, which is necessary for jdeps o…

    …utput
    
    and just skip the diagnostics at the end if strict deps errors are disabled.
    
    This is necessary to javac-turbine, where we don't report strict deps errors
    (we rely on JavaBuilder for enforcement) but where we still want to emit
    jdeps.
    
    See also bazelbuild/rules_scala#559
    
    PiperOrigin-RevId: 206257304
    cushon authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    1ac3597 View commit details
    Browse the repository at this point in the history
  2. Perform strict deps enforcement on compilations with attribution errors

    Reporting strict deps errors in addition to attribution errors is helpful
    particularly with code-generating annotation processors that may fail due
    to missing transitive deps. Currently those failures prevent add_dep
    suggestions from being emitted, making the problem harder to diagnose.
    
    The presence of other errors may prevent some SJD issues from being detected,
    but in theory should never lead to spurious SJD errors from being reported,
    so the additional errors should generally be helpful.
    
    PiperOrigin-RevId: 206261677
    cushon authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    a4b28b5 View commit details
    Browse the repository at this point in the history
  3. Remove load() from contents.

    This was missed in earlier patch.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206276771
    Googler authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    770b987 View commit details
    Browse the repository at this point in the history
  4. C++: Fixes the way errors are checked in tests.

    RELNOTES:none
    PiperOrigin-RevId: 206287557
    oquenchil authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    5168c50 View commit details
    Browse the repository at this point in the history
  5. Experimental UI: on limited output, reserve capacity for post-build s…

    …tatus
    
    When the experimental UI is asked to limit its overall output, reserve a certain
    fraction for output to be generated after the build is complete. In this way,
    at least a final status, or a bit of the test summary, is shown.
    
    Also, to help staying within the limit also for small limits, from a certain
    threshold onwards, more severely restrict the output we allow for each individual
    action.
    
    Change-Id: I912aec0dd17639d9864133a10359f93537b473ad
    PiperOrigin-RevId: 206288651
    aehlig authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    d0190d3 View commit details
    Browse the repository at this point in the history
  6. Add a flag to split test.xml generation into a separate Spawn

    At this time, this is only implemented for the StandaloneTestStrategy.
    
    This solves a race condition on Posix-like systems, where we cannot guarantee that the pipes are actually fully flushed to disk when the test process exits, and this can cause the test.xml to be empty, which makes it hard to debug issues. (The test.log files do not show up in normal CI systems, only the test.xml files.)
    
    Progress on bazelbuild#4608.
    
    PiperOrigin-RevId: 206292179
    ulfjack authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    0858ae1 View commit details
    Browse the repository at this point in the history
  7. Add an option to compress the JSON trace profile.

    chrome://tracing is able to load gzipped profiles out of the box.
    
    RELNOTES: None
    PiperOrigin-RevId: 206308018
    meisterT authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    2193da9 View commit details
    Browse the repository at this point in the history
  8. Update ProjectFileSupport to take an OptionsParser.

    RELNOTES: None.
    PiperOrigin-RevId: 206310700
    Googler authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    f5923c1 View commit details
    Browse the repository at this point in the history
  9. shell tests: use Bazel-embedded Bash runfiles lib

    Use the Bash runfiles library under @bazel_tools,
    do not depend on it from source.
    
    RELNOTES: none
    PiperOrigin-RevId: 206312278
    laszlocsomor authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    64560dd View commit details
    Browse the repository at this point in the history
  10. Windows,tests: port progress_reporting_test

    //src/test/shell/integration:progress_reporting_test
    now runs on Windows.
    
    See bazelbuild#4292
    
    Change-Id: Ic6a4c466156e26717beacb3bbbb270a8c2ccccd0
    
    Closes bazelbuild#5675.
    
    Change-Id: I4152dbe38a9880cbdad5d897b3d8b082b200552b
    PiperOrigin-RevId: 206315309
    laszlocsomor authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    a0276dd View commit details
    Browse the repository at this point in the history
  11. Add GitHub CODEOWNERS file.

    With this file, GitHub can automatically assign reviewers for pull requests
    containing files in component subdirectories.
    
    This is a step towards enabling external contributors to be maintainers of components in Bazel.
    
    For more information: https://help.github.com/articles/about-codeowners/
    
    GitHub blog post: https://blog.github.com/2017-07-06-introducing-code-owners/
    
    RELNOTES: None.
    PiperOrigin-RevId: 206318552
    jin authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    9d23d4d View commit details
    Browse the repository at this point in the history
  12. [singlejar] cleanup port library

    /cc @laszlocsomor
    
    Closes bazelbuild#5655.
    
    PiperOrigin-RevId: 206319221
    rongjiecomputer authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    f0d5771 View commit details
    Browse the repository at this point in the history
  13. Windows,tests: port python_test

    //src/test/shell/integration:python_test now runs
    on Windows.
    
    See bazelbuild#4292
    
    Change-Id: Ie408ea55973a32fc5ee6e74f9bed5e3fa9f818b1
    
    Closes bazelbuild#5684.
    
    Change-Id: Ie408ea55973a32fc5ee6e74f9bed5e3fa9f818b1
    PiperOrigin-RevId: 206321651
    laszlocsomor authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    aa761ae View commit details
    Browse the repository at this point in the history
  14. Adding option to change the root directory name in build_tar.py and a…

    …rchive.py.
    
    This is required to support Windows Docker image creation.
    
    RELNOTES: None
    PiperOrigin-RevId: 206326316
    Googler authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    55dc53f View commit details
    Browse the repository at this point in the history
  15. Repository Options: fix meta data

    The "distdir" option is no longer experimental and therefore should not be
    marked as such. Also, the "experimental_repository_hash_file" and
    "experimental_verify_repository_rules" are not really about loggig; but they
    actually are still experimental.
    
    Change-Id: I5c30c7c0871822c077a713819ae47b250a7d8a71
    PiperOrigin-RevId: 206326885
    aehlig authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    a5aafd5 View commit details
    Browse the repository at this point in the history
  16. Simplify tree artifact directory check, and avoid an extra system call.

    RELNOTES: None
    
    PiperOrigin-RevId: 206328416
    ericfelly authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    292db1e View commit details
    Browse the repository at this point in the history
  17. Update Android owners in Bazel GitHub CODEOWNERS

    RELNOTES: None
    PiperOrigin-RevId: 206338340
    jin authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    38cfa82 View commit details
    Browse the repository at this point in the history
  18. Automated rollback of commit db01c6f.

    *** Reason for rollback ***
    
    Rolling forward with fixes.
    
    *** Original change description ***
    
    PiperOrigin-RevId: 206339696
    janakdr authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    129c3e2 View commit details
    Browse the repository at this point in the history
  19. Skip strict deps suggested fix commands with strict deps disabled

    instead of just skipping the add dep errors.
    
    RELNOTES: follow-up to bazelbuild@1ac3597
    PiperOrigin-RevId: 206350053
    cushon authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    bc9b35b View commit details
    Browse the repository at this point in the history
  20. Remove global owners from Bazel CODEOWNERS.

    GitHub assigns *everyone* in a team to a PR, if it matches. Let's not assign everyone to a PR.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206350165
    jin authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    0ae0be9 View commit details
    Browse the repository at this point in the history
  21. Automated rollback of commit 7e87730.

    *** Reason for rollback ***
    
    Go back to the default constructor - instead of requiring everywhere to know the correct hash function, we'll have the default rely on global state. It will make transition easier, even if it makes the origin of the hash less obvious.
    
    *** Original change description ***
    
    Remove default MD5 in most of Bazel's virtual filesystems.
    
    This forces the ex-default to be explicit in a lot of tests, but I'd rather that than have the risk of implicit md5-use in production code.
    
    To keep this CL smaller, do not remove the default from UnixFS quite yet.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206358838
    cvcal authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    c9efd06 View commit details
    Browse the repository at this point in the history
  22. Automated rollback of commit 71479d3.

    *** Reason for rollback ***
    
    http://bazelbuild@71479d3 broke thousands of targets in the nightly, notably:
    
    //abuse/ares/rulesystem/generator/python/rule_set:main (x1754)
    //net/encapdecap/common/templates:gen_dr_scopes (x903)
    //testing/cloud/vex/public:vex_main_internal (x782)
    //wireless/android/play/playlog/server:playlog_server (x401)
    
    *** Original change description ***
    
    C++: Removes calls to setCcLinkparamsStore of CcLinkingInfo.Builder
    
    This is in preparation for deleting CcLinkParamsStore. All remaining calls
    to the setCcLinkparamsStore method of the CcLinkingInfo builder have been removed.
    
    RELNOTES:none
    PiperOrigin-RevId: 206361808
    rupertks authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    25e75dc View commit details
    Browse the repository at this point in the history
  23. Fix crash bug in SkyQuery rdeps when there's a dependency edge filter.

    RELNOTES: None
    PiperOrigin-RevId: 206368137
    haxorz authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    b6bf51d View commit details
    Browse the repository at this point in the history
  24. Throw a rule error when a skylark rule implementation returns multipl…

    …e providers of the same type.
    
    RELNOTES: A rule error is now thrown if a Skylark rule implementation function returns multiple providers of the same type.
    PiperOrigin-RevId: 206371385
    c-parsons authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    be88b85 View commit details
    Browse the repository at this point in the history
  25. Make sure the --host_platform_remote_properties_override flags is

    honored when creating the host platform.
    
    Fixes bazelbuild#5695.
    
    Change-Id: Iaa99c8189421893440e5e5140450c70de69d7b86
    
    Closes bazelbuild#5696.
    
    Change-Id: Iaa99c8189421893440e5e5140450c70de69d7b86
    PiperOrigin-RevId: 206371468
    katre authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    c809afc View commit details
    Browse the repository at this point in the history
  26. Blacklist PackageFactory$BuiltInRuleFunction from serialization.

    PiperOrigin-RevId: 206389059
    janakdr authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    affe024 View commit details
    Browse the repository at this point in the history
  27. Document AndroidLibrary.java for readability.

    RELNOTES: None.
    PiperOrigin-RevId: 206393574
    jin authored and Copybara-Service committed Jul 27, 2018
    Configuration menu
    Copy the full SHA
    696442c View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2018

  1. Windows,tests: port loading_phase_tests

    //src/test/shell/integration:loading_phase_tests
    now runs on Windows.
    
    The inherently incompatible parts of the test are
    now in
    //src/test/shell/integration:loading_phase_posix_tests
    
    See bazelbuild#4292
    
    Change-Id: I90db31449e72aed2138916eed6289bcc20af5cae
    
    Closes bazelbuild#5685.
    
    Change-Id: I38727aed1b548ec8b566f99551e63cceac78180b
    PiperOrigin-RevId: 206533515
    laszlocsomor authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    894aab3 View commit details
    Browse the repository at this point in the history
  2. Windows,tests: port experimental_ui_test

    //src/test/shell/integration:experimental_ui_test
    now runs on Windows.
    
    See bazelbuild#4292
    
    Change-Id: I7997e8a2e8dce9377c0326b9ed3f6c55a09b2708
    
    Closes bazelbuild#5690.
    
    Change-Id: I7997e8a2e8dce9377c0326b9ed3f6c55a09b2708
    PiperOrigin-RevId: 206535860
    laszlocsomor authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    f6bdc21 View commit details
    Browse the repository at this point in the history
  3. Add the ParallelEvaluator.eval call to the Profiler

    We want to make sure that the profile captures all Skyframe invocations, so
    that we can catch cases where we accidentally introduce new ones.
    
    PiperOrigin-RevId: 206543307
    ulfjack authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    dc7a4b9 View commit details
    Browse the repository at this point in the history
  4. Windows,tests: port startup_options_tests

    //src/test/shell/integration:startup_options_tests
    now runs on Windows.
    
    See bazelbuild#4292
    
    Change-Id: I255b227f7b6b788f21b45b743e7065a646252a36
    
    Closes bazelbuild#5706.
    
    Change-Id: Ibee4997783a820858fc2d2bdda02082a91385d0e
    PiperOrigin-RevId: 206551029
    laszlocsomor authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    283ba0a View commit details
    Browse the repository at this point in the history
  5. Windows,tests: port execution_phase_tests

    //src/test/shell/integration:execution_phase_tests
    now runs on Windows.
    
    See bazelbuild#4292
    
    Change-Id: Ia46f26d7fa428cc17cd6988859d427165174fe29
    
    Closes bazelbuild#5688.
    
    Change-Id: I5d001825431e8a0ee7d2ce6be911544b72c3bdd2
    PiperOrigin-RevId: 206560081
    laszlocsomor authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    ffb12a4 View commit details
    Browse the repository at this point in the history
  6. Automatic code cleanup.

    PiperOrigin-RevId: 206564363
    Googler authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    feb9c87 View commit details
    Browse the repository at this point in the history
  7. Make the fallback strategy for Bazel's remote execution configurable.

    RELNOTES: When using Bazel's remote execution feature and Bazel has to
    fallback to local execution for an action, Bazel used non-sandboxed
    local execution until now. From this release on, you can use the new
    flag --remote_local_fallback_strategy=<strategy> to tell Bazel which
    strategy to use in that case.
    PiperOrigin-RevId: 206566380
    philwo authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    d6ce264 View commit details
    Browse the repository at this point in the history
  8. Automatic code cleanup.

    PiperOrigin-RevId: 206567309
    Googler authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    56b1201 View commit details
    Browse the repository at this point in the history
  9. Allows subclasses of SkyframeExecutor to enable analysis during execu…

    …tion.
    
    PiperOrigin-RevId: 206568465
    aoeui authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    7b3a3fd View commit details
    Browse the repository at this point in the history
  10. Add a todo to ProcessUtils to use the new Java 9 APIs

    PiperOrigin-RevId: 206573961
    ulfjack authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    3082654 View commit details
    Browse the repository at this point in the history
  11. Add manifestProtoOutput produced during Java compilation to the Outpu…

    …tJar so that it can be accessed in Skylark. One example where this is used is in Android IDL processing where the manifestProtoOutput is used to split out the Android IDL generated Java classes from the overarching outputJar produced by the android_library rule.
    
    RELNOTES: none
    PiperOrigin-RevId: 206580880
    Googler authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    008e5f8 View commit details
    Browse the repository at this point in the history
  12. Return Java providers only once

    through JavaInfo, instead of returning them also through ConfiguredTarget. Since these providers can not be found in ConfiguredTarget anymore they have to be retrieved from JavaInfo instead.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206585413
    iirina authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    38899f7 View commit details
    Browse the repository at this point in the history
  13. Remove source index from SourceFileArtifactValue.

    PiperOrigin-RevId: 206586252
    ericfelly authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    fe19ddc View commit details
    Browse the repository at this point in the history
  14. Expanding execution log parser to filter by runner type.

    RELNOTES: Execution Log Parser can now, when printing it out, filter the log by runner type
    PiperOrigin-RevId: 206602183
    Googler authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    825b610 View commit details
    Browse the repository at this point in the history
  15. Some code cleanups and improvements around the various DTC visitor im…

    …plementations in SkyQuery:
    
    (1) Get rid of the 'errorReporter' param used in the two unbounded 'deps' implementations. In practice, this callback is always used right alongside the normal query callback. So we can re-implement it as a single, composite callback.
    
    (2) Revert the recent change to processResultsAndReturnTargets (and restore the old method name). It general, it's a bad idea to return Targets outside that method, because it means we aren't respecting the MultisetSemaphore<PackageIdentifier>. Along with (1), this fixes a real issue where DepsUnboundedVisitor#processPartialResults was using Targets (and thus keeping their Packages live in memory) outside of the package semaphore.
    
    RELNOTES: None
    PiperOrigin-RevId: 206606747
    haxorz authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    f59022b View commit details
    Browse the repository at this point in the history
  16. [Skylark] Use POJOs instead of dynamic proxies.

    Java uses dynamically generated proxy classes to access annotation properties
    and their methods are ~7X slower than plain getters. According to async-profiler
    50%+ of `convertArgumentList` method time is spent in dynamic proxy methods, so
    optimizing their performance makes sense.
    
    This also makes the model less anemic, since POJOs can actually provide business
    methods.
    
    Closes bazelbuild#5666.
    
    PiperOrigin-RevId: 206608812
    ttsugriy authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    7dbc5e0 View commit details
    Browse the repository at this point in the history
  17. Improve artifact->owner label accounting in two ways. First, don't do…

    … the full mapping unless requested. This gets rid of any performance issue for the vast majority of builds. Second, if requested, use a custom data structure so that we don't have to create a full HashSet for artifacts whose only owning labels are their own owner labels.
    
    PiperOrigin-RevId: 206610370
    janakdr authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    ccb7456 View commit details
    Browse the repository at this point in the history
  18. Automated rollback of commit be88b85.

    *** Reason for rollback ***
    
    Concerns were raised about this breaking change, so rolling back to be safe.
    
    *** Original change description ***
    
    Throw a rule error when a skylark rule implementation returns multiple providers of the same type.
    
    RELNOTES: A rule error is now thrown if a Skylark rule implementation function returns multiple providers of the same type.
    PiperOrigin-RevId: 206629186
    c-parsons authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    df8bf90 View commit details
    Browse the repository at this point in the history
  19. [Skylark] Size argument list builder to avoid allocations.

    This change is focused on 2 things:
    - avoid creating builders in case they don't end up being used
    - create builders using the maximum expected size to avoid intermediate
      allocations to accommodate more elements
    
    Closes bazelbuild#5694.
    
    PiperOrigin-RevId: 206636046
    ttsugriy authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    60c288a View commit details
    Browse the repository at this point in the history
  20. Internal change

    PiperOrigin-RevId: 206642715
    rupertks authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    c80185c View commit details
    Browse the repository at this point in the history
  21. Make explicit the contract of ConfiguredTarget builders returning nul…

    …l when there are rule errors.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206652580
    c-parsons authored and Copybara-Service committed Jul 30, 2018
    Configuration menu
    Copy the full SHA
    3f87d16 View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2018

  1. Quiet 'The following options were not recognized by any processor' wa…

    …rnings
    
    PiperOrigin-RevId: 206697829
    cushon authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    0fcae04 View commit details
    Browse the repository at this point in the history
  2. testenv.sh: do not run "bazel info" unnecessarily

    testenv.sh no longer runs "bazel info bazel-bin"
    and "bazel info bazel-genfiles", because the only
    test that needs this information is
    bazel_sandboxing_test.sh
    
    This saves 1-2 seconds on Windows in every shell
    test setup.
    
    Also, on Windows we can safely run Bazel in a
    subshell since bazelbuild#3148 is fixed.
    
    Change-Id: If9873221d536f1acfd4849afbfc83b94311de2bd
    
    Closes bazelbuild#5707.
    
    Change-Id: I04e37c4d5f794017a6050253d8d1b8a8ac43a6d1
    PiperOrigin-RevId: 206714921
    laszlocsomor authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    2829ba4 View commit details
    Browse the repository at this point in the history
  3. Disable include scanning for C++ linkstamp compile actions, which are…

    … supposed to be shared.
    
    Note that CppCompileAction#discoversInputs() will still almost always return true because it's still set to true when .d file pruning is enabled.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206716704
    lberki authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    e03a119 View commit details
    Browse the repository at this point in the history
  4. Do not collect source jars for neverlink targets.

    RELNOTES: none.
    PiperOrigin-RevId: 206717454
    Googler authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    15b27e4 View commit details
    Browse the repository at this point in the history
  5. Add aarch64 embedded JDK config, MacOS mock toolchain settings

    Hi,
    
    This PR is for additional work to get the tests running correctly on Aarch64. One key issue was that the default embedded jvm used by default was X86_64 and does not work on other architectures.
    To support this I have added a new constraint, however I will refine this in case a version of Darwin becomes available on aarch64.
    
    I'll do the work to find a good arm32 toolchain in a future CL. I do not have access for ppc or z390 to repair those architectures.
    
    Either way, hope this is good for you.
    
    Closes bazelbuild#5525.
    
    PiperOrigin-RevId: 206717726
    ArielleA authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    fa7e49f View commit details
    Browse the repository at this point in the history
  6. Only call filterDiscoveredHeaders() if include scanning is in effect.

    This is a step towards making CppCompileAction work without input discovery.
    
    This works because:
    
    - filterDiscoveredHeaders() is not necessary if we don't discover any
    - shouldPruneModules is always false if `shouldScanIncludes` is false (see CppCompileActionBuilder#shouldPruneModules())
    
    RELNOTES: None.
    PiperOrigin-RevId: 206721143
    lberki authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    18c5e08 View commit details
    Browse the repository at this point in the history
  7. Use JsonWriter to ensure correct escaping of values

    PiperOrigin-RevId: 206729076
    ulfjack authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    03a20ef View commit details
    Browse the repository at this point in the history
  8. Add option to post ProfileStartedEvent containing the profile's path.

    RELNOTES: None
    PiperOrigin-RevId: 206741115
    meisterT authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    1e55149 View commit details
    Browse the repository at this point in the history
  9. Add JavaSourceInfoProvider to JavaInfo.

    JavaSourceInfoProvider is returned through JavaInfo instead of ConfiguredTarget
    for all Java rules. Only android_library and android_binary return it directly
    through ConfiguredTarget, since they don't return a JavaInfo provider.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206746172
    iirina authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    fab7203 View commit details
    Browse the repository at this point in the history
  10. Clearing //tools/defaults:*

    Replaced reference to //tools/defaults:crosstool by //tools/cpp:crosstool.
    Added Target //tools/cpp:crosstool to base test environment setup.
    
    RELNOTES:none
    PiperOrigin-RevId: 206747334
    dbabkin authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    a7bd133 View commit details
    Browse the repository at this point in the history
  11. Stop generating .d files when they won't be looked at later.

    While at it remove CppCompilationActionBuilder.setAllowUsingHeaderModules,
    which isn't used anymore and would make the logic here (even) more complicated.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206752281
    Googler authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    09bf7cc View commit details
    Browse the repository at this point in the history
  12. Slightly improve UnixGlob implementation. For recursive patterns, the…

    … current
    
    implementation leads to two identical recursive calls. This isn't harmful as
    there is a cache that will make the second call very cheap, but does not seem
    right.
    
    As a consequence, a cache is only needed if there are two recursive patterns in
    a single glob-path, e.g. /a/b/**/c/**/d/... as either "**" can expand to 0 or
    more directories (so /a/b/c/c/d could be reached in two different ways). If
    there is only a single recursive pattern, even with "*" placeholders, there is
    always a unique expansion (a "*" always represents exactly one path element).
    
    RELNOTES: None.
    PiperOrigin-RevId: 206753919
    Googler authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    9c9b85f View commit details
    Browse the repository at this point in the history
  13. Get newlines back. After the switch to using a JsonWriter, the json p…

    …rofile
    
    output was written all in one line. However, it is really convenient to be able
    to grep and count over the file (or generally be able to open it in an editor).
    
    This change is a bit hacky as just using setIndent makes the file completely
    expanded with one key-value pair per line, which is also not ideal. With this
    change, the format is:
    
    [
      { <entry> },
      { <entry> },
      ...
      { <entry> }
    ]
    
    RELNOTES: None
    PiperOrigin-RevId: 206758496
    Googler authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    1cf5ee3 View commit details
    Browse the repository at this point in the history
  14. Add the source jars of exports to the list of transitive source jars.

    RELNOTES: none.
    PiperOrigin-RevId: 206760974
    Googler authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    83516bd View commit details
    Browse the repository at this point in the history
  15. Add profiling data to the resources zip.

    RELNOTES:None
    PiperOrigin-RevId: 206762523
    corbinrsmith-work authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    f2505e4 View commit details
    Browse the repository at this point in the history
  16. Actually run aquery test

    RELNOTES: None
    PiperOrigin-RevId: 206765416
    meisterT authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    66a2063 View commit details
    Browse the repository at this point in the history
  17. Add apk converted to proto and all attributes from CompiledResources …

    …to ResourcesZip.
    
    Add new proto format for tool attributes stored in the AndroidDataXml for storing them in the resources.zip.
    
    RELNOTES:None
    PiperOrigin-RevId: 206765679
    corbinrsmith-work authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    8fe0f45 View commit details
    Browse the repository at this point in the history
  18. Add rules and coverage code owners.

    Closes bazelbuild#5717.
    
    PiperOrigin-RevId: 206766293
    Irina Iancu authored and Copybara-Service committed Jul 31, 2018
    2 Configuration menu
    Copy the full SHA
    76b7960 View commit details
    Browse the repository at this point in the history
  19. Fix bazel_docker_sandboxing_test by updating it to use the latest baz…

    …el-toolchains.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206766616
    philwo authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    faef180 View commit details
    Browse the repository at this point in the history
  20. Removes serialization class that introduced bug.

    RELNOTES:none
    PiperOrigin-RevId: 206767138
    oquenchil authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    504a6d2 View commit details
    Browse the repository at this point in the history
  21. Remove output jar from runfiles and the ijar from the OutputJar when …

    …sources
    
    are not provided.
    
    RELNOTES: none.
    PiperOrigin-RevId: 206768891
    Googler authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    04d8a92 View commit details
    Browse the repository at this point in the history
  22. Break out xcode-locator's main function into smaller chunks.

    This is intended to be a refactoring without functional changes for my
    own sanity in understanding what this code does.  Except I couldn't
    avoid applying some visual improvements to the usage message.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206771539
    jmmv authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    a0f77be View commit details
    Browse the repository at this point in the history
  23. Automated rollback of commit 8fe0f45.

    *** Reason for rollback ***
    
    Breaks a couple of builds due to a bad merge.
    
    *** Original change description ***
    
    Add apk converted to proto and all attributes from CompiledResources to ResourcesZip.
    Add new proto format for tool attributes stored in the AndroidDataXml for storing them in the resources.zip.
    
    RELNOTES:None
    PiperOrigin-RevId: 206774364
    corbinrsmith-work authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    0a635c5 View commit details
    Browse the repository at this point in the history
  24. Release 0.16.0 (2018-07-31)

    Baseline: 4f64b77
    
    Cherry picks:
       + 4c9a0c8:
         reduce the size of bazel's embedded jdk
       + d3228b6:
         remote: limit number of open tcp connections by default. Fixes
         bazelbuild#5491
       + 8ff87c1:
         Fix autodetection of linker flags
       + c4622ac:
         Fix autodetection of -z linker flags
       + 1021965:
         blaze_util_posix.cc: fix order of #define
       + ab1f269:
         blaze_util_freebsd.cc: include path.h explicitly
       + 68e92b4:
         openjdk: update macOS openjdk image. Fixes bazelbuild#5532
       + f45c224:
         Set the start time of binary and JSON profiles to zero correctly.
       + bca1912:
         remote: fix race on download error. Fixes bazelbuild#5047
       + 3842bd3:
         jdk: use parallel old gc and disable compact strings
    
    Incompatible changes:
    
      - The $(ANDROID_CPU) Make variable is not available anymore. Use
        $(TARGET_CPU) after an Android configuration transition instead.
      - The $(JAVA_TRANSLATIONS) Make variable is not supported anymore.
      - Skylark structs (using struct()) may no longer have to_json and
        to_proto overridden.
      - The mobile-install --skylark_incremental_res flag is no longer
        available, use the --skylark flag instead.
    
    New features:
    
      - android_local_test now takes advantage of Robolectric's binary
        resource processing which allows for faster tests.
      - Allow @ in package names.
    
    Important changes:
    
      - Option --glibc is removed, toolchain selection relies solely on
        --cpu and --compiler options.
      - Build support for enabling cross binary FDO optimization.
      - The --distdir option is no longer experimental. This
          option allows to specify additional directories to look for
          files before trying to fetch them from the network. Files from
          any of the distdirs are only used if a checksum for the file
          is specified and both, the filename and the checksum, match.
      - Java coverage works now with multiple jobs.
      - Flip default value of --experimental_shortened_obj_file_path to
        true, Bazel now generates short object file path by default.
      - New rules for importing Android dependencies:
        `aar_import_external` and `aar_maven_import_external`.
        `aar_import_external` enables specifying external AAR
        dependencies using a list of HTTP URLs for the artifact.
        `aar_maven_import_external` enables specifying external AAR
        dependencies using the artifact coordinate and a list of server
        URLs.
      - The BAZEL_JAVAC_OPTS environment variable allows arguments, e.g.,
        "-J-Xmx2g", may be passed to the javac compiler during bootstrap
        build. This is helpful if your system chooses too small of a max
        heap size for the Java compiler during the bootstrap build.
      - --noexpand_configs_in_place is deprecated.
      - A tool to parse the Bazel execution log.
      - Support for LIPO has been fully removed.
      - Remove support for --discard_actions_after_execution.
      - Add --materialize_param_files flag to write parameter files even
        when actions are executed remotely.
      - Windows default system bazelrc is read from the user's
        ProgramData if present.
      - --[no]allow_undefined_configs no longer exists, passing undefined
        configs is an error.
      - In remote caching we limit the number of open
        TCP connections to 100 by default. The number can be adjusted
        by specifying the --remote_max_connections flag.
    Bazel Release System authored and c-parsons committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    b292ad1 View commit details
    Browse the repository at this point in the history
  25. [Skylark] Size tuple slice sizes to avoid unnecessary allocations.

    Closes bazelbuild#5698.
    
    PiperOrigin-RevId: 206780174
    ttsugriy authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    ab8a844 View commit details
    Browse the repository at this point in the history
  26. Automated rollback of commit 0a635c5.

    *** Reason for rollback ***
    
    Rolling forward with the correct attribute handling.
    
    *** Original change description ***
    
    Automated rollback of commit 8fe0f45.
    
    *** Reason for rollback ***
    
    Breaks a couple of builds due to a bad merge.
    
    *** Original change description ***
    
    Add apk converted to proto and all attributes from CompiledResources to ResourcesZip.
    Add new proto format for tool attributes stored in the AndroidDataXml for storing them in the resources.zip.
    
    RELNOTES:None
    PiperOrigin-RevId: 206786645
    corbinrsmith-work authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    3852edd View commit details
    Browse the repository at this point in the history
  27. [Skylark] Avoid unnecessary copyOf invocations.

    According to async-profiler, about 50% of `Tuple.getSlice` method invocation is spent in `ImmutableList.copyOf` which is completely unnecessary for cases when an `ImmutableList` instance is passed.
    
    Closes bazelbuild#5699.
    
    PiperOrigin-RevId: 206787490
    ttsugriy authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    4b8d0ae View commit details
    Browse the repository at this point in the history
  28. [Skylark] Cache isParamNamed computation.

    When `isLegacyNamed` is `true`, `named` is considered to be `true` as well,
    so instead of going through an extra indirection and computation, just use
    `named` field to store combined result.
    
    Closes bazelbuild#5701.
    
    PiperOrigin-RevId: 206800781
    ttsugriy authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    58f80df View commit details
    Browse the repository at this point in the history
  29. [Skylark] Move method invocation logic to MethodDescriptor.

    This serves 2 purposes:
    - better encapsulation and domain model.
    - opens the door to optimizations like using `MethodHandle` instead of `Method`
      and caching.
    - performs one of the optimizations mentioned above - perform `setAccessible`
      only once instead of on every method invocation. JMH suggests that this saves
      ~5% of CPU time.
    
    Next steps are:
    - evaluate peformance improvements for some of the optimizations listed above
    - make PRs to apply optimizations that seem beneficial.
    
    Closes bazelbuild#5704.
    
    PiperOrigin-RevId: 206805670
    ttsugriy authored and Copybara-Service committed Jul 31, 2018
    Configuration menu
    Copy the full SHA
    6e7fae1 View commit details
    Browse the repository at this point in the history

Commits on Aug 1, 2018

  1. Open source SpawnMetrics

    PiperOrigin-RevId: 206893284
    ulfjack authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    c687654 View commit details
    Browse the repository at this point in the history
  2. There is no need to do input discovery or .d file analysis for modula…

    …r codegen.
    
    Modular codegen simply transforms a .pcm file to a .o file containing the code
    of inline functions of the module's headers.
    
    RELNOTES: None
    PiperOrigin-RevId: 206902693
    Googler authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    377ef39 View commit details
    Browse the repository at this point in the history
  3. Remove the need for discoverInputsStage2(). Much like every other Sky…

    …frame
    
    function, discoverInputs() can be implemented to return null upon encountering
    missing ActionExecutionValues.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206913969
    Googler authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    41d2b56 View commit details
    Browse the repository at this point in the history
  4. Automated rollback of commit 38899f7.

    *** Reason for rollback ***
    
    Necessary for []
    
    *** Original change description ***
    
    Return Java providers only once
    
    through JavaInfo, instead of returning them also through ConfiguredTarget. Since these providers can not be found in ConfiguredTarget anymore they have to be retrieved from JavaInfo instead.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206915058
    meisterT authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    84f6913 View commit details
    Browse the repository at this point in the history
  5. Add C++ rules owners

    Closes bazelbuild#5708.
    
    PiperOrigin-RevId: 206915536
    hlopko authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    c82c39e View commit details
    Browse the repository at this point in the history
  6. Automated rollback of commit 75810d5.

    *** Reason for rollback ***
    
    []
    
    *** Original change description ***
    
    Remove the gen_jars output group
    
    RELNOTES: Removed the gen_jars output group
    PiperOrigin-RevId: 206921241
    meisterT authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    81a2ddd View commit details
    Browse the repository at this point in the history
  7. Add extra logging to xcode-locator when scanning Xcode bundles.

    RELNOTES: None.
    PiperOrigin-RevId: 206933729
    jmmv authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    7372c04 View commit details
    Browse the repository at this point in the history
  8. [Skylark] Avoid unnecessary allocations.

    Since this happens only every single Skylark method invocation CPU and memory
    usage quickly adds up and shows up on profiler samples a lot.
    
    Closes bazelbuild#5656.
    
    PiperOrigin-RevId: 206935520
    ttsugriy authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    09cf207 View commit details
    Browse the repository at this point in the history
  9. Add the action_names_test_files target to the OSS version of tools/bu…

    …ils_defs/cc/BUILD.
    
    PiperOrigin-RevId: 206939687
    sergiocampama authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    f330439 View commit details
    Browse the repository at this point in the history
  10. Add a parser for gcov intermediate file format.

    This change comes as a preparation for using gcov for Bazel C++ coverage
    instead of lcov.
    
    See documentation of gcov intermediate format at https://gcc.gnu.org/onlinedocs/gcc/Invoking-Gcov.html#Invoking-Gcov
    under --intermediate-format.
    
    Change-Id: I6cd2df8b3a6611b187a2b0c161b14388413bc670
    PiperOrigin-RevId: 206940660
    iirina authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    f8afad6 View commit details
    Browse the repository at this point in the history
  11. Fix a broken link in the documentation

    Fixes bazelbuild#5601
    
    PiperOrigin-RevId: 206942639
    vladmos authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    bf68cda View commit details
    Browse the repository at this point in the history
  12. Add support for extracting references and declarations from a proto f…

    …ormatted apk
    
    RELNOTES: None
    PiperOrigin-RevId: 206945173
    corbinrsmith-work authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    8beb8bb View commit details
    Browse the repository at this point in the history
  13. Add the ability to do a filtered copy of a ProtoApk

    RELNOTES: None
    PiperOrigin-RevId: 206949407
    corbinrsmith-work authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    1707cba View commit details
    Browse the repository at this point in the history
  14. Use a parameterized dict and simplify an iteration in xcode-locator.

    This raises the minimum version with which xcode-locator must be built
    to Xcode 7.
    
    Changes suggested by davg@ during the review of another change to the
    xcode-locator.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206949696
    jmmv authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    9e10d3e View commit details
    Browse the repository at this point in the history
  15. Automated rollback of commit 15b27e4.

    Keep the usage of Streams in place.
    Keep the test in place, updated it with the new expected values.
    Only removed the neverlink filter.
    
    RELNOTES: none.
    PiperOrigin-RevId: 206951071
    Googler authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    0b534a8 View commit details
    Browse the repository at this point in the history
  16. Parse raw xml resources for tools annotations.

    RELNOTES: None
    PiperOrigin-RevId: 206960066
    corbinrsmith-work authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    fa26ecd View commit details
    Browse the repository at this point in the history
  17. Automatic code cleanup.

    PiperOrigin-RevId: 206960449
    Googler authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    6243023 View commit details
    Browse the repository at this point in the history
  18. Make sure that user-level log messages are not lost in a buffer if debug

    logging is turned off.
    
    WARNINGs, ERRORs, and simple USER messages get printed to stderr when debug logging is disabled, which it is by default. However, before this change, these were lost if they were sent to BAZEL_LOG before Bazel knew whether or not debug logging was requested. This fixes that by maintaining separate buffers, and dumping only the appropriate one to stderr once we know whether or not it is wanted.
    
    Maintaining the separate buffer also allows for it to be easy to, in the future, allow logging to multiple places, if we are logging details to a file and user-level details to stderr, for example.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206960686
    cvcal authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    a0ca5ac View commit details
    Browse the repository at this point in the history
  19. Add builtin include directories to action key for CppCompileAction

    Since builtin include directories affect validation, they have to be part of the
    action key.
    
    RELNOTES: None.
    PiperOrigin-RevId: 206960988
    hlopko authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    c3a0878 View commit details
    Browse the repository at this point in the history
  20. Refactor setupPackageCache to get all BuildConfiguration.Options refe…

    …rences out of it.
    
    Setting up the package cache is necessary for proper loading. In the future, BuildConfiguration.Option options will be targets that need to be loaded in order to be parsed. Thus, we will need to be able to do loading before BuildConfiguration.Options are parsed.
    
    PiperOrigin-RevId: 206964473
    juliexxia authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    651797f View commit details
    Browse the repository at this point in the history
  21. Only detect artifact conflicts between targets in current build.

    Previously, two successive builds of targets A and B would fail if the two sets had conflicting actions. Now, only fail such builds if the targets from the current build has action conflicts.
    
    RELNOTES: None
    PiperOrigin-RevId: 206974011
    tomlu authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    2b34b37 View commit details
    Browse the repository at this point in the history
  22. Refresh ConfigurationResolver.getConfigurationsFromExecutor documenta…

    …tion.
    
    Specifically: mention trimming less and rule transitions more.
    PiperOrigin-RevId: 206980126
    gregestren authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    731900f View commit details
    Browse the repository at this point in the history
  23. Pass a path to ActionExecutedEvent that is resolved via ActionExecuti…

    …onContext.
    
    If the output artifact is backed by a different file system then we need to use that file system later.
    
    RELNOTES: None
    PiperOrigin-RevId: 206981369
    tomlu authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    d56a806 View commit details
    Browse the repository at this point in the history
  24. Fix tests to work when the default value of the flag --experimental_e…

    …nable_tools_defaults_package flipped to
    
    false
    
    RELNOTES:none
    PiperOrigin-RevId: 206982558
    dbabkin authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    db042bb View commit details
    Browse the repository at this point in the history
  25. Update comment about repository mapping containing entry from "@<main…

    … repo name>" to "@".
    
    RELNOTES: None
    PiperOrigin-RevId: 207010178
    dkelmer authored and Copybara-Service committed Aug 1, 2018
    Configuration menu
    Copy the full SHA
    c82074a View commit details
    Browse the repository at this point in the history

Commits on Aug 2, 2018

  1. Add a normal startup-option for setting the digest function.

    We continue to support the jvm property -Dbazel.DigestFunction, for backwards compatibility, but this will go away. The startup-option is marked experimental for now as we iron out issues. (note: leaving this out of release notes until the experimental tag is removed)
    
    As part of this refactor, the default constructor calls for FileSystem and derived classes will now use this default. This should remove the need for constructors that accept custom hash functions.
    
    RELNOTES: None.
    PiperOrigin-RevId: 207035217
    cvcal authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    78142a6 View commit details
    Browse the repository at this point in the history
  2. Change Deque -> LinkedHashSet

    In some cases, we may be reporting a lot of actions, and this has shown up as a hotspot in our profiling. LinkedHashSet should be just as fast for insertion, keep order as Deque, and be faster for removal.
    
    There are a couple of more aggressive steps we can take if this doesn't help.
    
    PiperOrigin-RevId: 207064758
    ulfjack authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    932a745 View commit details
    Browse the repository at this point in the history
  3. Return Java providers only once

    through JavaInfo, instead of returning them also through ConfiguredTarget. Since these providers can not be found in ConfiguredTarget anymore they have to be retrieved from JavaInfo instead.
    
    RELNOTES: None.
    PiperOrigin-RevId: 207068520
    iirina authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    2987ba8 View commit details
    Browse the repository at this point in the history
  4. [Skylark] Improve Skylark interpreter performance.

    According to JMH and JIT assembly generated for iterators and index
    accesses, iterator methods like `hasNext` and `next` are not optimized
    away and result in 3-4X slower execution.
    
    Not using an iterator reduces Buck parse time for FB's internal Android
    apps by 7%+.
    
    Closes bazelbuild#5735.
    
    PiperOrigin-RevId: 207073078
    ttsugriy authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    bbb32f3 View commit details
    Browse the repository at this point in the history
  5. [Skylark] Speed up string.partition function.

    According to JMH using `ImmutableList.of` or `Arrays.asList` is ~2X faster
    than using existing approach of creating an empty `ArrayList` with expected
    size and populating it using `add` method. This is most likely due to extra
    range and capacity checks.
    
    Returning `ImmutableList` instead of `ArrayList` avoids the need to copy it
    again in order to create a `SkylarkTuple`.
    
    These changes speed up the function by ~3X.
    
    Closes bazelbuild#5736.
    
    PiperOrigin-RevId: 207079605
    ttsugriy authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    13ebd67 View commit details
    Browse the repository at this point in the history
  6. Add a flag to evaluate the top level transitions in Skyframe

    This adds a new PrepareAnalysisPhaseFunction, which started out as a copy of
    some existing code from SkyframeExecutor, BuildView, AnalysisPhaseRunner,
    AnalysisUtils, and ConfigurationResolver, which was then modified to work
    inside Skyframe.
    
    Most of our tests already work with the new code, except for some of the tests
    related to configuration trimming in combination with dependency cycles. The
    reason for this is that we can only recover from dependency cycles at the end
    of a Skyframe invocation, but never inside a Skyframe invocation. The new code
    therefore cannot return partial results like the old code.
    
    This seems to make null builds a bit faster. In my testing, I saw null build
    times for a single test target go from ~50ms to ~40ms. This is probably due to
    slightly better caching - it seems that computing the configuration transitions
    and top-level targets is non-negligible, even if there's only a single
    top-level configuration for a single top-level target.
    
    This might be an even bigger win if there are a lot of top-level targets and
    configurations.
    
    PiperOrigin-RevId: 207083192
    ulfjack authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    36fbbde View commit details
    Browse the repository at this point in the history
  7. Automated rollback of commit a625561.

    *** Reason for rollback ***
    
    Breaks FDO builds, see http://b/112112125
    
    *** Original change description ***
    
    Remove PerActionFileCache
    
    Instead, make ActionMetadataHandler implement the MetadataProvider interface.
    
    This fixes an issue where an action that runs two spawns where one depends on
    an output of the other was unable to get the metadata for the intermediate
    output.
    
    We don't currently have actions that do this, but we will have in a future
    change (which will also implicitly act as a regression test).
    
    PiperOrigin-RevId: 207084179
    meisterT authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    c004ff1 View commit details
    Browse the repository at this point in the history
  8. [Skylark] Optimize UserDefinedFunction.

    Java's iterator overhead is significant (2X slower than using indices), so
    it's worthwhile to use indices for hot code.
    
    Closes bazelbuild#5737.
    
    PiperOrigin-RevId: 207088309
    ttsugriy authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    77e4792 View commit details
    Browse the repository at this point in the history
  9. Prevent errors on double-close in HttpBlobStore

    Attempt to fix bazelbuild#5711, "java.util.concurrent.RejectedExecutionException: event executor terminated", by having `HttpBlobStore.close()` no-op when called more than once.
    
    I'm rolling a patched version of bazel for us internally based on 0.15.2. Should be able to say definitively in a couple days whether or not this addresses the issue, but it seems like it should (and @buchgr agrees).
    
    Closes bazelbuild#5725.
    
    PiperOrigin-RevId: 207089681
    roblg authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    dcd7c63 View commit details
    Browse the repository at this point in the history
  10. remote: add support for directory inputs in runfiles

    Add support for tree artifacts (ctx.action.declare_directory(...)) in
    runfiles. Before this change we would throw away the information
    about the files inside a tree artifact before executing an action.
    That's fine for local execution where the sandbox just copies/symlinks
    a directory and doesn't care much what's inside. However, in remote
    execution we actually need to upload each individual file and so
    we need to be aware of all individual files not just directories.
    
    This change makes it so that this information is made available to a
    SpawnRunner via the SpawnInputExpander.
    
    RELNOTES: None
    PiperOrigin-RevId: 207091668
    buchgr authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    d4d3d50 View commit details
    Browse the repository at this point in the history
  11. Docker sandbox: Pass client environment to "docker" when calling it.

    Otherwise Docker will not be able to read the configuration of the current user and might fail to download containers from registries that require authentication.
    
    Closes bazelbuild#5721.
    
    PiperOrigin-RevId: 207094268
    philwo authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    f32aa9a View commit details
    Browse the repository at this point in the history
  12. Add text output to aquery.

    RELNOTES[NEW]: The aquery command now supports --output=text.
    
    PiperOrigin-RevId: 207096607
    meisterT authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    f621bbe View commit details
    Browse the repository at this point in the history
  13. BEGIN_PUBLIC

    Internal change
    END_PUBLIC
    
    Automated rollback of commit 81a2ddd.
    
    *** Reason for rollback ***
    
    fix forward
    
    *** Original change description ***
    
    Automated rollback of commit 75810d5.
    
    *** Reason for rollback ***
    
    []
    
    *** Original change description ***
    
    Remove the gen_jars output group
    
    RELNOTES: Removed the gen_jars output group
    PiperOrigin-RevId: 207099489
    cushon authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    237a57a View commit details
    Browse the repository at this point in the history
  14. Excluded "self" param from the callable symbols. In .bzl files it is …

    …not used in the function call.
    
    RELNOTES: None
    PiperOrigin-RevId: 207102812
    Googler authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    1a5067a View commit details
    Browse the repository at this point in the history
  15. Update bazel-toolchains in our WORKSPACE.oss to latest release.

    PiperOrigin-RevId: 207104261
    philwo authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    ca59cf3 View commit details
    Browse the repository at this point in the history
  16. Keep the analysis cache between builds when only trimmed test options…

    … change.
    
    When --trim_test_configuration is on and the only options which have changed
    are from the (trimmed) TestOptions (not counting trim_test_configuration itself),
    preserve the analysis cache rather than dropping it all.
    
    This means that as long as no non-test options change, non-test rules will
    not need to be reanalyzed. This also applies to test rules which were
    analyzed with this configuration since the last time non-test options changed.
    
    For example:
    --test_arg=A //test (//test and its dependencies are analyzed)
    --test_arg=B //test (only //test is reanalyzed)
    --test_arg=A //test (no reanalysis needed)
    --test_arg=A --define=Test=A //test (full reanalysis)
    --test_arg=A //test (full reanalysis)
    
    RELNOTES: None.
    PiperOrigin-RevId: 207105915
    mstaib authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    f29f78d View commit details
    Browse the repository at this point in the history
  17. Added return type info in API exporter.

    RELNOTES: None
    PiperOrigin-RevId: 207107667
    Googler authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    ff129f9 View commit details
    Browse the repository at this point in the history
  18. PiperOrigin-RevId: 207121273

    cushon authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    0bf5786 View commit details
    Browse the repository at this point in the history
  19. Fixed builtins proto. Callable field was not set for functions with n…

    …o parameter.
    
    RELNOTES: None
    PiperOrigin-RevId: 207127862
    Googler authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    ee96534 View commit details
    Browse the repository at this point in the history
  20. Expose AndroidResourceUsageAnalyzer methods to enable proto-based res…

    …ource shrinking without tool attributes.
    
    RELNOTES:
    PiperOrigin-RevId: 207132534
    corbinrsmith-work authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    272c93c View commit details
    Browse the repository at this point in the history
  21. Make TestSummary event paths use the file system from ActionExecution…

    …Context.
    
    RELNOTES: None
    PiperOrigin-RevId: 207133488
    tomlu authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    215286b View commit details
    Browse the repository at this point in the history
  22. Fixed two broken links

    RELNOTES: None
    PiperOrigin-RevId: 207134083
    Googler authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    6d07c36 View commit details
    Browse the repository at this point in the history
  23. Add support for VirtualActionInputs to the remote cache.

    RELNOTES: None
    PiperOrigin-RevId: 207137932
    tomlu authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    d1a203b View commit details
    Browse the repository at this point in the history
  24. Thread a path resolver through target/aspect complete event.

    At the moment, an identity path resolver is passed. This will later be replaced by a contextual path resolver.
    
    RELNOTES: None
    PiperOrigin-RevId: 207138772
    tomlu authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    04e9281 View commit details
    Browse the repository at this point in the history
  25. Lazily construct Preconditions failure message. Mistake from bazelbuild@

    129c3e2.
    
    PiperOrigin-RevId: 207140930
    janakdr authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    202bf26 View commit details
    Browse the repository at this point in the history
  26. Clarifies the documentation for action.args() set_param_file_format.

    The way documentation reads, it sounds like 'shell' format is single line (especially because the other format is called multiline).
    Currently it seems like the implementation only uses new line but assuming Bazel doesn't want to promise on that, this patch updates the documentation to point that whitespace could be space, tab or newline - which mimics the documentation of ParameterFileType.SHELL_QUOTED.
    
    RELNOTES: None.
    PiperOrigin-RevId: 207142679
    Googler authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    9818015 View commit details
    Browse the repository at this point in the history
  27. Disables ActionFS sandboxing of discovered derived inputs for

    performance reasons.
    
    PiperOrigin-RevId: 207171305
    aoeui authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    077ef5b View commit details
    Browse the repository at this point in the history
  28. Tool attribute processing added to resource shrinking.

    RELNOTES: None
    PiperOrigin-RevId: 207171755
    corbinrsmith-work authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    f891b81 View commit details
    Browse the repository at this point in the history
  29. Set target/aspect completion functions as unsharable.

    RELNOTES: None
    PiperOrigin-RevId: 207176404
    tomlu authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    b6fa8eb View commit details
    Browse the repository at this point in the history
  30. Add some additional debugging if a dep is unexpectedly absent.

    PiperOrigin-RevId: 207178336
    janakdr authored and Copybara-Service committed Aug 2, 2018
    Configuration menu
    Copy the full SHA
    1ae4fc2 View commit details
    Browse the repository at this point in the history
  31. Change the list of rc files accepted.

    The old list was, in order:
    - %workspace%/tools/bazel.rc (unless --nomaster_bazelrc)
    - %binary_dir%/bazel.bazelrc (unless --nomaster_bazelrc)
    - system rc, /etc/bazel.bazelrc or in %ProgramData% for Windows (unless --nomaster_bazelrc)
    - the first of the following gets called the "user" bazelrc
      - path passed by flag --bazelrc
      - %workspace%/.bazelrc
      - $HOME/.bazelrc
    
    The new list is hopefully a bit more consistent, as:
    - system rc (unless --nosystem_rc)
    - workspace, %workspace%/.bazelrc (unless --noworkspace_rc)
    - user, $HOME/.bazelrc (unless --nohome_rc)
    - command-line provided, passed as --bazelrc or nothing if the flag is absent.
    
    This list removes two less than useful locations, duplication in the Workspace directory, and the rc next to the bazel binary. This location made sense at Google but is generally nonsensical elsewhere so we are removing it. It also stops the user local rc file from being overriden by passing in a custom file in --bazelrc.
    
    In both old and new, --ignore_all_rc_files disables all of the above.
    For a transition period, any file that you would have loaded but was not read will cause a WARNING to be printed. If you want the old file to still be read without moving its location, you can always import it into one of the new standard locations, or create a symlink.
    
    Closes bazelbuild#4502, except for cleanup to remove the warning after a transition period of 1 Bazel version has passed.
    
    RELNOTES[INC]: New bazelrc file list.
    
    PiperOrigin-RevId: 207189212
    cvcal authored and Copybara-Service committed Aug 2, 2018
    2 Configuration menu
    Copy the full SHA
    ec83598 View commit details
    Browse the repository at this point in the history

Commits on Aug 3, 2018

  1. Write print(x) instead of print x for python3 compatibility

    There is only one argument, so this shouldn't affect Python 2.
    
    Closes bazelbuild#5653.
    
    PiperOrigin-RevId: 207200473
    rongjiecomputer authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    afebc60 View commit details
    Browse the repository at this point in the history
  2. docs: update link to Visual C++ Build Tools 2015

    Fixes bazelbuild#5720
    
    Change-Id: I4270c395029691bcc9f4a3931a4401923edf2441
    
    Closes bazelbuild#5739.
    
    PiperOrigin-RevId: 207225362
    laszlocsomor authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    3081fd9 View commit details
    Browse the repository at this point in the history
  3. C++: Change Skylark API whitelisting to be part of flag.

    This uses SkylarkSemantics now instead of the C++ configuration. The flag is:
    --experimental_cc_skylark_api_enabled_packages
    
    RELNOTES:none
    PiperOrigin-RevId: 207235431
    oquenchil authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    7e41f9b View commit details
    Browse the repository at this point in the history
  4. Disable the correct warning

    I realized that I wrote the wrong warning code when I use Bazel from master branch and build something with MSVC.
    
    For the curious:
    
    - C4117: https://msdn.microsoft.com/en-us/library/9d2szxf8.aspx
    - C4177: https://msdn.microsoft.com/en-us/library/s4becxs9.aspx
    
    /cc @meteorcloudy
    
    Closes bazelbuild#5631.
    
    PiperOrigin-RevId: 207235606
    rongjiecomputer authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    e0542bc View commit details
    Browse the repository at this point in the history
  5. Update the documentation of the "resources" tag on Java rules.

    Add a missing closing parenthesis and clarify resource path resolution a
    little.
    
    Fixes bazelbuild#1689.
    
    RELNOTES: None.
    PiperOrigin-RevId: 207242394
    lberki authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    ed75f38 View commit details
    Browse the repository at this point in the history
  6. Polish archiver_flags feature to behave better with the toolchain api

    With this fix we can get archiver flags from the Skylark API to the C++ toolchain even when we don't pass output_file
    
    RELNOTES: None.
    PiperOrigin-RevId: 207248839
    hlopko authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    4ba162e View commit details
    Browse the repository at this point in the history
  7. Set callable field only for methods in order to diferenciate them from

    constants.
    
    RELNOTES: None
    PiperOrigin-RevId: 207251793
    Googler authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    4e0bd25 View commit details
    Browse the repository at this point in the history
  8. Add --experimental_shortened_obj_file_path to GraveyardOptions

    Fixes bazelbuild#5677
    
    RELNOTES: None.
    PiperOrigin-RevId: 207258428
    hlopko authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    510aca0 View commit details
    Browse the repository at this point in the history
  9. Update config_setting to get the target platform from the ToolchainCo…

    …ntext.
    
    Closes bazelbuild#5746.
    
    Change-Id: Ib5946d405bf22af131f9dbd7b93393958b0848b4
    PiperOrigin-RevId: 207261030
    katre authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    8499426 View commit details
    Browse the repository at this point in the history
  10. aapt2 creates larger apks when converting from proto.

    Create binary directly then convert to proto format.
    
    RELNOTES: None
    PiperOrigin-RevId: 207273767
    corbinrsmith-work authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    ae02543 View commit details
    Browse the repository at this point in the history
  11. Introduce a new file-based logging handler for Bazel.

    It provides a number of features that we want and whose combination cannot be
    accomplished using the standard FileHandler:
    * Using a different filename per server process, by putting a timestamp and
      process ID in the filename. This means Bazel will no longer overwrite its
      log when the server is restarted, making it easier for developers and
      maintainers to diagnose issues.
    * Putting the hostname and username in the filename (useful when running on a
      shared network filesystem).
    * Automatically setting a symlink to the latest log file, ensuring that the
      latest log can still be found under the usual Bazel server log path.
    * Providing an API for getting the filename of the current log file, for use
      by Bazel itself.
    * Cleaning up old log files when their total size exceeds a set limit.
    
    This commit only introduces the handler; its usage in Bazel will be enabled by
    a follow-up commit.
    
    RELNOTES: None.
    PiperOrigin-RevId: 207274587
    tetromino authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    172d36d View commit details
    Browse the repository at this point in the history
  12. Add support to completion function to create a path resolver from its…

    … looked-up artifact values.
    
    RELNOTES: None
    PiperOrigin-RevId: 207295716
    tomlu authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    880508c View commit details
    Browse the repository at this point in the history
  13. Pass digest to Chunker construction when available.

    * Refactor Chunker constructor to a builder to reduce constructor overload.
    * Pass digest into this where we have it
    * Redo ensureInputsPresent to not lose the missing digests during processing so we can pass them to the Chunker constructor.
    
    RELNOTES: None
    PiperOrigin-RevId: 207297915
    tomlu authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    e18be0b View commit details
    Browse the repository at this point in the history
  14. Set --defer_param_files to true.

    This will cause bazel to write the parameter file during action execution instead of as a separate action. This is faster and requires less memory than using a separate action.
    
    When using remote execution, pass --materialize_param_files if you wish to inspect the file locally (for debugging purposes).
    
    RELNOTES: Set --defer_param_files to default to true.
    PiperOrigin-RevId: 207300073
    tomlu authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    054728b View commit details
    Browse the repository at this point in the history
  15. Make BES tolerant to duplicate artifacts in output groups.

    It is possible to create duplicate artifacts with different owners, so we have to tolerate this when uploading files.
    
    RELNOTES: None
    PiperOrigin-RevId: 207302014
    tomlu authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    6c304ab View commit details
    Browse the repository at this point in the history
  16. Introduce the DataBindingContext interface as part of centralizing th…

    …e data binding processing pipeline.
    
    RELNOTES: None
    PiperOrigin-RevId: 207312398
    corbinrsmith-work authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    50eb6a4 View commit details
    Browse the repository at this point in the history
  17. Change writer in skylark docgen to use an explicit encoding

    RELNOTES: None
    PiperOrigin-RevId: 207321499
    Googler authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    395d48b View commit details
    Browse the repository at this point in the history
  18. When no new configured targets have been analyzed, only check for art…

    …ifact conflicts if the current set of configured targets is not a subset of the largest set of configured targets that have been checked for conflicts.
    
    Also rework the flow between SkyframeBuildView and SkyframeActionExecutor to remove the SkyframeExecutor middleman.
    
    Also reword the error message in case of an ArtifactPrefixConflictException, since a clean should no longer be necessary.
    
    PiperOrigin-RevId: 207322139
    janakdr authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    1225e4a View commit details
    Browse the repository at this point in the history
  19. Reduce and centralize databinding context instances.

    Due to some of the vagaries of skylark and multiple entry points, the databinding context is currently updated by the parse action.
    
    RELNOTES: None
    PiperOrigin-RevId: 207333111
    corbinrsmith-work authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    0cb8590 View commit details
    Browse the repository at this point in the history
  20. Moved all external calls to isDataEnabled to DataBindingContext and m…

    …ade it private.
    
    RELNOTES: None
    PiperOrigin-RevId: 207335684
    corbinrsmith-work authored and Copybara-Service committed Aug 3, 2018
    Configuration menu
    Copy the full SHA
    68cbbe9 View commit details
    Browse the repository at this point in the history

Commits on Aug 5, 2018

  1. Add integration tests for aapt

    jin committed Aug 5, 2018
    Configuration menu
    Copy the full SHA
    6bbd90e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    be4f202 View commit details
    Browse the repository at this point in the history