Releases: hiero-ledger/hiero-consensus-node
Releases · hiero-ledger/hiero-consensus-node
v0.67.1
What's Changed
- chore: (0.67) Revert
HookDispatchauth by @tinker-michaelj in #21424 - chore: cherry-pick: improve BN communication logging (#20584) by @derektriley in #21486
- fix: 21374: Backport the fix for 19574 to release 0.67 by @artemananiev in #21393
- chore: cherry-pick return the old debug log message receiving acknowledgements (#21383) by @derektriley in #21526
- chore: cherry-pick Fix BN Comms tests in release candidate (#21537) by @derektriley in #21547
- fix: 21677: (0.67) Virtual pipeline should ignore detached copies by @artemananiev in #21678
- fix: 21696: (0.67) Temporary snapshots are not removed from data/saved/swirlds-tmp/ by @artemananiev in #21697
Full Changelog: v0.67.0...v0.67.1
v0.67.0
What's Changed
- ci: Update SDPT and SDLT workflow to only tag when build ID is present by @andrewb1269hg in #20984
- fix: Add
scheduling.maxExpirySecsToCheckPerUserTxnby @tinker-michaelj in #20987 - chore: Update incident_types by @rbarker-dev in #21055
- chore: replace input.ref with github.ref in single day controllers by @andrewb1269hg in #20988
- chore: Minor Version Roll to 0.67.0-SNAPSHOT by @andrewb1269hg in #21072
- feat: 17002: A concept of default MerkleDb instance seems redundant by @artemananiev in #19700
- chore: state validator rehash is too slow by @OlegMazurov in #21013
- chore(20698): Invert PlatformWiring and PlatformCoordinator relationship by @mxtartaglia-sl in #20758
- ci: Automatically generate the GH release by @rbarker-dev in #20970
- chore: Rework block node communication metrics by @timfn-hg in #20885
- test: Implement end to end test cases for file service operations in batch transaction by @Evdokia-Georgieva in #20980
- test: Yahcli upgrade flow regression test by @ibankov in #20953
- test: Implement end to end test cases for token operations with smart contracts in batch transaction by @Evdokia-Georgieva in #20724
- chore: Introduce MATS tag for token hapi tests by @Evdokia-Georgieva in #20923
- feat: 20102 Added validation for entityId uniqueness by @imalygin in #20978
- test: Implement end to end test cases for operations with tokens with custom fees in batch transaction by @Evdokia-Georgieva in #21051
- build: bump Gradle to 9.0.0 / plugins to 0.5.0 by @jjohannes in #21024
- ci(fix): remove inputs from calls to SDPT and SDLT by @andrewb1269hg in #21081
- chore: rename all instances of longevity-nlg-test to longevity-test by @andrewb1269hg in #20875
- chore(revert): Rework block node communication metrics by @rbarker-dev in #21087
- fix: Fix a flaky test
creationDoesNotHaveRequiredSigsby @Neeharika-Sompalli in #21095 - ci: Remove rootly incident creation and rely on alerts alone by @rbarker-dev in #21092
- ci(fix): Fix bug with control characters being interpreted in json output by @rbarker-dev in #21091
- test: 21073 use tps for crypto bench by @alex-kuzmin-hg in #21079
- chore: Wait for active method in Otter framework by @poulok in #20967
- ci(revert): Revert build: bump Gradle to 9.0.0 / plugins to 0.5.0 (#21024) by @rbarker-dev in #21118
- feat: 20744: VirtualMapState to work with arbitrary state IDs by @artemananiev in #20890
- chore: Use model NodeId in Otter framework by @poulok in #20972
- ci(fix): Solo version mismatch causing errors in regression panels by @rbarker-dev in #21139
- ci(fix): Add granularity to failure-modes in zxc-compile-application by @rbarker-dev in #21141
- test: 21029 split runners by 6 hours by @alex-kuzmin-hg in #21083
- test: to clean both Latitude clusters by @alex-kuzmin-hg in #21121
- feat: add test container support for block nodes by @petreze in #19493
- chore: Use block-node-protobuf-sources artifact for communication protocol by @aderevets in #20992
- feat: 20809 Implemented
apply-blocksin the state operator by @imalygin in #21082 - chore: Do not receive events when unhealthy in RPC sync by @abies in #21056
- fix: 20809 Fixing a compilation issue by @imalygin in #21151
- feat: Implement Hook dispatch logic in
CryptoandContractCreate/Update handlers by @Neeharika-Sompalli in #21053 - ci: update MATS to parallel runs by @andrewb1269hg in #21159
- chore: 21133: Max virtual map size config is redundant by @artemananiev in #21143
- ci: Update ref to use the correct tag instead of latest on main by @rbarker-dev in #21165
- test: fix of 21164 (to use abs diff value instead of rounded percentage) by @alex-kuzmin-hg in #21166
- ci: rename release workflows by @andrewb1269hg in #21149
- ci(fix): Fix typo in set rootly service name by @rbarker-dev in #21183
- refactor: Stop ignoring logs from background processes by @timo0 in #21124
- chore: Designate MATS test for hapi smart contracts by @mhess-swl in #20947
- fix: 21185: Loading pre 0.67 snapshots is broken, MerkleDb hash threshold is initialized incorrectly by @artemananiev in #21186
- ci: Disable block node regression panel in XTS by @rbarker-dev in #21190
- test: Enable
MATSfor smart contract MATS test by @mhess-swl in #21188 - docs: update continuous assertion javadocs by @netopyr in #21173
- ci(fix): Update status reporting for MATS unit testing by @rbarker-dev in #21193
- test: Split unit tests and Otter tests by @netopyr in #21177
- chore: finalize event creator module by @lpetrovic05 in #21104
- chore: add suite test for exceeding EndOfStream within a timeframe by @petreze in #21039
- chore: Support for incremental node addition by @netopyr in #21147
- ci: update release-action to step-security provided version by @andrewb1269hg in #21200
- test:
HRCTokenClaimTest.cannotClaimNftAirdropWhenSenderNotExistingseems to be flaky by @lukelee-sl in #21010 - build(deps): bump step-security/publish-unit-test-result-action from 2.20.1 to 2.20.4 by @dependabot[bot] in #20789
- chore: CN buffer restart integration tests by @AlexKehayov in #21049
- test: Improve network isolation and partition tests by @netopyr in #21174
- chore: improve startup and shutdown of BlockNodeConnectionManager and BlockBufferService by @timfn-hg in #21216
- test: yahcli schedule regression tests by @JivkoKelchev in #20924
- fix: compaction is not properly interrupted upon closing MerkleDbDataSource by @OlegMazurov in #21218
- ci: Add input
enable-promotionto XTS workflow by @rbarker-dev in #21222 - test: added DEBUG mode for all NLG tests by @alex-kuzmin-hg in #21230
- chore: Enable RPC sync by @abies in #21168
- chore: change signed state sentinel trigger by @lpetrovic05 in #21196
- chore: Implementation of GeoMeshTopology by @netopyr in #21128
- chore: add missing config setters by @netopyr in #21169
- chore: Update block streaming metrics by @timfn-hg in #21097
- fix: Verify uploaded file hash matches upgrade...
v0.66.0
What's Changed
- chore(ci): Update Promote Build Candidate to include SDLT trigger by @rbarker-dev in #20552
- feat: 20383 Added
exportcommand by @imalygin in #20528 - chore: fixed the script name for sdct workflow by @tomzhenghedera in #20562
- test: Implement end to end cross-service test cases for Token Service and Crypto Service by @Evdokia-Georgieva in #19853
- chore: Add methods to suppress multiple node results in Otter by @poulok in #20525
- chore: Make
NetworkandNodeinterface getter methods consistent by @poulok in #20538 - test: Verify schedule execution independent of batch failure by @mhess-swl in #20496
- feat: 20383
exportcommand improvement by @imalygin in #20573 - test: Implement end to end test cases for auto account creation in batch transaction by @Evdokia-Georgieva in #20462
- chore: fix version setter name by @poulok in #20572
- fix: Include gRPC cert hash in synthetic
Node{Create,Update}by @tinker-michaelj in #20539 - chore: fix bug in SDLT workflow to report test pass fail correctly by @andrewb1269hg in #20575
- feat: add new coin field to event by @lpetrovic05 in #20501
- test: Implement end to end cross-service test cases for Token Service and Consensus Service by @Evdokia-Georgieva in #20529
- chore: Change BlockBufferService backpressure logic based on BlockStreamConfig StreamMode by @derektriley in #20516
- feat: Added health-check command for pcli by @abies in #20581
- feat: Create GenerateStateTool for Otter by @timo0 in #20591
- chore: Reenable
TraceabilitySuite.assertSidecars()by @tinker-michaelj in #20605 - chore: Separate Otter container gRPC APIs by @poulok in #20600
- chore: update test report titles in Slack reporting by @andrewb1269hg in #20550
- feat: move pre handle after consensus by @lpetrovic05 in #20598
- feat:
STALEStatus Code in Transaction Receipts by @derektriley in #20595 - chore: Update
PrivilegesVerifierfor0.0.<alias>account ids by @tinker-michaelj in #20592 - feat: HIP-1215 Define the java function selectors needed in schedule contract translator by @gkozyryatskyy in #20437
- chore: upgrade to teleport version 18.1.4 by @andrewb1269hg in #20621
- refactor: Refactor Otter container file system structure by @timo0 in #20617
- fix: Flaky keyRotationDoesNotChangeEvmAddress HAPI test by @JivkoKelchev in #20614
- refactor: Logging in container should use
WORKING_DIRby @timo0 in #20623 - refactor: small improvements related to the VMM by @thenswan in #20618
- test: crypto service mono parity tests by @joshmarinacci in #20197
- feat: 20609 Implemented export for all the states by @imalygin in #20622
- chore: Run the node in a separate container in Otter by @poulok in #20626
- test: to run LNG in Debug mode #20514 by @alex-kuzmin-hg in #20568
- test: #20579 To migrate CronClean to CN, under small-schedule runner to increase Uploaders's resources for Cheetah by @alex-kuzmin-hg in #20580
- ci: add fail tags to single day test workflows by @andrewb1269hg in #20641
- feat: move transaction pool to execution by @lpetrovic05 in #20341
- refactor: move EntityIdFactory to app-spi by @thenswan in #20653
- chore: Cleanup legacy sys accounts by @tinker-michaelj in #20608
- refactor: 19307 Moved
MerkleStateRootand related classes to testFixtures by @imalygin in #20513 - fix: Fix the Otter Reconnect Test by @poulok in #20639
- chore: Replace tag-sdlt-passing tag-sdlpt-passing with appropriate tag-*-result by @rbarker-dev in #20669
- fix: Get batch state changes only when block stream is enabled by @JivkoKelchev in #20624
- test: Edge cases - Smart Contracts Service Tests Part 6 by @vtronkov in #20082
- docs: Clarify use of the term "far future" event by @poulok in #20661
- fix: pass sender and relayer for eth calls by @stoyanov-st in #20625
- refactor: move swirlds-state-api info package to the app-spi module by @thenswan in #20658
- chore: 20629: Default max VM size should be decreased to 1B by @artemananiev in #20630
- refactor: 19307 Moved
MerkleStateRootand related classes to testFixtures - revert by @imalygin in #20684 - chore: Revert feat:
STALEStatus Code in Transaction Receipts by @derektriley in #20656 - chore: UnzipUtility constraints not needed by @derektriley in #20690
- chore: update hederaCryptography package to 2.0.1 by @andrewb1269hg in #20685
- fix: Flaky keyRotationDoesNotChangeEvmAddress HAPI test by @JivkoKelchev in #20646
- fix: State Validator: reHash validation is trivial by @thenswan in #20613
- feat: ensure consensus engine event contract by @lpetrovic05 in #20672
- fix: 20691 Introduced
initialCapacitytoMerkleDbConfigby @imalygin in #20692 - fix: 20609 Fixed JSON output of
exportcommand by @imalygin in #20700 - fix: Remove
UnsupportedOperationExceptionfromRecordStreamBuilderby @tinker-michaelj in #20697 - feat: Re-enable batch transaction processing (HIP-551) by @mhess-swl in #20678
- fix: Turtle logging is too verbose by @timo0 in #20649
- ci: Remove milestone check from PR Formatting workflow by @rbarker-dev in #20716
- chore: Adapt Otter Consensus Assertion by @poulok in #20686
- docs(20242): Proposal refactoring the platform's state synchronization by @mxtartaglia-sl in #20616
- fix: Shutdown channel at end of container tests by @poulok in #20727
- fix: Update verbage in SDLT to add clarity by @rbarker-dev in #20726
- ci: Update XTS and Build Promotion cron schedules by @rbarker-dev in #20734
- chore: Update Otter Container docs by @poulok in #20657
- feat: provide all stale events by @lpetrovic05 in #20721
- chore: 20706: Upgrade PBJ version in CN to 0.11.15 by @artemananiev in #20707
- chore: Isolate and partition nodes in Turtle by @netopyr in #20675
- feat: update multipliers to reflect worst case by @lukelee-sl in #20702
- fix: Fix DocExamplesTest.testDeterministicBehavior by @netopyr in #20761
- fix: Input param checks, add first unit tests by...
v0.65.1
What's Changed
- fix: Fall back to
parseAndCheck()ifparseSignedAndCheck()isINVALID_TXby @tinker-michaelj in #20859 - chore: state validator fixes (0.65) by @OlegMazurov in #20792
- feat: 20823 Added progress output to
exportcommand (#20825) by @imalygin in #20835
Full Changelog: v0.65.0...v0.65.1
v0.65.0
What's Changed
- test: Edge cases - Smart Contracts Service Tests Part 3 by @vtronkov in #19987
- test: Edge cases - Smart Contracts Service Tests Part 4 by @vtronkov in #20014
- chore: update test URL for JTR by @lpetrovic05 in #20067
- build(deps): bump testContainers from 1.21.0 to 1.21.1 in /hiero-dependency-versions by @dependabot[bot] in #19445
- chore: update hiero gradle conventions to v0.4.9 by @andrewb1269hg in #20062
- chore: Move EthereumSuite to long running tests bucket by @stoyanov-st in #20066
- fix: 19107: Corrected
classIdofBenchmarkMerkleInternalto preventclassIdconflict by @imalygin in #19122 - chore: Update CODEOWNERS for SC contributions (#20027) by @gkozyryatskyy in #20084
- build(deps): bump com.github.docker-java:docker-java-api from 3.5.1 to 3.5.3 in /hiero-dependency-versions by @dependabot[bot] in #20047
- build(deps): bump testContainers from 1.21.0 to 1.21.3 in /hiero-dependency-versions by @dependabot[bot] in #20024
- build(deps): bump actions/setup-python from 5.5.0 to 5.6.0 by @dependabot[bot] in #19460
- build(deps): bump com.esaulpaugh:headlong from 13.2.2 to 13.3.0 in /hiero-dependency-versions by @dependabot[bot] in #19950
- chore: Add ability to debug docker nodes by @timo0 in #20051
- chore: Rename commonly used Turtle components to Otter by @timo0 in #20100
- chore: Allow communication with the container after consensus node app is destroyed by @poulok in #20089
- chore: TAC requirement - Update README.md by @jwagantall in #20105
- test: Additional tests for HIP-1064 by @mhess-swl in #20094
- chore: Query new account balance in throttling tests by @tinker-michaelj in #20109
- fix: Use
NFT_TRANSFERS_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUEas appropriate by @tinker-michaelj in #20108 - chore: Otter Reconnect Test by @poulok in #19974
- fix: fix compile break by @poulok in #20143
- chore: Disable node rewards before running
BalanceReconciliationValidatorby @tinker-michaelj in #20145 - fix: 20146: Bucket.keyEquals() may throw an underflow exception by @artemananiev in #20147
- build: add 'hedera-protobuf-java-api' to published artifacts by @jjohannes in #20153
- build(deps): bump org.apache.commons:commons-lang3 from 3.17.0 to 3.18.0 in /hiero-dependency-versions by @dependabot[bot] in #20093
- fix: HIP-551 Keeping nonce updates after Ethereum Transactions failure by @ibankov in #19983
- chore: Isolate responsibility for stake period boundary side effects by @tinker-michaelj in #20101
- chore: Checking Recovery Test with Synthetic Bottleneck by @poulok in #20103
- chore(20076): Generic clean up for SequentialThreadsTaskScheduler threads in test by @mxtartaglia-sl in #20110
- feat: RPC sync by @abies in #19269
- chore: add checkout to deploy preview workflow by @andrewb1269hg in #20173
- ci: inline namespace replacement in perf test workflow by @andrewb1269hg in #20125
- chore: cleanup platform protobuf definitions by @lpetrovic05 in #20069
- test: Edge cases - HIP-551 PRGN tests by @vtronkov in #20121
- test: suppress expected exceptions in unit tests by @thenswan in #20104
- feat: Block buffer saturation enhancements by @timfn-hg in #19849
- chore: 15304 remove SignedStateInfo interface and move Javadocs to SignedState by @HamzaElzarw-2022 in #20136
- ci: implement fixes to SDPT workflow by @andrewb1269hg in #20181
- chore: Update XTS report name and add TCK regression status by @rbarker-dev in #20191
- chore: 19741 numeric validation test add negative amount scenarios (#… by @stoyanov-st in #20186
- fix: Address some FUTURE comments in the HSCS by @stoyanov-st in #20050
- chore: Update UBUNTU_TAG to noble-20250714 by @rbarker-dev in #20217
- build(deps): bump step-security/harden-runner from 2.11.0 to 2.13.0 by @dependabot[bot] in #20199
- chore: Add single day performance test adhoc workflow by @rbarker-dev in #20194
- chore: 20231: Swirlds benchmarks grafana scripts are broken by @artemananiev in #20233
- refactor: clean up old smart contract ABI definitions (#17118) by @bubo in #19781
- chore: Fix XTS Reporting by @rbarker-dev in #20230
- test: Edge cases - Smart Contracts Service Tests Part 5 by @vtronkov in #20035
- fix: Introduce custom fee limits to scheduled transactions by @ibankov in #19810
- fix: 20207: RecordAccessor / RecordAccessorImpl cleanup by @artemananiev in #20248
- chore: Update zxc-execute-performance-test.yaml for SDPT infra changes by @rbarker-dev in #20244
- chore: Add back in the init-containers-values9.yaml citr support file by @rbarker-dev in #20252
- revert: Update UBUNTU_TAG to noble-20250714 by @PavelSBorisov in #20253
- chore: Get configuration values in Otter by @poulok in #20196
- fix: Ingest Inner Transactions by @JivkoKelchev in #19990
- feat: Implement periodic reset of the connection stream by @petreze in #19953
- fix: Fix batch inner txn fees by @JivkoKelchev in #20072
- chore: Introduce InitRequest, cleanup of lifecycle in DockerManager by @netopyr in #20239
- test: fix of #20264 to increase timeout and to save logs in case of framework error by @alex-kuzmin-hg in #20266
- fix: Add trace data for batch inner transactions by @JivkoKelchev in #20159
- chore: Add Reconnect Assertions by @poulok in #20267
- chore: Improve test task by @netopyr in #20228
- test: Improve inner txn error handling in test-clients by @ibankov in #20122
- chore: Implement PcesResults in container environment by @poulok in #20250
- feat: Update
ConsensusUpdateTopicHandlerto allow the submit key to change itself by @vtronkov in #19682 - test: Disable flaky AtomicRecordsSuite suite by @vtronkov in #20301
- chore: remove conflicting sdk dependency versions by @PavelSBorisov in #20177
- chore: Update UBUNTU_TAG to use debian bookworm-20250630-slim by @rbarker-dev in #20296
- fix: Fix typo in xts-info output definition by @rbarker-dev in #20306
- fix: Revert Autorenew error code translation by @ibankov in #20291
- feat: Virtual Mega Map by @thenswan in https://g...
v0.64.2
What's Changed
- fix: Remove
UnsupportedOperationExceptions that fail whenstreamMode=RECORDSby @tinker-michaelj in #20391 - fix: (0.64) Fix else if -> else bytecode sidecar construct by @tinker-michaelj in #20478
- chore: Disable bytecode sidecar check for r64 by @tinker-michaelj in #20505
Full Changelog: v0.64.1...v0.64.2
v0.64.1
What's Changed
- fix: (0.64) Query new account balance in throttling tests by @tinker-michaelj in #20130
- build: (0.64) add 'hedera-protobuf-java-api' to published artifacts by @andrewb1269hg in #20154
- chore: (0.64) update CITR SDPT workflow for Kubernetes by @andrewb1269hg in #20226
- chore: cherry pick final change for release/0.64 infra changes by @rbarker-dev in #20290
- fix: Revert Autorenew error code translation by @ibankov in #20292
- chore: Update UBUNTU_TAG to use debian bookworm-20250630-slim (#20296) by @rbarker-dev in #20312
Full Changelog: v0.64.0...v0.64.1
v0.64.0
Features
- Make worker loop sleep duration configurable (#20007)
- Add transaction support for the container environment (#19941)
- end the stream if block node is too far behind (#19434)
- replace hashmap with an array to improve performace for ops duration lookups (#19836)
- Apply EIP-3529 refund limits (#19769) (#19821)
- Config API to make sets deterministic (#19735)
- Enable web proxy endpoints by default (#19796)
- Block Node Communication Phase 2 (#18764)
- Separate configuration for Mac PcesWriter, due to difference in performance between platforms (#19762)
- 13093 - Migrate State Validator for 0.64 (as is) (#19547)
- Allow updating previous value in Gauge metrics (#19627)
- 18377 Disallow setting duplicate roster (#19072)
- Support
grpcProxyEndpointin yahcli DAB transactions (#19664) - convert ops duration json file to config (#19322)
- no shard realm encoding in long zero (#19349)
- Stop populating generation (#19542)
- Support nonzero shard/realm in Yahcli file commands (#19359)
Bug Fixes
- remove workflow dispatch inputs when calling integration workflow (#20046)
- 18458 Pces file writer rollback (#20038)
- false positive tests used 'numeric contract complex' from numeric validation test (#19954) (#20037)
- resolve issues with the integration trigger workflow (#20026)
- Restore missing deps, META-INF files (#20031)
- Check for deleted accounts in
ConversionUtils.accountNumberForEvmReference(#19641) - Mark some Jumbo Txn HAPI tests as repeatable (#20008)
- Marks nodes deleted if not present in
override-network.json(#19847) - Set latest freeze round in platform state from Browser (#19917)
- bug update hiero-gradle-convention to v0.4.6 (#19940)
- 19727 Change how Addressbook is initialized to fix MTT (#19816)
- Save correct creationTime in spec registry when mint NFT inside a batch txn (#19866)
- Prehandle each batch inner txn on dispatch (#19731)
- delayed start logic for deterministic image (#19126)
- Update expiration time handling in file create (#19790)
- Blacklist Schedules inside AtomicBatch (#19783)
- Allow erasure of web proxy via node update (#19795)
- 18938 fix disabled tests in numeric validation test (#19630) (#19793)
- Ignore ID literals for individual input parameters (#19721)
- Only accept fully-qualified domain names for web proxy endpoint (#19755)
- Atomic batch used gas calculation for system contract calls (#19688)
- 19748 Fixed
BreakableDataSourcelifecycle management for reconnect tests (#19749) - 19753 Fixed pass missing ref name for AdHoc workflow (#19754)
- 19686: Reconnect protocol is stuck after an exception (#19694)
- Pass ref to publish-production-image to fix cache keys mismatch (#19677)
- 19623 Fixed
DataFileCollectionCompactionTestintermittent failure. (#19624) - Failed atomic batch rollback contract ID of a failed inner contract call (#19613)
- Issue with dry-run-enabled in node-flow-deploy-release-artifact (#19659)
- Timing issue on main in flow-build-application (#19586)
- Change port on which test is running to avoid collisions with other parallel tests (#19342)
- don't use nodes which haven't reported us as fallen behind for reconnect (#19580)
- 19459: VirtualHasher: split hashing tasks into leaves and chunks (#19534)
- 19206 SequentialTaskSchedulerTests flake fixes (#19354)
- Log active config after initializing props and permissions facilities (#19568)
- use exception handler for all wiring exceptions (#19513)
- 19425: Audit Foundation / Data XTS tests (#19557)
- Add ingest throttle for inner batch transactions (#19103)
- HbarAllowanceCall reversion gas (#19388) (#19560)
- Don't use
SHARD/REALMconstants in test-clients (#19545) - Add continue-on-error logic to failure reporting in workflows (#19551)
- fix broken Otter tests (#19524)
- #19129 charge based on total number of allowances approved. (#19131)
v0.63.9
What's Changed
- fix(18458): Pces file writer rollback by @mxtartaglia-sl in #20019
- fix: Fix SteadyStateThrottlingTest by @tinker-michaelj in #20040
- chore: (0.63) move scripts from paa to hcn by @andrewb1269hg in #20042
Full Changelog: v0.63.7...v0.63.9