anchor.diff:  { stdenv
  +, lib
   , buildPythonPackage
   , fetchFromGitHub
   , click
  
positive.code: , uvloop
  , websockets
  , wsproto
  , pytest
  , requests
  , isPy27
  }:
  
  buildPythonPackage rec {
    pname = "uvicorn";
    version = "0.11.5";
    disabled = isPy27;
  
    src = fetchFromGitHub {
      owner = "encode";
      repo = pname;
      rev = version;
      sha256 = "0cf0vw6kzxwlkvk5gw85wv3kg1kdil0wkq3s7rmxpvrk6gjk8jvq";
    };
  
    propagatedBuildInputs = [
  
negative.code:     uvloop
      websockets
      wsproto
    ] ++ lib.optionals (pythonOlder "3.8") [
      typing-extensions
    ];
  
    checkInputs = [
      pytestCheckHook
      pytest-mock
      pyyaml
      requests
      trustme
    ];
  
    doCheck = !stdenv.isDarwin;
  
    pytestFlagsArray = [
      # watchgod required the watchgod package, which isn't available in nixpkgs
      "--ignore=tests/supervisors/test_reload.py"
    ];
  
    disabledTests = [
      "test_supported_upgrade_request"
      "test_invalid_upgrade"
    ];
  
    meta = with lib; {
      homepage = "https://www.uvicorn.org/";
      description = "The lightning-fast ASGI server";
      license = licenses.bsd3;
  