1{ lib 2, asyncpg 3, buildPythonPackage 4, django 5, fetchFromGitHub 6, numpy 7, peewee 8, postgresql 9, postgresqlTestHook 10, psycopg 11, psycopg2 12, pytest-asyncio 13, pytestCheckHook 14, pythonOlder 15, sqlalchemy 16}: 17 18buildPythonPackage rec { 19 pname = "pgvector"; 20 version = "0.2.3"; 21 format = "setuptools"; 22 23 disabled = pythonOlder "3.8"; 24 25 src = fetchFromGitHub { 26 owner = "pgvector"; 27 repo = "pgvector-python"; 28 rev = "refs/tags/v${version}"; 29 hash = "sha256-KQROG0cHvKmdWssr7Git3JH0YguRPno/ZzYiQL7VhwU="; 30 }; 31 32 propagatedBuildInputs = [ 33 numpy 34 ]; 35 36 nativeCheckInputs = [ 37 asyncpg 38 django 39 peewee 40 (postgresql.withPackages (p: with p; [ pgvector ])) 41 postgresqlTestHook 42 psycopg 43 psycopg2 44 pytest-asyncio 45 pytestCheckHook 46 sqlalchemy 47 ]; 48 49 env = { 50 PGDATABASE = "pgvector_python_test"; 51 postgresqlEnableTCP = 1; 52 postgresqlTestUserOptions = "LOGIN SUPERUSER"; 53 }; 54 55 pythonImportsCheck = [ "pgvector" ]; 56 57 meta = with lib; { 58 description = "Pgvector support for Python"; 59 homepage = "https://github.com/pgvector/pgvector-python"; 60 changelog = "https://github.com/pgvector/pgvector-python/blob/${src.rev}/CHANGELOG.md"; 61 license = licenses.mit; 62 maintainers = with maintainers; [ natsukium ]; 63 }; 64}