From 904efa9842533b0f0e04136a9e8c6dbcbed643cf Mon Sep 17 00:00:00 2001 From: xfy Date: Fri, 10 Apr 2026 09:48:35 +0800 Subject: [PATCH] =?UTF-8?q?chore(release):=20=E5=8F=91=E5=B8=83=20v0.2.0?= =?UTF-8?q?=20=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 更新 CHANGELOG 记录所有新增功能和变更 - 版本号升级至 0.2.0 - 调整 Makefile 构建命令结构 Co-Authored-By: Claude Opus 4.6 --- CHANGELOG.md | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++ Makefile | 14 ++++++------ 2 files changed, 70 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3abaacf..2c0fd08 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,69 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/), and this project adheres to [Semantic Versioning](https://semver.org/). +## [0.2.0] - 2026-04-10 + +### Added + +#### 核心基础设施 + +- 变量系统模块,支持内置变量、SSL 客户端证书变量、上游变量,自动注入请求上下文 +- DNS 解析器模块,支持自定义 DNS 服务器配置,集成到代理请求处理 +- HTTP/2 协议支持,集成到服务器和应用层 + +#### SSL/TLS 增强 + +- Session Tickets 支持,含密钥轮换和内存/文件存储后端 +- mTLS 客户端证书验证,支持可选/强制验证模式 +- TCP/UDP Stream SSL/TLS 支持,完整证书配置 + +#### 中间件与处理 + +- auth_request 外部认证中间件,支持子请求验证流程 +- static handler alias 指令,支持路径别名映射 +- 代理响应临时文件处理,保护内存避免大响应OOM +- rate limiting 后台自动清理和优雅关闭 + +#### 可观测性 + +- Prometheus 格式状态输出支持 +- 缓存清理 API 端点 +- 分层性能回归检测策略与基准测试套件 + +#### 配置与构建 + +- Resolver/SSL 默认值完善及 YAML 配置示例输出 +- 负载均衡算法配置验证 +- golangci-lint 静态检查配置 +- 所有构建命令启用静态链接支持 +- goimports 替代 go fmt 格式化代码 + +### Changed + +- resolver/variable/ssl 等核心类型重命名,移除冗余前缀 +- HeadersMiddleware 重命名移除冗余前缀 +- HTTP/2 使用 textproto.CanonicalMIMEHeaderKey 替代手动实现 +- 配置废弃字段标记与移除 + +### Performance + +- 一致性哈希虚拟节点哈希值预计算 +- 代理缓存使用 uint64 哈希键优化性能 + +### Documentation + +- 新增 variable/resolver 等 AGENTS.md 模块文档 +- nginx 健康检查详解与高级模块文档 +- 配置字段完整参考文档 + +### Tests + +- 变量系统单元测试与基准测试 +- SSL Session Tickets/Stream SSL 测试 +- try_files、错误页面、pprof 单元测试 + +--- + ## [0.1.0] - 2026-04-07 ### Added diff --git a/Makefile b/Makefile index b78e758..2305c8c 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ # 版本信息 APP_NAME := lolly -VERSION := 0.1.0 +VERSION := 0.2.0 GIT_COMMIT := $(shell git rev-parse --short HEAD 2>/dev/null || echo "unknown") GIT_BRANCH := $(shell git rev-parse --abbrev-ref HEAD 2>/dev/null || echo "unknown") BUILD_TIME := $(shell date -u '+%Y-%m-%d %H:%M:%S UTC') @@ -45,14 +45,14 @@ build: @echo "Version: $(VERSION) | Commit: $(GIT_COMMIT) | Platform: $(BUILD_PLATFORM)" # 生产构建(体积优化,静态链接) -build-prod: - @echo "Building $(APP_NAME) for production (static)..." - @mkdir -p $(BUILD_DIR) - $(CGO_DISABLE) go build $(LDFLAGS) -trimpath -o $(BUILD_DIR)/$(APP_NAME) $(MAIN_PATH) - @echo "Production build complete: $(BUILD_DIR)/$(APP_NAME)" +# build-size: +# @echo "Building $(APP_NAME) for production (static)..." +# @mkdir -p $(BUILD_DIR) +# $(CGO_DISABLE) go build $(LDFLAGS) -trimpath -o $(BUILD_DIR)/$(APP_NAME) $(MAIN_PATH) +# @echo "Production build complete: $(BUILD_DIR)/$(APP_NAME)" # 生产构建(最大运行时性能,静态链接) -build-perf: +build-prod: @echo "Building $(APP_NAME) with max runtime performance (static)..." @mkdir -p $(BUILD_DIR) $(CGO_DISABLE) go build $(LDFLAGS) $(PERF_GCFLAGS) $(PERF_ASMFLAGS) -trimpath \