Hello r/Rust! We are Meta Engineers who created the Open Source Buck2 Build System! Ask us anything! [Mod approved]

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • buck2

    Build system, successor to Buck

  • The way it's done internally (and which we think is a good way to do it) is to implement the linter in two stages. In your Buck rules, you have something that produces outputs that describe transformations that need to be done, then an external binary calls Buck2 to produce those outputs. That binary can then apply the transformations that were requested. There are some examples and a bit more discussion over here: https://github.com/facebook/buck2/issues/115 -Thomas O. What are the long term plan to manage prelude / third party rules? I.e. if there is a repository for rules typescript / ruby, how should a user go about downloading them and keeping the version up-to-date?

  • sapling

    A Scalable, User-Friendly Source Control System.

  • It's fairly widely adopted and it's on a rather short list of languages that are supported by a dedicated team. There's particularly strong adoption in developer tools (Buck2 is one of those). I'd say in quite a few teams it's really the default when starting something new (my previous team at Meta was Source Control, where basically everything new is being written in Rust! -- a lot of that is also open source: https://github.com/facebook/sapling). -Thomas O.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • buck2-prelude

    Prelude for the Buck2 project

  • The prelude rules are available as a git repo https://github.com/facebook/buck2-prelude. For now we recommend making that a git submodule, and updating that submodule should fetch new rules. We'd also be very happy for the typescript/ruby rules to be added to that Prelude - we consider it an open source project where we welcome contributions. However, we are starting to get our first open source users, so are keen to see if this works in practice, and happy to adjust if something else works better. -Neil M.

  • cxx

    Safe interop between Rust and C++

  • I use non-vendored dependencies for the Buck build in https://github.com/dtolnay/cxx.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts