depot/third_party/nixpkgs/pkgs/development/python-modules/peewee/default.nix
Default email ae91cbe6cc Project import generated by Copybara.
GitOrigin-RevId: 536fe36e23ab0fc8b7f35c24603422eee9fc17a2
2021-02-05 18:12:51 +01:00

50 lines
960 B
Nix

{ lib
, buildPythonPackage
, fetchFromGitHub
, sqlite
, cython
, apsw
, flask
, withPostgres ? false, psycopg2
, withMysql ? false, mysql-connector
}:
buildPythonPackage rec {
pname = "peewee";
version = "3.13.3";
# pypi release does not provide tests
src = fetchFromGitHub {
owner = "coleifer";
repo = pname;
rev = version;
sha256 = "1r67hxb9m6v0xbnbqfnsw6dahmdr94pf81b4x51jfw6x9sa4izi4";
};
checkInputs = [ flask ];
checkPhase = ''
rm -r playhouse # avoid using the folder in the cwd
python runtests.py
'';
buildInputs = [
sqlite
cython # compile speedups
];
propagatedBuildInputs = [
apsw # sqlite performance improvement
] ++ (lib.optional withPostgres psycopg2)
++ (lib.optional withMysql mysql-connector);
doCheck = withPostgres;
meta = with lib; {
description = "a small, expressive orm";
homepage = "http://peewee-orm.com";
license = licenses.mit;
};
}