Skip to content

Commit 5e99eb9

Browse files
authored
Merge pull request #3995 from nspcc-dev/rel-0.112.0
CHANGELOG: release v0.112.0
2 parents f8e2d2c + e9fb609 commit 5e99eb9

File tree

4 files changed

+52
-27
lines changed

4 files changed

+52
-27
lines changed

CHANGELOG.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,55 @@
22

33
This document outlines major changes between releases.
44

5+
## 0.112.0 "Hibernation" (29 Aug 2025)
6+
7+
This version fixes state difference at block 8813651 of testnet caused by
8+
improper `ABORTMSG` and `AASSERTMSG` arguments handling. It also introduces
9+
support for a set of newly-added NEPs and ability to customize the list of
10+
native contracts.
11+
12+
DB resynchronisation (or state reset to block 8813650 for full nodes) is
13+
required on testnet nodes upgrade. `SessionExpirationTime` RPC server setting is
14+
deprecated and replaced by `SessionLifetime` of `Duration` type, consider
15+
upgrading the node's config. `math.Min` and `math.Max` interop utilities are
16+
deprecated and replaced by Go built-in `min` and `max` functions, consider
17+
upgrading affected smart contracts. Also, some deprecated functionality has been
18+
removed according to the schedule.
19+
20+
New features:
21+
* customizable native contracts (#3966)
22+
* NEP-22/NEP-31 (contract update and destroy functionality) support in CLI,
23+
`smartcontract` package and compiler (#3968, #3971)
24+
* NEP-29/NEP-30 (contract `_deploy` and `verify` methods) support in
25+
`smartcontract` package and compiler (#3978)
26+
* NEP-32 support for `db restore` CLI command (unified chain dump format)
27+
(#3974)
28+
* mempool events RPC web-socket subscription (#3967)
29+
30+
Behavior changes:
31+
* `wallet candidate register` CLI command is migrated onto GAS transfer (#3973)
32+
* `SessionExpirationTime` RPC server setting is deprecated and replaced by
33+
`SessionLifetime` (#3953)
34+
* `math.Min` and `math.Max` interop helpers are deprecated and replaced with
35+
Go built-in min/max (#3984)
36+
* deprecated functionality removal (`GetBlockHeader` and
37+
`GetBlockHeaderVerbose` methods of RPC client) (#3995)
38+
* RPC client's `Waiter.Wait()` is extended with context parameter (#3959)
39+
40+
Improvements:
41+
* `storage.KeyValue` interop type (#3982)
42+
* `util convert` CLI command is extended with Base64 public key convertor
43+
* stackitem conversion is supported for `rolemgmt.DesignationEvent` native
44+
RoleManagement RPC binding (#3956)
45+
* `getversion` RPC response is extended with `SaveInvocations`,
46+
`KeepOnlyLatestState` and `RemoveUntraceableBlocks` settings (#3954)
47+
* Go built-in min/max support in compiler (#3984)
48+
* web-socket client connection errors improvement (#3975)
49+
50+
Bugs fixed:
51+
* panic on public key comparison with infinite operand (#3961)
52+
* missing strict UTF-8 check for `ABORTMSG` and `ASSERTMSG` arguments (#3988)
53+
554
## 0.111.0 "Facilitation" (18 Jul 2025)
655

756
We've decided to release one more v3.8.0-compatible version since the current

ROADMAP.md

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ functionality.
77
## Versions 0.7X.Y (as needed)
88
* Neo 2.0 support (bug fixes, minor functionality additions)
99

10-
## Version 0.112.0 (~Aug 2025)
10+
## Version 0.113.0 (~Sept 2025)
1111
* protocol updates
1212
* bug fixes
13+
* StateRootInHeader protocol extension
1314

1415
## Version 1.0 (2025, TBD)
1516
* stable version
@@ -23,15 +24,6 @@ APIs/commands/configurations will be removed and here is a list of scheduled
2324
breaking changes. Consider changing your code/scripts/configurations if you're
2425
using anything mentioned here.
2526

26-
## GetBlockHeader and GetBlockHeaderVerbose methods of RPCClient
27-
28-
GetBlockHeader and GetBlockHeaderVerbose were replaced by GetBlockHeaderByHash
29-
and GetBlockHeaderByHashVerbose methods respectively to follow RPCClient
30-
naming convention. No functional changes implied.
31-
32-
Removal of GetBlockHeader and GetBlockHeaderVerbose methods is scheduled for
33-
0.112.0 release.
34-
3527
## SessionExpirationTime of RPC server configuration
3628

3729
RPC server configuration setting SessionExpirationTime of `int` type has been

pkg/rpcclient/rpc.go

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -151,14 +151,6 @@ func (c *Client) GetBlockHash(index uint32) (util.Uint256, error) {
151151
return resp, nil
152152
}
153153

154-
// GetBlockHeader returns the corresponding block header information from
155-
// a serialized base64 string according to the specified script hash. In-header
156-
// stateroot option must be initialized with Init before calling this method.
157-
// Deprecated: Use GetBlockHeaderByHash instead.
158-
func (c *Client) GetBlockHeader(hash util.Uint256) (*block.Header, error) {
159-
return c.GetBlockHeaderByHash(hash)
160-
}
161-
162154
// GetBlockHeaderByHash returns the corresponding block header information from
163155
// a serialized base64 string according to the specified script hash. In-header
164156
// stateroot option must be initialized with Init before calling this method.
@@ -205,14 +197,6 @@ func (c *Client) GetBlockHeaderCount() (uint32, error) {
205197
return resp, nil
206198
}
207199

208-
// GetBlockHeaderVerbose returns the corresponding block header information from
209-
// a JSON format string according to the specified script hash. In-header
210-
// stateroot option must be initialized with Init before calling this method.
211-
// Deprecated: Use GetBlockHeaderByHashVerbose instead.
212-
func (c *Client) GetBlockHeaderVerbose(hash util.Uint256) (*result.Header, error) {
213-
return c.GetBlockHeaderByHashVerbose(hash)
214-
}
215-
216200
// GetBlockHeaderByHashVerbose returns the corresponding block header information from
217201
// a JSON format string according to the specified script hash. In-header
218202
// stateroot option must be initialized with Init before calling this method.

pkg/rpcclient/rpc_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ var rpcClientTestCases = map[string][]rpcClientTestCase{
244244
if err != nil {
245245
panic(err)
246246
}
247-
return c.GetBlockHeader(hash)
247+
return c.GetBlockHeaderByHash(hash)
248248
},
249249
serverResponse: `{"id":1,"jsonrpc":"2.0","result":"` + base64Header1 + `"}`,
250250
result: func(c *Client) any {

0 commit comments

Comments
 (0)