diff --git a/pkgs/development/python-modules/ormar/default.nix b/pkgs/development/python-modules/ormar/default.nix new file mode 100644 index 000000000000..fee9af147154 --- /dev/null +++ b/pkgs/development/python-modules/ormar/default.nix @@ -0,0 +1,80 @@ +{ lib +, buildPythonPackage +, pythonOlder +, fetchFromGitHub +, poetry-core +, databases +, pydantic +, sqlalchemy +, asyncpg +, psycopg2 +, aiomysql +, aiosqlite +, cryptography +, orjson +, typing-extensions +, importlib-metadata +, aiopg +, mysqlclient +, pymysql +, pytestCheckHook +, pytest-asyncio +, fastapi +}: + +buildPythonPackage rec { + pname = "ormar"; + version = "0.10.23"; + format = "pyproject"; + disabled = pythonOlder "3.7"; + src = fetchFromGitHub { + owner = "collerek"; + repo = pname; + rev = version; + sha256 = "sha256-ILJvJyd56lqlKq7+mUz26LvusYb5AOOfoA7OgNq2fT0="; + }; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + databases + pydantic + sqlalchemy + asyncpg + psycopg2 + aiomysql + aiosqlite + cryptography + + orjson + ] ++ lib.optionals (pythonOlder "3.8") [ + typing-extensions + importlib-metadata + ]; + + checkInputs = [ + aiomysql + aiosqlite + aiopg + asyncpg + + psycopg2 + mysqlclient + pymysql + + pytestCheckHook + pytest-asyncio + fastapi + ]; + + pythonImportsCheck = [ "ormar" ]; + + meta = with lib; { + homepage = "https://github.com/collerek/ormar"; + description = "A simple async ORM with fastapi in mind and pydantic validation."; + license = licenses.mit; + maintainers = with maintainers; [ andreasfelix ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d35623b12c50..ca25a413fa4f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5566,6 +5566,8 @@ in { orm = callPackage ../development/python-modules/orm { }; + ormar = callPackage ../development/python-modules/ormar { }; + ortools = (toPythonModule (pkgs.or-tools.override { inherit (self) python; })).python; orvibo = callPackage ../development/python-modules/orvibo { };