Skip to content

Core(共通ライブラリ)の変更履歴 ​

第1版作成 最終更新 (日本時間)

Core の公開済みの全プレビュー版を新しい順に並べます。公開日は日本時間です。機能と版の対応は 概要 の対応表も参照してください。

プレビュー版の変更履歴です

Core には安定版がなく、0.1.0-preview.N だけが公開されています。1.0.0 未満は互換が保証されないため、版を上げるときは、各版の内容を確かめてください。まだリリースされていない変更(リポジトリにあって、タグと nuget.org に出ていないもの)は、この履歴に載せません。

0.1.0-preview.9 ​

2026-10-21 公開(nuget.org)。

変更 ​

  • IAdminUserStore.SetLanguageAsync が、空文字(「選んでいない」=ブラウザの言語に従う)を受け付けるようになりました。preview.8 では、空文字は ArgumentException でした。空白だけの値と、16 文字を超える値は、引き続き ArgumentException です。

更新時に必要な作業 ​

  • 表示言語を「選んでいない」へ戻す処理がある場合に、preview.9 以降で使えます。列の変更はありません。

0.1.0-preview.8 ​

2026-10-21 公開(nuget.org)。

追加 ​

  • IAdminUserStore.ListUnusedRecoveryCodeHashesAsync: 利用者の未使用の復旧コードのハッシュの一覧を返します。塩つきのハッシュは入力から同じ値を作れないので、呼び出し側が 1 件ずつ照合し、一致したハッシュで TryUseRecoveryCodeAsync を呼びます。
  • IAdminUserStore.SetLanguageAsync: 管理者の表示言語を変えます。存在しない ID は AdminChangeResult.NotFound です。同じ値への更新を MySQL が 0 件と数えるため、存在するかを別に確かめて判定します。

変更 ​

  • 依存パッケージ Microsoft.Extensions.Logging.Abstractions・Microsoft.Extensions.DependencyInjection を 10.0.12 から 10.0.13 に更新しました。

更新時に必要な作業 ​

  • IAdminUserStore に 2 つのメソッドが増えました。 このインターフェイスを自前で実装している場合は、実装を追加しないとビルドが通りません。AdminUserStore(Core の実装)をそのまま使う場合は不要です。

0.1.0-preview.7 ​

2026-10-20 公開(nuget.org)。

追加 ​

  • AuditLogQuery.ActorLoginContains: 監査ログを、ログイン ID の部分一致(大文字小文字を区別しない)で絞り込みます。

変更 ​

  • AuditLogQuery.ActionContains(操作の名前の部分一致)が、大文字小文字を区別しない比較になりました。両辺を小文字にして比べます。preview.6 では、LIKE の大文字小文字の扱いが RDBMS と照合順序に依存していました。

更新時に必要な作業 ​

  • 監査ログを ActionContains で絞り込む画面は、大文字小文字の違う操作名も拾うようになります。列の変更はありません。

0.1.0-preview.6 ​

2026-10-20 公開(nuget.org)。

追加 ​

  • 共有ストア(Core.Data): RateLimitStore・AdminInvitationStore・AppSettingStore・MailOutbox・AuditLogStore・AdminUserStore・AdminSessionStore と、それぞれのインターフェイス。詳細は 共有ストア を参照してください。
  • 共有マイグレーション M10001〜M10007 と、Core_ 接頭辞の表(Core_RateLimits・Core_AdminInvitations・Core_AppSettings・Core_MailOutbox・Core_AuditLogs・Core_AdminUsers・Core_AdminSetup・Core_AdminRecoveryCodes・Core_AdminSessions)。詳細は マイグレーションと共有表 を参照してください。

変更 ​

  • DatabaseMigrator が、アプリのマイグレーションのアセンブリに加えて、Core.Data 自身のアセンブリも走査するようになりました。共有マイグレーションがアプリの分と一緒に当たります。

更新時に必要な作業 ​

  • preview.5 以前から上げると、起動時のマイグレーションで Core_ の表がすべて作られます。 DB を作成・変更できる権限で起動できるか、事前に確認してください。使わないストアの表も作られます。
  • アプリ自身のマイグレーションの番号は、4 桁(共有表を前提にしない分)か 6 桁(共有表の後に動かしたい分)にします。5 桁(M10001 から M99999)は Core が使います。

0.1.0-preview.5 ​

