Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gerrrg/multicaller
Python package for abstracting and simplifying multicaller contract calls on Ethereum/EVM chains
https://github.com/gerrrg/multicaller
ethereum json-rpc multicall rpc web3 web3py
Last synced: about 1 month ago
JSON representation
Python package for abstracting and simplifying multicaller contract calls on Ethereum/EVM chains
- Host: GitHub
- URL: https://github.com/gerrrg/multicaller
- Owner: gerrrg
- Created: 2021-10-07T19:36:41.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2023-10-27T11:09:52.000Z (about 1 year ago)
- Last Synced: 2024-09-30T11:49:06.337Z (about 2 months ago)
- Topics: ethereum, json-rpc, multicall, rpc, web3, web3py
- Language: Python
- Homepage: https://pypi.org/project/multicaller/
- Size: 22.5 KB
- Stars: 7
- Watchers: 2
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# multicaller
Helper for using multicall to aggregate onchain data calls into a single RPC call.
## Features
* Uses multicall3, allowing for failing calls on a per-call basis
* Iteratively breaks up a call bundle if it's too large for the endpoint
* Uses native web3py contract functions rather than requiring users to [write the function ABI for each call](https://github.com/banteg/multicall.py/blob/9117c552c6ae85acec8452961db0aac51119070b/examples/daistats.py#L77)## Dev
### Format
```bash
make fmt
```### Lint
```bash
make lint
```### Test
```bash
make test
```#### Run all tests
```bash
make all
```### Releasing
We can use `tbump` to automatically bump our versions in preparation of a release.
```bash
new_version=0.1.1
git checkout -b v$new_version
git push --set-upstream origin $(git rev-parse --abbrev-ref HEAD)
tbump new_version
```The release workflow will then detect that a branch with a `v` prefix exists and create a release from it.
Additionally, the package will be published to PyPI.