По мере роста сообщества Supabase растет и спрос на разнообразную коллекцию клиентских библиотек и SDK для конкретных платформ. Этот спрос по большей части удовлетворяется самим сообществом открытого исходного кода, которое в настоящее время поддерживает десятки библиотек.
⚡️ Подробнее о неделе запуска
Когда люди делают запросы к размещенному сервису Supabase, мы можем составить хорошее представление о том, насколько широко используются некоторые из этих библиотек, и когда конкретная библиотека достигает широкого распространения, нам имеет смысл добавить официальную поддержку для это. Примеры библиотек, совершивших переход от поддержки сообщества к официальной поддержке, включают supabase-flutter и supabase-swift.
Клиентские библиотеки Python всегда пользовались невероятной поддержкой сообщества, однако за последние полтора года мы стали свидетелями огромного всплеска их внедрения. Этому способствовало широкое распространение Supabase в сообществах искусственного интеллекта и машинного обучения, многие из которых являются заядлыми питонистами.
Итак, сегодня мы объявляем, что следующие клиентские библиотеки Python теперь официально поддерживаются на платформе Supabase:
supabase-py изначально был запущен сопровождающим lqmanh в сентябре 2020 года, и вскоре после этого к нему присоединились Fedden и J0 (которые впоследствии стали постоянными членами команды Supabase). В последние годы разработкой руководили Silentworks и Juancarlospaco, которые сыграли важную роль в достижении равенства возможностей с supabase-js.
Огромное спасибо всем, кто до сих пор внес свой вклад в создание клиентских библиотек, и, надеюсь, в будущем мы увидим больше библиотек сообщества, которые будут добиваться официальной поддержки.
Ниже приведен обзор некоторых последних функций, добавленных в коллекцию библиотек Python.
Клиенты Supabase будут автоматически использовать HTTP 2.0, если он доступен по умолчанию, обеспечивая плавное повышение производительности существующих приложений.
Это улучшение реализовано полностью прозрачно и не требует внесения изменений в существующий код, но при этом потенциально обеспечивает значительное сокращение задержек и повышение производительности.
См. также:
Клиенты Supabase теперь автоматически следуют всем перенаправлениям HTTP по умолчанию, что соответствует поведению клиентов Supabase на других языках программирования.
Это улучшение повышает согласованность всей экосистемы и упрощает обработку перенаправлений, уменьшая необходимость ручного вмешательства в распространенных сценариях, таких как изменение URL-адресов или балансировка нагрузки.
См. также:
Клиенты Supabase теперь по умолчанию автоматически включают поддерживающий активность HTTP-заголовок, который иногда отсутствовал, что устраняет это несоответствие в предыдущих версиях.
Это улучшение оптимизирует управление соединениями, потенциально снижает задержку и повышает производительность за счет поддержания постоянных соединений с сервером, что особенно полезно для приложений, выполняющих очень частые вызовы API.
Добавлена поддержка указания региона, в котором будет выполняться функция Edge (регион — это, по сути, физическое местоположение в мире).
См. также:
Realtime обновлен до версии 2.0 с множеством улучшений и исправлений, включая обновленные примеры и новые функции, связанные с присутствием (трансляция, подписка, отслеживание и т. д.).
См. также:
В клиент Auth были добавлены анонимные логины, включая новое логическое свойство is_anonymous, добавленное к классу User, а также в клиент Auth были добавлены методы Sign_in_with_id_token() и Sign_in_with_sso(), среди множества других исправления ошибок.
См. также:
Supabase улучшила безопасность запросов PostgreSQL, реализовав sanitize_param() для очистки параметров во внутренних SQL-запросах на стороне клиента, обеспечивая более безопасную обработку данных и выполнение запросов во всех операциях.
Некоторым пользователям по какой-либо причине необходимо запускать клиенты Supabase с недействительным или непроверенным SSL (отладчики SSL/трассировщики/профилировщики/и т. д. в средах разработки), в конструкторы клиентов был добавлен новый необязательный логический аргумент с последующей передачей проверки =False позволяет ему работать с непроверенным SSL без предупреждений.
from postgrest import SyncPostgrestClient url: str = "https://example.com" h: dict = {"Custom-Header": "value"} with SyncPostgrestClient(url, schema="pub", headers=h, verify = False) as client: session = client.session assert session.base_url == "https://example.com"
См. также:
Библиотека Supabase Realtime теперь включает новый метод close() для закрытия соединений сокетов.
Это дополнение предоставляет разработчикам более точный контроль над жизненным циклом соединения, позволяя при необходимости явно закрывать соединения сокетов.
import os from realtime import AsyncRealtimeClient def callback1(payload): print("Callback 1: ", payload) SUPABASE_ID: str = os.environ.get("SUPABASE_ID") API_KEY: str = os.environ.get("SUPABASE_KEY") URL: str = f"wss://{SUPABASE_ID}.supabase.co/realtime/v1/websocket" client = AsyncRealtimeClient(URL, API_KEY) await client.connect() channel_1 = s.channel("realtime:public:sample") channel_1.subscribe().on_postgres_changes("INSERT", callback1) await client.listen() await client.close()
См. также:
Тайм-ауты для пограничных функций теперь фиксированы, а долговыполняющиеся функции завершаются правильно, больше нет внутреннего тайм-аута на стороне клиента библиотеки, отключающего функции.
Теперь пользователи могут уверенно реализовывать более сложные операции в Edge Functions.
import os from supabase import create_client from supabase.lib.client_options import ClientOptions url: str = os.environ.get("SUPABASE_URL") key: str = os.environ.get("SUPABASE_KEY") options = ClientOptions(function_client_timeout = 15) client = create_client(url, key, options) client.functions.url = "http://127.0.0.1:54321/functions/v1/hello-world" print(client.functions.invoke("hello"))
См. также:
Был создан новый простой и расширяемый инструмент CLI для переноса векторных данных из других сервисов и SASS в Supabase. Он может переносить векторные данные из Pinecone и Qdrant в Supabase с помощью одной команды, оптимизируя рабочие процессы и повышая переносимость данных между AI и ML. проекты.
Вы можете проголосовать за добавление других поставщиков векторных баз данных в будущем!
См. также:
Сборки непрерывной интеграции для всех библиотек были обновлены и стали более строгими (линтеры и т. д.).
См. также:
Если вы хотите принять участие в разработке наших клиентских библиотек Python, посмотрите здесь некоторую информацию о том, как внести свой вклад, и проверьте список открытых проблем, чтобы узнать, над чем работать.
Полная документация для клиентских библиотек Supabase Python доступна на сайте документации Supabase.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3