Releases: yuaotian/antigravity-proxy
Releases · yuaotian/antigravity-proxy
v1.8
🐛 Bug 修复 (Bug Fixes)
- injection: align child process injection logs with actual outcome
- Return detailed failure reasons from InjectDll for API, wait, and exit-code failures
- Use the returned reason in CreateProcessW/A failure logs and keep success logs on true inject only
- Improve troubleshooting accuracy without changing injection control flow
- fix(injection): 校准子进程注入日志与真实结果一致
- 在 InjectDll 中返回 API、等待状态与退出码等失败原因
- 在 CreateProcessW/A 失败日志中输出具体原因,仅在真实成功时记录成功日志
- 不改变注入控制流程,只提升排障可观测性
- build: harden cache-mismatch recovery for PowerShell 5.1
- build: auto-recover from CMake cache path mismatch
- Detect CMake cache/source path mismatch during configure and retry once after cleaning build directory
- Prevent build failure when repository is moved to a different absolute path
- Keep normal configure/build flow unchanged for clean workspaces
- fix(build): 自动恢复 CMake 缓存路径不匹配问题
- 在配置阶段检测 CMake 缓存/源码路径不匹配并清理后重试一次
- 解决仓库迁移到新绝对路径后构建直接失败的问题
- 对干净工作区保持原有配置和编译流程不变
⚡ 性能优化 (Performance)
- hooks: 优化 socket 类型判断和路由日志输出
- 添加了 -Verbose 参数用于输出详细的编译日志,-SkipTests 参数用于在 CI
- 场景中显式跳过测试步骤。更新了 PowerShell 脚本的 CmdletBinding 支持,
- 改进了构建过程中的详细信息显示,并在 README.md 中补充了相关使用说明。
- 统一 socket 类型判定入口,避免热路径重复 getsockopt 调用。
- 实现路由决策日志限流机制,避免高并发场景下大量日志 I/O 影响性能,
- 超过阈值后仅在调试级别输出日志。
- refactor(hooks): 重构 UDP 代理上下文创建逻辑
- 将阻塞 I/O 操作移到互斥锁外部执行,降低 g_udpProxyMtx 竞争。
- 优化并发场景下的上下文初始化处理,避免资源浪费。
- feat(network): 增强代理握手超时预算管理
- 握手预算采用 connect/send/recv 的总和,避免多阶段各自完整超时导致
- 整体阻塞过长。添加默认预算值 5000ms 保障超时控制。
- docs: 更新开发文档和待改进项状态
- 更新 DEVELOPMENT.md 中待改进项的完成状态,将已完成项目标记为 [x]。
- 更新配置工具相关文档说明,添加自动漂移检测说明注释。
- 调整 DNS 优化方案文档,移除已废弃的自定义 DNS 功能。
📦 构建相关 (Build)
- version: 添加 NOMINMAX 预处理器定义 (
a9c9aa0)- 在所有构建配置(Debug、Release、MinSizeRel、RelWithDebInfo)中添加 NOMINMAX
- 预处理器定义,以避免 Windows 头文件中的 min/max 宏冲突问题。
🔧 杂项 (Chores)
- 同步版本号到 v1.7 [skip ci]
📋 其他更新 (Other)
- :numeric_limits::max()的错误调用语法,将裸函数名改为
- 在CMakeLists.txt中添加NOMINMAX宏定义,统一禁用windows.h的min/max宏,
- 避免污染C++标准库的std::min/std::max函数
- 修正HttpConnect.hpp、SocketIo.hpp和Socks5.hpp中对
- 正确的函数调用形式(std::numeric_limits::max)()
- 此修改解决了Windows平台上可能出现的符号冲突和编译错误问题
- 3ebd36f
- 新增 docs/config-web-sync-strategy.md 详细说明字段同步与漂移自检方案
- 在 config-web.md 中添加对新增文档的引用和说明
- 定义前端内置漂移自检机制,包括 REQUIRED_CONFIG_PATHS 等检查维度
- 提供维护建议和变更后验收清单确保前后端字段一致性
- 6cfe9b9
- 将中文版README中的微信群二维码图片从 qun-21.png 替换为 qun-22.jpg
- 将英文版README中的微信群二维码图片从 qun-21.png 替换为 qun-22.jpg
- 添加了新的二维码图片文件 qun-22.jpg
- fd8b667
- 新增 `proxy_rules.udp_fallback` 配置项,用于设置 UDP 代理失败时的降级策略,
- 支持 `block`(失败即阻断,默认)和 `direct`(失败回退直连,有泄漏风险)两种模式,
- 仅在 `udp_mode=proxy` 时生效。同时更新了相关文档说明。
- 1dd7bd9
- 新增udp_fallback配置项,用于设置UDP代理失败时的降级策略
- 支持block(失败即阻断)和direct(失败回退直连)两种模式
- 该配置仅在udp_mode=proxy时生效,防止流量泄漏
- 更新Web配置界面,添加对应的下拉选择框和验证逻辑
- 扩展udp_mode选项,新增proxy模式支持SOCKS5 UDP Associate
- 更新文档说明和配置示例,完善相关注释内容
- d36d806
- 新增 `proxy_rules.udp_mode` 配置选项,支持三种 UDP 处理策略:
- block: 阻断 UDP(默认,强制回退 TCP)
- direct: UDP 直连
- proxy: UDP 走代理(需 SOCKS5 UDP Associate 支持)
- 同时新增 `proxy_rules.udp_fallback` 配置选项,用于设置 UDP
- 代理失败时的降级策略(block 或 direct)。
- 更新 README 文档中的日志含义说明和问题排查指南,
- 详细说明 UDP/QUIC 代理的配置方法和注意事项。
- e36f00a
- 添加配置校验逻辑,统一 proxy.type 大小写并进行防御性修正
- 实现自动去除配置值中的前后空白字符,减少配置错误
- 增加对 https 类型的兼容处理(按 http 方式处理并给出警告提示)
- 更新中英文文档说明,明确 https 类型将按 http 处理
- 84ded9e
- 在 build.ps1 中新增步骤10,将配置工具从 resources/config-web/index.html
- 复制到 output/config-web.html
- 在 release.yml 中添加兜底机制,确保配置工具正确进入输出目录
- 新增 docs/config-web.md 详细文档,说明配置工具的使用方式、
- 配置结构覆盖范围、导入导出行为和实时校验规则
- 配置工具支持完整的配置字段编辑,包括元信息、核心配置和路由规则
- be11dc7
- 在GitHub Actions发布工作流中引入了sha_suffix变量来处理提交哈希的显示,
- 避免在没有提交哈希时出现空的括号格式,并统一了不同情况下的提交条目格式。
v1.7
✨ 新功能 (Features)
- config-web: improve layout and routing hints (``)
- routing: add rule-based routing and web config tool (``)
🐛 Bug 修复 (Bug Fixes)
- hooks: 修复 Windows SDK 弃用警告 (``)
- 移除路由规则中不支持的 ports 配置项
- 添加已知问题说明:FakeIP 与 direct 规则中同时使用 domains 和 ports 的历史问题
- 补充 IPv6 模式优先级说明文档
- 解决旧版本中 FakeIP + direct + domains + ports 组合使用时的连接失败问题
- 将 WSAPROTOCOL_INFOA 替换为 WSAPROTOCOL_INFOW 避免 C4996 警告
- 相应更新 getsockopt 调用使用 SO_PROTOCOL_INFOW 常量
- README: 更新文档中的配置示例和已知问题说明 (``)
- 添加BUILD_TESTS选项用于构建单元测试,默认关闭,包含IPv6解析器的测试用例
- 移除了配置示例中的ports字段,新增已知问题章节,说明FakeIP与
- direct规则中domains和ports同时配置的问题,并补充IPv6模式的优先级说明
- hooks: 优化UDP连接阻断错误码和日志信息 (``)
- 新增 child_injection_mode 配置选项,支持 "filtered"(默认) 和 "inherit" 两种模式
- 新增 child_injection_exclude 排除列表,支持大小写不敏感的子串匹配
- 实现 IsChildInjectionExcluded 和 ShouldInjectChildProcess 方法
- 添加 ToLowerCopy 工具函数用于字符串大小写转换
- 更新 CreateProcess 钩子以支持新的注入逻辑
- 将UDP阻断错误码从 WSAENETUNREACH 改为 WSAEACCES,更准确反映策略阻断性质
- 更新UDP阻断日志信息,明确说明WSA错误码为策略阻断返回而非真实网络故障
- 改进CreateProcess钩子中的日志输出,区分过滤模式和排除列表导致的跳过情况
- config: 调整默认配置提升调试体验 (``)
- 新增CreateProcessA函数钩子,补全ANSI路径支持,降低子进程漏注入概率
- 改进进程注入逻辑,添加注入结果验证机制,区分成功/失败状态
- 优化远程线程等待逻辑,避免UAF(Use After Free)安全问题
- 添加详细的注入成功/失败日志记录,便于故障排查
- 将默认日志级别从info调整为debug,便于排障时获得更直观的信息
- 移除端口白名单限制,默认允许所有端口走代理,解决QUIC/HTTP3相关问题
- 更新配置文档中的默认值描述,保持一致性
- docs: 更新配置说明文档
- 同步更新build.ps1中的配置注释和表格说明
- 补充UDP阻断日志的详细说明,包括QUIC重试相关的注意事项
- chore(memory): 整理记忆文件结构并迁移数据
- 将原有context.md、patterns.md、preferences.md、rules.md移至backup目录
- 创建memories.json存储结构化记忆数据,包含规则、偏好和上下文信息
- 移除旧版metadata.json文件
- routing: remove duplicate method declarations (``)
♻️ 代码重构 (Refactoring)
- workflow: 提取 Conventional Commits 正则表达式为变量 (
bd2ff9f)- 将 Conventional Commits 的正则表达式提取到变量 CC_HEADER_RE 和 CC_FULL_RE 中
- 避免 bash 在 [[ ... =~ ... ]] 条件中将括号和感叹号误解析为条件语法
- 使用变量替换原有的硬编码正则表达式,提高代码可读性和维护性
📝 文档更新 (Documentation)
- readme: fix two formatting issues in README (``)
- 修复 README 两处格式问题
- clarify config tool usage and AUTHORS (``)
- add routing rules and config tool (``)
👷 CI 配置 (CI)
- trigger build (``)
🔧 杂项 (Chores)
- empty: 创建空提交 (``)
- 根据提供的code differences信息为空的情况,生成一个空提交的commit message:
- 由于没有提供具体的代码差异信息,此提交为空提交,
- 仅用于占位或触发特定的CI/CD流程。
- 注意:由于您提供的code differences信息为空,我无法生成具体的变更描述。在实际使用中,请确保提供详细的代码变更信息以便生成准确的commit message。
💄 代码风格 (Style)
- config-web: refine dark console UI / 样式:优化深色控制台风格界面 (``)
📋 其他更新 (Other)
- 20a3c10 (``)
- 移除了对extglob特性的依赖,改用sed命令进行字符串首尾空白去除,
- 以提高脚本在不同环境下的兼容性
- d2397d8 (``)
- 配置文件中添加了特定的目标进程用于注入,
- 包括 language_server_windows 和 Antigravity.exe。
- d3338c6 (``)
- 将build.ps1中的log_level从"info"修改为"debug"
- 便于排障时获取更详细的日志信息
- 9c0ee16 (``)
- 在 release 工作流中添加同步版本号到 build.ps1 的功能
- 自动更新 build.ps1 文件中的版本号变量
- 配置 git 用户身份为 github-actions[bot]
- 切换到默认分支并拉取最新代码后进行版本更新
- 提交更新后的版本号并推送回仓库
- 添加 [skip ci] 标签避免触发额外的 CI 构建
- d00bf4b (``)
- 将默认日志级别从 debug 改为 info,减少日常使用时的日志输出
- 新增 child_injection_mode 配置项,支持 filtered 和 inherit 两种子进程注入模式
- 添加 child_injection_exclude 列表,支持按名称排除特定子进程
- 优化 proxy_rules 配置,默认仅代理 HTTP(80) 和 HTTPS(443) 端口
- 新增高级路由规则配置 routing,支持内网自动直连功能
- 增加配置文档说明,更新配置示例和表格内容
- 调整 JSON 序列化深度从 4 增加到 5 以支持深层嵌套配置
- 81b4b66 (``)
- 添加toast通知的兜底机制,当DOM容器不存在时使用alert提醒用户
- 改进loading按钮状态管理,增加参数验证和中文提示文本
- 优化规则列表渲染,增强规则名称和动作的显示逻辑
- 更新风险警告文案,提供更清晰的FakeIP模式兼容性说明
- 扩展loadConfig函数支持静默加载选项和自定义提示消息
- 新增预设模板功能,提供四种常见代理场景的一键配置
- 实现首次使用引导卡片,帮助用户快速上手操作流程
- 本地化界面文本,将英文标签替换为中文描述提升用户体验
- 增加删除规则的二次确认机制,防止误操作导致数据丢失
- 优化测试控制台显示,区分连接阶段和DNS阶段的命中结果
- 38ad5d2 (``)
- 添加时间戳到通知消息显示
- 增加ASCII装饰背景和扫描线动画效果
- 更新配色方案为赛博朋克绿色主题
- 改进按钮悬停效果和故障效果
- 将界面文本转换为大写和黑客风格
- 调整卡片样式和边框设计
- 更新表单输入样式和复选框外观
- 优化规则列表和测试控制台界面
- 调整加载状态的故障效果
- 统一字体为等宽字体以获得终端外观
- 34a50e9 (``)
- 添加ui助手函数包括toast通知、加载状态指示器和骨架屏
- 实现规则列表的加载动画和空状态显示
- 改进规则编辑器的表单验证和用户体验
- 添加下载按钮的加载状态反馈
- 优化规则列表渲染性能和交互体验
- 增强测试功能的异步处理和结果显示
- 重构代码结构增加模块化组织
- 12670f6 (``)
- 添加严格的 shell 错误处理模式 (set -euo pipefail)
- 实现字符串修剪和内联代码块处理函数
- 改进提交解析逻辑,支持从 body 中提取符合规范的提交信息
- 优化 Markdown 转义和格式化处理
- 使用更安全的 heredoc 方式输出变更日志内容
v1.6
📋 其他更新 (Other)
- ``` feat(hooks): 修复ConnectEx连接上下文更新问题并增强IOCP状态检查 (
8dec172) - ``` fix(hooks): 修复IOCP完成事件状态检查缺失问题 (
80da517) - ``` feat(build): 添加UDP策略配置选项并优化使用说明文档 (
7647c67)
v1.5
📋 其他更新 (Other)
- ``` feat(core): 添加日志等级配置和配置项校验功能 (
5457695) - ``` chore(release): 同步发布版本号到 build.ps1 脚本 (
0c649f6) - ``` feat(ci): 添加自动生成发布说明功能 (
6996198) - ``` feat(hooks): 支持多Provider环境下ConnectEx hook的正确处理 (
3766c52) - ``` feat(proxy): 添加IPv6模式配置选项 (
64534ee) - ``` feat(core): 添加IPv6代理支持并完善网络连接处理 (
08e3755) - ``` docs(README): 添加Telegram联系方式 (
a447bdc) - ``` docs(README): 更新README文档添加微信社群和捐赠信息 (
8cb1469) - ``` docs(README): 添加微信群二维码和打赏支持信息 (
2950218)
v1.4
Full Changelog: v1.3...v1.4
v1.3
Full Changelog: v1.2...v1.3
Full Changelog: v1.2...v1.3
v1.2
Full Changelog: https://github.com/yuaotian/antigravity-proxy/commits/v1.2