bazel-contrib / bazel-contrib/rules_jsonnet
Gazelle Language Extension
- Dominant language
- Starlark
- Stars
- 72
- Forks
- 87
- PR merge metrics
- No merged PRs in 30d
Description
rules_jsonnet targets aren't too complicated and can be done by hand, but it would be nice to have gazelle do most of the heavy lifting, right?
We should create a rules_jsonnet language extension for gazelle, which would automatically create BUILD definitions for predictable things (like a jsonnet_library target if there is a file.libsonnet or a jsonnet_to_json if there is a file.jsonnet). I know imports are a bit more work, but we can always try to solve that later?
https://github.com/bazelbuild/bazel-gazelle/blob/master/extend.md#supported-languages
Contributor guide
Research direction
Start with Gazelle's extend.md section on supported languages, linked in the issue, and compare how language extensions generate BUILD definitions. Define the initial scope around predictable jsonnet_library and jsonnet_to_json targets for .libsonnet and .jsonnet files; imports are explicitly deferred. Done means the extension can generate those definitions through Gazelle.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100