All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- feat(tools): Add
brokercommand group withGetBrokerConfigSubCommandfor querying broker configuration by broker address or cluster, with optional--keyPatternregex filtering - feat(tools): Add
CleanExpiredCQSubCommandunder broker commands with broker/cluster/topic target scan, dry-run preview, and cleanup summary reporting - feat(tools): Add
UpdateBrokerConfigSubCommandunder broker commands with single/multi key updates, value validation, broker or cluster targeting, old/new diff display, and rollback on partial failures - feat(tools): Add
CommitLogSetReadAheadSubCommandunder broker commands with Java-compatible mode (0/1) plus--enable/--disable, optional--readAheadSize, broker or cluster targeting, and current/updated read-ahead config display - test(remoting): Add comprehensive test coverage for
GetMaxOffsetRequestHeaderincluding required fields, optional nested headers, trait implementation methods, and edge cases - feat(tools): Add
SetConsumeModeSubCommandfor setting consumer group consumption mode (PULL/POP) (#5650) - feat(tools): Add
ListAclSubCommandfor ACL enumeration and subject filtering (#5663) - feat(tools): Add
UpdateAclSubCommand(#5665) - feat(tools): Add
UpdateSubGroupListSubCommandfor batch subscription group updates (#5652) - feat(tools): Add
UpdateSubGroupSubCommandin update_sub_group_sub_command.rs (#5653) - feat(tools): Add
GetControllerMetadataSubCommand(#5624) - feat(common): Add
filter_typemodule to filter.rs in rocketmq-common crate (#5454) - feat(common): Add test coverage for
MessageQueueAssignmentstruct to in rocketmq-common crate (#5752)
- chore(broker): Remove commented-out dead logging code in
pull_request_hold_service.rs(#6579) - refactor(remoting/tools): Return references from
TopicStatsTable::get_offset_tableand addinto_offset_table/get_offset_table_mutto avoid unnecessaryHashMapcloning in topic status flows - refactor(common): Rename foundational
MessageTraitmethods to the idiomatic Rust naming:get_propertytopropertyandget_property_reftoproperty_ref(other getters likeget_topic,get_flag, etc.. will be renamed in subsequent commits) - refactor(client): Refactor
default_mq_producer::startindefault_mq_producer.rsremoving repeatedas_mut().unwrap()(#5576) - refactor(tui): Reformat
rocketmq-tuiusingtaplo(#5242) - refactor(error): Reformat
Cargo.tomlusingtaplowith entry alignment (#5232) - refactor(client): Change
MQProducer::send_to_queuereturn type toRocketMQResult<Option<SendResult>>inmq_producer.rs,default_mq_producer.rsandtransaction_mq_producer.rs(#5169) - refactor(client): Replace
lazy_static!withstd::sync::LazyLockintrace_view.rs(#5092) - refactor(store): Replace
lazy_static!withstd::sync::LazyLockindelivery.rsand removelazy_staticdependency fromrocketmq-store(#5091) - refactor(common): Replace
lazy_static!withstd::sync::LazyLockinname_server_address_utils.rs(#5068) - refactor(common): Replace
lazy_static!withstd::sync::LazyLockinbroker_config.rs(#5056) - refactor(remoting): Replace
lazy_static!withstd::sync::LazyLockinremoting_command.rsand removelazy_staticdependency fromrocketmq-remoting(#5060) - perf(ArcMut): Add the
#[inline]attribute to themut_from_ref,downgrade, andget_innermethods forArcMut, improving performance (#2876) - chore(controller): Update default controller listen address to use port 60109 (#5527)