mirror of
https://github.com/alexgo-io/stacks-puppet-node.git
synced 2026-04-23 03:20:19 +08:00
changelog for version 19
This commit is contained in:
@@ -19,13 +19,14 @@ The consensus-breaking releases are:
|
||||
Notes on Consensus
|
||||
==================
|
||||
|
||||
The Blockstack Developers do their best to avoid consensus-breaking releases whenever possible.
|
||||
The Blockstack Core developers do their best to avoid consensus-breaking releases whenever possible.
|
||||
However, certain improvements and bugfixes cannot be done without them.
|
||||
As such, the project tries to limit consensus-breaking releases to one per year (around mid-September), and only with extensive testing.
|
||||
Consensus-breaking changes are documented in the release notes, and will be publicly documented in the version's wish list file whenever possible.
|
||||
As such, the project tries to limit consensus-breaking releases to one per year (in Q4), and only with extensive testing.
|
||||
Consensus-breaking changes are documented in the release notes, and will be publicly documented beforehand whenever possible.
|
||||
|
||||
If a critical consensus-breaking bug or security vulnerability is found, a new consensus-breaking release may be made on the spot.
|
||||
If this happens, it will be documented here and announced publicly.
|
||||
If this happens, it will be documented here and announced publicly on the
|
||||
[Blockstack Forum](https://forum.blockstack.org) and on [Twitter](https://twitter.com/blockstack).
|
||||
|
||||
A yearly consensus-breaking release is required in order to keep name and namespace prices reasonable.
|
||||
When Blockstack was first deployed, namespace prices were determined on a 1 BTC == $230 USD exchange.
|
||||
|
||||
95
release_notes/changelog-19.md
Normal file
95
release_notes/changelog-19.md
Normal file
@@ -0,0 +1,95 @@
|
||||
What's New in 19
|
||||
=================
|
||||
|
||||
Release 19 brings several major improvements to Blockstack Core. It is not a
|
||||
consensus-breaking release. 19.x nodes will continue to agree with 0.18.x
|
||||
nodes about the chain state.
|
||||
|
||||
This release is a refactoring/house-keeping release in which many little-used
|
||||
and deprecated features were removed. This release also changes the versioning
|
||||
scheme for Blockstack Core -- starting with this release, each new release will
|
||||
increment the major version number. The next release will be version 20.
|
||||
|
||||
Release Highlights
|
||||
------------------
|
||||
|
||||
**Removal of the Python CLI**: This release drops over 27,000 lines of code by
|
||||
removing the Python Blockstack CLI. This tool was superceded by the Blockstack
|
||||
Browser, [blockstack.js](https://github.com/blockstack/blockstack.js), and the
|
||||
Node.js [Blockstack CLI](https://github.com/blockstack/cli-blockstack). The
|
||||
storage and transaction logic is now implemented solely in `blockstack.js`,
|
||||
which both the Browser and the Node.js CLI use.
|
||||
|
||||
**Removal of most POST Endpoints**: As discussed in the release notes for 0.18,
|
||||
the `/v1/store` endpoints were deprecated. This release removes them
|
||||
completely, and along with them, nearly every non-GET endpoint. The only POST
|
||||
endpoint remaining is `/v1/zonefile`, which lets you broadcast an
|
||||
already-announced zone file.
|
||||
|
||||
**Moved Storage API and Drivers to Gaia Hubs**: All storage drivers and the
|
||||
storage API are now part of the [Blockstack Gaia
|
||||
hub](https://github.com/blockstack/gaia), which is deployed separately.
|
||||
Users no longer need to run a locally-hosted storage proxy to give applications
|
||||
access to their data. Instead, they can deploy a Gaia hub on a server of their
|
||||
choice (or use a public-use Gaia hub like https://hub.blockstack.org). This
|
||||
makes mobile development much simpler and removes a consistent pain point for
|
||||
installing and running the Blockstack Browser.
|
||||
|
||||
**Moved Transaction API to a Transaction Broadcaster**: This codebase no longer
|
||||
generates and broadcasts transactions. This code has instead been moved to the
|
||||
[transaction broadcaster
|
||||
service](https://github.com/blockstack/transaction-broadcaster). A user no
|
||||
longer has to run a transaction-broadcasting daemon locally to register names --
|
||||
instead, users can leverage a publicly-hosted one that they trust (however,
|
||||
users retain the ability to run their own local daemon if they wish).
|
||||
|
||||
**Merger of the Indexer and RESTful API Processes**: Blockstack Core is now a
|
||||
single process that implements the blockchain indexer, the peer-to-peer interface,
|
||||
and the RESTful API. Before, the RESTful API had been a separate process that
|
||||
was part of the now-defunct Python CLI. This makes deploying a Blockstack Core
|
||||
node much simpler.
|
||||
|
||||
**Better Behavior under Load**: This release is much better at
|
||||
accepting and handling many simultaneous requests than 0.18. While P2P requests are still
|
||||
serialized, the server is able to accept and queue multiple inbound connections
|
||||
and gracefully shed load if it has too many clients. This fixes a pernicious
|
||||
bug whereby the Linux kernel will assume a Blockstack Core node under load is
|
||||
experiencing a TCP SYN flood.
|
||||
|
||||
**Subdomain Processing Speedup**: This release improves subdomain indexing by
|
||||
nearly 200x by using more efficient database queries than 0.18. This allows it
|
||||
to process many more subdomain updates while keeping pace with the blockchain.
|
||||
|
||||
**RESTful API Query Speedup**: Some RESTful API queries are faster -- both
|
||||
asymptotically faster and faster by constant factors than 0.18. These include
|
||||
`/v1/names`, `/v1/names/{:name}/zonefile/{:zonefileHash}`, `/v1/addresses`, and
|
||||
a few others.
|
||||
|
||||
**Better Documentation**: The RESTful API documentation has been fleshed out
|
||||
with sample schemas and error messages for all API calls. Also, the
|
||||
documentation in `docs/` has been revamped into a searchable database hosted at
|
||||
https://docs.blockstack.org.
|
||||
|
||||
Getting Started
|
||||
---------------
|
||||
|
||||
The recommended way to get started with 19 is through its fast-sync mode. To
|
||||
migrate from a 0.18 node to a 19 node, we recommend the following steps:
|
||||
|
||||
```
|
||||
# stop the old node
|
||||
$ blockstack-core stop
|
||||
$ mv ~/.blockstack-server ~/.blockstack-server.0.18
|
||||
|
||||
# start the new node
|
||||
$ blockstack-core fast-sync
|
||||
$ blockstack-core start
|
||||
```
|
||||
|
||||
The old chain state database directory structure has changed, and is
|
||||
incompatible with this new release. If you are
|
||||
upgrading from a 0.18 node or older, you will need to remove your `.blockstack-server`
|
||||
directory.
|
||||
|
||||
This release no longer requires you to run `blockstack api start` to start the
|
||||
RESTful API. It will be activated by default on port 6270.
|
||||
Reference in New Issue
Block a user