mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-07-17 22:28:55 +00:00
Merge master into staging-next
This commit is contained in:
188
pkgs/development/python-modules/apache-airflow/default.nix
Normal file
188
pkgs/development/python-modules/apache-airflow/default.nix
Normal file
@@ -0,0 +1,188 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, alembic
|
||||
, cached-property
|
||||
, configparser
|
||||
, colorlog
|
||||
, croniter
|
||||
, dill
|
||||
, flask
|
||||
, flask-appbuilder
|
||||
, flask-admin
|
||||
, flask-caching
|
||||
, flask_login
|
||||
, flask-swagger
|
||||
, flask_wtf
|
||||
, flask-bcrypt
|
||||
, funcsigs
|
||||
, future
|
||||
, GitPython
|
||||
, gunicorn
|
||||
, iso8601
|
||||
, json-merge-patch
|
||||
, jinja2
|
||||
, ldap3
|
||||
, lxml
|
||||
, lazy-object-proxy
|
||||
, markdown
|
||||
, pandas
|
||||
, pendulum
|
||||
, psutil
|
||||
, pygments
|
||||
, python-daemon
|
||||
, python-dateutil
|
||||
, requests
|
||||
, setproctitle
|
||||
, snakebite
|
||||
, sqlalchemy
|
||||
, tabulate
|
||||
, tenacity
|
||||
, termcolor
|
||||
, text-unidecode
|
||||
, thrift
|
||||
, tzlocal
|
||||
, unicodecsv
|
||||
, werkzeug
|
||||
, zope_deprecation
|
||||
, enum34
|
||||
, typing
|
||||
, nose
|
||||
, python
|
||||
, isPy3k
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "apache-airflow";
|
||||
version = "1.10.5";
|
||||
disabled = (!isPy3k);
|
||||
|
||||
src = fetchFromGitHub rec {
|
||||
owner = "apache";
|
||||
repo = "airflow";
|
||||
rev = version;
|
||||
sha256 = "14fmhfwx977c9jdb2kgm93i6acx43l45ggj30rb37r68pzpb6l6h";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Not yet accepted: https://github.com/apache/airflow/pull/6562
|
||||
(fetchpatch {
|
||||
name = "avoid-warning-from-abc.collections";
|
||||
url = https://patch-diff.githubusercontent.com/raw/apache/airflow/pull/6562.patch;
|
||||
sha256 = "0swpay1qlb7f9kgc56631s1qd9k82w4nw2ggvkm7jvxwf056k61z";
|
||||
})
|
||||
# Not yet accepted: https://github.com/apache/airflow/pull/6561
|
||||
(fetchpatch {
|
||||
name = "pendulum2-compatibility";
|
||||
url = https://patch-diff.githubusercontent.com/raw/apache/airflow/pull/6561.patch;
|
||||
sha256 = "17hw8qyd4zxvib9zwpbn32p99vmrdz294r31gnsbkkcl2y6h9knk";
|
||||
})
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
alembic
|
||||
cached-property
|
||||
colorlog
|
||||
configparser
|
||||
croniter
|
||||
dill
|
||||
flask
|
||||
flask-admin
|
||||
flask-appbuilder
|
||||
flask-bcrypt
|
||||
flask-caching
|
||||
flask_login
|
||||
flask-swagger
|
||||
flask_wtf
|
||||
funcsigs
|
||||
future
|
||||
GitPython
|
||||
gunicorn
|
||||
iso8601
|
||||
json-merge-patch
|
||||
jinja2
|
||||
ldap3
|
||||
lxml
|
||||
lazy-object-proxy
|
||||
markdown
|
||||
pandas
|
||||
pendulum
|
||||
psutil
|
||||
pygments
|
||||
python-daemon
|
||||
python-dateutil
|
||||
requests
|
||||
setproctitle
|
||||
sqlalchemy
|
||||
tabulate
|
||||
tenacity
|
||||
termcolor
|
||||
text-unidecode
|
||||
thrift
|
||||
tzlocal
|
||||
unicodecsv
|
||||
werkzeug
|
||||
zope_deprecation
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
snakebite
|
||||
nose
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
||||
substituteInPlace setup.py \
|
||||
--replace "flask>=1.1.0, <2.0" "flask" \
|
||||
--replace "flask-caching>=1.3.3, <1.4.0" "flask-caching" \
|
||||
--replace "flask-appbuilder>=1.12.5, <2.0.0" "flask-appbuilder" \
|
||||
--replace "pendulum==1.4.4" "pendulum" \
|
||||
--replace "cached_property~=1.5" "cached_property" \
|
||||
--replace "dill>=0.2.2, <0.3" "dill" \
|
||||
--replace "configparser>=3.5.0, <3.6.0" "configparser" \
|
||||
--replace "jinja2>=2.7.3, <=2.10.0" "jinja2" \
|
||||
--replace "funcsigs==1.0.0" "funcsigs" \
|
||||
--replace "flask-swagger==0.2.13" "flask-swagger" \
|
||||
--replace "python-daemon>=2.1.1, <2.2" "python-daemon" \
|
||||
--replace "alembic>=0.9, <1.0" "alembic" \
|
||||
--replace "markdown>=2.5.2, <3.0" "markdown" \
|
||||
--replace "future>=0.16.0, <0.17" "future" \
|
||||
--replace "tenacity==4.12.0" "tenacity" \
|
||||
--replace "text-unidecode==1.2" "text-unidecode" \
|
||||
--replace "tzlocal>=1.4,<2.0.0" "tzlocal" \
|
||||
--replace "sqlalchemy~=1.3" "sqlalchemy" \
|
||||
--replace "werkzeug>=0.14.1, <0.15.0" "werkzeug"
|
||||
|
||||
# dumb-init is only needed for CI and Docker, not relevant for NixOS.
|
||||
substituteInPlace setup.py \
|
||||
--replace "'dumb-init>=1.2.2'," ""
|
||||
|
||||
substituteInPlace tests/core.py \
|
||||
--replace "/bin/bash" "${stdenv.shell}"
|
||||
'';
|
||||
|
||||
checkPhase = ''
|
||||
export HOME=$(mktemp -d)
|
||||
export AIRFLOW_HOME=$HOME
|
||||
export AIRFLOW__CORE__UNIT_TEST_MODE=True
|
||||
export AIRFLOW_DB="$HOME/airflow.db"
|
||||
export PATH=$PATH:$out/bin
|
||||
|
||||
airflow version
|
||||
airflow initdb
|
||||
airflow resetdb -y
|
||||
nosetests tests.core.CoreTest
|
||||
## all tests
|
||||
# nosetests --cover-package=airflow
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Programmatically author, schedule and monitor data pipelines";
|
||||
homepage = http://airflow.apache.org/;
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.costrouc maintainers.ingenieroariel ];
|
||||
};
|
||||
}
|
||||
36
pkgs/development/python-modules/apispec/default.nix
Normal file
36
pkgs/development/python-modules/apispec/default.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, pyyaml
|
||||
, prance
|
||||
, marshmallow
|
||||
, pytestCheckHook
|
||||
, mock
|
||||
, openapi-spec-validator
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "apispec";
|
||||
version = "3.1.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0rr32z9hbf8w4w1fs5gj2v0ixcq2vq7a3wssrlxagi5ii7ygap7y";
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
pyyaml
|
||||
prance
|
||||
openapi-spec-validator
|
||||
marshmallow
|
||||
mock
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A pluggable API specification generator. Currently supports the OpenAPI Specification (f.k.a. the Swagger specification";
|
||||
homepage = https://github.com/marshmallow-code/apispec;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
{ stdenv, buildPythonPackage, fetchPypi, pytestrunner, pytest }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "Cerberus";
|
||||
version = "1.3.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0be48fc0dc84f83202a5309c0aa17cd5393e70731a1698a50d118b762fbe6875";
|
||||
};
|
||||
|
||||
checkInputs = [ pytestrunner pytest ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://python-cerberus.org/;
|
||||
description = "Lightweight, extensible schema and data validation tool for Python dictionaries";
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
||||
@@ -9,6 +9,10 @@
|
||||
, pyyaml
|
||||
, unicodecsv
|
||||
, cmd2
|
||||
, pytest
|
||||
, mock
|
||||
, testtools
|
||||
, fixtures
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
@@ -31,10 +35,17 @@ buildPythonPackage rec {
|
||||
unicodecsv
|
||||
];
|
||||
|
||||
# test dependencies are complex
|
||||
# and would require about 20 packages
|
||||
# to be added
|
||||
doCheck = false;
|
||||
# remove version constraints
|
||||
postPatch = ''
|
||||
sed -i '/cmd2/c\cmd2' requirements.txt
|
||||
'';
|
||||
|
||||
checkInputs = [ fixtures mock pytest testtools ];
|
||||
# add some tests
|
||||
checkPhase = ''
|
||||
pytest cliff/tests/test_{utils,app,command,help,lister}.py \
|
||||
-k 'not interactive_mode'
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Command Line Interface Formulation Framework";
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
}:
|
||||
buildPythonPackage rec {
|
||||
pname = "cmd2";
|
||||
version = "0.9.19";
|
||||
version = "0.9.20";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "c81284083d993af18b8fef57d89d854d49d051d4c2c8a8e12d0281e369ac3682";
|
||||
sha256 = "0id8247m05xi26xbzg7jj1gcmy91p77wpbbj74v5543z2aplk8qv";
|
||||
};
|
||||
|
||||
LC_ALL="en_US.UTF-8";
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "configshell";
|
||||
version = "1.1.fb25";
|
||||
version = "1.1.27";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "open-iscsi";
|
||||
repo ="${pname}-fb";
|
||||
rev = "v${version}";
|
||||
sha256 = "0zpr2n4105qqsklyfyr9lzl1rhxjcv0mnsl57hgk0m763w6na90h";
|
||||
sha256 = "1nldzq3097xqgzd8qxv36ydvx6vj2crwanihz53k46is0myrwcnn";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ pyparsing six urwid ];
|
||||
|
||||
37
pkgs/development/python-modules/croniter/default.nix
Normal file
37
pkgs/development/python-modules/croniter/default.nix
Normal file
@@ -0,0 +1,37 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, python-dateutil
|
||||
, pytest
|
||||
, pytz
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "croniter";
|
||||
version = "0.3.30";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "538adeb3a7f7816c3cdec6db974c441620d764c25ff4ed0146ee7296b8a50590";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
python-dateutil
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
pytest
|
||||
pytz
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
pytest src/croniter
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "croniter provides iteration for datetime object with cron like format";
|
||||
homepage = http://github.com/kiorky/croniter;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
@@ -1,73 +0,0 @@
|
||||
{ stdenv
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, boto3
|
||||
, click
|
||||
, certifi
|
||||
, requests-aws4auth
|
||||
, voluptuous
|
||||
, pyyaml
|
||||
, elasticsearch
|
||||
, nosexcover
|
||||
, coverage
|
||||
, nose
|
||||
, mock
|
||||
, funcsigs
|
||||
} :
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "elasticsearch-curator";
|
||||
version = "5.8.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "f0eec9ad043a30bc2e2232637111960139a1bda38232241bdd2f0c253a3584df";
|
||||
};
|
||||
|
||||
# The test hangs so we disable it.
|
||||
doCheck = false;
|
||||
|
||||
propagatedBuildInputs = [
|
||||
click
|
||||
certifi
|
||||
requests-aws4auth
|
||||
voluptuous
|
||||
pyyaml
|
||||
elasticsearch
|
||||
boto3
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
nosexcover
|
||||
coverage
|
||||
nose
|
||||
mock
|
||||
funcsigs
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
sed -i s/pyyaml==3.12/pyyaml==${pyyaml.version}/ setup.cfg setup.py
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/elastic/curator;
|
||||
description = "Curate, or manage, your Elasticsearch indices and snapshots";
|
||||
license = licenses.asl20;
|
||||
longDescription = ''
|
||||
Elasticsearch Curator helps you curate, or manage, your Elasticsearch
|
||||
indices and snapshots by:
|
||||
|
||||
* Obtaining the full list of indices (or snapshots) from the cluster, as the
|
||||
actionable list
|
||||
|
||||
* Iterate through a list of user-defined filters to progressively remove
|
||||
indices (or snapshots) from this actionable list as needed.
|
||||
|
||||
* Perform various actions on the items which remain in the actionable list.
|
||||
'';
|
||||
maintainers = with maintainers; [ basvandijk ];
|
||||
|
||||
# https://github.com/elastic/curator/pull/1280
|
||||
broken = versionAtLeast click.version "7.0";
|
||||
};
|
||||
}
|
||||
71
pkgs/development/python-modules/flask-admin/default.nix
Normal file
71
pkgs/development/python-modules/flask-admin/default.nix
Normal file
@@ -0,0 +1,71 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, nose
|
||||
, pillow
|
||||
, mongoengine
|
||||
, pymongo
|
||||
, wtf-peewee
|
||||
, sqlalchemy
|
||||
, sqlalchemy-citext
|
||||
, flask-mongoengine
|
||||
, flask_sqlalchemy
|
||||
, flask-babelex
|
||||
, shapely
|
||||
, geoalchemy2
|
||||
, psycopg2
|
||||
, flask
|
||||
, wtforms
|
||||
, isPy27
|
||||
, enum34
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "flask-admin";
|
||||
version = "1.5.3";
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "Flask-Admin";
|
||||
inherit version;
|
||||
sha256 = "ca0be6ec11a6913b73f656c65c444ae5be416c57c75638dd3199376ce6bc7422";
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
nose
|
||||
pillow
|
||||
mongoengine
|
||||
pymongo
|
||||
wtf-peewee
|
||||
sqlalchemy
|
||||
sqlalchemy-citext
|
||||
flask-mongoengine
|
||||
flask_sqlalchemy
|
||||
flask-babelex
|
||||
shapely
|
||||
geoalchemy2
|
||||
psycopg2
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
flask
|
||||
wtforms
|
||||
] ++ lib.optionals isPy27 [ enum34 ];
|
||||
|
||||
checkPhase = ''
|
||||
# disable tests that require mongodb, postresql
|
||||
nosetests \
|
||||
-e "mongoengine" \
|
||||
-e "pymongo" \
|
||||
-e "test_form_upload" \
|
||||
-e "test_postgres" \
|
||||
-e "geoa" \
|
||||
flask_admin/tests
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Simple and extensible admin interface framework for Flask";
|
||||
homepage = https://github.com/flask-admin/flask-admin/;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
80
pkgs/development/python-modules/flask-appbuilder/default.nix
Normal file
80
pkgs/development/python-modules/flask-appbuilder/default.nix
Normal file
@@ -0,0 +1,80 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, nose
|
||||
, apispec
|
||||
, colorama
|
||||
, click
|
||||
, flask
|
||||
, flask-babel
|
||||
, flask_login
|
||||
, flask-openid
|
||||
, flask_sqlalchemy
|
||||
, flask_wtf
|
||||
, flask-jwt-extended
|
||||
, jsonschema
|
||||
, marshmallow
|
||||
, marshmallow-enum
|
||||
, marshmallow-sqlalchemy
|
||||
, python-dateutil
|
||||
, prison
|
||||
, pyjwt
|
||||
, pyyaml
|
||||
, sqlalchemy-utils
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "flask-appbuilder";
|
||||
version = "2.1.6";
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "Flask-AppBuilder";
|
||||
inherit version;
|
||||
sha256 = "a37d7d6a62407a2e0975af5305c795f2fb5c06ecc34e3cf64659d083b1b2dd5f";
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
nose
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
apispec
|
||||
colorama
|
||||
click
|
||||
flask
|
||||
flask-babel
|
||||
flask_login
|
||||
flask-openid
|
||||
flask_sqlalchemy
|
||||
flask_wtf
|
||||
flask-jwt-extended
|
||||
jsonschema
|
||||
marshmallow
|
||||
marshmallow-enum
|
||||
marshmallow-sqlalchemy
|
||||
python-dateutil
|
||||
prison
|
||||
pyjwt
|
||||
sqlalchemy-utils
|
||||
pyyaml
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace "jsonschema>=3.0.1<4" "jsonschema" \
|
||||
--replace "marshmallow>=2.18.0,<2.20" "marshmallow" \
|
||||
--replace "PyJWT>=1.7.1" "PyJWT" \
|
||||
--replace "Flask-SQLAlchemy>=2.4,<3" "Flask-SQLAlchemy" \
|
||||
--replace "Flask-JWT-Extended>=3.18,<4" "Flask-JWT-Extended"
|
||||
'';
|
||||
|
||||
# majority of tests require network access or mongo
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Simple and rapid application development framework, built on top of Flask";
|
||||
homepage = https://github.com/dpgaspar/flask-appbuilder/;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
47
pkgs/development/python-modules/flask-babelex/default.nix
Normal file
47
pkgs/development/python-modules/flask-babelex/default.nix
Normal file
@@ -0,0 +1,47 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, flask
|
||||
, Babel
|
||||
, speaklater
|
||||
, jinja2
|
||||
, pytest
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "flask-babelex";
|
||||
version = "0.9.3";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit version;
|
||||
pname = "Flask-BabelEx";
|
||||
sha256 = "cf79cdedb5ce860166120136b0e059e9d97b8df07a3bc2411f6243de04b754b4";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
flask
|
||||
Babel
|
||||
speaklater
|
||||
jinja2
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
pytest
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
# Disabled 3 tests failing due to string representations of dates:
|
||||
# Like "12. April 2010 um 15:46:00 MESZ" != 12. "April 2010 15:46:00 MESZ"
|
||||
|
||||
pytest tests/tests.py -k "not test_init_app \
|
||||
and not test_custom_locale_selector \
|
||||
and not test_basics"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Adds i18n/l10n support to Flask applications";
|
||||
homepage = http://github.com/mrjoes/flask-babelex;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
35
pkgs/development/python-modules/flask-bcrypt/default.nix
Normal file
35
pkgs/development/python-modules/flask-bcrypt/default.nix
Normal file
@@ -0,0 +1,35 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, flask
|
||||
, bcrypt
|
||||
, python
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "flask-bcrypt";
|
||||
version = "0.7.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "maxcountryman";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0036gag3nj7fzib23lbbpwhlrn1s0kkrfwk5pd90y4cjcfqh8z9x";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
flask
|
||||
bcrypt
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
${python.interpreter} test_bcrypt.py
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Brcrypt hashing for Flask";
|
||||
homepage = https://github.com/maxcountryman/flask-bcrypt;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, flask
|
||||
, flask_wtf
|
||||
, mongoengine
|
||||
, six
|
||||
, nose
|
||||
, rednose
|
||||
, coverage
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "flask-mongoengine";
|
||||
version = "0.9.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "MongoEngine";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "05hfddf1dm594wnjyqhj0zmjfsf1kpmx1frjwhypgzx4hf62qcmr";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
flask
|
||||
flask_wtf
|
||||
mongoengine
|
||||
six
|
||||
];
|
||||
|
||||
# they set test requirements to setup_requirements...
|
||||
buildInputs = [
|
||||
nose
|
||||
rednose
|
||||
coverage
|
||||
];
|
||||
|
||||
# tests require working mongodb connection
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Flask-MongoEngine is a Flask extension that provides integration with MongoEngine and WTF model forms";
|
||||
homepage = https://github.com/mongoengine/flask-mongoengine;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
34
pkgs/development/python-modules/flask-openid/default.nix
Normal file
34
pkgs/development/python-modules/flask-openid/default.nix
Normal file
@@ -0,0 +1,34 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, flask
|
||||
, python3-openid
|
||||
, isPy3k
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "flask-openid";
|
||||
version = "1.2.5";
|
||||
disable = !isPy3k;
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "Flask-OpenID";
|
||||
inherit version;
|
||||
sha256 = "5a8ffe1c8c0ad1cc1f5030e1223ea27f8861ee0215a2a58a528cc61379e5ccab";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
flask
|
||||
python3-openid
|
||||
];
|
||||
|
||||
# no tests for repo...
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "OpenID support for Flask";
|
||||
homepage = http://github.com/mitsuhiko/flask-openid/;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
29
pkgs/development/python-modules/gpyopt/default.nix
Normal file
29
pkgs/development/python-modules/gpyopt/default.nix
Normal file
@@ -0,0 +1,29 @@
|
||||
{ stdenv, buildPythonPackage, fetchFromGitHub, setuptools
|
||||
, numpy, scipy, gpy, emcee, nose }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "GPyOpt";
|
||||
version = "unstable-2019-09-25";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = pname;
|
||||
owner = "SheffieldML";
|
||||
rev = "249b8ff29c52c12ed867f145a627d529372022d8";
|
||||
sha256 = "1ywaw1kpdr7dv4s4cr7afmci86sw7w61178gs45b0lq08652zdlb";
|
||||
};
|
||||
|
||||
doCheck = false; # requires several packages not available in Nix
|
||||
|
||||
checkInputs = [ nose ];
|
||||
|
||||
checkPhase = "nosetests -v GPyOpt/testing";
|
||||
|
||||
propagatedBuildInputs = [ setuptools numpy scipy gpy emcee ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Bayesian optimization toolbox in Python";
|
||||
homepage = https://sheffieldml.github.io/GPyOpt;
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ bcdarwin ];
|
||||
};
|
||||
}
|
||||
32
pkgs/development/python-modules/json-merge-patch/default.nix
Normal file
32
pkgs/development/python-modules/json-merge-patch/default.nix
Normal file
@@ -0,0 +1,32 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, fetchpatch
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "json-merge-patch";
|
||||
version = "0.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "09898b6d427c08754e2a97c709cf2dfd7e28bd10c5683a538914975eab778d39";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# This prevented tests from running (was using a relative import)
|
||||
# https://github.com/OpenDataServices/json-merge-patch/pull/1
|
||||
(fetchpatch {
|
||||
name = "fully-qualified-json-merge-patch-import-on-tests";
|
||||
url = https://patch-diff.githubusercontent.com/raw/OpenDataServices/json-merge-patch/pull/1.patch;
|
||||
sha256 = "1k6xsrxsmz03nwcqsf4gf0zsfnl2r20n83npic8z6bqlpl4lidl4";
|
||||
})
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "JSON Merge Patch library";
|
||||
homepage = https://github.com/open-contracting/json-merge-patch;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
42
pkgs/development/python-modules/marshmallow-enum/default.nix
Normal file
42
pkgs/development/python-modules/marshmallow-enum/default.nix
Normal file
@@ -0,0 +1,42 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, marshmallow
|
||||
, pytestCheckHook
|
||||
, isPy27
|
||||
, enum34
|
||||
, pytest-flake8
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "marshmallow-enum";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "justanr";
|
||||
repo = "marshmallow_enum";
|
||||
rev = "v${version}";
|
||||
sha256 = "1ihrcmyfjabivg6hc44i59hnw5ijlg1byv3zs1rqxfynp8xr7398";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
marshmallow
|
||||
] ++ lib.optionals isPy27 [ enum34 ];
|
||||
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
pytest-flake8
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
"test_custom_error_in_deserialize_by_name"
|
||||
"test_custom_error_in_deserialize_by_value"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Enum field for Marshmallow";
|
||||
homepage = https://github.com/justanr/marshmallow_enum;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
49
pkgs/development/python-modules/mongoengine/default.nix
Normal file
49
pkgs/development/python-modules/mongoengine/default.nix
Normal file
@@ -0,0 +1,49 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, pymongo
|
||||
, six
|
||||
, blinker
|
||||
, nose
|
||||
, pillow
|
||||
, coverage
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mongoengine";
|
||||
version = "0.18.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "MongoEngine";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "0gx091h9rcykdj233srrl3dfc0ly52p6r4qc9ah6z0f694kmqj1v";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
pymongo
|
||||
six
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
nose
|
||||
pillow
|
||||
coverage
|
||||
blinker
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace "coverage==4.2" "coverage"
|
||||
'';
|
||||
|
||||
# tests require mongodb running in background
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "MongoEngine is a Python Object-Document Mapper for working with MongoDB";
|
||||
homepage = http://mongoengine.org/;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
57
pkgs/development/python-modules/prance/default.nix
Normal file
57
pkgs/development/python-modules/prance/default.nix
Normal file
@@ -0,0 +1,57 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, chardet
|
||||
, pyyaml
|
||||
, requests
|
||||
, six
|
||||
, semver
|
||||
, pytest
|
||||
, pytestcov
|
||||
, pytestrunner
|
||||
, sphinx
|
||||
, openapi-spec-validator
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "prance";
|
||||
version = "0.15.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "793f96dc8bba73bf4342f57b3570f5e0a94c30e60f0c802a2aaa302759dd8610";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
pytestrunner
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
chardet
|
||||
pyyaml
|
||||
requests
|
||||
six
|
||||
semver
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
pytest
|
||||
pytestcov
|
||||
openapi-spec-validator
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace "tests_require = dev_require," "tests_require = None,"
|
||||
'';
|
||||
|
||||
# many tests require network connection
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Resolving Swagger/OpenAPI 2.0 and 3.0.0 Parser";
|
||||
homepage = https://github.com/jfinkhaeuser/prance;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
33
pkgs/development/python-modules/prison/default.nix
Normal file
33
pkgs/development/python-modules/prison/default.nix
Normal file
@@ -0,0 +1,33 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, six
|
||||
, nose
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "prison";
|
||||
version = "0.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "betodealmeida";
|
||||
repo = "python-rison";
|
||||
rev = version;
|
||||
sha256 = "14vb468iznf9416z993bbqihywp9ibyslw5vp67wfr200zyxjwak";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
six
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
nose
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Rison encoder/decoder";
|
||||
homepage = https://github.com/betodealmeida/python-rison;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "rtslib";
|
||||
version = "2.1.fb69";
|
||||
version = "2.1.71";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "open-iscsi";
|
||||
repo ="${pname}-fb";
|
||||
rev = "v${version}";
|
||||
sha256 = "17rlcrd9757nq91pa8xjr7147k7mxxp8zdka7arhlgsp3kcnbsfd";
|
||||
sha256 = "0cn9azi44hf59mp47207igv72kjbkyz4rsvgzmwbpz0s57b0hnab";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ six pyudev pygobject3 ];
|
||||
|
||||
41
pkgs/development/python-modules/snakebite/default.nix
Normal file
41
pkgs/development/python-modules/snakebite/default.nix
Normal file
@@ -0,0 +1,41 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, tox
|
||||
, virtualenv
|
||||
, protobuf
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "snakebite";
|
||||
version = "2.11.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "085238b4944cb9c658ee62d5794de936ac3d0c337c504b2cc86424a205ae978a";
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
tox
|
||||
virtualenv
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
protobuf
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace "'argparse'" ""
|
||||
'';
|
||||
|
||||
# tests require hadoop hdfs
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Pure Python HDFS client";
|
||||
homepage = http://github.com/spotify/snakebite;
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, sqlalchemy
|
||||
, python
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "sqlalchemy-citext";
|
||||
version = "1.3-0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "7d7343037a35153d6f94c3c2f6baf391f88a57651c3bde5d6749d216859ae4c5";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
sqlalchemy
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
${python.interpreter} tests/test_citext.py
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A sqlalchemy plugin that allows postgres use of CITEXT";
|
||||
homepage = https://github.com/mahmoudimus/sqlalchemy-citext;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
@@ -1,19 +1,20 @@
|
||||
{lib, fetchFromGitHub, pythonOlder, buildPythonPackage, gfortran, mock, xarray, wrapt, numpy, netcdf4}:
|
||||
{lib, fetchFromGitHub, pythonOlder, buildPythonPackage, gfortran, mock, xarray, wrapt, numpy, netcdf4, setuptools}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "wrf-python";
|
||||
version = "1.3.1.1";
|
||||
version = "1.3.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "NCAR";
|
||||
repo = "wrf-python";
|
||||
rev = version;
|
||||
sha256 = "12mm7x1r5md6x28vmwyh6k655pgsv6knj8ycmjbxxk8bk7qsj74h";
|
||||
sha256 = "1rklkki54z5392cpwwy78bnmsy2ghc187l3j7nv0rzn6jk5bvyi7";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
wrapt
|
||||
numpy
|
||||
setuptools
|
||||
xarray
|
||||
];
|
||||
|
||||
@@ -39,4 +40,4 @@ buildPythonPackage rec {
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ mhaselsteiner ];
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
33
pkgs/development/python-modules/wtf-peewee/default.nix
Normal file
33
pkgs/development/python-modules/wtf-peewee/default.nix
Normal file
@@ -0,0 +1,33 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, peewee
|
||||
, wtforms
|
||||
, python
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "wtf-peewee";
|
||||
version = "3.0.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "acd05d136c8595da3327fcf9176fa85fdcec1f2aac51d235e46e6fc7a0871283";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
peewee
|
||||
wtforms
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
${python.interpreter} runtests.py
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "WTForms integration for peewee models";
|
||||
homepage = https://github.com/coleifer/wtf-peewee/;
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user