Skip to content

Releases: dromara/carbon

v1.4.5

28 Jul 01:35
Compare
Choose a tag to compare
  • 修复IsFebruary()备注信息错误的bug
  • 修复WeekOfMonth()计算错误的bug
  • 修复文档中单词拼写错误
  • 部分源码中增加英文备注
  • ToRfc1123ZString()方法改名为ToRfc1123zString()

v1.4.4

23 Jul 15:20
Compare
Choose a tag to compare
  • 修复CreateFromDate()和CreateFromTime()方法缺少时区的bug
  • 删除ToUtcString()方法,用TocString(carbon.UTC)代替
  • 新增Format()方法对C和Q的解析,获取当前世纪数和季节数
  • 新增IsInvalid()方法判断是否无效
  • 新增Location()方法获取位置,如PRC
  • 新增Offset()方法获取获取距离UTC时区的偏移量,如28800
  • 新增Layout()方法输出指定布局的字符串,如carbon.Layout("2006年01月02日")
  • 新增ToIso8601String()方法获取ISO8601格式字符串,如2020-08-05T13:14:15+08:00
  • 优化Now()、Yesterday()、Tomorrow()方法,新增可选参数timezone
  • 优化CreaterFromXXX()系列方法,新增可选参数timezone
  • 优化ToXXXString()系列方法,新增可选参数timezone
  • 优化CreateFromTimestamp()方法,支持负数时间戳
  • 优化单元测试覆盖场景,单元测试覆盖率提升到99%
  • 将各类错误独立到errors.go文件,并修改部分错误文案

v1.4.3

19 Jul 06:37
Compare
Choose a tag to compare
  • 优化IsZero()方法的判断逻辑
  • 修复Microsecond()方法获取毫秒数错误的bug
  • 修复SetMicrosecond()方法设置毫秒数错误的bug
  • 修复Lunar().Festival()方法不是任何节气时panic的bug
  • 修复Format()方法无法原样解析的bug, 如carbon.Parse("2020-08-05 13:14:15").Format("\I\t \i\s Y-m-d H:i:s")
  • 修复ParseByFormat()方法无法原样解析的bug,如carbon.ParseByFormat("It is 2020-08-05 13:14:15", "\I\t \i\s Y-m-d H:i:s")
  • 使用github.com/stretchr/testify/assert库替代原生testing库
  • 增加单元测试覆盖场景,单元测试覆盖率提升到96%
  • 统一错误格式,修改部分错误文案
  • Lunar()方法实现Stringer接口,可以直接作为字符串输出农历年月日,同Lunar().ToString()
  • 新增Lunar().ToString()方法获取农历年月日,如二零二零年六月十六
  • 新增对json.UnmarshalJSON()的支持
  • 新增CreateFromTimestamp()方法对时间戳是0的判断

v1.4.2

14 Jul 01:51
Compare
Choose a tag to compare
  • Lunar().ToChineseYearString()方法更改为Lunar().ToYearString()
  • Lunar().ToChineseMonthString()方法更改为Lunar().ToMonthString()
  • Lunar().ToChineseDayString()方法更改为Lunar().ToDayString()
  • New()方法更改为NewCarbon(),以避免New()和Now()相似而混淆
  • 优化CreaterFromXXX系列方法对默认纳秒的处理,将默认纳秒设为当前纳秒
  • 增加单元测试覆盖场景
  • 增加对无效时间的判断
  • 新增Decade()方法获取当前年代
  • 新增StartOfDecade()方法获取当前年代的开始时间
  • 新增EndOfDecade()方法获取当前年代的结束时间
  • 新增Season()方法获取当前季节,支持i18n
  • 新增StartOfSeason()方法获取当前季节的开始时间
  • 新增EndOfSeason()方法获取当前季节结束时间
  • 新增IsSpring()方法判断是否是春季
  • 新增IsSummer()方法判断是否是夏季
  • 新增IsAutumn()方法判断是否是秋季
  • 新增IsWinter()方法判断是否是冬季

v1.4.1

