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