Skip to content

Releases: flashbots/contender

contender v0.9.0

18 Mar 00:35
fce8f5f

Choose a tag to compare

Summary

v0.9.0 introduces a new rpc spammer, flashblocks support, JSON reports for automated analysis, scenario labels for running multiple instances of contender in parallel, and several core performance improvements and bug fixes.

new features

  • add option to export reports as JSON (#453)
  • add scenario labels to enable concurrent spam runs on the same scenario (#456)
  • add flashblocks support, track tx time-to-inclusion within a flashblock (#465)
  • spam any rpc method (#468)

improvements

  • add contender version to bottom of reports (#452)
  • limit concurrent funding tasks and handle "already known" gracefully (#451)
  • add chainlink scenario (#446)
  • spammer: remove delay in tps mode to achieve 1sec loop timing (#454)
  • cleanup reports (#455)
  • fix: generate report when passing --gen-report (#457)
  • contender report: add gas quantiles (#464)
  • set SETUP_CONCURRENCY_LIMIT with env var (#461)

breaking changes are detailed in each crate's individual CHANGELOG.md file.

All Changes

  • chore: set version 0.9.0 (#463)
  • chore(deps): bump lz4_flex from 0.11.5 to 0.11.6 (#473)
  • chore(deps): bump quinn-proto from 0.11.13 to 0.11.14 (#472)
  • chore(deps): bump docker/build-push-action from 6 to 7 (#471)
  • chore(deps): bump docker/setup-qemu-action from 3 to 4 (#470)
  • chore(deps): bump docker/login-action from 3 to 4 (#469)
  • chore(deps): bump actions/download-artifact from 7 to 8 (#467)
  • chore(deps): bump actions/upload-artifact from 6 to 7 (#466)
  • chore(deps): bump keccak from 0.1.5 to 0.1.6 (#458)
  • feat: spam rpc (#468)
  • feat: set SETUP_CONCURRENCY_LIMIT with env var (#461)
  • flashblocks: track tx time-to-inclusion within a flashblock (#465)
  • Merge pull request #464 from yashvardhan-kukreja/gas-quantile-reports
  • cargo fmt
  • feat: contender report: add gas quantiles
  • feat: add scenario labels (#456)
  • fix: generate report when passing --gen-report (#457)
  • chore(deps): bump actions/download-artifact from 4 to 7 (#449)
  • chore(deps): bump actions/upload-artifact from 4 to 6 (#450)
  • feat/cleanup report (#455)
  • feat/json reports (#453)
  • spammer: remove delay in tps mode to achieve 1sec loop timing (#454)
  • add chainlink scenario (#446)
  • fix: limit concurrent funding tasks and handle "already known" gracefully (#451)
  • add contender version to bottom of reports (#452)

Binaries

The binaries are signed with the PGP key: F62E A741 E6B4 E0BA 58D3 8619 698A C82F 9A2F E605

Contender CLI

System Architecture Binary PGP Signature
x86_64 contender-v0.9.0-x86_64-unknown-linux-gnu.tar.gz PGP Signature
aarch64 contender-v0.9.0-aarch64-unknown-linux-gnu.tar.gz PGP Signature
x86_64 contender-v0.9.0-x86_64-apple-darwin.tar.gz PGP Signature
aarch64 contender-v0.9.0-aarch64-apple-darwin.tar.gz PGP Signature

contender v0.8.1

09 Feb 22:45
a4eafc7

Choose a tag to compare

Summary

This release contains bugfixes:

  • fixes spam time drift & invalid erc20 defaults (#443)
  • sets bounds for setup concurrency (#447)

It also upgrades some dependencies. See below for a full list.

All Changes

  • release/v0.8.1 (#448)
  • fix: limit concurrent setup tasks to prevent FD exhaustion (#447)
  • chore(deps): bump actions/upload-artifact from 5 to 6 (#391)
  • chore(deps): bump actions/download-artifact from 6 to 7 (#392)
  • chore(deps): bump actions/checkout from 4 to 6 (#441)
  • chore(deps): bump bytes from 1.10.1 to 1.11.1 (#442)
  • chore(deps): bump git2 from 0.20.2 to 0.20.4 (#444)
  • chore(deps): bump time from 0.3.44 to 0.3.47 (#445)
  • fix spam time drift & erc20 defaults (#443)

Binaries

The binaries are signed with the PGP key: F62E A741 E6B4 E0BA 58D3 8619 698A C82F 9A2F E605

Contender CLI

System Architecture Binary PGP Signature
x86_64 contender-v0.8.1-x86_64-unknown-linux-gnu.tar.gz PGP Signature
aarch64 contender-v0.8.1-aarch64-unknown-linux-gnu.tar.gz PGP Signature
x86_64 contender-v0.8.1-x86_64-apple-darwin.tar.gz PGP Signature
aarch64 contender-v0.8.1-aarch64-apple-darwin.tar.gz PGP Signature

contender v0.8.0

03 Feb 02:36
673dfc0

Choose a tag to compare

Summary

  • track nonces internally for create & setup transactions (#438) (bugfix for fast chains)
  • bugfix: tolerate failure of get_block_receipts (#438)
  • improved core code (#439)

Breaking changes

  • removed --redeploy, no longer skips contract deployments if previously deployed (#438)
  • breaking changes in contender_core (see core changelog for details)

All Changes

  • release/v0.8.0 (#440)
  • feat/simplify agent setup (#439)
  • bugfix/setup nonces (#438)
  • fix: remove unneeded branch rule (#435)
  • Feat/builder playground ci (#432)
  • bugfix: ghcr container latest tag (#434)

Binaries

The binaries are signed with the PGP key: F62E A741 E6B4 E0BA 58D3 8619 698A C82F 9A2F E605

Contender CLI

System Architecture Binary PGP Signature
x86_64 contender-v0.8.0-x86_64-unknown-linux-gnu.tar.gz PGP Signature
aarch64 contender-v0.8.0-aarch64-unknown-linux-gnu.tar.gz PGP Signature
x86_64 contender-v0.8.0-x86_64-apple-darwin.tar.gz PGP Signature
aarch64 contender-v0.8.0-aarch64-apple-darwin.tar.gz PGP Signature

contender v0.7.4

27 Jan 21:12
v0.7.4
704450a

Choose a tag to compare

Summary

Improves campaign spammer, adds more integration tests.

All Changes

  • Release/v0.7.4 (#433)
  • feat/anvil integration tests (#430)
  • feat/simplify campaign builtin semantics (#428)
  • perf(campaign): add fast path for single-mix stages (#427)

Binaries

The binaries are signed with the PGP key: F62E A741 E6B4 E0BA 58D3 8619 698A C82F 9A2F E605

Contender CLI

System Architecture Binary PGP Signature
x86_64 contender-v0.7.4-x86_64-unknown-linux-gnu.tar.gz PGP Signature
aarch64 contender-v0.7.4-aarch64-unknown-linux-gnu.tar.gz PGP Signature
x86_64 contender-v0.7.4-x86_64-apple-darwin.tar.gz PGP Signature
aarch64 contender-v0.7.4-aarch64-apple-darwin.tar.gz PGP Signature

contender v0.7.3

20 Jan 21:17
v0.7.3
82b5f7d

Choose a tag to compare

Summary

Improved error logging in DB, added apple + aarch64 binaries to releases, --infinite campaigns, improved logs, fixed inconsistent campaign seeds, improved tx cache & receipt handling.

All Changes

  • release/v0.7.3 (#426)
  • perf(spammer): lock-free TxActor and non-blocking tx sending (#423)
  • fix: propagate campaign execution errors + fix-campaign-seeds (#425)
  • improve --min-balance warning log (#421)
  • add --infinite flag to campaigns (#420)
  • cross-platform release workflow (#415)
  • spammer: record onchain revert as error in db (#418)

Binaries

The binaries are signed with the PGP key: F62E A741 E6B4 E0BA 58D3 8619 698A C82F 9A2F E605

Contender CLI

System Architecture Binary PGP Signature
x86_64 contender-v0.7.3-x86_64-unknown-linux-gnu.tar.gz PGP Signature
aarch64 contender-v0.7.3-aarch64-unknown-linux-gnu.tar.gz PGP Signature
x86_64 contender-v0.7.3-x86_64-apple-darwin.tar.gz PGP Signature
aarch64 contender-v0.7.3-aarch64-apple-darwin.tar.gz PGP Signature

contender v0.7.2

14 Jan 20:19
0dacd8a

Choose a tag to compare

Summary

Contains a critical bugfix related to builtin scenarios estimating spam cost before deploying contracts.

All Changes

  • release/v0.7.2 (#417)
  • run spam cost estimation after builtin contract deployment (#416)

Binaries

The binaries are signed with the PGP key: F62E A741 E6B4 E0BA 58D3 8619 698A C82F 9A2F E605

Contender CLI

System Architecture Binary PGP Signature
x86_64 contender-v0.7.2-x86_64-unknown-linux-gnu.tar.gz PGP Signature

contender v0.7.1

13 Jan 21:53
3d0cd4d

Choose a tag to compare

Summary

Added admin contract-address subcommand and fixed a bug that could crash the program when running campaigns.

All changes

  • bugfix: funding collisions in campaigns (#413)
  • feat: add contender admin contract-address subcommand (#412)

NOTE: the --timeout flag (from contender spam) is being deprecated. It will be removed in the next minor release.

Binaries

The binaries are signed with the PGP key: F62E A741 E6B4 E0BA 58D3 8619 698A C82F 9A2F E605

Contender CLI

System Architecture Binary PGP Signature
x86_64 contender-v0.7.1-x86_64-unknown-linux-gnu.tar.gz PGP Signature

contender v0.7.0

05 Jan 23:11
8cbff7f

Choose a tag to compare

Summary

Major Features

  • async setup & pending tx cache processing
  • spam campaigns (meta-scenario config files)
  • manual gas price override

Breaking Changes

  • --loops was replaced with --forever and its type was changed (no more numerical input)
  • TestScenarioParams added a new param: gas_price: Option<U256>
  • More details in contender_core and contender_cli.

All Changes

  • only add src files & line numbers when in 'debug mode' (#406)
  • re-refactor spammer (#404)
  • add missing TestConfig test (#401)
  • feat: manual gas price with --gas-price (#400)
  • feat/async cache processing (#396)
  • parse values with units in FunctionCallDefinition (#388)
  • feat(campaign): add campaign meta-scenarios with stages, reporting an… (#389)
  • generator: send all setup txs at once, then await (#390)

Binaries

The binaries are signed with the PGP key: F62E A741 E6B4 E0BA 58D3 8619 698A C82F 9A2F E605

Contender CLI

System Architecture Binary PGP Signature
x86_64 contender-v0.7.0-x86_64-unknown-linux-gnu.tar.gz PGP Signature

contender v0.6.0

26 Nov 01:39
v0.6.0
371c3b3

Choose a tag to compare

Summary

  • more env var support (#376)
  • --skip-setup flag, minor UX improvements (#377)
  • scenarios: add groth16Verify scenario to test onchain proof verification (#379)
  • spammer: support batching json-rpc eth_sendRawTransaction reqs (#381)
  • more UX improvements (#382)

All Changes

  • chore: set version v0.6.0 (#383)
  • chore(deps): bump actions/checkout from 5 to 6 (#380)
  • feat/minor improvements (#382)
  • spammer: support batching json-rpc eth_sendRawTransaction reqs (#381)
  • scenarios: add groth16Verify scenario to test onchain proof verification (#379)
  • feat: revamp error handling (#378)
  • feat: --skip-setup flag, minor UX improvements (#377)
  • feat/more env var support (#376)

Binaries

The binaries are signed with the PGP key: F62E A741 E6B4 E0BA 58D3 8619 698A C82F 9A2F E605

Contender CLI

System Architecture Binary PGP Signature
x86_64 contender-v0.6.0-x86_64-unknown-linux-gnu.tar.gz PGP Signature

contender v0.5.6

13 Nov 02:22
cf57c1d

Choose a tag to compare

Summary

New Features

  • cheaper uniswap scenarios (#365)
  • feat: add reclaim-eth admin subcommand (#363)
  • erc20: fuzz recipient address (#366)
  • XEN Spam Scenario (#169)

All Changes

  • chore: set version v0.5.6 (#375)
  • chore(deps): bump docker/metadata-action from 4 to 5 (#371)
  • chore(deps): bump actions/checkout from 2 to 5 (#370)
  • chore: build for aarch64 in CI (#374)
  • chore(deps): bump actions/upload-artifact from 4 to 5 (#372)
  • chore(deps): bump actions/download-artifact from 4 to 6 (#369)
  • chore: revise CI release process (#367)
  • Create dependabot.yml (#368)
  • Feat/cheaper uniswap scenarios (#365)
  • erc20: fuzz recipient address (#366)
  • feat: add reclaim-eth admin subcommand (#363)
  • XEN Spam Scenario (#169)
  • Feat/cleanup scenario files (#362)

Binaries

The binaries are signed with the PGP key: F62E A741 E6B4 E0BA 58D3 8619 698A C82F 9A2F E605

Contender CLI

System Architecture Binary PGP Signature
x86_64 contender-v0.5.6-x86_64-unknown-linux-gnu.tar.gz PGP Signature