Releases: LinnetCodes/gpmq
Releases · LinnetCodes/gpmq
Release list
version-0.5.0
[0.5.0] - 2026-07-07
跟随依赖 gpclog 0.3.0 的破坏性变更(
log_path字段重命名为log_dir)。
GPMQ 自身源码无需改动,但示例日志配置和依赖约束需要同步更新。请阅读下方的
Breaking Changes。Tracks the breaking rename of the
log_pathfield tolog_dirin the
dependency gpclog 0.3.0. No GPMQ source code change was required, but the
example log configs and the dependency constraint had to be updated in lockstep.
See Breaking Changes below.
⚠️ Breaking Changes
log_path→log_dirin example log YAML configs. All 12 files under
examples/cfgs_{linux,windows}/logs/*.yamlused the oldlog_path:field,
which gpclog 0.3.0 no longer recognizes (it now readslog_dir). Under
gpclog 0.3.0's stricter validation these configs would silently fall back to
defaults instead of honoring the configured directory. If you copied these
example configs, renamelog_path:tolog_dir:in your own copies too.- 示例日志配置中
log_path改为log_dir。examples/cfgs_{linux,windows}/logs/
下的 12 个 YAML 全部使用了 gpclog 0.3.0 已废弃的log_path:字段。若你复制过这些
配置,请同样把log_path:改成log_dir:。
- 示例日志配置中
Changed
- Dependency constraint
gpclog>=0.2.0→gpclog>=0.3.0(pyproject.toml).
GPMQ now requires gpclog 0.3.0 or newer; 0.2.0 is no longer supported.- 依赖约束
gpclog>=0.2.0提升为gpclog>=0.3.0,不再支持 0.2.0。
- 依赖约束
Internal / Infrastructure
- Example log YAML comments updated to list gpclog 0.3.0's new
"cwd"path mode
alongside the existingauto | env | home | 绝对路径. uv.lockre-resolved against gpclog 0.3.0.
version-0.4.0
GPMQ
General Purpose Message Queue — A lightweight Python distributed message queue built on Redis Streams, designed for personal projects.
Beta release of version-0.4.0
Features
- Multiple messaging patterns — sync, async, fire-and-forget, batch with sliding-window concurrency, and message relay
- Targeted publishing — direct a message to specific subscriber(s) via
target_subscribers; registered-but-unlisted subscribers discard it - Configurable run-forever method — customize the subscriber's main loop with
@run_forever_method - Redis Streams backend — reliable message delivery with consumer groups
- Multi-process workers — configurable worker count per subscriber
- YAML configuration — type-safe config via gpconfig with common/specific merging
- Audit trail — optional SQLite-based message and result logging
- Worker visibility — query all workers in a consumer group including idle/stale ones via
get_consumer_group_workers() - CLI tools — start workers, query audit records, check system status