Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

# RoadmapThe Zenhub has up-to-date Epics that Besu development is targeting over various releases. See the roadmap tab on the Public Zenhub here: https://app.zenhub.com/workspaces/hyperledger-besu-61fc06f457da1c0017f6347d/roadmap

This document represents the current working roadmap for Besu. It is a living document, which will
evolve and change over time. In particular the features in later versions are likely to be refined and change.

We use the approach of `#now`#now, `#next`#next, `#later` [#later used by foursquare](https://medium.com/@noah_weiss/now-next-later-roadmaps-without-the-drudgery-1cfe65656645), with a slightly different time horizon.
Our `#now` #now scale is about 3 months, `#next` #next about 6 months, and `+later` #later is 12+ months.

## Now (up to v1.3)
Our key areas for now are:
* Making Besu a First Class Client
* Istanbul Support
* State Pruning
* Disaster recovery

### Making Besu a First Class Client

First and foremost, we want Besu to be a first class client for usage on both mainnet and permissioned networks.
This entails maintaining compatibility with mainnet, providing permissioning features and constantly improving Besu's performance.
Some recent additions to the client have been [UPnP Support](https://docs.besu.pegasys.tech/en/latest/Configuring-Besu/Networking/Using-UPnP/)
and a [GraphQL interface](https://docs.besu.pegasys.tech/en/latest/Besu-API/GraphQL/).

### Istanbul Support

Besu will support the upcoming Istanbul network upgrade and implement all required EIPs as per the [Hardfork Meta: Istanbul EIP](https://eips.ethereum.org/EIPS/eip-1679).

### State Pruning

State pruning will be implemented. State pruning reduces the disk space required for the Besu database by discarding outdated world state data.

### Disaster Recovery

Support key-value storage in relational databases to solidify a robust Disaster Recovery process. Note: Orion to support Oracle and Postgres in 1.3.

## Next (v1.4)
The key areas for next are:
* Tracing APIs
* Enhancing key management capabilities
* Migration tools
* Ethereum 1.x

### Tracing APIs

Additional tracing APIs to be added.

### Enhancing Key Management

Enhancing key management capabilities by supporting secure storage of keys.

### Migration Tools

Adding tools to enable migration across consensus algorithms.

### Ethereum 1.x

The Besu team will help spearhead the Ethereum 1.x initiative by contributing to EIPs, community discussions, roadmap specificaton and eventually implementing the resulting features from the initiative. More information on the 1.x initiative can be found [here](https://docs.ethhub.io/ethereum-roadmap/ethereum-1.x/).

## Future (v1.5+)
In addition to making incremental improvements to the above features, there will be some bigger pieces of work.
These are deliberately kept vague at this time, and will be elaborated upon when they move up to the now and next levels of work.

The enterprise roadmap is currently led by Matthew Whitehead from Kaleido. To discuss the enterprise roadmap items reach out to matthew.whitehead on the Hyperledger discord server.



Public Roadmap

Enterprise Roadmap

Now

Node Operator Experience

Related releases 24.1.x

- Bonsai-friendly Archive Mode

- Besu as the Linea client

- Sync improvements, speed & robustness

- Besu as a Snap Sync Server

- Verkle Trie ongoing development

- Cancun delivery, Prague scoping/prep


Related releases 24.4.x

- Public / Private network feature parity (sync!)

- Codebase cleanup for better multi-use-case 

- Packaged PoS images for Mainnet with neatly integrated CL client

- Revitalized plug-in strategy, technical documentation

Reduce unnecessary storage

  • Empty-block period

Bonsai + QBFT support

  • Reduce storage requirements
  • Improve performance

Performance

  • Explore QBFT performance bottlenecks and improvements

Next

Developer Experience

Related releases 24.7.x

- Besu as a customizable L2/L3 sequencer

- Besu on more Layer 2 networks 

- Prague: dev/test/ship

- Verkle Trie ongoing development

- Modularity of the protocol schedule

- Ongoing performance work

Bonsai archive

  • Part of the journey towards Bonsai replacing Forest DB
  • Make Bonsai an option for retrieving state at arbitrary blocks in the chain

Modularity/Enterprise release

  • Release that removes unneccesary features and packages
    • POS
    • POW
    • Tessera? (possibly optional)
    • Public chain profiles
    • ...

Later

Prague Fork, Client Evolution

Related releases 24.10.x

- Prague: dev/test/ship

- Verkle Tries: 

- Light client exploration

- Besu as a customizable L2/L3 sequencer

- Modularity everywhere

- Ongoing performance work

Ongoing Protocol Research

  • Besu as an Ethereum reference client in Java
  • Verkle Tries
  • History / State Expiry research 
  • Portal network PoC / EIP-4444

...