Go-carbon v2.6.8 发布:一个简洁、语义化且开发者友好的 Golang 日期时间处理包
Go-carbon v2.6.8 发布:一个简洁、语义化且开发者友好的 Golang 日期时间处理包
简介
Carbon 是一个简单、语义化且对开发者友好的 Go 语言时间处理包,拥有 100% 的单元测试覆盖率,不依赖 任何 第三方包,并已被 awesome-go 和 hello-github 收录。
快速开始
安装
go version >= 1.21
// 通过 github
go get -u github.com/dromara/carbon/v2
import "github.com/dromara/carbon/v2"
// 通过 gitee
go get -u gitee.com/dromara/carbon/v2
import "gitee.com/dromara/carbon/v2"
// 通过 gitcode
go get -u gitcode.com/dromara/carbon/v2
import "gitee.com/dromara/gitcode/v2"
文档
完整文档请访问 carbon.go-pkg.com
更新日志
- 当布局或格式为空时进行解析,将返回错误
- 在
tests中升级gorm.io/gorm从1.21.1到1.30.0 - 在
tests中升级gorm.io/driver/mysql从1.5.7到1.6.0 - 在
tests中升级gorm.io/driver/postgres从1.5.7到1.6.0 - 在
tests中升级gorm.io/driver/sqlite从1.5.7到1.6.0 - 在
type_builtin.go中将DateTimeType重命名为dateTimeType,DateTimeXXXType重命名为dateTimeXXXType - 在
type_builtin.go中将DateType重命名为dateType,DateXXXType重命名为dateXXXType - 在
type_builtin.go中将TimeType重命名为timeType,TimeXXXType重命名为timeXXXType - 简化 README 文件,并将概览和示例用法迁移至官方文档网站
- 添加 HelloGitHub 徽章链接
更多关于Go-carbon v2.6.8 发布:一个简洁、语义化且开发者友好的 Golang 日期时间处理包的实战教程也可以访问 https://www.itying.com/category-94-b0.html
更多关于Go-carbon v2.6.8 发布:一个简洁、语义化且开发者友好的 Golang 日期时间处理包的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
Go-carbon v2.6.8 的发布进一步优化了包的内部结构和测试依赖。从更新日志来看,这次主要是内部重构和依赖升级,对公共API应该没有破坏性变更。
最值得注意的改进是解析空布局或格式时现在会返回错误,这能帮助开发者更早地发现潜在问题。另外,类型命名的重构(从导出类型改为非导出类型)表明作者在持续优化包的内部设计。
以下是几个常见使用示例:
package main
import (
"fmt"
"github.com/dromara/carbon/v2"
)
func main() {
// 创建当前时间
now := carbon.Now()
fmt.Printf("当前时间: %s\n", now.ToDateTimeString())
// 解析时间字符串
t, err := carbon.Parse("2024-01-15 14:30:00")
if err != nil {
fmt.Printf("解析错误: %v\n", err)
return
}
fmt.Printf("解析的时间: %s\n", t.ToDateTimeString())
// 时间计算
nextWeek := now.AddWeek()
fmt.Printf("一周后: %s\n", nextWeek.ToDateTimeString())
// 时间比较
if now.Gt(t) {
fmt.Println("当前时间晚于解析时间")
}
// 格式化输出
fmt.Printf("ISO8601格式: %s\n", now.ToIso8601String())
fmt.Printf("自定义格式: %s\n", now.Format("2006年01月02日 15:04:05"))
}
测试依赖的升级(GORM和相关驱动)确保了包在最新环境下的兼容性。将详细文档迁移到官方网站能让README更简洁,同时提供更完整的文档体验。
对于已经使用carbon的项目,这个版本应该可以平滑升级。新项目可以直接使用v2.6.8来获得最新的改进和修复。

