|
1 | 1 | # Changelog |
2 | 2 |
|
| 3 | +## English |
| 4 | + |
| 5 | +--- |
| 6 | + |
| 7 | +### 2026-08 |
| 8 | + |
| 9 | +#### Added |
| 10 | +- FreeBSD support for CPU and memory information retrieval |
| 11 | +- `du` demo program for checking disk usage under a specified path |
| 12 | +- FreeBSD CI workflow for automated testing |
| 13 | +- Wide character output support in `Terminal` module |
| 14 | +- Standard time format output in `DateTime` module |
| 15 | +- Escape sequence support in `DateTime` format strings to avoid unnecessary parsing |
| 16 | +- Additional `Socket` options in `Net` module |
| 17 | +- `ping` demo program for network connectivity testing |
| 18 | +- `IniParser` class for INI configuration file parsing |
| 19 | +- XMake build system support |
| 20 | +- Multiple architecture support in CI workflows |
| 21 | +- Custom `Socket` option configuration in `Net` module |
| 22 | +- Hostname resolution to IP address conversion in `Net` module |
| 23 | +- `std::cout`-like stream-style output in `Terminal` module |
| 24 | +- Additional test files to enhance `Net` module stability |
| 25 | +- Windows MSVC/MinGW64 compiler CI workflows |
| 26 | + |
| 27 | +#### Fixed |
| 28 | +- Segmentation fault when frequently polling events in Unix environment |
| 29 | +- Compilation errors in Unix-like systems |
| 30 | +- `/` directory recognition issue in Linux/Mac for `File` module |
| 31 | +- Known issues in `ping` program |
| 32 | +- FreeBSD CI workflow build issues |
| 33 | +- Package retrieval failure in FreeBSD workflow |
| 34 | +- Unit test file compilation errors |
| 35 | +- Compilation issues in Unix environments |
| 36 | +- Improper handling of alternative installation paths in workflows |
| 37 | + |
| 38 | +#### Changed |
| 39 | +- Enhanced `Renderer` rendering mechanism and `Terminal` continuous wide character output handling |
| 40 | +- Strengthened `TUI` module and adjusted related APIs |
| 41 | +- Optimized `Net` module functionality for proper `ping` feedback |
| 42 | +- Reverted version number to `0.X.X` in source code |
| 43 | +- Updated CMake/XMake configuration files |
| 44 | +- Optimized `Net` module with registered available `Socket` options |
| 45 | +- Adjusted `TUI` module and introduced `Net` module (preliminary) |
| 46 | +- Enhanced `Terminal` API with stream-style output |
| 47 | +- Improved workflow for multi-platform support |
| 48 | + |
| 49 | +--- |
| 50 | + |
| 51 | +### 2026-07 |
| 52 | + |
| 53 | +#### Added |
| 54 | +- Linux CI workflow |
| 55 | +- macOS CI workflow |
| 56 | +- `Tree` demo program |
| 57 | +- Formatted string pattern support in `TUI` module |
| 58 | +- Optimized `Event` module with new features |
| 59 | +- New demo programs |
| 60 | + |
| 61 | +#### Fixed |
| 62 | +- Workflow-related issues |
| 63 | +- Minor issues in `DateTime` class |
| 64 | +- Compilation issues in unit test files |
| 65 | +- Various known issues in `OS` module |
| 66 | + |
| 67 | +#### Changed |
| 68 | +- Updated version to 1.1.1 |
| 69 | +- Refined `DateTime` module details |
| 70 | +- Completed and optimized CI workflows |
| 71 | +- Updated all module documentation |
| 72 | +- Optimized `TUI` module |
| 73 | +- Optimized `OS` module with bug fixes |
| 74 | +- Optimized `Events` module and related test units |
| 75 | + |
| 76 | +--- |
| 77 | + |
| 78 | +### 2026-06 |
| 79 | + |
| 80 | +#### Added |
| 81 | +- `EventsMap` for multi-event management |
| 82 | +- `Misc` module in `Demo` for development efficiency |
| 83 | +- Dialog box demo program |
| 84 | +- Editor demo (preliminary) |
| 85 | +- Mouse event support in `Terminal` (Windows) |
| 86 | +- `Renderer` fill row/column functions |
| 87 | +- Auto-redraw on window resize for `Renderer` |
| 88 | + |
| 89 | +#### Fixed |
| 90 | +- Unicode display issues in terminal |
| 91 | +- Windows early version API compatibility issues |
| 92 | +- Mouse button detection logic in Unix-like systems |
| 93 | +- `TUI` logic issues and internal function improvements |
| 94 | + |
| 95 | +#### Changed |
| 96 | +- Added LICENSE header to test files |
| 97 | +- Updated docs and API documentation |
| 98 | +- Enhanced `CommandParser` parsing functionality |
| 99 | +- Added more special key support for Windows |
| 100 | +- Significantly optimized Unix (Linux/Mac) input logic with boundary checks |
| 101 | +- Modified API for format string with nested parsing support |
| 102 | + |
| 103 | +--- |
| 104 | + |
| 105 | +### 2026-05 |
| 106 | + |
| 107 | +#### Added |
| 108 | +- `DateTime` module for date/time handling |
| 109 | +- Time unit user-defined literals |
| 110 | +- Local time to UTC conversion and vice versa |
| 111 | +- `File` module for cross-platform file operations (Windows, Linux, macOS, Unix) |
| 112 | +- `TUI` module for terminal user interface |
| 113 | +- `Events` module for asynchronous event management |
| 114 | +- `OS::System` module for system information (CPU, memory, disk) |
| 115 | +- `Terminal` module for terminal control (raw mode, cursor, colors) |
| 116 | +- `CommandParser` module for command-line argument parsing |
| 117 | +- `Path` class for path handling |
| 118 | +- CMake build system configuration |
| 119 | +- Initial project structure with `File` module (Windows-only initially) |
| 120 | + |
| 121 | +#### Fixed |
| 122 | +- Known issues in `DateTime` module |
| 123 | +- Unix system compatibility for `DateTime` |
| 124 | +- C++11 compilation issues in `File` module |
| 125 | +- Logic issues in `File` module |
| 126 | +- Unix-like system compilation issues |
| 127 | +- Build system configuration |
| 128 | + |
| 129 | +#### Changed |
| 130 | +- Completed `DateTime` module implementation |
| 131 | +- Updated all project documentation |
| 132 | +- Improved `File` module read/write mechanism |
| 133 | +- Updated README documentation |
| 134 | +- Added `TINY_CPP_MY_OS_WINDOWS` and `TINY_CPP_MY_OS_UNIX` macros for platform detection |
| 135 | +- Initial project setup and first commit |
| 136 | +- Established `dev` branch for development |
| 137 | + |
| 138 | +--- |
| 139 | + |
| 140 | +## 中文 |
| 141 | + |
| 142 | +--- |
| 143 | + |
| 144 | +### 2026 年 8 月 |
| 145 | + |
| 146 | +#### 新增 |
| 147 | +- 新增 FreeBSD 系统下获取 CPU、内存等信息的支持 |
| 148 | +- 新增 `du` 示例程序,用于查看指定路径下占用的数据大小 |
| 149 | +- 新增 FreeBSD CI 工作流进行自动化测试 |
| 150 | +- Terminal 新增宽字符输出支持 |
| 151 | +- DateTime 新增输出标准时间格式 |
| 152 | +- DateTime 格式化字符串新增转义字符支持,避免不必要的解析 |
| 153 | +- Net 模块新增更多 Socket 选项 |
| 154 | +- 新增 `ping` 示例程序用于测试网络连通性 |
| 155 | +- 新增 IniParser 配置文件解析器 |
| 156 | +- 新增 XMake 构建系统支持 |
| 157 | +- 新增多平台多架构 CI 工作流支持 |
| 158 | +- Net 模块新增自定义 Socket 设置功能 |
| 159 | +- Net 模块增加支持解析主机名并转换为 IP 地址的功能 |
| 160 | +- Terminal 新增流式输出 API(类似 std::cout 效果) |
| 161 | +- 新增测试文件以加强 Net 模块稳定性 |
| 162 | +- 新增 Windows 系统下 MSVC/MinGW64 编译器的 CI 工作流 |
| 163 | + |
| 164 | +#### 修复 |
| 165 | +- 修复 Unix 环境下频繁获取事件时出现段错误的问题 |
| 166 | +- 修复 Unix-like 系统下的编译错误 |
| 167 | +- 修复 Linux/Mac 下不能正确识别 `/` 目录的问题 |
| 168 | +- 修复 ping 程序部分已知问题 |
| 169 | +- 修复 FreeBSD 工作流构建问题 |
| 170 | +- 修复 FreeBSD 工作流无法获取包的问题 |
| 171 | +- 修复单元测试文件的编译问题 |
| 172 | +- 修复 Unix 下的编译问题 |
| 173 | +- 修复安装路径非标准路径处理不当的问题 |
| 174 | + |
| 175 | +#### 变更 |
| 176 | +- 优化 Renderer 渲染机制以及 Terminal 连续输出宽字符处理功能 |
| 177 | +- 强化 TUI 模块,并进一步调整相关 API |
| 178 | +- 完善 Net 相关功能,使 ping 程序能够正常反馈 |
| 179 | +- 版本号重新修正为 0.X.X |
| 180 | +- 修改 CMake/XMake 相关配置 |
| 181 | +- 完善 Net 模块,注册了部分可用的 Socket 选项 |
| 182 | +- 新增或调整 TUI 模块,新增 Net 网络模块(暂未完善) |
| 183 | +- 强化并新增 Terminal 相关 API,实现类似 std::cout 效果 |
| 184 | +- 优化 CI 工作流以支持多平台 |
| 185 | + |
| 186 | +--- |
| 187 | + |
| 188 | +### 2026 年 7 月 |
| 189 | + |
| 190 | +#### 新增 |
| 191 | +- 新增 Linux CI 工作流 |
| 192 | +- 新增 macOS CI 工作流 |
| 193 | +- 新增 Tree 示例程序 |
| 194 | +- 新增格式化字符串模板模式支持 |
| 195 | +- 优化 Event 模块并新增功能 |
| 196 | +- 新增示例程序 |
| 197 | + |
| 198 | +#### 修复 |
| 199 | +- 修复工作流相关问题 |
| 200 | +- 修复 DateTime 类的细微问题 |
| 201 | +- 修复部分单元测试文件的编译问题 |
| 202 | +- 修复 OS 模块的已知问题 |
| 203 | + |
| 204 | +#### 变更 |
| 205 | +- 针对 DateTime 类做了细微的修改 |
| 206 | +- 完善 CI 工作流 |
| 207 | +- 更新了所有模块的文档 |
| 208 | +- 优化 TUI 模块 |
| 209 | +- 优化 OS 模块并修复问题 |
| 210 | +- 优化 Events 模块及其测试单元 |
| 211 | + |
| 212 | +--- |
| 213 | + |
| 214 | +### 2026 年 6 月 |
| 215 | + |
| 216 | +#### 新增 |
| 217 | +- 新增 EventsMap 用于多事件管理 |
| 218 | +- Demo 模块新增 Misc 辅助模块 |
| 219 | +- 新增对话框示例程序 |
| 220 | +- 新增编辑器示例(未完善) |
| 221 | +- Terminal 新增鼠标操作支持(Windows) |
| 222 | +- Renderer 新增填充行和列的功能 |
| 223 | +- Renderer 支持窗口大小变化时自动重绘 |
| 224 | + |
| 225 | +#### 修复 |
| 226 | +- 修复终端 Unicode 字符显示问题 |
| 227 | +- 修复 Windows 早期版本 API 兼容性问题 |
| 228 | +- 修复 Unix-like 系统下鼠标按键检测逻辑问题 |
| 229 | +- 修复 TUI 逻辑问题及内部函数改进 |
| 230 | + |
| 231 | +#### 变更 |
| 232 | +- 为测试文件添加 LICENSE 头 |
| 233 | +- 更新文档及 API 文档 |
| 234 | +- 增强 CommandParser 解析功能 |
| 235 | +- Windows 添加更多额外特殊键支持 |
| 236 | +- 大幅优化 Unix 输入逻辑及边界检查 |
| 237 | +- 修改 API 支持格式化字符串嵌套解析 |
| 238 | + |
| 239 | +--- |
| 240 | + |
| 241 | +### 2026 年 5 月 |
| 242 | + |
| 243 | +#### 新增 |
| 244 | +- 新增 DateTime 日期时间模块 |
| 245 | +- 新增时间单位字面量支持 |
| 246 | +- 支持本地时间与 UTC 时间转换 |
| 247 | +- 新增 File 模块,支持跨平台文件操作(Windows、Linux、macOS、Unix) |
| 248 | +- 新增 TUI 终端界面模块 |
| 249 | +- 新增 Events 异步事件管理模块 |
| 250 | +- 新增 OS::System 系统信息模块(CPU、内存、磁盘) |
| 251 | +- 新增 Terminal 终端控制模块(原始模式、光标、颜色) |
| 252 | +- 新增 CommandParser 命令行参数解析模块 |
| 253 | +- 新增 Path 路径处理类 |
| 254 | +- 新增 CMake 构建系统配置 |
| 255 | +- 初始项目结构,仅支持 Windows 的 File 模块 |
| 256 | + |
| 257 | +#### 修复 |
| 258 | +- 修复 DateTime 模块已知问题 |
| 259 | +- 修复 Unix 系统下 DateTime 兼容性问题 |
| 260 | +- 修复 File 模块在 C++11 标准下的编译问题 |
| 261 | +- 修复 File 模块逻辑问题 |
| 262 | +- 修复 Unix-like 系统编译问题 |
| 263 | +- 修复构建系统配置 |
| 264 | + |
| 265 | +#### 变更 |
| 266 | +- 完善 DateTime 模块 |
| 267 | +- 更新所有项目文档 |
| 268 | +- 完善 File 模块读写机制 |
| 269 | +- 更新 README 文档 |
| 270 | +- 新增宏定义 TINY_CPP_MY_OS_WINDOWS 和 TINY_CPP_MY_OS_UNIX |
| 271 | +- 初始项目提交 |
| 272 | +- 创建 dev 开发分支 |
0 commit comments