at 23.11-beta 1.2 kB view raw
1{ lib 2, isPy27 3, buildPythonPackage 4, fetchFromGitHub 5, pycryptodome 6, uvloop 7}: 8 9buildPythonPackage rec { 10 pname = "pproxy"; 11 version = "2.3.7"; 12 13 disabled = isPy27; 14 15 # doesn't use tagged releases. Tests not in PyPi versioned releases 16 src = fetchFromGitHub { 17 owner = "qwj"; 18 repo = "python-proxy"; 19 rev = "7fccf8dd62204f34b0aa3a70fc568fd6ddff7728"; 20 sha256 = "1sl2i0kymnbsk49ina81yjnkxjy09541f7pmic8r6rwsv1s87skc"; 21 }; 22 23 propagatedBuildInputs = [ 24 pycryptodome 25 uvloop 26 ]; 27 28 pythonImportsCheck = [ "pproxy" ]; 29 disabledTests = [ "api_server" "api_client" ]; # try to connect to outside Internet, so disabled 30 # test suite doesn't use test runner. so need to run ``python ./tests/*`` 31 checkPhase = '' 32 shopt -s extglob 33 for f in ./tests/!(${builtins.concatStringsSep "|" disabledTests}).py ; do 34 echo "***Testing $f***" 35 eval "python $f" 36 done 37 ''; 38 39 meta = with lib; { 40 description = "Proxy server that can tunnel among remote servers by regex rules"; 41 homepage = "https://github.com/qwj/python-proxy"; 42 license = licenses.mit; 43 maintainers = with maintainers; [ drewrisinger ]; 44 }; 45}