08 Jul 02:17
Compare
Choose a tag to compare
  • 新增韩语翻译文件kr.json
  • 新增Lunar().Year()方法获取农历年年份
  • 新增Lunar().Month()方法获取农历月月份
  • 新增Lunar().LeapMonth()方法获取农历闰月月份
  • 新增Lunar().Day()方法获取农历日日期
  • 新增Lunar().ToChineseYearString()方法获取农历年字符串
  • 新增Lunar().ToChineseMonthString()方法获取农历月字符串
  • 新增Lunar().ToChineseDayString()方法获取农历日字符串
  • 新增Lunar().ToGanZhiYearString()方法获取干支纪年字符串
  • 新增Lunar().ToGanZhiMonthString()方法获取干支纪月字符串
  • 新增Lunar().ToGanZhiDayString()方法获取干支纪日字符串
  • 新增Lunar().IsLeapYear()方法判断是否是闰年
  • 新增Lunar().IsLeapMonth()方法判断是否是闰月
  • 修复Tomorrow()、Yesterday()、AddMonths()方法缺少时区的bug
  • database.go文件拆分成database.go和json.go两个文件

v1.4.0

30 Jun 01:43
Compare
Choose a tag to compare
  • 新增StartOfCentury()方法获取当前世纪的开始时间
  • 新增EndOfCentury()方法获取当前世纪的结束时间
  • 新增StartOfQuarter()方法获取当前季度的开始时间
  • 新增EndOfQuarter()方法获取当前季度的结束时间
  • NewCarbon()方法改名为New()

v1.3.9

18 Jun 07:50
Compare
Choose a tag to compare
  • StartOfWeek()和EndOfWeek()支持自定义一周开始时间
  • 新增NewCarbon()方法

v1.3.8

04 Jun 08:47
Compare
Choose a tag to compare
  • 修复Carbon 转换成 time.Time 时未带时区的bug
  • 新增ToDateTimeStringWithTimezone()方法输出指定时区的日期时间字符串
  • 新增ToDateStringWithTimezone()方法输出指定时区的日期字符串
  • 新增ToTimeStringWithTimezone()方法输出指定时区的时间字符串
  • 新增ToAnsicStringWithTimezone()方法输出指定时区的 Ansic 格式字符串
  • 新增ToAtomStringWithTimezone()方法输出指定时区的 Atom 格式字符串
  • 新增ToUnixDateStringWithTimezone()方法输出指定时区的 UnixDate 格式字符串
  • 新增ToRubyDateStringWithTimezone()方法输出指定时区的 RubyDate 格式字符串
  • 新增ToKitchenStringWithTimezone()方法输出指定时区的 Kitchen 格式字符串
  • 新增ToCookieStringWithTimezone()方法输出指定时区的 Cookie 格式字符串
  • 新增ToDayDateTimeStringWithTimezone()方法输出指定时区的 DayDateTime 格式字符串
  • 新增ToRssStringWithTimezone()方法输出指定时区的 RSS 格式字符串
  • 新增ToW3cStringWithTimezone()方法输出指定时区的 W3C 格式字符串
  • 新增ToRfc822StringWithTimezone()方法输出指定时区的 RFC822 格式字符串
  • 新增ToRfc822zStringWithTimezone()方法输出指定时区的 RFC822Z 格式字符串
  • 新增ToRfc850StringWithTimezone()方法输出指定时区的 RFC850 格式字符串
  • 新增ToRfc1036StringWithTimezone()方法输出指定时区的 RFC1036 格式字符串
  • 新增ToRfc1123StringWithTimezone()方法输出指定时区的 RFC1123 格式字符串
  • 新增ToRfc2822StringWithTimezone()方法输出指定时区的 RFC2822 格式字符串
  • 新增ToRfc3339StringWithTimezone()方法输出指定时区的 RFC3339 格式字符串
  • 新增ToRfc7231StringWithTimezone()方法输出指定时区的 RFC7231 格式字符串

v1.3.7

07 Apr 07:40
Compare
Choose a tag to compare
  • 修复time.Date()时区缺失的bug
  • 修复IsZero()判断错误的bug
  • 修复注释错误bug
  • 优化getLocationByTimezone()方法对UTC时区判断
  • carbon实现Stringer接口
  • 统一代码风格

v1.3.6

05 Apr 02:30
Compare
Choose a tag to compare
  • 修复modifier.go文件中结束时间的纳秒设置错误的bug
  • 优化database.go文件Scan()方法区的设置
  • setter.go文件新增SetMillisecond()方法设置毫秒
  • setter.go文件新增SetMicrosecond()方法设置微秒
  • setter.go文件新增SetNanosecond()方法设置纳秒
  • 性能优化