{ lib , buildPythonPackage , fetchPypi , boto , boto3 , bz2file , mock , moto , requests , responses }: buildPythonPackage rec { pname = "smart_open"; version = "1.8.4"; src = fetchPypi { inherit pname version; sha256 = "1y845mfsswyvczknwh359xprgc3hk8r17qy1wdibpz6y6pq0g3kq"; }; # nixpkgs version of moto is >=1.2.0, remove version pin to fix build postPatch = '' substituteInPlace ./setup.py --replace "moto==0.4.31" "moto" ''; # moto>=1.0.0 is backwards-incompatible and some tests fail with it, # so disable tests for now doCheck = false; checkInputs = [ mock moto responses ]; # upstream code requires both boto and boto3 propagatedBuildInputs = [ boto boto3 bz2file requests ]; meta = { license = lib.licenses.mit; description = "smart_open is a Python 2 & Python 3 library for efficient streaming of very large file"; maintainers = with lib.maintainers; [ jyp ]; }; }