Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PoW - deprecation warnings in docs for mining #1736

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion docs/private-networks/tutorials/ethash.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,13 @@ tags:
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

# Create a private network using Ethash
# Create a private network using Ethash (Deprecated)

:::caution

PoW consensus is deprecated in Besu version 24.11.0 and later. Please read this [blog post](https://www.lfdecentralizedtrust.org/blog/sunsetting-tessera-and-simplifying-hyperledger-besu) for more context on the rationale behind this decision as well as alternative options.

:::

A private network provides a configurable network for testing. By configuring a low difficulty and enabling mining, this allows for fast block creation.

Expand Down
2 changes: 1 addition & 1 deletion docs/private-networks/tutorials/kubernetes/playground.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The [playground](https://github.com/ConsenSys/quorum-kubernetes/tree/master/play
1. Navigate to the playground [`README`](https://github.com/ConsenSys/quorum-kubernetes/tree/master/playground).
1. Ensure that your system meets the requirements specified.
1. Choose your Ethereum client (Besu or GoQuorum): `quorum-besu` or `quorum-go`.
1. Choose your consensus algorithm. The playground supports Clique, Ethash (PoW), and IBFT2 for Besu, and IBFT for GoQuorum.
1. Choose your consensus algorithm. The playground supports Clique, Ethash (PoW, deprecated), and IBFT2 for Besu, and IBFT for GoQuorum.
1. Follow the instructions from the `README` for the chosen client and consensus algorithm folder.

## Important notes
Expand Down
32 changes: 19 additions & 13 deletions docs/public-networks/how-to/use-pow/mining.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,13 @@ tags:
- private networks
---

# Configure mining
# Configure mining (Deprecated)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

may need some more nuance added since mining is still used in QBFT. @siladu can you clarify? would this include miner-start and stop APIs


:::caution

PoW consensus is deprecated in Besu version 24.11.0 and later. Please read this [blog post](https://www.lfdecentralizedtrust.org/blog/sunsetting-tessera-and-simplifying-hyperledger-besu) for more context on the rationale behind this decision as well as alternative options.

:::

Besu supports CPU and GPU mining, which are configured using command line options.

Expand All @@ -30,7 +36,7 @@ besu --rpc-http-api=ETH,MINER --miner-enabled --miner-coinbase=<account>

Where `<account>` is the account you pay mining rewards to. For example, `fe3b557e8fb62b89f4916b721be55ceb828dbd73`.

Start and stop mining using the [`miner_start`](../../reference/api/index.md#miner_start) and [`miner_stop`](../../reference/api/index.md#miner_stop) APIs.
Start and stop mining using the [`miner_start`](../../reference/api/index.md#miner_start-deprecated) and [`miner_stop`](../../reference/api/index.md#miner_stop-deprecated) APIs.

## Configure GPU mining

Expand All @@ -46,30 +52,30 @@ Where `<account>` is the account you pay mining rewards to. For example, `fe3b55

Optional command line options are:

- [`--miner-stratum-host`](../../reference/cli/options.md#miner-stratum-host) to specify the host of the mining service.
- [`--miner-stratum-port`](../../reference/cli/options.md#miner-stratum-port) to specify the port of the mining service.
- [`--miner-stratum-host`](../../reference/cli/options.md#miner-stratum-host-deprecated) to specify the host of the mining service.
- [`--miner-stratum-port`](../../reference/cli/options.md#miner-stratum-port-deprecated) to specify the port of the mining service.

:::note

Besu also supports the `getwork` scheme. Use the [`--miner-stratum-enabled`](../../reference/cli/options.md#miner-stratum-enabled) option and [enable the `ETH` RPCs](../../reference/cli/options.md#rpc-http-api).
Besu also supports the `getwork` scheme. Use the [`--miner-stratum-enabled`](../../reference/cli/options.md#miner-stratum-enabled-deprecated) option and [enable the `ETH` RPCs](../../reference/cli/options.md#rpc-http-api).

The `getwork` scheme is supported as the `http` scheme in certain mining software.

:::

Start and stop mining using the [`miner_start`](../../reference/api/index.md#miner_start) and [`miner_stop`](../../reference/api/index.md#miner_stop) APIs.
Start and stop mining using the [`miner_start`](../../reference/api/index.md#miner_start-deprecated) and [`miner_stop`](../../reference/api/index.md#miner_stop-deprecated) APIs.

## Mining APIs

The JSON-RPC API methods for mining are:

- [`miner_start`](../../reference/api/index.md#miner_start) to start mining.
- [`miner_stop`](../../reference/api/index.md#miner_stop) to stop mining.
- [`eth_mining`](../../reference/api/index.md#eth_mining) to determine whether the client is actively mining new blocks.
- [`eth_getMinerDataByBlockHash`](../../reference/api/index.md#eth_getminerdatabyblockhash) and [`eth_getMinerDataByBlockNumber`](../../reference/api/index.md#eth_getminerdatabyblocknumber) to get the miner data for a specified block.
- [`eth_hashrate`](../../reference/api/index.md#eth_hashrate) to get the number of hashes per second with which the node is mining. Not supported for GPU mining.
- [`eth_getWork`](../../reference/api/index.md#eth_getwork) to get the hash of the current block, the seed hash, and the target boundary condition. Only used when using the `getwork` scheme.
- [`eth_submitWork`](../../reference/api/index.md#eth_submitwork) to submit the PoW solution. Only used when using the `getwork` scheme.
- [`miner_start`](../../reference/api/index.md#miner_start-deprecated) to start mining.
- [`miner_stop`](../../reference/api/index.md#miner_stop-deprecated) to stop mining.
- [`eth_mining`](../../reference/api/index.md#eth_mining-deprecated) to determine whether the client is actively mining new blocks.
- [`eth_getMinerDataByBlockHash`](../../reference/api/index.md#eth_getminerdatabyblockhash-deprecated) and [`eth_getMinerDataByBlockNumber`](../../reference/api/index.md#eth_getminerdatabyblocknumber) to get the miner data for a specified block.
- [`eth_hashrate`](../../reference/api/index.md#eth_hashrate-deprecated) to get the number of hashes per second with which the node is mining. Not supported for GPU mining.
- [`eth_getWork`](../../reference/api/index.md#eth_getwork-deprecated) to get the hash of the current block, the seed hash, and the target boundary condition. Only used when using the `getwork` scheme.
- [`eth_submitWork`](../../reference/api/index.md#eth_submitwork-deprecated) to submit the PoW solution. Only used when using the `getwork` scheme.

## Troubleshoot

Expand Down
2 changes: 0 additions & 2 deletions docs/public-networks/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@ tags:

Besu serves as an [execution client](concepts/node-clients.md#execution-clients) on public proof-of-stake Ethereum networks such as Ethereum Mainnet, Holesky, Ephemery, and Sepolia.

You can also run Besu using proof of work on [Ethereum Classic (ETC)](how-to/use-pow/mining.md).

Get started by [installing Besu](get-started/install/index.md).

## Architecture
Expand Down
16 changes: 8 additions & 8 deletions docs/public-networks/reference/api/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4135,7 +4135,7 @@ curl -X POST -H "Content-Type: application/json" --data '{"query": "{logs(filter

</Tabs>

### `eth_getMinerDataByBlockHash`
### `eth_getMinerDataByBlockHash` (Deprecated)

Returns miner data for the specified block.

Expand Down Expand Up @@ -5506,7 +5506,7 @@ curl -X POST -H "Content-Type: application/json" --data '{ "query": "{block(numb

</Tabs>

### `eth_getWork`
### `eth_getWork` (Deprecated)

Returns the hash of the current block, the seed hash, and the required target boundary condition.

Expand Down Expand Up @@ -5563,7 +5563,7 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getWork","params":[],"id":1}

</Tabs>

### `eth_hashrate`
### `eth_hashrate` (Deprecated)

Returns the number of hashes per second with which the node is mining.

Expand Down Expand Up @@ -5653,7 +5653,7 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_maxPriorityFeePerGas","param

</Tabs>

### `eth_mining`
### `eth_mining` (Deprecated)

Whether the client is actively mining new blocks. Besu pauses mining while the client synchronizes with the network regardless of command settings or methods called.

Expand Down Expand Up @@ -6018,7 +6018,7 @@ mutation {

</Tabs>

### `eth_submitHashrate`
### `eth_submitHashrate` (Deprecated)

Submits the mining hashrate. This is used by mining software such as [Ethminer](https://github.com/ethereum-mining/ethminer).

Expand Down Expand Up @@ -6072,7 +6072,7 @@ curl -X POST --data '{"jsonrpc":"2.0", "method":"eth_submitHashrate", "params":[

</Tabs>

### `eth_submitWork`
### `eth_submitWork` (Deprecated)

Submits a proof of work (Ethash) solution. This is used by mining software such as [Ethminer](https://github.com/ethereum-mining/ethminer).

Expand Down Expand Up @@ -6696,7 +6696,7 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"miner_setMinPriorityFee","params

</Tabs>

### `miner_start`
### `miner_start` (Deprecated)

Starts the mining process.
To start mining, you must first specify a miner coinbase using the [`--miner-coinbase`](../cli/options.md#miner-coinbase) command line option or using [`miner_setCoinbase`](#miner_setcoinbase).
Expand Down Expand Up @@ -6741,7 +6741,7 @@ curl -X POST --data '{"jsonrpc":"2.0","method":"miner_start","params":[],"id":1}

</Tabs>

### `miner_stop`
### `miner_stop` (Deprecated)

Stops the mining process on the client.

Expand Down
2 changes: 1 addition & 1 deletion docs/public-networks/reference/api/objects.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ Returned by [`eth_getFilterChanges`](index.md#eth_getfilterchanges) and [`priv_g

## Miner data object

Returned by [`eth_getMinerDataByBlockHash`](index.md#eth_getminerdatabyblockhash) and [`eth_getMinerDataByBlockNumber`](index.md#eth_getminerdatabyblocknumber).
Returned by [`eth_getMinerDataByBlockHash`](index.md#eth_getminerdatabyblockhash-deprecated) and [`eth_getMinerDataByBlockNumber`](index.md#eth_getminerdatabyblocknumber).

| Key | Type | Value |
| --- | :-: | --- |
Expand Down
10 changes: 5 additions & 5 deletions docs/public-networks/reference/cli/options.md
Original file line number Diff line number Diff line change
Expand Up @@ -2335,7 +2335,7 @@ miner-coinbase="0xfe3b557e8fb62b89f4916b721be55ceb828dbd73"

The account you pay mining rewards to.
You must specify a valid coinbase when you enable mining using the
[`--miner-enabled`](#miner-enabled) option or the [`miner_start`](../api/index.md#miner_start)
[`--miner-enabled`](#miner-enabled) option or the [`miner_start`](../api/index.md#miner_start-deprecated)
JSON-RPC API method.

:::note
Expand Down Expand Up @@ -2427,7 +2427,7 @@ miner-extra-data="0x444F4E27542050414E4943202120484F444C2C20484F444C2C20484F444C
A hex string representing the 32 bytes included in the extra data field of a created block.
The default is `0x`.

### `miner-stratum-enabled`
### `miner-stratum-enabled` (Deprecated)

<Tabs>

Expand Down Expand Up @@ -2460,7 +2460,7 @@ miner-stratum-enabled=true
Enables a node to perform stratum mining.
The default is `false`.

### `miner-stratum-host`
### `miner-stratum-host` (Deprecated)

<Tabs>

Expand Down Expand Up @@ -2501,7 +2501,7 @@ miner-stratum-host="192.168.1.132"
The host of the stratum mining service.
The default is `0.0.0.0`.

### `miner-stratum-port`
### `miner-stratum-port` (Deprecated)

<Tabs>

Expand Down Expand Up @@ -2569,7 +2569,7 @@ Specify the method for handling [NAT environments](../../how-to/connect/specify-

- [`UPNP`](../../how-to/connect/specify-nat.md#upnp)
- [`UPNPP2PONLY`](../../how-to/connect/specify-nat.md#upnp)
- [`KUBERNETES`](../../how-to/connect/specify-nat.md#kubernetes)
- [`KUBERNETES` (Deprecated)](../../how-to/connect/specify-nat.md#kubernetes)
- [`DOCKER`](../../how-to/connect/specify-nat.md#docker)
- [`AUTO`](../../how-to/connect/specify-nat.md#auto)
- [`NONE`](../../how-to/connect/specify-nat.md#none).
Expand Down
Loading