登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
模力方舟
AI 队友
登录
注册
轻量养虾,开箱即用!低 Token + 稳定算力,Gitee & 模力方舟联合出品的 PocketClaw 正式开售!点击了解详情
代码拉取完成,页面将自动刷新
开源项目
>
程序开发
>
常用工具包
&&
捐赠
捐赠前请先登录
取消
前往登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
Watch
不关注
关注所有动态
仅关注版本发行动态
关注但不提醒动态
37
Star
445
Fork
69
GVP
dromara
/
carbon
代码
Issues
0
统计
流水线
服务
质量分析
Jenkins for Gitee
腾讯云托管
腾讯云 Serverless
悬镜安全
阿里云 SAE
Codeblitz
SBOM
开发画像分析
我知道了,不再自动展开
标签
标签名
描述
提交信息
操作
v2.6.16
- 修复 `Format` 方法中`u`、`v`、`x`符号解析错误的 bug - 将 `actions/checkout` 从 `v5` 升级到 `v6`
f9dc70d
2026-01-28 20:09
下载
查看发行版
v2.6.15
v2.6.15
23b771c
2025-11-15 16:41
下载
查看发行版
v2.6.14
## 更新内容 - 重构 `traveler.go` 文件里时间增减系列方法通过复制实例来保证不可变性,以避免修改原始实例 - 增加对 `希腊语` 的本地化语言支持 - 增加对 `芬兰语` 的本地化语言支持 - 增加对 `缅甸语` 的本地化语言支持 **完整的更新日志**: https://gitee.com/dromara/carbon/commits/v2.6.14
f7422c7
2025-10-28 21:29
下载
查看发行版
v2.6.13
## 更新内容 - 在 `language.go` 的 `SetLocale` 方法中使用 `sync.Once` 确保语言文件只加载一次,使用 `sync.Map` 进行线程安全的缓存 - 在 `helper.go` 的 `format2layout` 方法中为转义字符处理添加边界检查, 防止越界访问导致的 `panic` **完整的更新日志**: https://gitee.com/dromara/carbon/commits/v2.6.13
3a36ea3
2025-10-15 14:17
下载
查看发行版
v2.6.12
## 更新内容 - 将 `golang` 环境依赖从 `1.21` 降低到 `1.18` - 将 `testify` 测试框架从 `v1.10.0` 升级到 `v1.11.1` - 在 `type_carbon.go` 文件 `UnmarshalJSON` 方法中设置 `isEmpty` 标志以表示空值 - 使用 `sync.Map` 实现高性能并发缓存 - 修复潜在的竞态条件和空指针解引用问题,提高并发安全性 **完整的更新日志**: https://gitee.com/dromara/carbon/commits/v2.6.12
86876fc
2025-09-16 11:08
下载
查看发行版
v2.6.11
## 更新内容 - 将 `Sleep` 由结构体方法更改成全局方法 - 重构波斯历并添加基准测试 - 新增希伯来历支持 - 新增性能测试报告文件 **完整的更新日志**: https://gitee.com/dromara/carbon/commits/v2.6.11
807a09a
2025-07-18 08:05
下载
查看发行版
v2.6.10
## 更新内容 - 将`日语`翻译文件从 `jp.json` 改成 `ja.json`,说明文档从 `README.jp.md` 更名为 `README.ja.md`,以符合 [ISO639-1](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes) 标准 - 移除已弃用的 `ParseWithLayouts` 方法,用 `ParseByLayouts` 方法替代 - 移除已弃用的 `ParseWithFormats` 方法,用 `ParseByFormats` 方法替代 - 移除已弃用的 `CleanTestNow` 方法,用 `ClearTestNow` 方法替代 - 移除 `ParseByLayout` 和 `ParseByFormat` 方法对`时间戳`字符串的解析支持,解析`时间戳`请使用 `CreateFromTimestamp`, `CreateFromTimestampMilli`, `CreateFromTimestampMicro`, `CreateFromTimestampNano` 方法 - 优化 `helper.go` 里 `getAbsValue` 方法,用`位操作`替换条件判断 - 优化 `frozen.go` 文件里时间冻结相关方法,用`原子操作`减少锁竞争,优化内存分配 - 优化基准测试文件,覆盖`串行测试`、`并行测试`和`并发测试` - 新增韩语文档 `README.ko.md` - 新增 `Sleep` 方法及相关`单元测试`、`基准测试`和`示例文件` - 新增数字常量,如 `MaxYear`, `MinYear`, `MaxMonth`, `MinMonth`, `MaxDay`, `MinDay` 等,并使用这些常量替换硬编码 **完整的更新日志**: https://gitee.com/dromara/carbon/commits/v2.6.10
11b197e
2025-07-07 11:07
下载
查看发行版
v2.6.9
移除对 `gorm` 的 `GormDataType` 接口的实现
fd0ca70
2025-06-28 10:05
下载
查看发行版
v2.6.7
## 更新内容 - `String` 方法去掉对空值的检查 - 将 `type_interface.go` 更名为 `interfaces.go` - 将`Closest`/`Farthest` 方法第 2 个参数改成可选参数 - 新增 `ZeroValue`/`EpochValue` 方法 - 新增 `DataTyper` 接口和 `DataType`方法并让内置类型实现 `DataTyper` 接口 **完整的更新日志**: https://gitee.com/dromara/carbon/compare/v2.6.6...v2.6.7
6343c72
2025-06-11 23:40
下载
查看发行版
v2.6.6
- 修复在 `window` 平台无法找到语言文件的 bug - 修复在创建新的 `Carbon` 实例时丢失`layout`、`weekStartsAt`、`weekendDays` 和 `lang 值的错误 #303 - 修复 `StartOfWeek` 和 `EndOfWeek`方法意外更改原始 `Carbon`实例的错误 #304 - 新增对 `xorm` 的 `curd` 集成测试,目前已覆盖 `MySQL`/`Postgres`/`SQLite` - 在 `ci` 中新增 `window` 系统的单元测试
5c715d5
2025-05-19 11:42
下载
查看发行版
v2.6.5
- 将 `Go` 最低版本要求从 `1.18` 提升到 `1.21` - `Carbon` 结构体的 `SetLanguage` 方法增加对非法 `Language` 结构体的判断 - `Carbon` 结构体的`Parse` 方法增加对 `MySQL`/`Postgres`/`SQLite` 时间格式字符串的解析支持 - `Carbon` 结构体的`Parse`/`ParseByLayout`/`ParseByFormat`方法解析 `空字符串` 时返回值从 `nil` 更改成空 `carbon` - `Carbon` 结构体新增 `IsEmpty` 方法用于判断是否为空 `carbon` - `Carbon` 结构体新增 `ClearTestNow` 方法替代 `CleanTestNow`, `CleanTestNow` 方法未来将移除 - `Carbon` 结构体新增 `ParseByLayouts` 方法替代 `ParseWithLayouts`, `ParseWithLayouts` 方法未来将移除 - `Carbon` 结构体新增 `ParseByFormats` 方法替代 `ParseWithLayouts`, `ParseWithFormats` 方法未来将移除 - `Carbon` 结构体移除 `GormDataType `方法, 并将 `Value`/`MarshalJSON `方法从指针接收者改成值接收者 - `LayoutType[T]` 结构体移除 `GormDataType `方法, 并将 `Value`/`MarshalJSON `方法从`指针`接收者改成`值`接收者 - `FormatType[T]` 结构体移除 `GormDataType `方法, 并将 `Value`/`MarshalJSON `方法从`指针`接收者改成`值`接收者 - `TimestampType[T]` 结构体移除 `GormDataType `方法, 并将 `Value`/`MarshalJSON `方法从`指针`接收者改成`值`接收者 - `Language` 结构体的 `SetResources` 方法增加对非法资源的判断 - 新增对 `gorm` 的 `curd` 集成测试,目前已覆盖 `MySQL`/`Postgres`/`SQLite` - 使用 `github.com/stretchr/testify/assert` 替换 `github.com/stretchr/testify/suite` 进行单元测试
64bba24
2025-05-14 17:16
下载
查看发行版
v2.6.4
##### English - Fix panic when database field type was `nil` - Split `database_types.go` into` type_carbon.go`, `type_layout.go`, `type_format.go`, `type_timestamp.go` - Rename `LayoutFactory` interface to `LayoutTyper` and `SetLayout` method to `Layout` - Rename `FormatFactory` interface to `FormatTyper` and `SeFormat` method to `Format` - Rename `TimestampFactory` interface to `TimestampTyper` and `SePrecision` method to `Precision` - Add `b.ResetTimer()` in benchmark test files - Add `Copy` method for `Language` struct - Add `carbon.Timestamp` type alias and `carbon.NewTimestamp` method - Add `carbon.TimestampMilli` type alias and `carbon.NewTimestampMilli` method - Add `carbon.TimestampMicro` type alias and `carbon.NewTimestampMicro` method - Add `carbon.TimestampNano` type alias and `carbon.NewTimestampNano` method - Add `carbon.DateTime` type alias and `carbon.NewDateTime` method - Add `carbon.DateTimeMicro` type alias and `carbon.NewDateTimeMicro` method - Add `carbon.DateTimeMilli` type alias and `carbon.NewDateTimeMilli` method - Add `carbon.DateTimeNano` type alias and `carbon.NewDateTimeNano` method - Add `carbon.Date` type alias and `carbon.NewDate` method - Add `carbon.DateMilli` type alias and `carbon.NewDateMilli` method - Add `carbon.DateMicro` type alias and `carbon.NewDateMicro` method - Add `carbon.DateNano` type alias and `carbon.NewDateNano` method - Add `carbon.Time` type alias and `carbon.NewTime` method - Add `carbon.TimeMilli` type alias and `carbon.NewTimeMilli` method - Add `carbon.TimeMicro` type alias and `carbon.NewTimeMicro` method - Add `carbon.TimeNano` type alias and `carbon.NewTimeNano` method ##### 中文 - 修复数据库字段类型为 `nil` 时抛出异常的bug - 将 `database_types.go` 拆分成 `type_carbon.go`, `type_layout.go`, `type_format.go`, `type_timestamp.go` - 将 `LayoutFactory` 接口重命名为 `LayoutTyper` 和 `SetLayout` 方法重命名为 `Layout` - 将 `FormatFactory` 接口重命名为 `FormatTyper` 和 `SetFormat` 方法重命名为 `Format` - 将 `TimestampFactory` 接口重命名为 `TimestampTyper` 和 `SetPrecision` 方法重命名为 `Precision` - 性能测试文件增加 `b.ResetTimer()` - `Language` 结构体新增 `Copy` 方法 - 新增 `carbon.Timestamp` 类型别名和 `carbon.NewTimestamp` 方法 - 新增 `carbon.TimestampMilli` 类型别名和 `carbon.NewTimestampMilli` 方法 - 新增 `carbon.TimestampMicro` 类型别名和 `carbon.NewTimestampMicro` 方法 - 新增 `carbon.TimestampNano` 类型别名和 `carbon.NewTimestampNano` 方法 - 新增 `carbon.DateTime` 类型别名和 `carbon.NewDateTime` 方法 - 新增 `carbon.DateTimeMicro` 类型别名和 `carbon.NewDateTimeMicro` 方法 - 新增 `carbon.DateTimeMilli` 类型别名和 `carbon.NewDateTimeMilli` 方法 - 新增 `carbon.DateTimeNano` 类型别名和 `carbon.NewDateTimeNano` 方法 - 新增 `carbon.Date` 类型别名和 `carbon.NewDate` 方法 - 新增 `carbon.DateMilli` 类型别名和 `carbon.NewDateMilli` 方法 - 新增 `carbon.DateMicro` 类型别名和 `carbon.NewDateMicro` 方法 - 新增 `carbon.DateNano` 类型别名和 `carbon.NewDateNano` 方法 - 新增 `carbon.Time` 类型别名和 `carbon.NewTime` 方法 - 新增 `carbon.TimeMilli` 类型别名和 `carbon.NewTimeMilli` 方法 - 新增 `carbon.TimeMicro` 类型别名和 `carbon.NewTimeMicro` 方法 - 新增 `carbon.TimeNano` 类型别名和 `carbon.NewTimeNano` 方法
65ca201
2025-04-28 10:50
下载
查看发行版
v2.6.3
##### English - Fix bug with the same results in different countries using `IsWeekend` and `IsWeekday` methods. - Fix bug `carbon.Parse("").StdTime()` cause a nil pointer panic. #294 - Change errors from `private` method to `public` method. - Change the default start date of the week from `Sunday` to `Monday` - Change the year of `MinValue` from `-9998` to `1` - Change `weeksPerLongYear` constant to `WeeksPerLongYear` - Add benchmark test files `xxx_bench_test.go` - Add `IsEpoch` method to report whether is a unix epoch time(1970-01-01 00:00:00 +0000 UTC). - Add `WeekEndsAt` method to get end day of the week. - Add `SetWeekendDays` method to set weekend days of the week. - Add `DefaultWeekStartsAt` global variable to store weekend days of the week. ##### 中文 - 修复 `IsWeekend`, `IsWeekday` 方法不同国家返回结果一致的 bug - 修复 `StdTime` 方法空指针引起的异常 #294 - 将错误方法由 `私有` 方法改成 `公开` 方法 - 将一周默认开始日期从 `周日` 改成 `周一` - 将 `MinValue` 方法的年份从 `-9998` 更改为 `1` - 将 `weeksPerLongYear` 常量更名为 `WeeksPerLongYear` - 新增性能测试文件 `xxx_bench_test.go` - 新增 `IsEpoch` 方法用于判断是否是 UNIX 纪元时间(1970-01-01 00:00:00 +0000 UTC) - 新增 `WeekEndsAt` 方法用于获取一周的结束日期 - 新增 `SetWeekendDays` 方法用于设置一周周末日期 - 新增 `DefaultWeekStartsAt` 全局变量用于存储默认一周休息日
552d38e
2025-04-21 09:33
下载
查看发行版
v2.6.2
##### English - Remove `hour`, `Minute`,`second` parameter in `CreateFromLunar`,`CreateFromPersian ` methods - Change some format symbol definitions involves symbols such as `U`, `V`, `X`,`S`,`T` `Z`,`u`,`v`,`x`,`z` - Fix bug of incorrect judgment of `IsLeapMonth` in lunar calendar - Fix bug of `AtomFormat` and `AtomLayout` return inconsistent value - Fix bug of `RFC3339Format` and `RFC3339Layout` return inconsistent value - `time.Local` is not updated when setting global time zone - Add format symbol `o` to get time zone offset - Add `TimestampLayout`, `TimestampMilliLayout`, `TimestampMicroLayout` and `TimestampNanoLayout` constants - Add `TimestampFormat`, `TimestampMilliFormat`, `TimestampMicroFormat` and `TimestampNanoFormat` constants - Add `DateTimeMilli`, `DateTimeMicro`, `DateTimeNano` field types - Add `DateMilli`、`DateMicro`、`DateNano` field types - Add `TimeMilli`、`TimeMicro`、`TimeNano` field types - Fix missing timezone bug in `IsDST` method - Fix missing timezone bug `StartOfXXX`, `EndOfXXX` methods - Fix missing timezone bug when converting other calendars to `Gregorian` calendar - `time.Local` is not updated when setting default timezone - Add `MaxDuration`, `MinDuration` methods ##### 中文 - `CreateFromLunar`, `CreateFromPersian` 方法去掉 hour, minute, second 参数 - 更改部分格式符号定义,涉及到的符号有 `U`, `V`, `X`,`S`,`T` `Z`,`u`,`v`,`x`,`z` - 修复农历中 `IsLeapMonth` 判断错误的 bug - 修复 `AtomFormat` 和 `AtomLayout` 格式返回值不一致的 bug - 修复 `RFC3339Format` 和 `RFC3339Layout` 格式返回值不一致的 bug - 设置全局默认时区时不再同步更新 `time.Local` - 新增格式符号`o` 来获取时区偏移量 - 新增 `TimestampLayout`、`TimestampMilliLayout`、`TimestampMicroLayout` 和 `TimestampNanoLayout` 常量 - 新增 `TimestampFormat`、`TimestampMilliFormat`、`TimestampMicroFormat` 和 `TimestampNanoFormat` 常量 - 新增 `DateTimeMilli`、`DateTimeMicro`、`DateTimeNano` 字段类型 - 新增 `DateMilli`、`DateMicro`、`DateNano` 字段类型 - 新增 `TimeMilli`、`TimeMicro`、`TimeNano` 字段类型 - 修复 `IsDST` 方法丢失时区的 bug - 修复 `StartOfXXX`、`EndOfXXX` 部分方法丢失时区的 bug - 修复其他日历转化为公历时缺失时区的 bug - 设置默认时区时不再同步更新 `time.Local` - 新增 `MaxDuration`、`MinDuration` 方法
92e0ce8
2025-04-08 10:57
下载
查看发行版
v2.6.2-rc1
##### 中文 - `CreateFromLunar`, `CreateFromPersian` 方法去掉 hour, minute, second 参数 - 更改部分格式符号定义,涉及到的符号有 `U`, `V`, `X`,`S`,`T` `Z`,`u`,`v`,`x`,`z` - 修复农历中 `IsLeapMonth` 判断错误的 bug - 修复 `AtomFormat` 和 `AtomLayout` 格式返回值不一致的 bug - 修复 `RFC3339Format` 和 `RFC3339Layout` 格式返回值不一致的 bug - 设置全局默认时区时不再同步更新 `time.Local` - 新增格式符号`o` 来获取时区偏移量 - 新增 `TimestampLayout`、`TimestampMilliLayout`、`TimestampMicroLayout` 和 `TimestampNanoLayout` 常量 - 新增 `TimestampFormat`、`TimestampMilliFormat`、`TimestampMicroFormat` 和 `TimestampNanoFormat` 常量 - 新增 `DateTimeMilli`、`DateTimeMicro`、`DateTimeNano` 字段类型 - 新增 `DateMilli`、`DateMicro`、`DateNano` 字段类型 - 新增 `TimeMilli`、`TimeMicro`、`TimeNano` 字段类型 ##### English - Remove `hour`, `Minute`,`second` parameter in `CreateFromLunar`,`CreateFromPersian ` methods - Change some format symbol definitions involves symbols such as `U`, `V`, `X`,`S`,`T` `Z`,`u`,`v`,`x`,`z` - Fix bug of incorrect judgment of `IsLeapMonth` in lunar calendar - Fix bug of `AtomFormat` and `AtomLayout` return inconsistent value - Fix bug of `RFC3339Format` and `RFC3339Layout` return inconsistent value - `time.Local` is not updated when setting global time zone - Add format symbol `o` to get time zone offset - Add `TimestampLayout`, `TimestampMilliLayout`, `TimestampMicroLayout` and `TimestampNanoLayout` constants - Add `TimestampFormat`, `TimestampMilliFormat`, `TimestampMicroFormat` and `TimestampNanoFormat` constants - Add `DateTimeMilli`, `DateTimeMicro`, `DateTimeNano` field types - Add `DateMilli`、`DateMicro`、`DateNano` field types - Add `TimeMilli`、`TimeMicro`、`TimeNano` field types
ca6e28c
2025-03-31 11:50
下载
查看发行版
v2.6.1
- 新增 `ParseWithLayouts` 和 `ParseWithFormats` 方法 - 将 `formatFactory` 接口更名为 `FormatFactory`, `formatFactory` 接口更名为 `FormatFactory`, `formatFactory` 接口更名为 `FormatFactory`, 并添加类型约束 - 将 `LayoutType` ,`FormatType`, `TimestampType` 结构体`GormDataType` 方法的返回值更改为 `time` - 将 `DateTime`、`Date`、`Time` 类型从 `struct` 更改为 `string` - 将`Timestamp`、`TimestampMilli`、`TimestampMicro`,`TimestampNano` 类型从 `struct` 更改为 `int64` - 将内置数据库字段类型移动到新文件 `types.go` - 修复 `gorm` 更新数据时 `updated_at` 字段自动更新无效的 bug
e3cc5e4
2025-03-27 13:45
下载
查看发行版
v2.6.0
- `golang` 最低版本依赖升级到 `1.18` - `carbon`, `julian`, `lunar`, `persian` 从值传递改成指针传递 - 新增 `ZoneName` 方法获取时区名称 - 新增 `HasError` 方法判断是否有错误 - 新增 `IsNil` 方法判断是否是 `nil` - 新增 `Copy` 方法对 `carbon` 进行深度复制 - 新增 `WeekStartsAt` 方法获取周起始日期 - 新增示例文件 `xxx_example.go` - 新增`constant.go` 文件,将常量从 `carbon.go` 文件迁移到此文件 - 默认全局时区从 `Local` 更改为 `UTC` - `Offset` 方法更名为 `ZoneOffset` - `IsSetTestNow` 方法更名为 `IsTestNow` - `UnSetTestNow ` 方法更名为 `CleanTestNow` - 移除 `Location` 方法,由 `Timezone` 方法替代 - 更改 `IsValid` 和 `IsInvalid` 方法判断逻辑,`zero time` 不再视为无效时间 - 设置全局默认时区时同步更新 `time.Local` - 重构 `database.go`,移除 `carbon.DateTime`、`carbon. DateTimeMilli `、 `carbon.DateTimeMicro`、`carbon.DateTimeNano`、 `carbon. Date`、`carbon.DateMilli`、 `carbon.DateMicro`、 `carbon.DateNano`、 `carbon.Time`、 `carbon.TimeMilli`、 `carbon.TimeMicro`、 `carbon.TimeNano`、`carbon.Timestamp` 、`carbon.TimestampMilli ` 、`carbon.TimestampMicro`、`carbon.TimestampNano` 字段类型, 使用泛型字段替代以实现 `MarshalJSON/UnmarshalJSON` 时自定义输出格式
e13bf3b
2025-03-25 08:05
下载
查看发行版
v2.5.4
**完整的更新日志**: https://gitee.com/dromara/carbon/commits/v2.5.4
89cf2b3
2025-03-05 14:19
下载
查看发行版
v2.5.2
- 修复 `Time`, `TimeMilli`, `TimeMicro`, `TimeNano` 字段进行`UnmarshalJSON` 时无法解析的 bug - 移除弃用的方法 `ToStdTime` - 公历新增 `MaxValue`, `MinValue`, `IsValid ` 方法 - 农历新增 `MaxValue`, `MinValue`, `IsValid ` 方法 - 波斯历(伊朗历)新增 `MaxValue`, `MinValue`, `ToShortMonthString`, `ToShortWeekString` 方法 - 波斯历(伊朗历) `ToMonthString`, `ToWeekString` 方法新增可选参数`locale`,可选值 `en`/`fa` - 农历,波斯历(伊朗历)等增加日期合法性判断
4555e1e
2024-12-03 10:19
下载
查看发行版
v2.5.1
* 增加 `MaxValue`,`MinValue` 方法 * 增加参考项目 * 优化 `IsValid` 方法判断逻辑,基 `MinValue`, `MinValue` 方法 * `Time`, `TimeMilli`, `TimeMicro`, `TimeNano` 结构体进行 `UnmarshalJSON` 时设置默认年月日为当前时间 * 修复日文翻译错误 * `github.com/stretchr/testify` 从 `1.9.0` 升级到 `1.10.0` **完整的更新日志**: https://gitee.com/dromara/carbon/commits/v2.5.1
e458c17
2024-11-29 15:57
下载
查看发行版
下载
请输入验证码,防止盗链导致资源被占用
取消
下载
Go
1
https://gitee.com/dromara/carbon.git
git@gitee.com:dromara/carbon.git
dromara
carbon
carbon
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册