github celestiaorg/celestia-node v0.25.0-arabica

latest releases: v0.27.0-arabica, v0.26.0-arabica, v0.25.3...
pre-release29 days ago

Celestia Node v0.25 Release Notes

This release includes significant changes accumulated since May 2025 while waiting for the Celestia App v4/v5 mainnet update. Please review all breaking changes carefully before upgrading.

🚨 Breaking Changes

Configuration Breaking Changes

This release contains configuration breaking changes. Node operators must run the config update command before starting their node:

celestia <node_type> config-update --p2p.network  (or --node.store)

API & JSON Compatibility

  • fix(api/header)!: tendermint compatible json marshall #3928 by @zvolin (ported in #4428)
  • fix(share)!: tendermint compatible get range result json marshall by @zvolin in #3930
  • fix(blob)!: tendermint compatible commitment proof json marshall #3929 by @zvolin (ported in #4434)

Changes:

  • Integer values in JSON responses are now encoded as strings for Tendermint compatibility
  • Example: β€œheight”: 67374 becomes β€œheight”: β€œ67374”

Migration: Update JSON parsing logic to handle integers as strings in header, share range, and blob commitment proof endpoints.

Gateway Removal

Migration: If you were using the gateway, switch to direct API endpoints. Configure CORS policy using the new configurable CORS feature if needed.

Blobstream API Changes

  • refactor!(blobstream): change DataRootTupleRoot to HexBytes type alias by @vgonkivs in #4390
  • fix!(blobstream): change DataRootTupleInclusionProof type by @vgonkivs in #4430
  • fix!(blobstream): change GetDataRootTupleRoot return type by @vgonkivs in #4435
  • fix(open-rpc): add blobstream api docs by @vgonkivs in #4432

Changes:

  • DataRootTupleRoot: String encoding changed from base64 to hex bytes
  • DataRootTupleInclusionProof: Removed extra pointer (affects native Go API only, not JSON encoding)
  • GetDataRootTupleRoot: Removed extra pointer in returned value (affects native Go API only)
  • Blobstream API is now publicly documented

Migration:

  • Update code expecting base64 encoded roots to handle hex encoding
  • Go API users: Update code to handle direct values instead of pointers

GetRange efficiency improvements

  • feat!(share/shwap): implement get range request over shwap by @vgonkivs in #4156
  • refactor!(share/shwap): rework range namespace data by @vgonkivs in #4325

Changes:

  • GetRange requests now use efficient P2P protocol instead of downloading entire EDS
  • Significant performance improvement for partial data retrieval

Migration: Update clients using range requests to use the new shwap protocol implementation.

Data Pruning Now Default

  • refactor(nodebuilder/pruner)!: Remove --experimental-pruning by @renaynay in #4303
  • feat(share/availability)!: lower sampling window to 7 days by @renaynay in #4427

Changes:

  • Data pruning is now enabled by default (stores 30 days of data)
  • Sampling window reduced from 30 to 7 days
  • Archival nodes must use --archival flag to disable pruning

Migration:

  • Archival nodes: Add --archival flag to maintain full history
  • All other nodes: Remove --experimental-pruning flag (pruning is now automatic)
  • Adjust monitoring for the new 7-day sampling window

πŸ”„ Bootstrap Nodes

  • chore: removing the bootstrapper 3 and 4 from lunar by @tty47 in #4302
  • chore(bootstrapers): add 01node mainnet bootstrap node by @daemon2k3 in #4270

✨ New Features

API Enhancements

Testing Infrastructure

  • test: Tastora framework integration with test for blob module by @chatton in #4283
  • test: tastora remove fullnode and rely on bridge and light nodes only by @gupadhyaya in #4441
  • test: use tastora docker types instead of interface types by @gupadhyaya in #4421

πŸš€ Performance Improvements

  • perf(share/eds): parallelise row nd collection in NamespaceData by @renaynay in #4420
  • perf(api/da): request all blobs once in da.Get by @walldiss in #4431

πŸ”§ Bug Fixes

Test Fixes

  • chore(node/tests): fix and cleanup swamp tests by @shipit in #4381
  • chore(node/tests): fix a flaky nd test by @shipit in #4382

🧹 Chore & Maintenance

Go Version & Core Dependencies

Celestia App Updates (v3 β†’ v5)

Tastora Dependencies

Repo

New Contributors


Full Changelog: v0.24.1...v0.25-arabica

Don't miss a new celestia-node release

NewReleases is sending notifications on new releases.