- 实现智能去重:相同时间、相同轮次的TBD比赛只保留一个代表 - 新增TBD比赛自动更新功能:当队伍确定后自动更新日历事件 - 改进事件匹配逻辑:三层匹配机制确保准确跟踪 - 新增update_event_with_teams方法专门处理队伍更新 - 更新README和CHANGELOG文档说明新功能 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
61 lines
2.0 KiB
Markdown
61 lines
2.0 KiB
Markdown
# Changelog
|
||
|
||
## v3.2 - TBD 比赛优化
|
||
- **智能去重机制**:
|
||
- 相同时间、相同轮次的多个 TBD 比赛只保留一个代表
|
||
- 避免日历中出现大量重复的 TBD 条目
|
||
- **TBD 比赛自动更新**:
|
||
- 当 TBD 比赛的队伍确定后,自动更新对应的日历事件
|
||
- 通过时间和锦标赛信息智能匹配 TBD 事件
|
||
- 新增 `update_event_with_teams` 方法专门处理队伍更新
|
||
- **改进的事件匹配逻辑**:
|
||
- 三层匹配机制:ID 匹配 → 队伍+锦标赛匹配 → 时间+锦标赛匹配
|
||
- 确保 TBD 比赛更新后仍能正确跟踪
|
||
|
||
## v3.1 - 格式优化更新
|
||
- **新的标题格式**:
|
||
- 之前: `Dota 2 - The International 2025: Team1 vs Team2`
|
||
- 现在: `Team1 vs Team2 [The International 2025]`
|
||
- **简化的完成标记**:
|
||
- 之前: `[COMPLETED] Dota 2 - Tournament: Team1 vs Team2`
|
||
- 现在: `✓ 2-0 Team1 vs Team2 [Tournament]`
|
||
- 移除了 "Dota 2" 字样,让日历更简洁
|
||
- 比分紧跟在✓后面,更加紧凑
|
||
|
||
## v3.0 - 时间变更检测
|
||
- 新增比赛时间变更自动检测
|
||
- 当赛程调整时自动更新日历
|
||
- 支持 `--no-time-updates` 参数跳过时间更新
|
||
|
||
## v2.0 - 比赛结果更新
|
||
- 自动获取已完成比赛的结果
|
||
- 更新日历事件显示比分和获胜队伍
|
||
- 支持 `--no-results` 参数跳过结果更新
|
||
|
||
## v1.0 - 基础同步
|
||
- 从 Liquipedia 获取 Tier 1 比赛
|
||
- 同步到 Google Calendar
|
||
- 避免重复添加
|
||
- 支持 dry-run 模式
|
||
|
||
## 功能对比
|
||
|
||
| 版本 | 同步比赛 | 更新结果 | 时间变更 | 新格式 | TBD优化 |
|
||
|------|---------|---------|---------|--------|---------|
|
||
| v1.0 | ✓ | ✗ | ✗ | ✗ | ✗ |
|
||
| v2.0 | ✓ | ✓ | ✗ | ✗ | ✗ |
|
||
| v3.0 | ✓ | ✓ | ✓ | ✗ | ✗ |
|
||
| v3.1 | ✓ | ✓ | ✓ | ✓ | ✗ |
|
||
| v3.2 | ✓ | ✓ | ✓ | ✓ | ✓ |
|
||
|
||
## 使用建议
|
||
|
||
推荐使用最新的 v3 版本,它包含所有功能:
|
||
```bash
|
||
./run_sync.sh
|
||
```
|
||
|
||
或手动运行:
|
||
```bash
|
||
python sync_dota2_matches_v3.py --calendar-id "YOUR_CALENDAR_ID"
|
||
``` |