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.245";
15 pyproject = true;
16
17 # No source available from official repo
18 src = fetchPypi {
19 inherit pname version;
20 hash = "sha256-pCb+P6WQUPX+dzFfe6Hcfao1fH2NDtBmpYNWRx2FPko=";
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 ]
34 ++ lib.optional isPy27 futures;
35
36 doCheck = false;
37 pythonImportsCheck = [ "docplex" ];
38
39 meta = with lib; {
40 description = "IBM Decision Optimization CPLEX Modeling for Python";
41 homepage = "https://onboarding-oaas.docloud.ibmcloud.com/software/analytics/docloud/";
42 license = licenses.asl20;
43 maintainers = with maintainers; [ drewrisinger ];
44 };
45}