File tree Expand file tree Collapse file tree 3 files changed +26
-5
lines changed Expand file tree Collapse file tree 3 files changed +26
-5
lines changed Original file line number Diff line number Diff line change 33All notable changes to this project will be documented in this file.
44
55The format is based on [ Keep a Changelog] ( https://keepachangelog.com/en/1.0.0/ ) ,
6- and this project adheres to [ Semantic Versioning ] ( https://semver.org/spec/v2.0.0.html ) .
6+ and this project adheres to the versioning scheme outlined in the [ README.md ] ( README.md ) .
77
88## [ Unreleased]
99
@@ -37,6 +37,12 @@ compatible with prior chainstate directories.
3737- Fixed faulty logic in the mempool that was still treating the transaction fee
3838 as a fee rate, which prevented replace-by-fee from working as expected.
3939
40+ ## [ 2.0.10.0.1]
41+
42+ This is a low-priority hotfix release to address a bug in the deserialization logic. The
43+ chainstate directory of 2.0.10.0.1 is compatible with 2.0.10. This release also begins the
44+ usage of the versioning scheme outlined in the [ README.md] ( README.md ) .
45+
4046## [ 2.0.10]
4147
4248This is a low-priority hotfix release to address two bugs in the block downloader. The
Original file line number Diff line number Diff line change @@ -33,6 +33,23 @@ according to the following rubric:
3333- ** Medium Priority** . Any fix for an issue that could cause miners to waste funds
3434- ** Low Priority** . Any fix for an issue that could deny service to individual nodes
3535
36+ ## Versioning
37+
38+ This repository uses a 5 part version number.
39+
40+ ```
41+ X.Y.Z.A.n
42+
43+ X = 2 and does not change in practice unless there’s another Stacks 2.0 type event
44+ Y increments on consensus-breaking changes
45+ Z increments on non-consensus-breaking changes that require a fresh chainstate (akin to semantic MAJOR)
46+ A increments on non-consensus-breaking changes that do not require a fresh chainstate, but introduce new features (akin to semantic MINOR)
47+ n increments on patches and hot-fixes (akin to semantic PATCH)
48+ ```
49+
50+ For example, a node operator running version ` 2.0.10.0.0 ` would not need to wipe and refresh their chainstate
51+ to upgrade to ` 2.0.10.1.0 ` or ` 2.0.10.0.1 ` . However, upgrading to ` 2.0.11.0.0 ` would require a new chainstate.
52+
3653## Roadmap
3754
3855- [x] [ SIP 001: Burn Election] ( https://github.com/stacksgov/sips/blob/main/sips/sip-001/sip-001-burn-election.md )
Original file line number Diff line number Diff line change @@ -342,8 +342,7 @@ impl Value {
342342
343343 r. read_exact ( & mut data[ ..] ) ?;
344344
345- // can safely unwrap, because the buffer length was _already_ checked.
346- Ok ( Value :: buff_from ( data) . unwrap ( ) )
345+ Value :: buff_from ( data) . map_err ( |_| "Bad buffer" . into ( ) )
347346 }
348347 TypePrefix :: BoolTrue => {
349348 check_match ! ( expected_type, TypeSignature :: BoolType ) ?;
@@ -517,8 +516,7 @@ impl Value {
517516
518517 r. read_exact ( & mut data[ ..] ) ?;
519518
520- // can safely unwrap, because the string length was _already_ checked.
521- Ok ( Value :: string_ascii_from_bytes ( data) . unwrap ( ) )
519+ Value :: string_ascii_from_bytes ( data) . map_err ( |_| "Bad string" . into ( ) )
522520 }
523521 TypePrefix :: StringUTF8 => {
524522 let mut total_len = [ 0 ; 4 ] ;
You can’t perform that action at this time.
0 commit comments