1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 poetry-core,
6 gotrue,
7 postgrest,
8 realtime,
9 storage3,
10 supafunc,
11 httpx,
12 pytestCheckHook,
13 python-dotenv,
14 pytest-asyncio,
15}:
16
17buildPythonPackage rec {
18 pname = "supabase";
19 version = "2.17.0";
20 pyproject = true;
21
22 src = fetchFromGitHub {
23 owner = "supabase";
24 repo = "supabase-py";
25 rev = "v${version}";
26 hash = "sha256-psfDs5BCtUjyPsfLwksNvzLmUKmYDvmxKIDPQE/NmQU=";
27 };
28
29 build-system = [ poetry-core ];
30
31 # FIXME remove for supabase >= 2.18.0
32 pythonRelaxDeps = true;
33
34 dependencies = [
35 postgrest
36 realtime
37 gotrue
38 httpx
39 storage3
40 supafunc
41 ];
42
43 nativeBuildInputs = [
44 pytestCheckHook
45 python-dotenv
46 pytest-asyncio
47 ];
48
49 pythonImportsCheck = [ "supabase" ];
50
51 meta = {
52 homepage = "https://github.com/supabase/supabase-py";
53 license = lib.licenses.mit;
54 description = "Supabas client for Python";
55 maintainers = with lib.maintainers; [ siegema ];
56 };
57}