# 更新日志

本文档记录项目的所有重要更改。遵循 [Keep a Changelog](https://keepachangelog.com/) 格式。

## [未发布]

### Added（新增）
- 列举新增功能

### Changed（变更）
- 列举已变更的功能

### Deprecated（废弃）
- 列举将要移除的功能

### Removed（移除）
- 列举已移除的功能

### Fixed（修复）
- 列举 BUG 修复

### Security（安全）
- 列举安全修复

## [1.0.0] - 2025-11-05

### Added
- 初始化项目结构和 Python 包标准配置
- 实现光谱数据与实测数据的时空匹配算法
- 完整的日志系统（内存缓冲 + 文件输出）
- 支持 JSON 字符串和配置文件的管道输入
- UTF-8 BOM 自动处理
- 多级 fallback 的版本获取机制
- 自动化版本管理（setuptools_scm）
- GitHub Actions CI/CD 工作流
- 详细的 README 和发布指南

### Changed
- 改进日志处理机制，避免多余文件生成

### Security
- 模型加密保存功能
- 敏感信息隐藏处理

---

## 更新日志格式说明

### 版本号规范

遵循 [语义化版本](https://semver.org/lang/zh-CN/)：
- 主版本号：有重大 API 变更
- 次版本号：添加新功能（向下兼容）
- 修订版本号：修复 BUG

版本标签格式：`vX.Y.Z`（例如：v1.0.0）

### 日期格式

使用 ISO 8601 格式：`YYYY-MM-DD`

### 分类说明

| 分类 | 说明 | 示例 |
|------|------|------|
| **Added** | 新增功能 | 添加新的命令行参数 |
| **Changed** | 功能变更 | 修改 API 接口 |
| **Deprecated** | 功能废弃 | 旧接口将在下一版本移除 |
| **Removed** | 功能移除 | 移除已废弃的接口 |
| **Fixed** | BUG 修复 | 修复内存泄漏 |
| **Security** | 安全修复 | 修复 SQL 注入漏洞 |

### 编写示例

```markdown
## [1.1.0] - 2025-12-01

### Added
- 新增数据导出功能，支持 Excel 和 CSV 格式
- 添加图表可视化模块
- 支持批量处理多个文件

### Changed
- 改进匹配算法，性能提升 30%
- 简化配置文件格式

### Fixed
- 修复时间戳解析问题
- 修复 Windows 路径兼容性问题 (#42)

### Security
- 更新依赖包以修复已知漏洞
```

### 版本链接

在文档末尾添加版本链接（可选）：

```markdown
[未发布]: https://github.com/1034378361/SateliteCenter/compare/v1.0.0...HEAD
[1.0.0]: https://github.com/1034378361/SateliteCenter/releases/tag/v1.0.0
```

---

## 更新步骤

在每次准备发布时：

1. 在 CHANGELOG.md 中创建新的版本段落
2. 将 `## [未发布]` 中的内容移到新版本下
3. 按照语义化版本确定版本号
4. 添加发布日期（ISO 8601 格式）
5. 提交更改并创建 git 标签

## 提示

- 保持日志简洁，面向最终用户
- 使用过去式描述已完成的工作
- 如果相关，添加 GitHub issue 编号（例如：#42）
- 定期更新，不要等到发布时才整理

---

更新日志对于用户了解版本差异至关重要，请认真维护！
