Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🆙 Supabase のライブラリを v2 にバージョンアップ #88

Merged
merged 1 commit into from
Nov 30, 2023

Conversation

tatsutakein
Copy link
Member

@tatsutakein tatsutakein commented Nov 30, 2023

Issue

概要

Supabase のライブラリを v2 にバージョンアップします。

レビュー観点

特になし

レビューレベル

  • Lv0: まったく見ないで Approve する
  • Lv1: ぱっとみて違和感がないかチェックして Approve する
  • Lv2: 仕様レベルまで理解して、仕様通りに動くかある程度検証して Approve する
  • Lv3: 実際に環境で動作確認したうえで Approve する

レビュー優先度

  • すぐに見てもらいたい ( hotfix など ) 🚀
  • 今日中に見てもらいたい 🚗
  • 今日〜明日中で見てもらいたい 🚶
  • 数日以内で見てもらいたい 🐢

参考リンク

スクリーンショット

Before After

Summary by CodeRabbit

  • 新機能

    • ユーザー認証モジュールをGoTrueからAuthに変更しました。
    • ログインとログアウトのプロセスを更新しました。
  • バグ修正

    • 参加者データソースのカウント方法を修正しました。
  • リファクタリング

    • スケジュールとユーザープロファイルのデータ取得方法を最適化しました。

@tatsutakein tatsutakein requested a review from a team as a code owner November 30, 2023 10:12
Copy link

coderabbitai bot commented Nov 30, 2023

Walkthrough

Supabaseクライアントのバージョンアップに伴い、認証モジュールがGoTrueからAuthに変更されました。これにより、関連する関数呼び出しやインポート文が更新されています。また、データソースのクエリ構築方法にも変更が加えられ、より直感的なラムダ式を使用するようになりました。

Changes

File Path Change Summary
.../SupabaseClient.kt GoTrueからAuthへの変更
.../auth/SupabaseAuthRemoteDataSource.kt GoTrueからAuthへの変更、関数名の変更
.../di/SupabaseClientModule.kt GoTrueからAuthへの変更
.../participation/SupabaseParticipantRemoteDataSource.kt クエリパラメータの変更
.../schedule/SupabaseScheduleRemoteDataSource.kt selectメソッドの呼び出し方の変更
.../user/SupabaseUserRemoteDataSource.kt selectメソッドの呼び出し方の変更

Assessment against linked issues

Objective Addressed Explanation
#87: Supabase Client を v2 にバージョンアップする

Poem

🐇💻✨
新しい風が吹く、コードの海に
Authの光、道を照らす
バグの影を追い払い、進化を遂げる
うさぎも跳ねる、新たなる始まりに🌟


Tips

Chat with CodeRabbit Bot (@coderabbitai)

  • If you reply to a review comment from CodeRabbit, the bot will automatically respond.
  • To engage with CodeRabbit bot directly around the specific lines of code in the PR, mention @coderabbitai in your review comment
  • Note: Review comments are made on code diffs or files, not on the PR overview.
  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger a review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai help to get help.

Note: For conversation with the bot, please use the review comments on code diffs or files.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • The JSON schema for the configuration file is available here.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.v2.json

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Status

Actionable comments generated: 0

Configuration used: CodeRabbit UI

Commits Files that changed from the base of the PR and between 31995d2 and 6d229a9.
Files ignored due to filter (1)
  • gradle/libs.versions.toml
Files selected for processing (6)
  • core/network/src/commonMain/kotlin/club/nito/core/network/SupabaseClient.kt (2 hunks)
  • core/network/src/commonMain/kotlin/club/nito/core/network/auth/SupabaseAuthRemoteDataSource.kt (2 hunks)
  • core/network/src/commonMain/kotlin/club/nito/core/network/di/SupabaseClientModule.kt (2 hunks)
  • core/network/src/commonMain/kotlin/club/nito/core/network/participation/SupabaseParticipantRemoteDataSource.kt (1 hunks)
  • core/network/src/commonMain/kotlin/club/nito/core/network/schedule/SupabaseScheduleRemoteDataSource.kt (1 hunks)
  • core/network/src/commonMain/kotlin/club/nito/core/network/user/SupabaseUserRemoteDataSource.kt (1 hunks)
