[PR #24681] chore: bump supabase and pyjwt versions and added tests #30749

Closed
opened 2026-02-21 20:48:09 -05:00 by yindo · 0 comments
Owner

Original Pull Request: https://github.com/langgenius/dify/pull/24681

State: closed
Merged: Yes


Summary

  • Bump Supabase Python SDK to support newly issued API key format:
    • api/pyproject.toml: supabase~=2.18.1 (was ~2.8.1)
    • api/uv.lock: refreshed
  • Keep SupabaseStorage API intact and compatible with Client(supabase_url, supabase_key, options=None). No runtime code changes required in extensions/storage/supabase_storage.py.
  • Align JWT dependency and add safety tests:
    • api/pyproject.toml: pyjwt~=2.10.1
    • Added api/tests/unit_tests/libs/test_jwt_imports.py to guard import paths
  • Added unit tests for Supabase storage behavior with mocks:
    • api/tests/unit_tests/extensions/storage/test_supabase_storage.py

Motivation: Older Supabase SDK versions reject newly issued API keys due to stricter legacy-format validation, causing client initialization errors. Upgrading resolves this while keeping our usage compatible.

Screenshots

Before After
... ...

Checklist

  • This change requires a documentation update, included: Dify Document
  • I understand that this PR may be closed in case there was no previous discussion or issues. (This doesn't apply to typos!)
  • I've added a test for each change that was introduced, and I tried as much as possible to make a single atomic change.
  • I've updated the documentation accordingly.
  • I ran dev/reformat(backend) and cd web && npx lint-staged(frontend) to appease the lint gods

Fixes #24680

**Original Pull Request:** https://github.com/langgenius/dify/pull/24681 **State:** closed **Merged:** Yes --- ## Summary - Bump Supabase Python SDK to support newly issued API key format: - `api/pyproject.toml`: `supabase~=2.18.1` (was `~2.8.1`) - `api/uv.lock`: refreshed - Keep `SupabaseStorage` API intact and compatible with `Client(supabase_url, supabase_key, options=None)`. No runtime code changes required in `extensions/storage/supabase_storage.py`. - Align JWT dependency and add safety tests: - `api/pyproject.toml`: `pyjwt~=2.10.1` - Added `api/tests/unit_tests/libs/test_jwt_imports.py` to guard import paths - Added unit tests for Supabase storage behavior with mocks: - `api/tests/unit_tests/extensions/storage/test_supabase_storage.py` Motivation: Older Supabase SDK versions reject newly issued API keys due to stricter legacy-format validation, causing client initialization errors. Upgrading resolves this while keeping our usage compatible. ## Screenshots | Before | After | |--------|-------| | ... | ... | ## Checklist - [ ] This change requires a documentation update, included: [Dify Document](https://github.com/langgenius/dify-docs) - [x] I understand that this PR may be closed in case there was no previous discussion or issues. (This doesn't apply to typos!) - [x] I've added a test for each change that was introduced, and I tried as much as possible to make a single atomic change. - [x] I've updated the documentation accordingly. - [x] I ran `dev/reformat`(backend) and `cd web && npx lint-staged`(frontend) to appease the lint gods Fixes #24680
yindo added the pull-request label 2026-02-21 20:48:09 -05:00
yindo closed this issue 2026-02-21 20:48:09 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify#30749