We’ll be using the forum to keep an ongoing record of the changes we’re shipping.
We’ll begin with the first two weeks of this year, and post similar updates every ~2 weeks from now.
suave-geth is now as easy as:
$ curl -L https://suaveup.flashbots.net | bash
$ suave-geth --suave.dev
This change also goes along with deprecating the current Docker setup.
suave-std is a collection of Solidity contracts and libraries to help you create Suapps.
This will likely become the main entrypoint for developers who want to build SUAPPs.
SuaveForge.sol was a helper contract we initially used to assist with running smart contracts intended for SUAVE in Forge. With the extension of capabilities now introduced by
suave-std, this no longer necessary or optimal.
This PR adds the
confidentialInputs precompile as a “cheat code” in Forge, meaning you can both mock and reset inputs which are intended to be confidential in both contracts and their tests.
This follow-up PR adds the support required for resetting the confidential store to enable cleaner, better tests.
One of the core examples we use at this early stage to illustrate what SUAVE can do is an implementation of the current MEV-Share protocol in a SUAVE smart contract.
This PR improves how we implement that example and makes it more realistic.
This PR adds support for the eth_sendBundle RPC supported by the Flashbots Builder and, once again, demonstrates how services which currently rely on trusted third parties can be implemented as smart contracts on SUAVE.
Our first community contribution in the
You can find another great community contribution in the SUAVE playground.
With the implementation of
suave-std, our SUAPP examples repo has also been overhauled.
It was once necessary to include
suave-geth as a submodule in this repo in order to get everything working, but we can now just use the much lighter
suave-std repo, making life easier, better, and quicker for everyone.
The above PR also implements some of the last changes we shipped in
suave-geth in 2023, changing the name of a low-level data object from
Bid (which was causing a lot of confusion) to
DataRecord, which is a bit more wordy, but also more clear.
Brock is working on an implementation if Uniswap V2 on SUAVE. We’ll discuss further details in the next update once this is finished and merged.
It’s now possible to run a Docker setup when working with the examples that will start everything you need for more complex SUAPP development. Our initial docker setup in
suave-geth only started the SUAVE chain, and left some of the other pieces off by default. This new Docker file fixes that.
A number of early testers and tinkerers have run into issues trying to build SUAPPs which depend on data from other chains, or post data to other chains, or do some mix of both.
This PR shifts a lot of the configuration details in env variables and makes the changes necessary to enable anyone to more easily set up their work, especially if it depends on multiple chains.
We now update our list of available precompiles automatically whenever a new one is merged so that it is always up-to-date.