python311Packages.sqlalchemy_1_4: init at 1.4.51

We'd rather maintain one version, than have many unmaintained overrides
throughout nixpkgs.

Don't use this version for libraries, only for applications.
This commit is contained in:
Martin Weinelt
2024-01-03 02:44:40 +01:00
parent ca7ce21517
commit ae072812b5
2 changed files with 142 additions and 0 deletions
@@ -0,0 +1,140 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
# build-system
, setuptools
# dependencies
, greenlet
# optionals
, aiomysql
, aiosqlite
, asyncmy
, asyncpg
, cx_oracle
, mariadb
, mypy
, mysql-connector
, mysqlclient
, pg8000
, psycopg2
, psycopg2cffi
# TODO: pymssql
, pymysql
, pyodbc
# TODO: sqlcipher3
, typing-extensions
# tests
, mock
, pytest-xdist
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "sqlalchemy";
version = "1.4.51";
pyproject = true;
src = fetchFromGitHub {
owner = "sqlalchemy";
repo = "sqlalchemy";
rev = "rel_${lib.replaceStrings [ "." ] [ "_" ] version}";
hash = "sha256-KhLSKlQ4xfSh1nsAt+cRO+adh2aj/h/iqV6YmDbz39k=";
};
nativeBuildInputs = [
setuptools
];
propagatedBuildInputs = [
greenlet
];
passthru.optional-dependencies = lib.fix (self: {
asyncio = [
greenlet
];
mypy = [
mypy
];
mssql = [
pyodbc
];
mssql_pymysql = [
# TODO: pymssql
];
mssql_pyodbc = [
pyodbc
];
mysql = [
mysqlclient
];
mysql_connector = [
mysql-connector
];
mariadb_connector = [
mariadb
];
oracle = [
cx_oracle
];
postgresql = [
psycopg2
];
postgresql_pg8000 = [
pg8000
];
postgresql_asyncpg = [
asyncpg
] ++ self.asyncio;
postgresql_psycopg2binary = [
psycopg2
];
postgresql_psycopg2cffi = [
psycopg2cffi
];
pymysql = [
pymysql
];
aiomysql = [
aiomysql
] ++ self.asyncio;
asyncmy = [
asyncmy
] ++ self.asyncio;
aiosqlite = [
aiosqlite
typing-extensions
] ++ self.asyncio;
sqlcipher = [
# TODO: sqlcipher3
];
});
nativeCheckInputs = [
pytest-xdist
pytestCheckHook
mock
];
disabledTestPaths = [
# typing correctness, not interesting
"test/ext/mypy"
# slow and high memory usage, not interesting
"test/aaa_profiling"
];
pythonImportsCheck = [
"sqlalchemy"
];
meta = with lib; {
changelog = "https://github.com/sqlalchemy/sqlalchemy/releases/tag/rel_${builtins.replaceStrings [ "." ] [ "_" ] version}";
description = "The Database Toolkit for Python";
homepage = "https://github.com/sqlalchemy/sqlalchemy";
license = licenses.mit;
};
}
+2
View File
@@ -13622,6 +13622,8 @@ self: super: with self; {
sqlalchemy = callPackage ../development/python-modules/sqlalchemy { };
sqlalchemy_1_4 = callPackage ../development/python-modules/sqlalchemy/1_4.nix { };
sqlalchemy-citext = callPackage ../development/python-modules/sqlalchemy-citext { };
sqlalchemy-continuum = callPackage ../development/python-modules/sqlalchemy-continuum { };