Tipi.build for Rust 🦀
We are thrilled to announce officially our Rust support.written by @daminetreg & @pysco68 // March 10, 2023
Dear tipi.build community,
As you all know tipi is all about C++ and we'd go as far as to say that we're true C++ lovers - with proof to back that claim: our applications, large parts of the tipi.build backend and even bits of the web frontent are C++!
While the Rust community is very vocal against C++, we believe the strong push towards safety is awesome for the programming community and it's making move alot of people in the language design space and in the C++ standard too.
The Rust language is a very interesting language by taking a very radical take on safety and provides an awesome tooling ecosystem.
That's why we have been building a part of tipi in Rust to learn how we could improve the Rust development experience and how we could make bridging C++ and Rust simpler. We believe in the Carbon language idea of migrating codebases for safety progressively, but why wait for Carbon when you can start with Rust ?
We also truly believe that Modern C++ safety is as good as Rust, that's why we think it's good to be able to combine both languages seamlessly.
We don't intend to bring any package management feature to Rust as we do for C++, but we do provide automatic caching with our git based caching technology to speed-up builds and incremental changes, but are not considering any
.tipi/deps files for Rust. Cargo is a very good tool in this ecosystem, however we want to help in reusing Rust libraries from C++ and vice-versa and hence provide simplified ways of depending on a C++ library and of bindings across both languages in a seamless way based on the existing Rust tooling ( e.g. cxx.rs ).
We noticed that Rust builds can be heavy, and therefore we decided to provide remote cloud build with Rust ! Ultimately because of that focus on safety first, developers should be able to to run all tests on each keystrokes with miri and lint all the code with clippy all the time, which is possible in tipi remote builds combined with our monitor / watch mode.
In the current version of tipi.build for Rust we can build Rust codebases in the cloud at least 3 times faster than on a typical high-end developer laptop ( e.g. 64Gb RAM and 8 physical CPU Cores ), combined with our git based caching technology this makes CI / CD Pipeline complete very fast on incremental changes.
We announced today and showed the first public demo of Rust in tipi at Microsoft Ignite Spotlight Switzerland.
Also we integrated test execution in parallel on the cloud to reduce further rust test execution times, it's particularly exciting to see it working with miri as it saves alot of time.
We are looking to add smart build optimizations, and in that context we offer 50 remote build licenses for rust developers that are interested in trying out our early Rust remote build support and providing feedback.
We plan an Open Beta later this year for those that don't get in before !
If you are currently building a Rust application and you would like to get faster build times:
Request fast Rust build Alpha version access by clicking here.
Looking forward to welcome you on the future of safe native builds : Register here !
Damien Buhl & Yannic Staudt
@daminetreg & @pysco68