1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, pythonOlder
5, pytestCheckHook
6, hypothesis
7, numpy
8, pandas
9, psycopg2
10, pymysql
11, python-dateutil
12, pytz
13, pyyaml
14, six
15, sqlalchemy
16}:
17
18buildPythonPackage rec {
19 pname = "siuba";
20 version = "0.4.4";
21 format = "setuptools";
22
23 disabled = pythonOlder "3.7";
24
25 src = fetchFromGitHub {
26 owner = "machow";
27 repo = "siuba";
28 rev = "refs/tags/v${version}";
29 hash = "sha256-rd/yQH3sbZqQAQ1AN44vChe30GMJuIlZj3Ccfv1m3lU=";
30 };
31
32 propagatedBuildInputs = [
33 numpy
34 pandas
35 psycopg2
36 pymysql
37 python-dateutil
38 pytz
39 pyyaml
40 six
41 sqlalchemy
42 ];
43
44 nativeCheckInputs = [
45 hypothesis
46 pytestCheckHook
47 ];
48
49 # requires running mysql and postgres instances; see docker-compose.yml
50 doCheck = false;
51
52 pythonImportsCheck = [
53 "siuba"
54 "siuba.data"
55 ];
56
57 meta = with lib; {
58 description = "Use dplyr-like syntax with pandas and SQL";
59 homepage = "https://siuba.org";
60 changelog = "https://github.com/machow/siuba/releases/tag/v${version}";
61 license = licenses.mit;
62 maintainers = with maintainers; [ bcdarwin ];
63 };
64}