Project: /_project.yaml
Book: /_book.yaml

<style>
  .padbottom { padding-bottom: 10px; }
  .etabox {
    background: #EFEFEF;
    color: #38761D;
    font-size: 15px;
    font-weight: bold;
    display: inline;
    padding: 6px;
    margin-right: 10px;
  }
  .donestatus {
    color: #00D000;
    font-weight: bold;
    padding-left: 10px;
  }
  .droppedstatus {
    color: #D00000;
    font-weight: bold;
    padding-left: 10px;
  }
  .inprogressstatus {
    color: #D0D000;
    font-weight: bold;
    padding-left: 10px;
  }
</style>

# Bazel Build API 2021 Roadmap

{% include "_buttons.html" %}

*Last verified: 2021-04-09*
([update history](https://github.com/bazelbuild/bazel-website/commits/master/roadmaps/build-api.md))

*Point of contact:* [comius](https://github.com/comius)

*Discuss:*
[Build API roadmap: discussion](https://github.com/bazelbuild/bazel/issues/13008)

## Scope

Build API team is covering native rule implementations and the native API
exposed to Starlark.

## Goal

Have all rules implemented in Starlark and handed over to teams specialised in
the particular language. Remove language specific logic from Bazel’s core.

## Java rules

The Java rules will first be rewritten to Starlark and tested internally on a
large code-base. After that they will be released to Bazel.

<div class="padbottom"></div>
<span class="etabox">Q1 2021</span>

*   Improve the **Java sandwich**, making it possible to rewrite existing Java
    rules. <span class="donestatus">DONE</span>

<div class="padbottom"></div>
<span class="etabox">Q2 2021</span>

*   Improve Starlark support for **native libraries** in Java.
    <span class="inprogressstatus">IN PROGRESS</span>
*   Improve <code>java_common</code> support for plugins and IDEs - proposal
    [Java common refactoring](https://docs.google.com/document/d/10isTEK5W9iCPp4BIyGBrLY5iti3Waaam6EeGVSjq3r8/edit).
    <span class="inprogressstatus">IN PROGRESS</span>
*   **java_library** rule is Starlarkified. <span class="inprogressstatus">IN
    PROGRESS</span>

<div class="padbottom"></div>
<span class="etabox">Mid 2021</span>

*   **java_binary and java_test** rules are Starlarkified.
*   **java_import and java_plugin** rules are Starlarkified.

<div class="padbottom"></div>
<span class="etabox">Fall 2021</span>

*   Starlarkification of **java_\*_proto_library**
*   Remaining java rules are Starlarkified: **java_package_configuration,
    java_runtime, java_toolchain**.

<div class="padbottom"></div>
<span class="etabox">2022</span>

*   Starlarkification of **java_common module**.

## C++ rules

Before C++ rules can be rewritten in Starlark some internal cleanups are needed.
After that the C++ rules will be rewritten to Starlark piece by piece using
builtins functionality. The API for C++ rules will not be made accessible from
.bzl files until cc_module is rewritten in Starlark as well.

<div class="padbottom"></div>
<span class="etabox">Q1 2021</span>

*   **Clang modules** support, <span class="droppedstatus">DROPPED*</span>
*   and **Include scanning** support, expected performance improvements from
    both <span class="droppedstatus">DROPPED*</span>
*   *We need more data to evaluate whether modules are really what is needed to
    improve performance.

<div class="padbottom"></div>
<span class="etabox">Q2 2021</span>

*   Internal **Go rules** are Starlarkified <span class="inprogressstatus">IN
    PROGRESS</span>
*   Objective-C rules **objc_library and objc_import** and native code related
    to them are Starlarkified <span class="inprogressstatus">IN PROGRESS</span>

<div class="padbottom"></div>
<span class="etabox">Fall 2021 and beginning 2022</span>

*   **cc_binary, cc_test and cc_library** are Starlarkified

<div class="padbottom"></div>
<span class="etabox">2022</span>

*   Starlarkification of other C++ rules (**fdo_profile, cc_import,
    cc_toolchain, cc_toolchain_suite, fdo_prefetch_hints, cc_toolchain_alias,
    cc_libc_top_alias, cc_host_toolchain_alias,** +2)
*   Starlarkification of **cc_common module**

## Misc

<div class="padbottom"></div>
<span class="etabox">Mid 2021</span>

*   Aspect can propagate other aspects - proposal
    [Aspects Propagating Other Aspects](https://docs.google.com/document/d/1fVNyskIgMoiNeOOGt57LdDmEkAShkYUKYQTkf5yD1fA/edit).
    <span class="inprogressstatus">IN PROGRESS</span>
*   Improve Starlark testing framework
