depot/third_party/nixpkgs/pkgs/development/python-modules/mlflow/default.nix

83 lines
1.7 KiB
Nix
Raw Normal View History

{ lib, buildPythonPackage, fetchPypi, isPy27, fetchpatch
, alembic
, click
, cloudpickle
, requests
, six
, flask
, numpy
, pandas
, python-dateutil
, protobuf
, GitPython
, pyyaml
, querystring_parser
, simplejson
, docker
, databricks-cli
, entrypoints
, sqlparse
, sqlalchemy
, gorilla
, gunicorn
, prometheus-flask-exporter
, importlib-metadata
}:
buildPythonPackage rec {
pname = "mlflow";
version = "1.22.0";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "f680390715e436ae38cf7056ec91030fc9eb67cc631226f28ff9504fbe395add";
};
# run into https://stackoverflow.com/questions/51203641/attributeerror-module-alembic-context-has-no-attribute-config
# also, tests use conda so can't run on NixOS without buildFHSUserEnv
doCheck = false;
propagatedBuildInputs = [
alembic
click
cloudpickle
requests
six
flask
numpy
pandas
python-dateutil
protobuf
GitPython
pyyaml
querystring_parser
simplejson
docker
databricks-cli
entrypoints
sqlparse
sqlalchemy
gorilla
gunicorn
prometheus-flask-exporter
importlib-metadata
];
patches = [
# Relex alembic version, https://github.com/mlflow/mlflow/pull/5245
(fetchpatch {
name = "relax-alembic-version.patch";
url = "https://github.com/mlflow/mlflow/commit/945eb4b67f315c0b2c4018b1df006fde910f115f.patch";
sha256 = "sha256-jETVEPzlNe0PvFZVOi1SwgJELfx/KCeq6REL3vl+YT0=";
})
];
meta = with lib; {
homepage = "https://github.com/mlflow/mlflow";
description = "Open source platform for the machine learning lifecycle";
license = licenses.asl20;
maintainers = with maintainers; [ tbenst ];
};
}