Design: Skylark build configuration

145 views
Skip to first unread message

Greg Estren

unread,
Apr 6, 2018, 7:41:10 PM4/6/18
to bazel-discuss
This design proposes a Skylark API for custom command line flags, multiarch binaries, and other configuration controls as a component of Bazel's Configurability Roadmap. The intention is to implement this by mid-summer.

https://docs.google.com/document/d/1vc8v-kXjvgZOdQdnxPTaV0rrLxtP2XwnD2tAZlYJOqw/edit?usp=sharing

If you want to write Skylark rules that can do neat multiplatform things, this is the design doc for you.

Some already known discussions that will have to happen in review (either in the doc or on this thread):
  • How to encourage most transitions to be platform transitions while still allowing the possibility of non-platform transitions when the need makes sense
  • How to roll out increased Skylark powers without compromising build speed, cacheability, and correctness
  • How "feature flags", which are an evolving interface for user-defined configuration, fit in
Cheers and happy reviewing!

Greg Estren

unread,
May 31, 2018, 5:27:06 PM5/31/18
to bazel-discuss
After lots of great feedback, this design has been updated into a V2 proposal. 

It looks pretty different from the first version. So you may want to read through it again as interested.

We're still interested in actively implementing this as soon as we have critical mass approval.

Julie Xia

unread,
Nov 7, 2018, 2:28:08 PM11/7/18
to bazel-discuss
Update: Adding an additional proposal to this design. This proposal drills down into the API of parameterized skylark-defined transitions. 

Marissa Staib

unread,
Dec 13, 2018, 6:44:28 PM12/13/18
to bazel-discuss
Here are some thoughts about merging config_feature_flag with Starlark build configuration, to reduce redundancy:
https://docs.google.com/document/d/1kfZ2fQPY32fbjoCpzF2bFMoidhjVtkTmgW-6Zhxwhqk/edit?usp=sharing
Reply all
Reply to author
Forward
0 new messages