July 21, 2020
7 Weeks in to Argon
It was another productive week, resulting in an abundance of various Github updates related to Stacks 2.0. If you need a refresher on all the happenings around the Argon phase, remember to check out this blog post from Blockstack PBC’s Head of Engineering, Diwaker Gupta. Additionally, there are still a host of testnet bounties up for grabs if you’re interested in uncovering bugs and earning bitcoin.
Here are the highlights from the last week:
- The trait-alias syntax was incorrectly being processed as a JSX element in documentation. It has been reformatted as in-line code and will no longer cause issues with rendering of content. → Github
- A PR has been merged to stacks-blockchain that improves RPC deserialization error reporting. Previously, if the RPC handler failed while parsing a request from HTTP to a RequestType, the RPC server would return a 400 error, empty HTTP body, and some not very friendly error messages. This PR adds a test for that case, as well as introducing an error handling scheme. → Github
- A helper function that validates addresses found it’s home in stacks-transactions-js this week. In addition, an optimized c32address validation function is being developed to avoid the relatively expensive process of a throw/try/catch. → Github
- Removed a stacks-blockchain dependency on the byteorder package. We only used the byteorder crate for parsing little-endian integers in the vendored bitcoin crate. There is already code that does this, and the package was causing build failures on Windows. It also had unsafe code and limited benefit, so we just wrote the bits we needed and got rid of the dependency. → Github
- The transaction signing documentation has been updated for testnet release. This removes the special configuration for using transaction signing since we’re merging this functionality into master. It also adds guidance about its usage on testnet. → Github
- More guidance on checking a transaction’s status when using Blockstack Connect has been added to the docs. There is now more info on using the Stacks Blockstack API to request the status of the transaction. The API will respond with a JSON object that includes a tx_status field. → Github
- The guidance in the docs for the sendToSignIn has been corrected to accurately reflect the result of boolean value being true or false. → Github
- Last but not least, there are a whole bunch of Proof-of-Transfer refactoring pull requests under review as we work towards its integration into the testnet.
- This PR is introducing the ChainsCoordinator - the structure in charge of updating the chain’s states and consensus for each new Block / BurnchainBlock. → Github
- This PR brings the refactor of StacksChainState, Stacks Block DB, and the stacks header hash cache. It does so by systemically changing the way we index Stacks blocks, from using burn_header_hash/block_hash to consensus_hash/block_hash. → Github