8 releases
Uses new Rust 2021
new 0.1.7 | Aug 6, 2022 |
---|---|
0.1.6 | Aug 4, 2022 |
0.1.4 | Jun 22, 2022 |
0.1.0 | May 31, 2022 |
#376 in WebAssembly
66 downloads per month
Used in substreams-ethereum
68KB
1.5K
SLoC
Substreams Ethereum
Substreams development kit for Ethereum chains, contains Rust Firehose Block model and helpers as well as utilities for Ethereum ABI encoding/decoding.
Usage
[package]
name = "substreams-acme"
version = 0.1.2
[lib]
crate-type = ["cdylib"]
[dependencies]
substreams-ethereum = "0.1.0"
Development
We manually keep in sync the rendered Rust Firehose Block models with the actual Protocol Buffer definitions file found in sf-ethereum and we commit them to Git.
This means changes to Protobuf files must be manually re-generated and commit, see below for how to do it.
Regenerate Rust Firehose Block from Protobuf
./gen.sh
Release
Important Don't forget to replace
${version}
by your real version like0.1.3
!
- Ensure build and tests
- Ensure you are in a clean and pushed Git state
- Find & replace all occurrences of Regex
^version = "[^"]+"
in allCargo.toml
files toversion = "${version}"
- Find & replace all occurrences of Regex
^substreams-ethereum(-[^ =]+)\s*=\s*\{\s*version\s*=\s*"[^"]+"
in allCargo.toml
files tosubstreams-ethereum$1 = { version = "${version}"
- Update the
CHANGELOG.md
to update the## Unreleased
header to become## [v${version}](https://github.com/streamingfast/substreams-ethereum/releases/tag/${version})
- Ensure that Keybase is running and logged in
- Ensure that
cargo login
has been done in your terminal - Commit everything with message
Preparing release of ${version}
. ./bin/release.sh v${version}
(Add-f
beforev${version}
to doing the real non-dry mode)- If everything went well,
git tag ${version}
- Git push everything (
git push origin develop v${version}
)
You can then update the https://github.com/streamingfast/substreams-template with the latest.
Community
Need any help? Reach out!
License
Dependencies
~5MB
~84K SLoC