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

Monorepo: Client preparing Releases #1491

Merged
merged 24 commits into from
Sep 27, 2021
Merged
Show file tree
Hide file tree
Changes from 18 commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
57b5cf1
ethash -> miner: made solution property public
holgerd77 Sep 24, 2021
dad4397
util: bumped version to v7.1.1, added CHANGELOG entry, updated upstre…
holgerd77 Sep 24, 2021
57a3ee6
monorepo: updated package-lock.json
holgerd77 Sep 24, 2021
5b3ba17
util -> release: rebuild documentation
holgerd77 Sep 24, 2021
411036f
common -> release: bumped version to v2.5.0, added CHANGELOG entry, u…
holgerd77 Sep 24, 2021
9db429c
monorepo: updated package-lock.json, updated typedoc dev dependency f…
holgerd77 Sep 24, 2021
acf3802
common -> release: rebuild documentation
holgerd77 Sep 24, 2021
31ac334
tx -> release: bumped version to v3.3.1, added CHANGELOG entry, updat…
holgerd77 Sep 24, 2021
b950a93
tx -> release: rebuild documentation
holgerd77 Sep 24, 2021
eea0b3c
block -> release: bumped version to v3.5.0, added CHANGELOG entry, up…
holgerd77 Sep 24, 2021
6d9dc00
ethash -> release: bumped version to v1.1.0, added CHANGELOG entry, u…
holgerd77 Sep 24, 2021
74cb5a7
ethash -> release: build documentation, replaced manual API docs with…
holgerd77 Sep 24, 2021
2f6192d
monorepo: updated package-lock.json
holgerd77 Sep 24, 2021
2e78e5a
blockchain -> release: bumped version to v5.4.1, added CHANGELOG entr…
holgerd77 Sep 24, 2021
b3c4c97
blockchain -> release: rebuild documentation
holgerd77 Sep 24, 2021
91d8287
devp2p -> release: bumped version to v4.2.0, added CHANGELOG entry, u…
holgerd77 Sep 24, 2021
e3f904d
vm -> release: bumped version to v5.5.3, added CHANGELOG entry, updat…
holgerd77 Sep 24, 2021
a05c20a
monorepo: updated package-lock.json
holgerd77 Sep 24, 2021
7fc7649
Apply suggestions from code review
ryanio Sep 24, 2021
5d4172f
add tiny fixes from #905
ryanio Sep 25, 2021
c2da8bb
Update packages/util/CHANGELOG.md
ryanio Sep 25, 2021
3c4e8ab
from tiny fixes issue: add calcNextBaseFee() example to block README
ryanio Sep 25, 2021
a6c055c
fix typos (preceeding -> preceding, analogue -> analog for american e…
ryanio Sep 25, 2021
f8017ba
from tiny fixes: remove old reference to node-devp2p, update latest i…
ryanio Sep 25, 2021
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
6,802 changes: 2,769 additions & 4,033 deletions package-lock.json

Large diffs are not rendered by default.

36 changes: 35 additions & 1 deletion packages/block/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,40 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
(modification: no type change headlines) and this project adheres to
[Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## 3.5.0 - 2021-09-24

### Experimental Merge/PoS Support

This release comes with experimental support for the Merge HF as defined in [EIP-3675](https://eips.ethereum.org/EIPS/eip-3675) respectively support for creating PoS compatible `Block` objects (from an Eth 1.0 perspective).

#### PoS Block Instantiation

Proof-of-Stake compatible execution blocks come with its own set of header field simplifications and associated validation rules. The difficuly is set to `0` since not relevant any more, just to name an example. For a full list of changes see `EIP-3675`.

You can instantiate a Merge/PoS block like this:

```typescript
import { Block } from '@ethereumjs/block'
import Common, { Chain, Hardfork } from '@ethereumjs/common'
const common = new Common({ chain: Chain.Mainnet, hardfork: Hardfork.Merge, })
const block = Block.fromBlockData({
// Provide your block data here or use default values
}, { common })
```

See: PR [#1393](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1393) and PR [#1408](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1393)

#### Set Hardfork by Total Difficulty

There is a new `hardforkByTD` option which expands the current `hardforkByBlockNumber` option and allows for setting the hardfork either by total difficulty or a `Common`-matching block number. The supportive functionality within the `Common` library has been introduced along the `v2.5.0` release.

See. PR [#1473](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1473)

### Other Changes

- The hash from the `block.hash()` method now gets cached for blocks created with the `freeze` option (activated by default), PR [#1445](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1445)


## 3.4.0 - 2021-07-08

### Finalized London HF Support
Expand All @@ -28,7 +62,7 @@ Source files from the `src` folder are now included in the distribution build, s
This `Block` release comes with full functional support for the `london` hardfork (all EIPs are finalized and integrated and `london` HF can be activated, there are no final block numbers for the HF integrated though yet). Please note that the default HF is still set to `istanbul`. You therefore need to explicitly set the `hardfork` parameter for instantiating a `Common` instance with a `london` HF activated:

```typescript
import { Block } from 'ethereumjs-block'
import { Block } from '@ethereumjs/block'
import Common from '@ethereumjs/common'
const common = new Common({ chain: 'mainnet', hardfork: 'london' })
const block = Block.fromBlockData({
Expand Down
17 changes: 17 additions & 0 deletions packages/block/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,23 @@ Additionally there are the following utility methods for Clique/PoA related func

See the API docs for detailed documentation. Note that these methods will throw if called in a non-Clique/PoA context.

### Casper/PoS (since v3.5.0) (experimental)

Merge-friendly Casper/PoS blocks have been introduced along the `v3.5.0` release. Proof-of-Stake compatible execution blocks come with its own set of header field simplifications and associated validation rules. The difficuly is set to `0` since not relevant any more, just to name an example. For a full list of changes see [EIP-3675](https://eips.ethereum.org/EIPS/eip-3675).
ryanio marked this conversation as resolved.
Show resolved Hide resolved

You can instantiate a Merge/PoS block like this:

```typescript
import { Block } from '@ethereumjs/block'
import Common, { Chain, Hardfork } from '@ethereumjs/common'
const common = new Common({ chain: Chain.Mainnet, hardfork: Hardfork.Merge, })
const block = Block.fromBlockData({
// Provide your block data here or use default values
}, { common })
```

Note that all `Merge` respectively `Casper/PoS` related functionality is still considered `experimental`.

# API

[Documentation](./docs/README.md)
Expand Down
10 changes: 5 additions & 5 deletions packages/block/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ethereumjs/block",
"version": "3.4.0",
"version": "3.5.0",
"description": "Provides Block serialization and help functions",
"license": "MPL-2.0",
"author": "mjbecze (mb@ethdev.com)",
Expand Down Expand Up @@ -35,10 +35,10 @@
"test:browser": "karma start karma.conf.js"
},
"dependencies": {
"@ethereumjs/common": "^2.4.0",
"@ethereumjs/common": "^2.5.0",
"merkle-patricia-tree": "^4.2.1",
"@ethereumjs/tx": "^3.3.0",
"ethereumjs-util": "^7.1.0"
"@ethereumjs/tx": "^3.3.1",
"ethereumjs-util": "^7.1.1"
},
"devDependencies": {
"@types/lru-cache": "^5.1.0",
Expand All @@ -53,7 +53,7 @@
"nyc": "^14.0.0",
"prettier": "^2.0.5",
"tape": "^5.3.1",
"typedoc": "^0.21.5",
"typedoc": "^0.22.4",
"ts-node": "^10.2.1",
"typescript": "^4.4.2"
},
Expand Down
17 changes: 15 additions & 2 deletions packages/blockchain/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,27 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
(modification: no type change headlines) and this project adheres to
[Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## 5.4.1 - 2021-09-24

# 5.4.0 - 2021-07-08
### Experimental Casper/PoS and Merge Support

This release adds first experimental Casper/PoS respectively Merge HF support by allowing to build a blockchain which switches to Casper/PoS consensus validation at some point triggered by a merge HF occured. The `Blockchain` library now allows for taking in the respective Casper/PoS conforming blocks (see `@ethereumjs/block` release v3.5.0), do the correct validations and set the HF accordingly (Merge HF-related logic and a new PoS consensus type have been added to the `Common` library along the v2.5.0 release).
ryanio marked this conversation as resolved.
Show resolved Hide resolved

See: PR [#1408](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1408)

### Other Changes

- Added new `Blockchain.cliqueSignerInTurn()` method, PR [#1444](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1444)
- Added new `Blockchain.copy()` method, PR [#1444](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1444)
- Added browser tests, PR [#1380](https://github.com/ethereumjs/ethereumjs-monorepo/pull/1380)

## 5.4.0 - 2021-07-08

### Finalized London HF Support

This release integrates a `Common` library version which provides the `london` HF blocks for all networks including `mainnet` and is therefore the first release with finalized London HF support.

# 5.3.1 - 2021-06-25
## 5.3.1 - 2021-06-25

### PoA Reorg Fix

Expand Down
1 change: 1 addition & 0 deletions packages/blockchain/docs/.nojekyll
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false.
4 changes: 2 additions & 2 deletions packages/blockchain/docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@

### Interfaces

- [BlockchainInterface](interfaces/blockchaininterface.md)
- [BlockchainOptions](interfaces/blockchainoptions.md)
- [BlockchainInterface](interfaces/BlockchainInterface.md)
- [BlockchainOptions](interfaces/BlockchainOptions.md)
Loading