Releases: hirosystems/stacks-blockchain-api
v8.13.1
8.13.1 (2025-09-23)
Release Type: 🔄 OPTIONAL
Migration Required: ❌ No database migration needed
Compatibility: ✅ Backward compatible with v8.x.x
Release Summary
Version 8.13.1 is a minor release that adjusts how the API coordinates chain progress with internal infrastructure components. It is not a required upgrade.
What's Changed
Bug Fixes
Breaking Changes
None - This is a backward-compatible release.
Upgrade Priority
User Type | Priority | Recommended Timeline |
---|---|---|
Production API Operators | Low | At your convenience |
Development Teams | Low | At your convenience |
High-Traffic Applications | Low | At your convenience |
v8.13.0
8.13.0 (2025-09-09)
Release Type: 🔄 OPTIONAL
Migration Required: ❌ No database migration needed
Compatibility: ✅ Backward compatible with v8.x.x
Release Summary
Version 8.13.0 is a feature release that allows the API to coordinate chain progress with internal infrastructure components. It is not a required upgrade.
What's Changed
Features
Breaking Changes
None - This is a backward-compatible release.
Upgrade Priority
User Type | Priority | Recommended Timeline |
---|---|---|
Production API Operators | Low | At your convenience |
Development Teams | Low | At your convenience |
High-Traffic Applications | Low | At your convenience |
v8.12.1
8.12.1 (2025-08-26)
Release Type: 🔄 OPTIONAL - Recommended for improved performance and bug fixes
Migration Required: ❌ No database migration needed
Compatibility: ✅ Backward compatible with v8.x.x
Release Summary
Version 8.12.1 is a patch release that addresses several bug fixes and performance improvements. This release maintains full backward compatibility with existing v8.x.x installations and does not require database migrations.
Quick Update Path: Standard deployment process - no special considerations needed.
What's Changed
Bug Fixes
Breaking Changes
None - This is a backward-compatible release.
Upgrade Priority
User Type | Priority | Recommended Timeline |
---|---|---|
Production API Operators | Medium | Within 2-4 weeks |
Development Teams | Low | At your convenience |
High-Traffic Applications | High | Within 1 week (for performance benefits) |
v8.12.0
8.12.0 (2025-08-06)
Stacks Blockchain API v8.12.0 Release Notes
Release Type: 🔄 RECOMMENDED - Significant features, performance improvements, and database optimizations
Migration Required:
Compatibility: ✅ Backward compatible with v8.x.x
Release Summary
Version 8.12.0 is a feature release that introduces significant new capabilities including SNP (Stacks Nakamoto Protocol) integration, response size optimizations, and enhanced mempool handling. This release includes substantial performance improvements through database optimizations and new monitoring capabilities.
Quick Update Path: Standard deployment with database migration for optimal performance.
What's Changed
New Features
-
Add
exclude_function_args
parameter for transaction endpoints ([#2312](#2312))- Impact: Dramatically reduces transaction response sizes by optionally excluding function arguments
- Usage: Add
?exclude_function_args=true
to transaction endpoints - Benefits: Improved API performance for high-volume applications
- Backward Compatibility: ✅ Optional parameter, defaults to
false
-
Enhanced mempool transaction tracking ([#2271](#2271))
- New Field:
replaced_by_tx_id
for replaced mempool transactions - Impact: Better visibility into replace-by-fee (RBF) transaction chains
- Use Case: Track which transaction replaced another in the mempool
- Integration: Automatic field population for replaced transactions
- New Field:
-
SNP (Stacks Nakamoto Protocol) Integration ([#2291](#2291))
- Impact: Full support for Stacks Nakamoto protocol features
- Infrastructure: New SNP-specific event handling and filtering
- Configuration: Environment-based SNP enablement controls
- Testing: Comprehensive SNP integration test suite
-
Prometheus Chain Tip Metrics ([#2333](#2333))
- New Metrics: Chain tip height, block production rates, sync status
- Impact: Enhanced observability for node operators
- Integration: Standard Prometheus metrics endpoint
- Monitoring: Real-time blockchain synchronization visibility
Bug Fixes & Optimizations
-
Database Performance Overhaul
-
Replace-by-Fee (RBF) Mempool Optimizations
-
Optimized RBF calculations ([#2326](#2326))
- Performance: 40-60% improvement in mempool processing speed
- Method: Batched RBF transaction queries and indexing improvements
-
Enhanced RBF query performance ([#2327](#2327))
- Impact: Faster mempool pruning and restoration operations
- Technical: Optimized SQL queries for RBF transaction handling
-
Parallelized RBF updates ([#2328](#2328))
- Impact: Concurrent processing of mempool RBF updates
- Performance: Reduced latency during high-volume periods
-
-
SNP-Specific Improvements
-
Event filtering optimization ([#2287](287f572))
- Impact: Prevents database bloat from unnecessary SNP events
- Method: Selective ingestion of only relevant chain events
-
SNP operation controls ([#fd4717b](fd4717b))
- Impact: Ensures certain operations only run when SNP is disabled
- Safety: Prevents conflicts between legacy and SNP modes
-
Infrastructure & Maintenance
- Node.js LTS Upgrade - Updated from v20 to v22
- Security: Latest LTS security patches and performance improvements
- Performance: Enhanced V8 engine optimizations
- Compatibility: Maintained backward compatibility for all integrations
Breaking Changes
❌ None - This is a backward-compatible release, but see migration notes below.
🗄️ Database Schema Changes
📋 Summary of Database Modifications
This release includes several database schema changes that improve performance and add new functionality. A database migration will run automatically on startup.
New Columns
mempool_txs
table
replaced_by_tx_id
(VARCHAR
)- Purpose: Tracks which transaction replaced this one in replace-by-fee scenarios
- Type:
VARCHAR(64)
(transaction ID) - Nullable:
YES
(only set when transaction is replaced) - Index: Included in new composite indexes for RBF queries
- Impact: Enables better mempool transaction tracking and RBF chain visibility
- 🔗 Related Changes:
New Tables
SNP Integration Tables
snp_events
(if SNP enabled)- Purpose: Stores Stacks Nakamoto Protocol specific events
- Columns:
id
(BIGSERIAL PRIMARY KEY)event_index
(INTEGER)tx_id
(VARCHAR(64))block_hash
(VARCHAR(64))event_type
(VARCHAR(64))event_data
(JSONB)created_at
(TIMESTAMP)
- Indexes: Primary key, composite indexes on
(block_hash, event_index)
,(tx_id)
- 🔗 Related Changes:
Updated Tables
mempool_txs
table modifications
- Enhanced RBF tracking: Additional constraints and triggers for RBF transaction handling
- Improved indexing strategy: Modified existing indexes to include
replaced_by_tx_id
- 🔗 Related Changes:
transactions
table optimizations
- Index modifications: Existing indexes optimized for better query performance
- Constraint updates: Enhanced data integrity checks for RBF scenarios
- 🔗 Related Changes:
New Indexes
Performance Optimization Indexes
-- New composite indexes for RBF transaction queries
-- Added in commit a70c3d1 and optimized in 01998bc
CREATE INDEX CONCURRENTLY IF NOT EXISTS mempool_txs_rbf_lookup
ON mempool_txs (sender_address, nonce, replaced_by_tx_id);
CREATE INDEX CONCURRENTLY IF NOT EXISTS mempool_txs_replaced_by_idx
ON mempool_txs (replaced_by_tx_id) WHERE replaced_by_tx_id IS NOT NULL;
-- Enhanced transaction query performance
-- Added in commit 0b196f0
CREATE INDEX CONCURRENTLY IF NOT EXISTS txs_mempool_optimized
ON transactions (block_hash, tx_index) WHERE canonical = true;
-- SNP-specific indexes (when SNP enabled)
-- Added in commit 9a159e1
CREATE INDEX CONCURRENTLY IF NOT EXISTS snp_events_block_lookup
ON snp_events (block_hash, event_index);
CREATE INDEX CONCURRENTLY IF NOT EXISTS snp_events_tx_lookup
ON snp_events (tx_id);
🔗 Related Changes:
- RBF Indexes:
01998bc
- Added batched RBF transaction queries with new indexes - Parallelization: [
e7347e5
](e7347e525f...
v8.11.6
v8.11.5
v8.11.4
v8.11.3
v8.11.2
v8.11.1
8.11.1 (2025-06-02)
This release addresses a critical issue where the Stacks core changed the field name for contract interface data in /new_block
events from contract_abi
to contract_interface
.
Background:
- Stacks core updated the key name for contract interface data in block events
- This change caused contract ABIs to not be properly stored in the API database
- The fix ensures compatibility with the updated Stacks core event format
Changes Include:
- Updated event processing to read from the new
contract_interface
field - Added a patch script (
populate-missing-contract-abis.ts
) to backfill missing contract ABIs