- BNS API optimizations: The Blockchain Naming System (BNS) is a network system that binds Stacks usernames to an off-chain state without relying on any central control points. In the latest v.5.0.1 release, the BNS data model has been optimized for structured lookups and consistent retrieval when resolving namespaces, name subdomains, zone files, or retrieving all names known to a node. With this optimization, we could address many end-user-facing inconsistencies and technical debt.
- Multiple fixes made it to recent releases, including resilient error checking and handling upon Postgres DB connection timeouts and correctly filtering and correcting BNS data import behavior on event replays.
- Additionally, we optimized re-org queries with additional DB indexing, so this workflow is optimal and fast.
- Visit the GitHub repo for an overview of PRs merged and issues closed in the past 30 days. Current stable release: v5.0.1 and the latest BETA release: v6.0.0-beta.6
- In September, Hiro continued to push towards code completion on our contributions to the upcoming 2.1 release of the Stacks blockchain. During the month of September, we added a readme for Subnets, Stacks 2.1 in contracts and CI, and withdrawal functionality. For more details regarding the Stacks 2.1 update, check out this blog post.
- Cleaner and more modular Clarinet: As part of the continued focus on the modular architecture and preparation for the upcoming 1.0 GA release, the team carefully pivoted by replacing the Clarity VM code in Clarinet in favor of the Canonical VM that is now directly inherited from Stacks blockchain. This means you can be confident that your code runs the same way in Clarinet as it will on chain. So much code was deleted from Clarinet to get here, which is an excellent thing from a maintenance perspective; instead, it now relies on upstream's source of truth and open-source innovation directly.
- VS Code extension: As part of our commitment to helping developers build Clarity smart contracts, we continue to update and add more value to the Clarity for Visual Studio Code. On that note, we are actively developing and iterating on adding new capabilities to VS Code Web extension, which would help developers exercise all the capabilities that are in VS Code Desktop today, but also in github.dev or vscode.dev. With this, developers can do their contract development, testing, and debugging entirely from web browsers with no other installations required. We will be releasing this in October, so stay tuned!
- We implemented a fix that sets pg docker image tag to postgres:14 which will make the postgres version consistent with the API.
- Current release: Clarinet v0.33.0.
Stacks.js (Major Release)
- Stacks.js had several updates, including the removal of legacy bip32 (#1349) and a switch from buffer to uint8array (#1343).
- Message signing is now hardware-wallet compatible (breaking change). To allow hardware -wallets (e.g. Ledger) to sign Stacks messages, the message signing prefix was changed. This may break log-in via message signing systems. Read the discussion here.
- We have removed the legacy bip32 package and are now using the @scure family of packages instead.
- In an effort to reduce the bundle sizes of Stacks.js, a large required polyfill was removed. We are switching from Buffer to Uint8Array. To make the switch easier, we have introduced a variety of methods for converting between strings and Uint8Arrays. Only wallet projects (using the @stacks/wallet-sdk) might need to keep Buffer around if they require dependencies that use Buffer (e.g. triplesec). Check the migration guide for more information.
- Visit the GitHub repo for an overview of PRs merged and issues closed in the past 30 days. Current release: v5.0.1.
- Ledger support: We’re thrilled to announce that users can now connect their Ledger devices to the Hiro Wallet web extension (v3.17.2 or higher) for accessing their hardware wallets and using them with apps and smart contracts. This makes it easier to access Web3 on Bitcoin through one of the most trusted hardware devices in the industry. Learn more.
- Current releases: web v3.18.1, desktop v4.6.1
- The Stacks Explorer team worked this month to make the USD value of transactions and balances more visible. We added the following: USD values within transaction lists (#858), USD values alongside amount and fees on transaction page (#857), and USD values alongside balances on address page (#855).
- Users can now see USD values within transaction lists.
- We have also added USD values alongside the amount and fees on the transaction page.
- The last place we added USD values was on the address page next to the balances.
- Visit the GitHub repo for an overview of PRs merged and issues closed in the past 30 days. Current release: v1.45.0
That’s it for September. Have questions? Chat with us on Discord.