2026-10-20 公開(nuget.org)。

追加 ​

  • AppDatabase: アプリ ID とマイグレーションのアセンブリから、設定名(<ID>_DB_PROVIDER・<ID>_DB_CONNECTIONSTRING・<ID>_DB_ALLOW_INSECURE)・SQLite の既定ファイル名(<id>.db)・マイグレーションのロック名(<id>-startup-migrations)を規約で導きます。マイグレーションの適用(Migrator)、RDBMS の読み取り(ParseProvider)、接続文字列の解決、暗号化の検査も持ちます。DatabaseConnectionInfo も加わりました。詳細は DB の接続・暗号化・排他 を参照してください。

更新時に必要な作業 ​

  • 既存の呼び出し(DatabaseMigrator の直接の構築など)は、そのまま使えます。AppDatabase を採用するかはアプリ側の選択です。

0.1.0-preview.4 ​

2026-10-20 公開(nuget.org)。

追加 ​

  • SqliteTypeHandlers が公開され、AddModelAssemblies で、アプリのモデル型(列挙型・record)を持つアセンブリを SQLite の型の対応表へ知らせられるようになりました。preview.3 までは、Core.Data 自身のアセンブリだけが対象で、アプリのモデルを SQLite で読むと Dapper が組み立てられませんでした。

更新時に必要な作業 ​

  • SQLite を使い、アプリのモデルを Dapper で読むアプリは、AppDatabase の採用(preview.5 以降)か AddModelAssemblies の呼び出しで、モデルのアセンブリを知らせます。

0.1.0-preview.3 ​

2026-10-20 公開(nuget.org)。

変更 ​

  • DatabaseMigrationLock を internal から public にしました。通常は DatabaseMigrator が使いますが、RDBMS ごとの名前付きロックの動きを直接試すためなど、排他だけが要るときに使えます。
  • NuGet のパッケージに PackageTags を追加しました(検索のための情報)。

更新時に必要な作業 ​

  • なし(機能の追加のみ)。

0.1.0-preview.2 ​

2026-10-20 公開(nuget.org)。

変更 ​

  • nuget.org での最初の公開です。以後の版は nuget.org へ公開されます(preview.1 は GitHub Packages にだけあります)。
  • 依存パッケージを更新しました(AWSSDK.SimpleEmailV2 を 4.0.106.4、Microsoft.Data.Sqlite・Microsoft.Extensions.Configuration.Abstractions を 10.0.13)。公開しているコード(src/)の機能は preview.1 と同じです。

更新時に必要な作業 ​

  • GitHub Packages から参照している場合は、nuget.org の参照へ切り替えます。nuget.org は認証なしで取得できるので、nuget.config の追加もトークンも要りません。

0.1.0-preview.1 ​

2026-10-18 のタグ。GitHub Packages にだけ公開されており、nuget.org にはありません(認証が必要)。

追加 ​

  • 各ツールで別々に育っていたコピーを 1 か所へ集める最初の切り出しです。
    • Core.Data: DatabaseProvider・DatabaseConnectionString・DbConnectionFactory・ConnectionSecurity(暗号化の検査)・DatabaseMigrator(起動時マイグレーションと排他)・DatabaseStartupState・DbTime・SqlDialect・SqliteTypeHandlers(内部向け)。
    • Core.Mail: MailOptions(FromConfiguration で環境変数の接頭辞を渡して読む)・OutgoingMail・MailMessageFactory・MailPayload・IMailPayloadProtector・IMailTransport・MailDeliveryException、送信経路 SmtpMailTransport・SesMailTransport・AcsMailTransport。

この履歴の確認方法 ​

版ごとの内容は、次の方法で確かめました。

  • リリースタグ(v0.1.0-preview.1 〜 v0.1.0-preview.9)のソースを、版どうしで比べました。各変更のコミットが、どのタグに最初に含まれるかを git merge-base --is-ancestor で確認しています。
  • nuget.org での公開は、nuget.org のパッケージ情報(Core.Data と Core.Mail に preview.2 から preview.9 までが公開されていること、公開日時)で確認しました。2 つのパッケージは同じ版で出ています。
  • 最新の master(resources/tools/VehicleVision.PleasanterTools.Core の追従先)は、preview.9 のタグと同じコミットです。リリース前の変更は含まれていません。

変更履歴

第1版共通ライブラリ Core のマニュアルを追加する (#35)