From 931e5c833fb18247d3922aa922b1ec5d490c4ec6 Mon Sep 17 00:00:00 2001 From: Laurent Le Brun Date: Wed, 30 Oct 2024 16:08:59 +0100 Subject: [PATCH] Remove users.md, it was copied to a separate repository (#289) Motivation: This starlark repository is owned by the BazelBuild team, for which the maintenance of this file is not a priority. users.md is not really related to Bazel, and pull requests tend to be ignored. I believe we can easily add maintainers for this file, as it's not critical. By contrast, changes to the spec should continue to be restricted. I think this can help create more visibility to Starlark users, and it will be easier to evolve and expand the content of the document. --- README.md | 5 ++-- users.md | 68 +++---------------------------------------------------- 2 files changed, 6 insertions(+), 67 deletions(-) diff --git a/README.md b/README.md index cc138f9..6db6c0d 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ configuration language. It was designed for the [Bazel](https://bazel.build/) build system, but may be useful for other projects as well. This repository is where Starlark features are proposed, discussed, and specified. It contains information about the language, including the [specification](spec.md). There -are [multiple implementations of Starlark](users.md). +are [multiple implementations of Starlark](https://github.com/laurentlb/awesome-starlark). Starlark is a dialect of [Python](https://www.python.org/). Like Python, it is a @@ -121,4 +121,5 @@ evolution of Starlark. ## Implementations, tools, and users -See the [Starlark implementations, tools, and users](users.md) page. +See [Awesome Starlark](https://github.com/laurentlb/awesome-starlark). + diff --git a/users.md b/users.md index 728af1e..eff494f 100644 --- a/users.md +++ b/users.md @@ -1,4 +1,4 @@ -# Starlark implementations, tools, and users +# Starlark implementations ## Implementations @@ -11,69 +11,7 @@ aim to remove the differences and provide a https://github.com/bazelbuild/bazel/tree/master/src/main/java/net/starlark/java * in Rust: https://github.com/facebookexperimental/starlark-rust -## Tools -* [Buildifier](https://github.com/bazelbuild/buildtools): Code formatter & - linter. It can also apply automated fixes (e.g. remove unused loads). -* [Stardoc](https://skydoc.bazel.build/): Documentation generator. -* [Starlark Playground](https://github.com/qri-io/starpg): Starlark Playground - is a web-based starlark editor. It uses the golang implementation of starlark - running on a server to present a monaco editor set to python syntax. -* [Moonlark](https://github.com/obazl/moonlark): Starlark parser in C with Lua - bindings. +This page used to include a list of users and tools. This has been moved to: +[https://github.com/laurentlb/awesome-starlark](https://github.com/laurentlb/awesome-starlark). -## Libraries and extensions - -* [Skycfg](https://github.com/stripe/skycfg) is a library for Starlark to - generate Protocol Buffer messages. -* [starlark-go-nethttp](https://github.com/pcj/starlark-go-nethttp) is a wrapper - around a minimal subset of `net/http package` for use within starlark-go. -* [Starlet](https://github.com/1set/starlet) is a Go wrapper for the [Starlark in Go](https://github.com/google/starlark-go) that - simplifies script execution, provides data conversion, and offers useful Starlark libraries and extensions. -* [Starlight](https://github.com/starlight-go/starlight) is a wrapper around the - Starlark interpreter in Go. - -## IDEs - -Some IDEs have a [plugin for Bazel](https://bazel.build/install/ide). -Otherwise, consider using a Python mode. - -## Users - -* [Bazel](https://github.com/bazelbuild/bazel) is a fast, scalable, - multi-language and extensible build system. Starlark has been designed for - Bazel. -* [Buck2](https://buck2.build/) is a build system from Meta, using - Starlark in a similar way as Bazel. -* [Caddy](https://caddyserver.com/) is a fast, cross-platform HTTP/2 web - server with automatic HTTPS. - [Starlark is used](https://github.com/caddyserver/caddy/tree/v2#json-is-declarative-what-if-i-need-more-programmability-ie-imperative-syntax) - in Caddy 2 to extend the JSON configuration and add some logic. -* [Copybara](https://github.com/google/copybara) is a tool for transforming and - moving code between repositories. It embeds Starlark to configure the workflow. -* [Delve](https://github.com/go-delve/delve) is a debugger for the Go - programming language, aiming to provide a simple, full featured debugging - tool for Go. [Delve uses Starlark](https://github.com/go-delve/delve/blob/master/Documentation/cli/starlark.md) - as a a scripting language. -* [Drone](https://drone.io) is a self-service Continuous Delivery platform. It - supports [Starlark scripting](https://docs.drone.io/starlark/overview/) as an - alternate to yaml configurations. -* [Isopod](https://github.com/cruise-automation/isopod) created by Cruise - Automation is a DSL framework for Kubernetes configuration. It renders - Kubernetes objects as Protocol Buffers. -* [lucicfg](https://chromium.googlesource.com/infra/luci/luci-go/+/refs/heads/master/lucicfg/doc/README.md) - from Chromium CI is a tool for generating low-level configuration files from Starlark. -* [Pixlet](https://github.com/tidbyt/pixlet) is a runtime and UX toolkit for generating animations for small LED displays, such as [Tidbyt](https://tidbyt.com/). Starlark is used to write applets whose outputs are WebP animations. -* [qri](http://qri.io/) is versioned, scriptable, exportable, - collaborative datasets. It uses Starlark to [describe transformations](https://qri.io/docs/reference/starlark_syntax/). -* [Tilt](https://tilt.dev/) manages local development instances for teams that - deploy to Kubernetes. [Tilt files](https://docs.tilt.dev/tiltfile_concepts.html) - are written in Starlark. -* [Vela](https://go-vela.github.io/docs/) is a continuous integration and delivery platform. - It supports [Starlark scripting](https://go-vela.github.io/docs/templates/tutorials/starlark/) - as an alternative to YAML. -* [ytt](https://get-ytt.io/) is a templating tool, built on top of Starlark, - that understands YAML structure allowing you to focus on your data instead of - how to properly escape it. Read also [IBM's blog post]( - https://developer.ibm.com/blogs/yaml-templating-tool-to-simplify-complex-configuration-management/) - about it.