Files skipped from review due to trivial changes (1)
  • core/network/src/commonMain/kotlin/club/nito/core/network/di/SupabaseClientModule.kt
Additional comments: 10
core/network/src/commonMain/kotlin/club/nito/core/network/SupabaseClient.kt (2)
  • 4-5: インポート文がGoTrueからAuthに変更されています。これは認証モジュールの変更を示しています。コードベースの他の部分もこの変更に対応しているか確認してください。

  • 21-25: install関数がAuthを使用するように変更されました。これはユーザー認証の初期化プロセスに影響を与える可能性があります。関連するドキュメントや設定が更新されていることを確認してください。

core/network/src/commonMain/kotlin/club/nito/core/network/auth/SupabaseAuthRemoteDataSource.kt (3)
  • 4-14: 変更されたインポートステートメントとコンストラクタパラメータタイプは、サマリーに記載されている内容と一致しています。これらの変更は、新しいSupabaseライブラリのAPIに合わせて適切に行われているようです。

  • 40-45: login関数とlogout関数の変更は、サマリーに記載されているsignInWithsignOutへの変更と一致しています。これらの変更は、新しいSupabaseライブラリのAPIに合わせて適切に行われているようです。

  • 47-47: modifyAuthUser関数に関する変更がサマリーに記載されていません。この関数の変更も新しいSupabaseライブラリのAPIに合わせたものであるか確認する必要があります。

core/network/src/commonMain/kotlin/club/nito/core/network/participation/SupabaseParticipantRemoteDataSource.kt (2)
  • 9-9: Countのインポートが追加され、participate関数で使用されています。これは、Supabaseライブラリのバージョン2への更新に伴う変更であることを確認してください。

  • 40-46: participate関数でCount.EXACTが使用されていますが、これにより期待される挙動に変更はないか確認してください。特に、データベース操作からの期待されるレスポンスの詳細レベルが変更されていないかを検証する必要があります。

core/network/src/commonMain/kotlin/club/nito/core/network/schedule/SupabaseScheduleRemoteDataSource.kt (2)
  • 27-34: サマリーにはgetScheduleListメソッドでorderlimitの呼び出しがfilterブロックの外に移動されたとありますが、実際のコードではまだfilterブロックの内部にあります。この点を確認してください。
    ): List<Schedule> = postgrest
        .select {
-           filter {
                exact(Column.DELETED_AT.columnName, null)
                after?.let { gte(Column.SCHEDULED_AT.columnName, it) }
-           }
            order(Column.SCHEDULED_AT.columnName, order = order.toSupabaseOrder())
            limit(count = limit.toLong())
  • 42-47: サマリーにはgetScheduleメソッドでsingleの呼び出しがselectブロックの内部に移動されたとありますが、実際のコードではまだfilterブロックの外にあります。この点を確認してください。
            .select {
-               single()
                filter {
                    exact(Column.DELETED_AT.columnName, null)
                }
+               single()
core/network/src/commonMain/kotlin/club/nito/core/network/user/SupabaseUserRemoteDataSource.kt (1)
  • 13-34: コードの変更に関するサマリーには、filter メソッドの呼び出しが select メソッドの呼び出し内でラムダ式に置き換えられたと記載されていますが、提供されたコードの断片では filter メソッドが依然として使用されています。この不一致を確認し、必要に応じてコードまたはサマリーを修正してください。

@tatsutakein tatsutakein merged commit f483d97 into main Nov 30, 2023
3 checks passed
@tatsutakein tatsutakein deleted the rt/update-supabase-v2 branch November 30, 2023 10:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FR]: Supabase Client を v2 にバージョンアップする
1 participant