変更履歴
v2.6.14 (2025-10-28)
traveler.goファイルの時間増減シリーズメソッドを最適化し、インスタンスをコピーすることで不変性を保証し、元のインスタンスの変更を防ぎますギリシャ語のローカライズ言語サポートを追加フィンランド語のローカライズ言語サポートを追加ミャンマー語のローカライズ言語サポートを追加
v2.6.13 (2025-10-15)
language.goのSetLocaleメソッドでsync.Onceを使用して言語ファイルが一度だけ読み込まれることを保証し、sync.Mapを使用してスレッドセーフなキャッシュを実装helper.goのformat2layoutメソッドでエスケープ文字処理の境界チェックを追加し、範囲外アクセスによるpanicを防止
v2.6.12 (2025-09-16)
golang環境依存を1.21から1.18に下げるtestifyテストフレームワークをv1.10.0からv1.11.1にアップグレードtype_carbon.goファイルのUnmarshalJSONメソッドでisEmptyフラグを設定して空値を示すsync.Mapを使用して高性能な並行キャッシュを実装- 潜在的な競合状態とnullポインタ逆参照の問題を修正し、並行安全性を向上
v2.6.11 (2025-07-18)
Sleepを構造体メソッドからグローバルメソッドに変更ペルシア暦をリファクタリングし、ベンチマークテストファイルを追加中国旧暦をリファクタリングし、ベンチマークテストファイルを追加ユリウス日/修正ユリウス日をリファクタリングし、ベンチマークテストファイルを追加ヘブライ暦サポートを追加し、ユニットテストとベンチマークテストファイルを追加- 全体のパフォーマンステストレポートファイルを追加
v2.6.10 (2025-07-07)
日本語翻訳ファイルをjp.jsonからja.jsonに変更し、ドキュメントをREADME.jp.mdからREADME.ja.mdに名前変更して ISO639-1 標準に準拠- 非推奨の
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などの数値定数を追加し、これらの定数でハードコードを置き換え
v2.6.9 (2025-06-28)
gormのGormDataTypeインタフェースの実装の削除
v2.6.8 (2025-06-12)
- 解析時にレイアウトテンプレートまたはフォーマットテンプレートが空の場合は、エラーを返します
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に、DateTimeXXXXXTypeをdateTimeXXXXTypeに、それぞれ名前を変更しますtype_builtin.goではDateTypeをdateTypeに、DateXXXXXTypeをdateXXXTypeに、それぞれ名前を変更しますtype_builtin.goではTimeTypeをtimeTypeに、TimeXXXXTypeをtimeXXXTypeに、それぞれ名前を変更しますREADMEファイルをシンプル化し、詳細な使用方法と使用例を[公式サイト]に移行(https://carbon.go-pkg.com)- [HelloGitHub](https://hellogithub.com/repository/dromara/carbon)バッジリンク
v2.6.7 (2025-05-26)
Stringメソッドは、null値の炭素のチェックを取り除く- ファイル名を
type_interface.goにinterfaces.goに変更 - オプションパラメータに
Closest/Farthestメソッドの2番目のパラメータを変更する ZeroValue/EpochValueメソッドを追加DataTyperインターフェースを追加し、DataTyperインターフェースを実装するために内蔵型を有効にします
v2.6.6 (2025-05-19)
- 修正バグローカルファイルは
WindowsOSで見つからない - 新しい
Carbonインスタンス #303 を作成するとlayout,weekStartsAt,weekendDaysおよびlangの値の失いを修正します - 修正バグ
StartOfWeekとEndOfWeekメソッドは元のCarbonインスタンスを予期しないように変更します - 現在「MySQL」/「Postgres」/「SQLite」をカバーしている「xorm」のための「curd」統合テストを追加
ciアクションでWindowsOS のユニットテストを追加
v2.6.5 (2025-05-14)
goバージョンを1.18から1.21にアップグレードCarbon構造のSetLanguageメソッドは無効なLanguage構造のチェックを追加しますCarbon構造のParseメソッドはPostgres/SQLiteタイムフォーマット文字列のサポートを追加しますParse/ParseByLayout/ParseByFormatのメソッドはempty文字列を解析するとnilからemptycarbon に戻り値を変更しますCarbon構造はIsEmptyメソッドを追加してEmptyカーボンであるかどうかを判断しますCarbonstructCleanTestNowを置き換えるClearTestNowメソッドを追加します。CleanTestNowは将来削除されます。Carbonstruct addParseByLayoutsmethod to replaceParseWithLayouts,ParseWithLayoutswill be removed in the future.Carbonstruct addParseByFormatsmethod to replaceParseWithFormats、ParseWithFormatsは将来削除されますCarbonstructGormDataTypeメソッドを削除しValue/MarshalJSONメソッドをpointer受信機からvalue受信機に変更しますLayoutType[T]structGormDataTypeメソッドを削除しValue/MarshalJSONメソッドをpointer受信機からvalue受信機に変更しますFormatType[T]structGormDataTypeメソッドを削除しValue/MarshalJSONメソッドをpointer受信機からvalue受信機に変更しますTimestampType[T]structGormDataTypeメソッドを削除しValue/MarshalJSONメソッドをpointer受信機からvalue受信機に変更しますLanguage構造のSetResourcesメソッドは無効なリソースのチェックを追加します- 現在
MySQL/Postgres/SQLiteをカバーしているgormのcurd統合テストを追加 - ユニットテストのために
github.com/stretchr/testify/assertをgithub.com/stretchr/testify/suiteに置き換えます
v2.6.4 (2025-04-28)
- データベースフィールドタイプが `nil' だったときのパニックを修正
- 分割
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メソッドを追加- 炭素を追加します。DateTime タイプアリアスと carbonNewDateTime メソッド
- 炭素を追加します。DateTimeMicro タイプアリアスと
carbon.NewDateTimeMicroメソッド - 炭素を追加します。DateTimeMilli 型の別名と
carbon.NewDateTimeMilliメソッド - 炭素を追加します。DateTimeNano
タイプアリアスと炭素.NewDateTimeNano` メソッド - 炭素を追加します。日付のタイプの別名と炭素。NewDate メソッド
- 炭素を追加します。DateMilli 型の別名と
carbon.NewDateMilliメソッド - 炭素を追加します。DateMicro タイプの別名と
carbon.NewDateMicroメソッド - 炭素を追加します。DateNano のタイプアリアスと
carbon.NewDateNanoメソッド - 炭素を追加します。タイムタイプの別名と炭素。NewTime メソッド
- 炭素を追加します。TimeMilli
タイプの別名と炭素。NewTimeMilli` メソッド - 炭素を追加します。タイムマイクロのタイプ別名とカーボン。NewTimeMicro メソッド
- 炭素を追加します。TimeNano
タイプ別名と炭素。NewTimeNanoメソッド
v2.6.3 (2025-04-21)
- 異なる国で同じ結果のバグを修正
IsWeekendとIsWeekdayメソッドを使用します。 - バグ`カーボンを修正します。解析("").StdTime() はポインターのパニックを引き起こします。 #294 エラーを「private」メソッドから「public」メソッドに変更します
- 週のデフォルトの開始日を
日曜日から月曜日に変更する - MinValue の年を
-9998から1に変更する - 定数
weeksPerLongYearをWeeksPerLongYearに変更する - ベンチマークテストファイル
xxx_bench_test.goを追加 - ユニックス時代であるかどうかを報告するために
IsEpochメソッドを追加します(1970-01-01 00:00:00 +0000 UTC) - 週末の日を得るために
WeekEndsAtメソッドを追加します - 週末の日を設定するために
SetWeekendDaysメソッドを追加します - 週の週末の日を格納するために
DefaultWeekStartsAtグローバル変数を追加します
v2.6.2 (2025-04-08)
- CreateFromLunar、CreateFromPersian メソッドの
hour、minute、secondパラメータを削除します。 - フォーマットシンボルの定義を変更するには
U,V,X,S,TZ,u,v,x,zなどのシンボルが含まれています - 月カレンダーの
IsLeapMonthの不正判断のバグを修正 - 修正
AtomFormatとAtomLayoutのバグが一致しない値を返します - 修正
RFC3339FormatとRFC3339Layoutのバグが一致しない値を返します - 時間ローカルはグローバルタイムゾーンを設定すると更新されません
- タイムゾーンオフセットを取得するためにフォーマットシンボル
oを追加します TimestampLayout,TimestampMilliLayout,TimestampMicroLayout,TimestampNanoLayout定数を追加- 追加
TimestampFormat,TimestampMilliFormat,TimestampMicroFormatおよびTimestampNanoFormat定数 DateTimeMilli,DateTimeMicro,DateTimeNanoフィールドタイプを追加DateMilli、DateMicro、DateNanoフィールドタイプを追加TimeMilli、TimeMicro、TimeNanoフィールドタイプを追加IsDSTメソッドのタイムゾーンバグを修正- タイムゾーンバグ
StartOfXXX、EndOfXXXメソッドが欠けていることを修正します - 他のカレンダーを
グレゴリアンカレンダーに変換するときに欠けているタイムゾーンのバグを修正 - 時間デフォルトタイムゾーンを設定するときにローカルは更新されません
MaxDuration、MinDurationメソッドを追加
v2.6.1 (2025-03-27)
- 追加
ParseWithLayoutsとParseWithFormatsメソッド formatFactoryインターフェイスをFormatFactoryに、layoutFactoryインターフェイスをLayoutFactoryに、timestampFactoryインターフェイスをTimestampFactoryに名前変更し、タイプ制約を追加- LayoutType、FormatType、TimestampType、struct メソッドの返り値を time に変更します。
DateTime,Date,Timeタイプをstructからstringに変更するTimestampMilli、TimestampMicro、TimestampNanoタイプをstructからint64に変更する- 内蔵データベースフィールドタイプを新しいファイル
types.goに移動します - 修正された
updated_atフィールドはgormがデータを更新すると自動的に更新され、無効です
v2.6.0 (2025-03-25)
golang最低バージョン依存性を1.18にアップグレードしましたcarbon,julian,lunar,persianは値のパスからポインターのパスに変更された- タイムゾーン名を取得するために
ZoneNameメソッドを追加します - エラーがあるかどうかを確認するために
HasErrorメソッドを追加します - それが
nilであるかどうかを確認するためにIsNilメソッドを追加します - 深いコピー
炭素にコピーメソッドを追加 - 週の開始日を得るために
WeekStartsAtメソッドを追加します - 例ファイル
xxx_example.goを追加する - 新しい
constant.goファイルを追加し、carbon.goファイルから定数をこのファイルに移行 - デフォルトのグローバルタイムゾーンを
LocalからUTCに変更する - オフセットメソッドをZoneOffsetメソッドに変更
- IsSetTestNow メソッドをIsTestNow メソッドに変更
- UnSetTestNow メソッドをCleanTestNow メソッドに変更
Locationメソッドを削除し、Timezoneメソッドに置き換えますIsValidとIsInvalidメソッドの判断論理を変更し、ゼロタイムはもはや無効タイムとみなされません- 更新
時間。ローカルグローバルデフォルトタイムゾーンを設定するとき - リファクター
database.goおよび削除炭素。日付時間、炭素。DateTimeMilli、カーボン。DateTimeMicro、カーボン。DateTimeNanoは、カーボンです。日付、炭素。DateMilli、カーボン。デートマイクロ、カーボン。デートナノ、カーボン。時間、炭素。TimeMilli、カーボン。タイムマイクロ、カーボン。タイムナノ、カーボン。タイムスタンプ、カーボン。タイムスタンプミリ、カーボン。タイムスタンプマイクロ、カーボン。TimestampNanoフィールドタイプは、MarshalJSON/UnmarshalJSONでカスタム出力フォーマットを実装するために代わりに一般的なフィールドを使用します
旧バージョンの更新ログについては releases を参照してください