Skip to content

Releases: su-its/core

v3.0.1

05 Apr 04:37
12103bb

Choose a tag to compare

What's Changed

  • fix: Supabase Transaction pool mode 対応のため DB ドライバを postgres-js に切り替え by @KinjiKawaguchi in #146

Full Changelog: v3.0.0...v3.0.1

v3.0.0

04 Apr 06:49
63b9fbd

Choose a tag to compare

Breaking Changes

  • MemberId/EventId/ExhibitIdをBranded Typeに変更 (#92)

    • 各IDがプリミティブなstringからBranded Typeに変更。型安全性が向上し、異なるID型の混同をコンパイル時に検出可能に。
  • SharedKernel StudentIdの実装 (#87)

    • 学籍番号を型付きの値オブジェクトとして定義。フォーマットバリデーション付き。
  • 室員集約の再設計 (#94)

    • Member集約をActiveMember/UnconfirmedMember/FormerMemberに再設計し、状態遷移を型で表現。
  • 大学組織構造の型をランタイム定義から導出する設計に変更 (#111)

    • 学部・学科等の組織構造を定数定義からTypeScript型を導出する方式に変更し、型とランタイム値のDRY違反を解消。
  • 公開APIにファサード層を追加 (#109, #97, #89)

    • MemberService等のファサード層を追加し、プリミティブ型での入力に対応。利用者はドメインオブジェクトを直接構築する必要がなくなった。

Features

ドメインモデル

  • Shared Kernel に Affiliation(所属) を追加 (#81)

    • 学部・研究科・所属情報を型安全に表現するShared Kernel値オブジェクトを追加。
  • Affiliationの型表現をDiscriminated Unionに変更 (#102)

    • クラスベースからDiscriminated Unionに変更し、パターンマッチングが容易に。
  • ドメイン定数を追加し型をランタイム定義から導出 (#112)

    • 学部・学科・コース等の定数を定義し、型をランタイム値から自動導出。
  • PC相談室カルテ集約のドメインモデルを追加 (#82)

    • 相談記録(Karte)のドメインモデルを新規追加。ConsultedAt型による日時精度表現、NonEmptyString等のバリデーション付き値オブジェクトを含む。
  • カルテ集約のドメインモデル・アプリケーション層・インフラ層を追加 (#103)

    • カルテのユースケース(作成・訂正・閲覧)、Drizzleリポジトリ実装、カテゴリ管理を追加。
  • ドメインイベントの監査ログ永続化 (#106)

    • ドメインイベント発行時に監査ログとしてDBに永続化する仕組みを追加。
  • 例外クラスに構造化コンテキストとエラーコードを追加 (#125)

    • 全例外にcode, category, context, hint, causeプロパティを追加。プログラムからエラー種別を判別可能に(例: e.code === "MEMBER_NOT_FOUND")。
  • connectDiscordAccountのnickNameを省略可能に (#130)

    • discordNickNameをoptionalに変更。Link時点でニックネーム未設定のケースに対応。
  • listMembersWithDiscordAccountsをMemberServiceに追加 (#135)

    • 全メンバーとDiscordアカウント情報を結合取得するファサードメソッドを追加。
  • getMemberWithDiscordAccountsをMemberServiceに追加 (#140)

    • MemberId指定で単一メンバーのDiscordアカウント情報を取得するファサードメソッドを追加。

インフラ・ビルド

  • ビルドツールチェーンをVite+に移行 (#107)

    • tsupからVite+(tsc)ベースのビルドに移行。
  • ビルド出力をunbundleモードに切り替え (#122)

    • Tree Shakingを有効化するためunbundleモードに変更。
  • package.jsonにsideEffects: falseを追加 (#134)

    • バンドラーのTree Shaking最適化を有効化。

Refactoring

  • 値オブジェクトを所属する集約ディレクトリに移動 (#80)

    • 型別ではなくドメイン別のディレクトリ構成に変更。
  • 公開APIバレル経由のimportに統一 (#117)

    • 内部モジュールへの直接importを廃止し、公開バレル経由に統一。

Bug Fixes

  • Event.removeExhibitMemberIdの未実装を修正 (#85)
  • #116マージで巻き戻されたバレルimportを再適用 (#120)

CI/CD

  • CI/CDワークフローの再構成 (#88)

    • Reusable Workflow + Composite Actionに再構成。
  • Drizzleスキーマと生成ファイルの同期チェックをCIに追加 (#115)

  • prereleaseバージョンのpublish時に--tagを自動付与 (#132)

    • 3.0.0-rc.1--tag rc のように自動判定。

Maintenance

  • vitestによるテスト基盤を導入 (#83)

  • Prismaマイグレーションテーブルを削除 (#144)

    • Prismaからの移行完了に伴い_prisma_migrationsテーブルを削除。
  • 間接依存パッケージを最新バージョンに更新 (#108, #139)

v3.0.0-rc.4

04 Apr 03:34
3590973

Choose a tag to compare

v3.0.0-rc.4 Pre-release
Pre-release

What's Changed

Full Changelog: v3.0.0-rc.3...v3.0.0-rc.4

v3.0.0-rc.3

02 Apr 09:52
84cdb94

Choose a tag to compare

v3.0.0-rc.3 Pre-release
Pre-release

What's Changed

Full Changelog: v3.0.0-rc.2...v3.0.0-rc.3

v3.0.0-rc.2

31 Mar 14:11
0e34d50

Choose a tag to compare

v3.0.0-rc.2 Pre-release
Pre-release

What's Changed

Full Changelog: v3.0.0-rc.1...v3.0.0-rc.2

v3.0.0-rc.1

31 Mar 12:38
79b2eb1

Choose a tag to compare

v3.0.0-rc.1 Pre-release
Pre-release

What's Changed

  • feat: 例外クラスに構造化コンテキストとエラーコードを追加 by @KinjiKawaguchi in #125
  • feat: connectDiscordAccount の nickName を省略可能にする by @KinjiKawaguchi in #130
  • ci: prerelease バージョンの publish 時に --tag を自動付与するように修正 by @KinjiKawaguchi in #132
  • ci: Trusted Publishing に移行し NPM_TOKEN を廃止

Full Changelog: v3.0.0-rc.0...v3.0.0-rc.1

v3.0.0-rc.0

24 Mar 11:32
7392bd5

Choose a tag to compare

v3.0.0-rc.0 Pre-release
Pre-release

Breaking Changes

  • feat!: 公開APIにファサード層を追加 (#109) — 消費者がプリミティブ値で操作可能なファサードを新設、旧API
    (createXxxUseCases) を deprecated に
  • feat!: 室員集約の再設計 (#94)
  • feat!: MemberId/EventId/ExhibitIdをBranded Typeに変更 (#92)
  • feat!: SharedKernel StudentIdの実装 (#87)
  • refactor!: 大学組織構造の型をランタイム定義から導出する設計に変更 (#111)

Features

  • feat: カルテ集約のドメインモデル・アプリケーション層・インフラ層を追加 (#103)
  • feat: ドメインイベントの監査ログ永続化 (#106)
  • feat: ドメイン定数を追加し型をランタイム定義から導出 (#112)
  • feat: PC相談室カルテ集約のドメインモデルを追加 (#82)
  • feat: Shared Kernel に Affiliation(所属) を追加 (#81)

Refactoring

  • refactor: Affiliationの型表現をDiscriminated Unionに変更 (#102)
  • refactor: 公開APIバレル経由のimportに統一 (#117)
  • refactor: 値オブジェクトを所属する集約ディレクトリに移動 (#80)

Fixes

  • fix: #116マージで巻き戻されたバレルimportを再適用 (#120)
  • fix(ci): drizzle-checkジョブを復元 (#121)
  • fix: Event.removeExhibitMemberIdの未実装を修正 (#85)

Build / CI / Chore

  • chore: ビルドツールチェーンをVite+に移行 (#107)
  • chore: ビルド出力をunbundleモードに切り替え (#122)
  • chore: 依存パッケージを最新バージョンに更新 (#108)
  • chore: vitestによるテスト基盤を導入 (#83)
  • ci: CI/CDワークフローの再構成 (#88)
  • ci: Drizzleスキーマと生成ファイルの同期チェックをCIに追加 (#115)
  • build(deps): bump rollup from 4.57.1 to 4.60.0 (#116)

New Contributors

Full Changelog: https://github.com/su-its/core/commits/v3.0.0-rc.0

v2.1.2

25 Mar 01:40
5013bc7

Choose a tag to compare

What's Changed

  • fix: 型定義ファイル内のパスエイリアスを相対パスに変換 by @KinjiKawaguchi in #78

Full Changelog: v2.1.1...v2.1.2

v2.1.1

01 Feb 10:17
060d7b1

Choose a tag to compare

What's Changed

Full Changelog: v2.1.0...v2.1.1

v2.1.0

18 Jul 08:42
ef62410

Choose a tag to compare

What's Changed

Full Changelog: v2.0.0...v2.1.0