Releases: celestiaorg/celestia-node
v0.15.0-rc0
What's Changed
- ci: remove golangci-lint action warning by @ramin in #3500
- feat(metrics): add common labels to prometheus by @walldiss in #3508
- ci: update celestia shared dep to remove node 16 warning by @ramin in #3507
- chore(deps): Bump codecov/codecov-action from 4.4.1 to 4.5.0 by @dependabot in #3504
- chore(deps): Bump github.com/spf13/cobra from 1.8.0 to 1.8.1 by @dependabot in #3501
- feat(docgen): improve examples by @distractedm1nd in #3479
- refactor: use libhead alias consistently by @cristaloleg in #3519
- feat: arabica bootstrappers now dnsaddr multiaddr by @smuu in #3525
- chore(deps): upgrade to celestia-app v1.12.0 by @rootulp in #3527
- chore(deps): Bump github.com/hashicorp/go-getter from 1.7.4 to 1.7.5 by @dependabot in #3528
- fix(nodebuilder/core): non default values from config.toml are written over by flag defaults in specific circumstances by @ramin in #3526
- chore(deps): Bump alpine from 3.20.0 to 3.20.1 by @dependabot in #3521
- fix(nodebuilder/p2p): remove prepended v against detected semantic version by @ramin in #3547
- chore: bump cristalhq/jwt to v5 by @cristaloleg in #3476
- fix(cmd): fix namespace representation in cmd output by @vgonkivs in #3537
- chore(ci): formatting / whitespace by @ramin in #3495
- misc(blob/service)!: return empty values in case blobs were not found by @vgonkivs in #3223
- feat!(state/core_access): add TxConfig by @vgonkivs in #3349
- improvement(blob/cmd): remove base64 representation by @vgonkivs in #3553
- refactor(state/gateway)!: remove SubmitTx endpoint from RPC and Gateway by @distractedm1nd in #3391
- docs(blob): update godoc comments to better match what Get and GetProof actually do by @ramin in #3530
Full Changelog: v0.14.0...v0.15.0-rc0
v0.14.0
v0.14.0
Pruning
This release introduces block (or sample) pruning via the --experimental-pruning
flag. When --experimental-pruning is enabled, light nodes will prune samples, while full and bridge nodes will prune blocks older than 30 days ( the availability window defined in https://github.com/celestiaorg/CIPs/blob/main/cips/cip-4.md).
Full and bridge nodes that run with pruning enabled will support serving samples and blocks within the availability window, and will continue to advertise on the full
topic, whereas full and bridge nodes that upgrade to this version and do not enable pruning will retain all blocks and begin to advertise themselves on the new archival
topic, signalling to the network that they are an "archival" node.
--experimental-pruning
is enabled, it is not possible to go back to running as an "archival" node without resyncing from scratch or restoring from a snapshot.
As a part of the pruning feature, it is now default behaviour for light, full and bridge nodes to additionally discover "archival" nodes in the network in order to maintain the ability to request blobs and blocks older than the availability window.
Discovery metrics
There are now two sets of discovery processes running simultaneously: one for archival
peers and one for full
. Discovery metrics have been broken to reflect that change, so now, full
discovery-related metrics will have full_
prepended to the string.
E.g. discovery_amount_of_peers
is now full_discovery_amount_of_peers
for full
peers and archival_discovery_amount_of_peers
for archival
peers.
State access via gRPC only
Via #3359, it is now possible to perform all state-related queries over a gRPC connection to a core consensus node only. This means that it is no longer required to pass a --core.rpc.port
when configuring celestia-node for state access. Instead, only the gRPC port is necessary (which is still configured to default to 9090).
This does not yet apply for bridge nodes!!! Bridge nodes still require the same core configuration setup as before (RPC port for block sync and gRPC port for state access).
What's Changed
BREAKING
- fix!(share/byzantine): use any available axis for befp nmt proofs construction by @walldiss in #3306
- refactoring(cmd/state)!: remove submit-tx from cli by @vgonkivs in #3348
- feat(p2p/discovery)!: Implement
archival
discovery + syncing of historic blocks and blobs by @renaynay in #3188 - fix(share/getters)!: return nil shares from all getters in non-inclusion case by @walldiss in #3454
FEATURES
- feat(pruner): Implement
full
andbridge
node pruning by @renaynay in #3150 - feat(core): Bridge node short-circuits storing a historical EDS if pruning is enabled by @renaynay in #3283
- feat(state): enable fee granting by @vgonkivs in #3304
- feat(share/eds): Store nmt nodes on failed reconstruction by @walldiss in #3305
- feat(cmd/rpc): Automatically detect running node for RPC requests by @mastergaurang94 in #3246
- refactor(state): Remove need for core RPC conn and rely only on gRPC for state reads by @renaynay in #3359
- feat(pruner/light): implement light pruning by @Wondertan in #3388
- feat(share/pruner): disallow converting pruned node to archival by @walldiss in #3467
BUG FIXES
- fix(state/coreAccessor): fix txResponse by @vgonkivs in #3336
- fix(pruner/light): Fix light availability window provided by @renaynay in #3370
- fix(share/pruner) enable Light node pruner service by @walldiss in #3455
- fix(nodebuilder/share): Pass
light.Window
to shrex getter construction regardless of node type / pruning mode by @renaynay in #3466
MISCELLANEOUS
- feat(ci): call reusable workflow to track the release deployments and notify devops by @MSevey in #3291
- chore(deps): bump .github version for release tracking epic by @MSevey in #3312
- deps: bump go-header and go-fraud by @Wondertan in #3326
- deps: bump celestia-app by @renaynay in #3316
- chore(linters): add errorlint by @walldiss in #3334
- chore(linter): add 6 more linteres by @walldiss in #3333
- chore(makefile): comment for install-global to clarify linux support only by @mastergaurang94 in #3340
- chore: bump to app v1.9.0 by @evan-forbes in #3366
- chore(state/core_accessor)!: remove query cli by @vgonkivs in #3307
- chore: add dupword CI && remove repetitive words globally by @goofylfg in #3360
- feat(cmd): match upcoming node version with API by @vgonkivs in #3318
- refactor: changed user UserAgent name by @ramin in #3379
- chore: fix function names in comment by @studystill in #3337
- refactor: add missing stop ticker by @hoank101 in #3389
- feat(tracer): Add shutdown hook for tracer by @dougEfresh in #1524
- chore(deps): Bump github.com/hashicorp/go-retryablehttp from 0.7.5 to 0.7.6 by @dependabot in #3395
- chore(deps): Bump golang.org/x/text from 0.14.0 to 0.15.0 by @dependabot in #3398
- chore(deps): Bump golangci/golangci-lint-action from 5.3.0 to 6.0.1 by @dependabot in #3400
- chore(deps): Bump celestiaorg/.github from 0.2.8 to 0.3.1 by @dependabot in #3124
- chore(nodebuilder/das | pruner): Privatise
samplingWindow
in DAS params, add Duration method toAvailabilityWindow
by @renaynay in #3378 - ci: generate and store openrpc.json with the tagged release artifacts by @ramin in #3350
- add @cristaloleg to .github/CODEOWNERS by @ramin in #3418
- chore(deps): Bump codecov/codecov-action from 4.3.1 to 4.4.1 by @dependabot in #3420
- doc: improve godoc for the blob service by @vgonkivs in #3422
- chore(deps): Bump actions/checkout from 3 to 4 by @dependabot in #3436
- chore(deps): Bump celestiaorg/.github from 0.3.2 to 0.4.1 by @dependabot in #3412
- chore(deps): Bump github.com/filecoin-project/go-jsonrpc from 0.3.1 to 0.4.0 by @dependabot in #3439
- chore(logs): lower bitswap-server verbosity by @Wondertan in #3434
- chore(deps): Bump github.com/celestiaorg/nmt from v0.20.0 to v0.21.0 by @walldiss in #3443
- chore(deps): Bump google.golang.org/protobuf from 1.32.0 to 1.34.1 by @dependabot in #3374
- chore(deps): Bump golang.org/x/crypto from 0.21.0 to 0.23.0 by @dependabot in #3399
- refactor(core): remove unused test grpc server by @walldiss in #3445
- fix(cmd): Add pruner flags to LN as well by @renaynay in #3449
- chore(deps): Bump github.com/multiformats/go-multiaddr from 0.12.3 to 0.12.4 by @dependabot in #3414
- chore(deps): Bump github.com/hashicorp/go-retryablehttp from 0.7.6 to 0.7.7 by @dependabot in #3460
- chore(deps): Bump celestiaorg/.github from 0.4.1 to 0.4.2 by @dependabot in #3456
- chore(deps): Bump alpine from 3.19.1 to 3.20.0 by @dependabot in #3435
- chore(deps): Bump go.uber.org/fx from 1.21.1 to 1.22.0 by @dependabot in #3458
- chore: bump libp2p, go-header and app by @Wondertan in #3446
- chore(share/p2p/discovery): add log for start by @renaynay in #3471
- chore(swamp): remove always failing assert by @cristaloleg in #3463
- refactor(share): use atomic.Int64 and fix 'racy' bugs by @crist...
v0.14.0-rc2
What's Changed
- refactor(share): use atomic.Int64 and fix 'racy' bugs by @cristaloleg in #3478
- chore(deps): upgrade golangci-lint in ci to 1.59 by @walldiss in #3483
- chore(deps): Bump golang.org/x/text from 0.15.0 to 0.16.0 by @dependabot in #3489
- chore(deps): Bump golang.org/x/crypto from 0.23.0 to 0.24.0 by @dependabot in #3490
- chore(das): move jobType declaration closer to consts by @cristaloleg in #3477
- chore(share/p2p/discovery): Change success case logging for advertisement to INFO level by @renaynay in #3492
Full Changelog: v0.14.0-rc1...v0.14.0-rc2
v0.13.7
A patch release containing a fix for account sequence errors in some blob submission scenarios.
Original commit that was cherry-picked for this release: #3298
Full Changelog: v0.13.6...v0.13.7
v0.14.0-rc1
What's Changed
- chore: Update Tendermint Telemetry Broken Link by @Erlangshen219 in #3338
- fix(ci): update from published to released trigger for deployment epic by @MSevey in #3351
- chore(deps): chore: bump to rsmt2d to v0.13.1 by @walldiss in #3319
- chore(deps): Bump golangci/golangci-lint-action from 4.0.0 to 5.1.0 by @dependabot in #3353
- chore: bump go-libp2p-pubsub by @Wondertan in #3372
- chore(deps): Bump golang.org/x/net from 0.21.0 to 0.23.0 by @dependabot in #3321
- chore(deps): Bump go.uber.org/fx from 1.20.1 to 1.21.1 by @dependabot in #3342
- chore(deps): Bump the otel group with 8 updates by @dependabot in #3343
- chore(deps): Bump codecov/codecov-action from 4.1.0 to 4.3.1 by @dependabot in #3354
- chore(deps): Bump peaceiris/actions-mdbook from 1 to 2 by @dependabot in #3308
- chore(deps): Bump peaceiris/actions-gh-pages from 3 to 4 by @dependabot in #3310
- fix(pruner/light): Fix light availability window provided by @renaynay in #3370
- chore(deps): Bump golangci/golangci-lint-action from 5.1.0 to 5.3.0 by @dependabot in #3369
- chore(deps): Bump github.com/hashicorp/go-getter from 1.7.0 to 1.7.4 by @dependabot in #3341
- chore(makefile): comment for install-global to clarify linux support only by @mastergaurang94 in #3340
- chore: bump to app v1.9.0 by @evan-forbes in #3366
- refactor(state): Remove need for core RPC conn and rely only on gRPC for state reads by @renaynay in #3359
- chore: add dupword CI && remove repetitive words globally by @goofylfg in #3360
- refactoring(cmd/state): remove submit-tx from cli by @vgonkivs in #3348
- feat(cmd): match upcoming node version with API by @vgonkivs in #3318
- refactor: changed user UserAgent name by @ramin in #3379
- chore: fix function names in comment by @studystill in #3337
- refactor: add missing stop ticker by @hoank101 in #3389
- feat(tracer): Add shutdown hook for tracer by @dougEfresh in #1524
- chore(deps): Bump github.com/hashicorp/go-retryablehttp from 0.7.5 to 0.7.6 by @dependabot in #3395
- chore(deps): Bump golang.org/x/text from 0.14.0 to 0.15.0 by @dependabot in #3398
- chore(deps): Bump golangci/golangci-lint-action from 5.3.0 to 6.0.1 by @dependabot in #3400
- fix(das): Clarify logs for historic headers that are skipped by @renaynay in #3380
- chore(deps): Bump celestiaorg/.github from 0.2.8 to 0.3.1 by @dependabot in #3124
- chore(nodebuilder/das | pruner): Privatise
samplingWindow
in DAS params, add Duration method toAvailabilityWindow
by @renaynay in #3378 - fix(blob/service): fix handling of the padding shares by @vgonkivs in #3404
- ci: generate and store openrpc.json with the tagged release artifacts by @ramin in #3350
- add @cristaloleg to .github/CODEOWNERS by @ramin in #3418
- chore(deps): Bump codecov/codecov-action from 4.3.1 to 4.4.1 by @dependabot in #3420
- doc: improve godoc for the blob service by @vgonkivs in #3422
- chore(deps): Bump actions/checkout from 3 to 4 by @dependabot in #3436
- chore(deps): Bump celestiaorg/.github from 0.3.2 to 0.4.1 by @dependabot in #3412
- chore(deps): Bump github.com/filecoin-project/go-jsonrpc from 0.3.1 to 0.4.0 by @dependabot in #3439
- chore(logs): lower bitswap-server verbosity by @Wondertan in #3434
- chore(deps): Bump github.com/celestiaorg/nmt from v0.20.0 to v0.21.0 by @walldiss in #3443
- chore(deps): Bump google.golang.org/protobuf from 1.32.0 to 1.34.1 by @dependabot in #3374
- chore(deps): Bump golang.org/x/crypto from 0.21.0 to 0.23.0 by @dependabot in #3399
- feat(p2p/discovery)!: Implement
archival
discovery + syncing of historic blocks and blobs by @renaynay in #3188 - feat(pruner/light): implement light pruning by @Wondertan in #3388
- refactor(core): remove unused test grpc server by @walldiss in #3445
- fix(cmd): Add pruner flags to LN as well by @renaynay in #3449
- chore(deps): Bump github.com/multiformats/go-multiaddr from 0.12.3 to 0.12.4 by @dependabot in #3414
- fix(share/getters)!: return nil shares from all getters in non-inclusion case by @walldiss in #3454
- chore(deps): Bump github.com/hashicorp/go-retryablehttp from 0.7.6 to 0.7.7 by @dependabot in #3460
- chore(deps): Bump celestiaorg/.github from 0.4.1 to 0.4.2 by @dependabot in #3456
- chore(deps): Bump alpine from 3.19.1 to 3.20.0 by @dependabot in #3435
- chore(deps): Bump go.uber.org/fx from 1.21.1 to 1.22.0 by @dependabot in #3458
- fix(share/pruner) enable Light node pruner service by @walldiss in #3455
- chore: bump libp2p, go-header and app by @Wondertan in #3446
- feat(share/pruner): disallow converting pruned node to archival by @walldiss in #3467
- chore(share/p2p/discovery): add log for start by @renaynay in #3471
- chore(swamp): remove always failing assert by @cristaloleg in #3463
- fix(nodebuilder/share): Pass
light.Window
to shrex getter construction regardless of node type / pruning mode by @renaynay in #3466
New Contributors
- @Erlangshen219 made their first contribution in #3338
- @goofylfg made their first contribution in #3360
- @studystill made their first contribution in #3337
- @hoank101 made their first contribution in #3389
- @cristaloleg made their first contribution in #3463
Full Changelog: v0.14.0-rc0...v0.14.0-rc1
v0.13.6
v0.13.5
A patch release focused on dependancy bumps and chore updates.
- 0fbab7d8 chore(fmt/linters): Add gofumpt formatter and linter (#3331) by @walldiss
- a1a5f3c0 chore(fmt/linters): enable nilerr, nilnil, nolintlint and fix related issues (#3332) by @walldiss
- d525c235 chore(linters): add errorlint (#3334) by @walldiss
- 8925abe1 chore(linter): add 6 more linteres (#3333) by @walldiss
- 6219c48e chore(deps): chore: bump to rsmt2d to v0.13.1 (#3319) by @walldiss
- ef2abebf chore: Update Tendermint Telemetry Broken Link (#3338) by @Erlangshen219
- 17448701 chore: bump go-libp2p-pubsub (#3372) by @Wondertan
- c0698c28 refactor(share/sha-256): Consolidate SHA-256 Hash Function Usage (#3330) by @kien6034
- 29cdd843 fix(ci): update from published to released trigger for deployment epic (#3351) by @MSevey
- b22e51e1 chore(deps): Bump golangci/golangci-lint-action from 4.0.0 to 5.1.0 (#3353) by @dependabot
- fe218322 chore(deps): Bump golang.org/x/net from 0.21.0 to 0.23.0 (#3321) by @dependabot
- ea62ce13 chore(deps): Bump go.uber.org/fx from 1.20.1 to 1.21.1 (#3342) by @dependabot
- c2b20ec9 chore(deps): Bump the otel group with 8 updates (#3343) by @dependabot
- 0e5c3ff3 chore(deps): Bump codecov/codecov-action from 4.1.0 to 4.3.1 (#3354) by @dependabot
- 46092a79 chore(deps): Bump peaceiris/actions-mdbook from 1 to 2 (#3308) by @dependabot
- 875ab8b3 chore(deps): Bump peaceiris/actions-gh-pages from 3 to 4 (#3310) by @dependabot
- 081da174 chore(deps): Bump golangci/golangci-lint-action from 5.1.0 to 5.3.0 (#3369) by @dependabot
Full Changelog: v0.13.4...v0.13.5
v0.14.0-rc0
This RC notably introduces:
Note, this RC contains a break, listed below, that breaks proto for BEFPs. This break is not invasive and would not impact running this RC against current live networks.
What's Changed
BREAKING
- fix!(share/byzantine): use any available axis for befp nmt proofs construction by @walldiss in #3306
Other
- feat(pruner): Implement
full
andbridge
node pruning by @renaynay in #3150 - deps: Bump libp2p dependencies by @renaynay in #3289
- deps: bump go-header by @renaynay in #3290
- fix(nodebuilder/share/cmd): Fix parsing of uint for height in
share
rpc CLI commands by @renaynay in #3294 - feat(ci): call reusable workflow to track the release deployments and notify devops by @MSevey in #3291
- fix(p2p/discovery): Unregister metrics callback on close by @renaynay in #3280
- feat(core): Bridge node short-circuits storing a historical EDS if pruning is enabled by @renaynay in #3283
- fix(nodebuilder): return fx error if theres an error getting keystore or constructing signer by @renaynay in #3297
- chore(state/core_accessor): remove query cli by @vgonkivs in #3307
- feat(state): enable fee granting by @vgonkivs in #3304
- chore(deps): bump .github version for release tracking epic by @MSevey in #3312
- feat(share/eds): Store nmt nodes on failed reconstruction by @walldiss in #3305
- feat(cmd/rpc): Automatically detect running node for RPC requests by @mastergaurang94 in #3246
- fix(core): Unsubscribe from new block event on Stop in listener by @renaynay in #3315
- feat(state): Integrate new Signer for concurrent tx submission by @cmwaters in #3298
- feat(share/p2p/shrex): add recovery middleware to shrex-nd and shrex-eds servers by @walldiss in #3328
- feat(share/p2p/shrexsub): add recovery to shrexSub by @walldiss in #3327
- deps: bump go-header and go-fraud by @Wondertan in #3326
- deps: bump celestia-app by @renaynay in #3316
- fix(metrics): Unregister callback on stop for several metrics implementations by @renaynay in #3281
- refactor(share/sha-256): Consolidate SHA-256 Hash Function Usage by @kien6034 in #3330
- fix(state/coreAccessor): fix txResponse by @vgonkivs in #3336
- chore(fmt/linters): Add gofumpt formatter and linter by @walldiss in #3331
- chore(fmt/linters): enable nilerr, nilnil, nolintlint and fix related issues by @walldiss in #3332
- chore(linters): add errorlint by @walldiss in #3334
- chore(linter): add 6 more linteres by @walldiss in #3333
New Contributors
- @mastergaurang94 made their first contribution in #3246
- @kien6034 made their first contribution in #3330
Full Changelog: v0.13.4...v0.14.0-rc0
v0.13.4
A patch release containing various fixes.
Fixes
- ceae8cfb fix(nodebuilder/share/cmd): Fix parsing of uint for height in
share
rpc CLI commands (#3294) - 913e9df5 fix(nodebuilder): return fx error if theres an error getting keystore or constructing signer (#3297)
- 2dbf7586 fix(core): Unsubscribe from new block event on Stop in listener (#3315)
- ba50a25f fix(p2p/discovery): Unregister metrics callback on close (#3280)
- 13ac02fe fix(metrics): Unregister callback on stop for several metrics implementations (#3281)
- c48dd049 feat(share/p2p/shrex): add recovery middleware to shrex-nd and shrex-eds servers (#3328)
- fe94d62b feat(share/p2p/shrexsub): add recovery to shrexSub (#3327)
Chores
- 08d118ef deps: bump go-header and go-fraud (#3326)
- f30b5fba deps: bump celestia-app (#3316)
- 5f94b059 feat(ci): call reusable workflow to track the release deployments and notify devops (#3291)
- 739cbc7d chore(state/core_accessor): remove query cli (#3307)
Full Changelog: v0.13.3...v0.13.4