1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 isPy27,
6 setuptools,
7 futures ? null,
8 docloud,
9 requests,
10}:
11
12buildPythonPackage rec {
13 pname = "docplex";
14 version = "2.29.241";
15 pyproject = true;
16
17 # No source available from official repo
18 src = fetchPypi {
19 inherit pname version;
20 hash = "sha256-rVJQOWvgzqArcycQeVu540XZkju7C/ZlIPZuuPHpiK0=";
21 };
22
23 postPatch = ''
24 substituteInPlace pyproject.toml \
25 --replace-fail "setuptools~=68.2.2" "setuptools>=68.2.2"
26 '';
27
28 build-system = [ setuptools ];
29
30 propagatedBuildInputs = [
31 docloud
32 requests
33 ] ++ lib.optional isPy27 futures;
34
35 doCheck = false;
36 pythonImportsCheck = [ "docplex" ];
37
38 meta = with lib; {
39 description = "IBM Decision Optimization CPLEX Modeling for Python";
40 homepage = "https://onboarding-oaas.docloud.ibmcloud.com/software/analytics/docloud/";
41 license = licenses.asl20;
42 maintainers = with maintainers; [ drewrisinger ];
43 };
44}