Última verificação: 09/04/2021 (histórico de atualizações)
Ponto de contato:comius
Discussão:Roteiro da criação da API: discussão
Escopo
A equipe da API Build está cobrindo implementações de regras nativas e a API nativa exposta ao Starlark.
Meta
Implemente todas as regras no Starlark e as entregue às equipes especializadas no idioma específico. Remoção da lógica específica da linguagem do núcleo do Bazel.
Regras do Java
Primeiro, as regras do Java serão reescritas no Starlark e testadas internamente em uma grande base de código. Depois disso, elas são liberadas para o Bazel.
1o trimestre de 2021
- Melhorias no sanduíche Java, possibilitando a regravação de regras Java existentes. CONCLUÍDO
2o trimestre de 2021
- Melhoria na compatibilidade do Starlark com as bibliotecas nativas em Java. EM ANDAMENTO
- Melhoria no suporte de
java_common
para plug-ins e ambientes de desenvolvimento integrado: proposta de refatoração comum do Java (em inglês). EM ANDAMENTO - a regra java_library for Starlarkified. EM PROGRESSO
Meados de 2021
- As regras java_binary e java_test são como Starlarkified.
- As regras java_import e java_plugin são aplicadas como Starlarkified.
Outono de 2021
- Uso de estrela da extensão java_*_proto_library
- As regras de Java restantes são Starlarkified: java_package_configuration, java_runtime, java_interval.
2022
- larkificação do módulo java_common.
Regras do C++
Antes que as regras do C++ possam ser reescritas no Starlark, algumas limpezas internas são necessárias. Depois disso, as regras do C++ serão reescritas no Starlark parte por parte usando a funcionalidade integrada. A API para regras C++ não poderá ser acessada em arquivos .bzl até que cc_module também seja reescrito em Starlark.
1o trimestre de 2021
- Suporte a módulos Clang (DROPPED*)
- e incluir suporte à verificação, melhorias de desempenho esperadas de DROPPED*.
- *Precisamos de mais dados para avaliar se os módulos são realmente necessários para melhorar a performance.
2o trimestre de 2021
- As regras internas do Go são Starlarkified IN PROGRESS
- As regras do Objective-C objc_library e objc_import e o código nativo relacionados a elas são Starlarkified IN PROGRESS
Outono de 2021 e início de 2022
- cc_binary, cc_test e cc_library estão com o Starlarkified
2022
- Starlarkificação de outras regras de C++ (fdo_profile, cc_import, cc_interval, cc_ compatibilidade_suites, fdo_prefetch_hints, cc_datasets_alias, cc_libc_top_alias, cc_host_Dataset_alias, +2)
- Starlarkificação do módulo cc_common
Diversos
Meados de 2021
- Um aspecto pode propagar outros aspectos, como Aspectos propagados pela proposta. EM ANDAMENTO
- Melhorar o framework de testes do Starlark