Releases: stellar/stellar-core
Releases · stellar/stellar-core
Release list
v28.0.0
Protocol 28
This release bumps the protocol to version 28, which includes CAP-0083, CAP-0085, and CAP-0086.
Stability improvements
- Add GHA to invoke RPC integration tests on commits to master by @Shaptic in #5161
- Parallelize in-memory state update with bucket list operations. by @dmkozh in #5284
- Change flood de-duplication to be by NodeID (not address) by @drebelsky in #5341
- Update stellar-quorum-analyzer to master and handle NoQuorum status by @jayz22 in #5342
- Fix unified build by @graydon in #5345
- Fix race condition in rebuildInMemorySorobanStateForTesting by @SirTyson in #5351
- Bump medida and batch by @graydon in #5338
- Fix replay over empty-tx-set ledgers by @bboston7 in #5355
- Don't take a global lock per hash in ShortHash. by @dmkozh in #5360
- Make log level checks lock-free via permanent loggers. by @dmkozh in #5349
- Switch SHA-256 implementation from libsodium to Rust. by @dmkozh in #5364
- Add a new CI builder that builds fuzz targets by @graydon in #5352
- Switch Rust global allocator to tcmalloc. by @dmkozh in #5344
- Don't disable ASLR when re-running tests under LLDB, to work in CI by @graydon in #5366
- Properly skip publishing if checkpoints are present, but publishing is disabled by @marta-lokhova in #5378
- Improve the CPU pinning logic for BatchExecutor. by @dmkozh in #5390
- tighten up peer query-process limit by @graydon in #5381
- Update config docs by @drebelsky in #5265
- 🐛 Link readme to updated repo by @JFWooten4 in #4757
- Lower constant in acceptance test, given recent tighter processing limit. by @graydon in #5394
- Bring back the Rust XDR parsing check. by @dmkozh in #5396
- Speed up initial in-memory Soroban state population by @drebelsky in #5252
- Update testnet settings by @sisuresh in #5391
- Run Horizon integration tests with Core compiled from source by @Shaptic in #5340
- loosen process limit by @graydon in #5406
New features
- Add --enable-fastdev-unsafe-for-production, subsuming unified buid by @graydon in #5298
- Add metrics for tracking tx e2e latency by @drebelsky in #5356
- Finish implementing byte-based flow control by @graydon in #5362
- Introduce a thread pool for batch execution of parallel CPU-bound tasks. by @dmkozh in #5354
- Record e2e measurement through tx set instead of meta by @drebelsky in #5359
- Allow private addresses for testing by @SirTyson in #5334
Breaking changes
- Add p28 host with CAP-85 support by @dmkozh in #5358
- Fix kStructurallyValidValue validation downgrade after reboot by @bboston7 in #5348
- Switch trigger timer on p28 boundary by @SirTyson in #5350
- Extend overlay ed25519 signature verification budget to protocol by @bboston7 in #5393
- CAP-83: Harden previousLedgerHash check in combineCandidates by @bboston7 in #5380
- Ungate CAP-0083 and CAP-0085, bump to protocol 28 by @sisuresh in #5397
- Bump current and min overlay versions by @marta-lokhova in #5377
Full Changelog: v27.1.0...v28.0.0
v27.1.0
What's Changed
- Delete .github/workflows/claude-review.yml by @leighmcculloch in #5314
- apply-load: use the operator-configured NETWORK_PASSPHRASE by @tamirms in #5319
- Bump min overlay version to v26 by @marta-lokhova in #5320
- Split test-lcm data into current/next tiers by @sisuresh in #5313
- Cleanup historical ledger query by @SirTyson in #5221
- Parallelize InMemoryIndex construction with bucket put loop. by @dmkozh in #5288
- Add random memo to apply-load transactions by @Shaptic in #5322
- Bucket query asserts and perf fix by @SirTyson in #5323
- Initialize Bucket directory after the database by @marta-lokhova in #5325
- Add new tests to purge scp slots by @marta-lokhova in #5324
- Cleanup herder repeated out of sync flow and add test by @marta-lokhova in #5327
- Experimental triggerNextLedger timer Change by @SirTyson in #4865
- fix query server assert when catching up by @SirTyson in #5329
Full Changelog: v27.0.0...v27.1.0
v27.0.0
Protocol 27
This release bumps the protocol to version 27, which includes CAP-0071: Authentication delegation and address-bound Soroban credentials.
- Adapt to CAP-0071 xdr by @sisuresh in #5233
- Add Core support for CAP-71. by @dmkozh in #5272
- Bump to p27 by @sisuresh in #5305
New features
- Allow secrets to be provided from a file or environment variable by @sisuresh in #5177
- Allow DATABASE config in file by @sisuresh in #5219
- Enable downloading of transaction sets in parallel with early SCP stages by @bboston7 in #5209
- Module cache rebuild logic by @graydon in #5175
- Skip building invariant delta when no invariants are enabled. by @dmkozh in #5289
- Relax invariants in recordStorageChanges for optimization. by @dmkozh in #5290
- Sort entry pointers in convertToBucketEntry. by @dmkozh in #5291
- Add option to generate LCM from tests by @sisuresh in #5178
- Make LCM capture deterministic and add shorten file names by @sisuresh in #5203
- Enable diagnostics when using --capture-lcm by @sisuresh in #5251
- Add DISABLE_TX_META_FOR_TESTING config flag. by @dmkozh in #5285
- Allow overriding block time bounds for testing by @marta-lokhova in #5239
- Add ledger age histrogram to support "min block time" test by @marta-lokhova in #5237
- Add a script for converting frozen ledger key settings to hex. by @dmkozh in #5246
- Misc apply load improvements by @dmkozh in #5196
- Add a custom token transfer benchmark mode for apply load. by @dmkozh in #5200
- Generate classic transactions in every apply load mode. by @dmkozh in #5201
- Add Soroswap benchmark mode for apply load. by @dmkozh in #5204
- Simplify apply load limits mode. by @dmkozh in #5249
- Misc updates for apply load matrix script. by @dmkozh in #5232
- Add a script for running apply-load on a fixed AWS instance. by @dmkozh in #5256
- Add instance parameter to apply_load_aws script. by @dmkozh in #5281
- Simulate apply configs now support parallel apply by @marta-lokhova in #5255
- Simulate sleep in apply before posting back to main by @marta-lokhova in #5297
- overlay-only loadgen mode updates: checkValid cleanup and new tx profiles by @marta-lokhova in #5243
- Fix TPS/TPL conversion for max-sac-tps. by @dmkozh in #5259
Stability improvements
- Fix race on bucket random evicion cache by @SirTyson in #5189
- Fix race in persist publish queue by @SirTyson in #5240
- Harden binary fuse filter by @SirTyson in #5202
- Bff fix by @SirTyson in #5294
- Fix flakey binary fuse test by @SirTyson in #5302
- Herder cleanup and hardening by @marta-lokhova in #5229
- Updates to upgrade flow by @marta-lokhova in #5199
- Overlay-only mode fixes to prevent occasional banned transaction drops by @marta-lokhova in #5257
- Complete const ledger state refactor by @SirTyson in #5141
- Bucket snapshot state refactor by @SirTyson in #5212
- Cleanup publish path by @SirTyson in #5213
- Add randomized testing for snapshot concurrency by @SirTyson in #5218
- Add a randomized test for 'frozen' DEX offers. by @dmkozh in #5174
- Bug 5027 fuzz unification by @graydon in #5121
- mop up some mess from the unified fuzzing change by @graydon in #5254
- Fix an over-eager determinizer hack breaking overlay fuzzer by @graydon in #5282
- Fix incorrect-reset bug in tx fuzz target (broken with bucketlistDB) by @graydon in #5292
- Fix build issue with SharedMutex by @SirTyson in #5211
- Fix issue with release build by @SirTyson in #5228
- Bump ethnum to placate nightly, for unified build, for oss-fuzz by @graydon in #5287
- Bump rust version to latest stable 1.95 by @anupsdf in #5248
- Revert "Run soroban on large stacks" by @dmkozh in #5253
- Remove C-style casts by @drebelsky in #5186
- Small fixes by @drebelsky in #5122
- Cleanups by @marta-lokhova in #5234
- Add logging for future debugging by @sisuresh in #5206
- Minor test fix by @marta-lokhova in #5197
- Regenerate test lcm for cap 71 by @sisuresh in #5293
- Support out-of-tree checks for make check by @drebelsky in #5225
- Change make-mks regexes to handle NOGIT=1 as in package-builder by @graydon in #5250
- Clean up version warning by @SirTyson in #5183
- Revert "Clean up version warning" by @sisuresh in #5310
- remove unused ChangeLog by @wpalmeri in #5210
- Add Claude review workflow by @leighmcculloch in #5258
- Add CodeQL config file to only run the scan for production code by @anupsdf in #5231
- Update security-protocol release notes with information on recent security releases by @anupsdf in #5245
- Update security and protocol release notes for v26.1.0 by @bboston7 in #5304
- v26.0.1 internal changes by @sisuresh in #5223
- v26.1.0-internal changes by @bboston7 in #5277
New Contributors
Full Changelog: v26.0.0...v27.0.0
v26.1.0
What's Changed
- Replace block on transactions using
ed25519SignedPayloadsignatures with an overall cap on signature verifications stellar-core will perform per transaction + Fix a crash during validation of malformed legacy transaction sets. by @bboston7 and @dmkozh in 427aa39
Full Changelog: v26.0.1...v26.1.0
v26.0.1
Stability Fixes
- Block transactions using ed25519SignedPayload signatures 9e5838e
- Full hash-of-hash for Overlay adverts to prevent hash prefix collision b261e19
- Fix an edge case bug by which validators containing any LOW quality validators in their quorum set could get stuck in an infinite loop 437988f
Full Changelog: v26.0.0...v26.0.1
v26.0.0
What's Changed
- Fix build.yml by @sisuresh in #5139
- Fix backtrace test on some linux versions by @SirTyson in #5142
- Cleanup DB dead code by @marta-lokhova in #5143
- Bump p26 env to fced8a1241038f7b944f5e75bffda7023d55ddbf by @sisuresh in #5145
- Add subsystem-summary skills by @graydon in #5132
- survey: use Radar instead of Stellarbeat by @Copilot in #5118
- Remove deprecated in-memory flags by @SirTyson in #5150
- Fix core for CAP-0073 by @sisuresh in #5153
- Harden multi-threaded http server by @SirTyson in #5149
- Make parallel apply compatible with RUN_STANDALONE by @SirTyson in #5146
- Cleanup how restoredKeys are tracked in LedgerTxn by @sisuresh in #5134
- Improve binary search for apply-load. by @dmkozh in #5123
- Refactored ParallelTxReturnVal by @SirTyson in #5108
- Bump p26 env by @sisuresh in #5158
- Add RFC 5531 Record Marking Standard references to XDRStream by @leighmcculloch in #5136
- Fix MSVC for C++20 by @graydon in #5159
- Remove maintenance by @drebelsky in #5157
- use secrets.SUBMODULE_TOKEN in build-private.yml by @graydon in #5140
- Optimize parallel TxSet building logic by @dmkozh in #5144
- Add INFO log messages tracking validator timeouts by @bboston7 in #5155
- Copilot improvements by @graydon in #5111
- Implement CAP-77 - ability to freeze ledger keys via network configuration by @dmkozh in #5162
- Update testnet settings with SLP-5 by @dmkozh in #5152
- History test fixes by @marta-lokhova in #5168
- Minor updates to fee tracking logic in tx sets. by @dmkozh in #5170
- Log state rebuild timings on startup by @marta-lokhova in #5179
- Bump to P26 by @sisuresh in #5173
- Run "git submodule sync" during autogen.sh by @graydon in #5172
- Address annotation gaps found by concurrency analysis by @marta-lokhova in #5151
- Add sccache and nsc-backed sccache support to build system. by @graydon in #5182
- Update devcontainer Dockerfile for additional use on namespace devboxes by @graydon in #5165
- Merge v25.2.0 and v25.2.1 into master by @marta-lokhova in #5190
- Merge v25.2.2 into master by @sisuresh in #5191
- Fix stale Soroban host rebuild invalidation. by @dmkozh in #5187
- Bump overlay version for p26 by @marta-lokhova in #5193
- Bump p26 env to 26.0.0 by @sisuresh in #5194
New Contributors
- @Copilot made their first contribution in #5118
Full Changelog: v25.2.2-external...v26.0.0
v25.2.2-external
What's Changed
Stability fixes
Update soroban-env submodule
Full Changelog: v25.2.1-external...v25.2.2-external
v25.2.1-external
What's Changed
- Stability fixes
- Update soroban-env submodule
Full Changelog: v25.2.0...v25.2.1-external