anchor.diff:  
       "translationstring" = python.mkDerivation {
         name = "translationstring-1.3";
  -      src = pkgs.fetchurl { url = "https://files.pythonhosted.org/packages/5e/eb/bee578cc150b44c653b63f5ebe258b5d0d812ddac12497e5f80fcad5d0b4/translationstring-1.3.tar.gz"; sha256 = "4ee44cfa58c52ade8910ea0ebc3d2d84bdcad9fa0422405b1801ec9b9a65b72d"; };
  -      doCheck = commonDoCheck;
  -      checkPhase = "";
  -      installCheckPhase = "";
  -      buildInputs = commonBuildInputs;
  -      propagatedBuildInputs = [ ];
  -      meta = with pkgs.stdenv.lib; {
  -        homepage = "";
  +      src = pkgs.fetchurl {
  +        url = "https://files.pythonhosted.org/packages/5e/eb/bee578cc150b44c653b63f5ebe258b5d0d812ddac12497e5f80fcad5d0b4/translationstring-1.3.tar.gz";
  +        sha256 = "4ee44cfa58c52ade8910ea0ebc3d2d84bdcad9fa0422405b1801ec9b9a65b72d";
  +};
  +      doCheck = commonDoCheck;
  +      buildInputs = commonBuildInputs ++ [ ];
  +      propagatedBuildInputs = [ ];
  +      meta = with pkgs.stdenv.lib; {
  +        homepage = "http://pylonsproject.org";
           license = "BSD-like (http://repoze.org/license.html)";
           description = "Utility library for i18n relied on by various Repoze and Pyramid packages";
         };
       };
   
  +    "typing-inspect" = python.mkDerivation {
  +      name = "typing-inspect-0.4.0";
  +      src = pkgs.fetchurl {
  +        url = "https://files.pythonhosted.org/packages/ae/6c/0f91f0d13be6a6ceba8605315fd29f1ea97f1e6556c52199eb9f3d70f0bd/typing_inspect-0.4.0.tar.gz";
  +        sha256 = "cf41eb276cc8955a45e03c15cd1efa6c181a8775a38ff0bfda99d28af97bcda3";
  +};
  +      doCheck = commonDoCheck;
  +      buildInputs = commonBuildInputs ++ [ ];
  +      propagatedBuildInputs = [
  +        self."mypy-extensions"
  +      ];
  +      meta = with pkgs.stdenv.lib; {
  +        homepage = "https://github.com/ilevkivskyi/typing_inspect";
  +        license = licenses.mit;
  +        description = "Runtime inspection utilities for typing module.";
  +      };
  +    };
  +
       "urllib3" = python.mkDerivation {
  -      name = "urllib3-1.24.1";
  -      src = pkgs.fetchurl { url = "https://files.pythonhosted.org/packages/b1/53/37d82ab391393565f2f831b8eedbffd57db5a718216f82f1a8b4d381a1c1/urllib3-1.24.1.tar.gz"; sha256 = "de9529817c93f27c8ccbfead6985011db27bd0ddfcdb2d86f3f663385c6a9c22"; };
  -      doCheck = commonDoCheck;
  -      checkPhase = "";
  -      installCheckPhase = "";
  -      buildInputs = commonBuildInputs;
  -      propagatedBuildInputs = [ ];
  -      meta = with pkgs.stdenv.lib; {
  -        homepage = "";
  +      name = "urllib3-1.25.3";
  +      src = pkgs.fetchurl {
  +        url = "https://files.pythonhosted.org/packages/4c/13/2386233f7ee40aa8444b47f7463338f3cbdf00c316627558784e3f542f07/urllib3-1.25.3.tar.gz";
  +        sha256 = "dbe59173209418ae49d485b87d1681aefa36252ee85884c31346debd19463232";
  +};
  +      doCheck = commonDoCheck;
  +      buildInputs = commonBuildInputs ++ [ ];
  +      propagatedBuildInputs = [
  +        self."certifi"
  +        self."idna"
  +      ];
  +      meta = with pkgs.stdenv.lib; {
  +        homepage = "https://urllib3.readthedocs.io/";
           license = licenses.mit;
           description = "HTTP library with thread-safe connection pooling, file post, and more.";
         };
       };
   
       "validators" = python.mkDerivation {
  -      name = "validators-0.12.2";
  -      src = pkgs.fetchurl { url = "https://files.pythonhosted.org/packages/45/7b/5b7b74208a3e0744d1a0efbfb1935fa46fa4cfe58d3d63f17c49c58c429c/validators-0.12.2.tar.gz"; sha256 = "172ac45f7d1944ce4beca3c5c53ca7c83e9759e39fd3fedc1cf28e2130268706"; };
  -      doCheck = commonDoCheck;
  -      checkPhase = "";
  -      installCheckPhase = "";
  -      buildInputs = commonBuildInputs;
  -      propagatedBuildInputs = [
  -      self."decorator"
  -      self."six"
  -    ];
  -      meta = with pkgs.stdenv.lib; {
  -        homepage = "";
  -        license = licenses.bsdOriginal;
  -        description = "Python Data Validation for Humans™.";
  -      };
  -    };
  -
  -    "zope.deprecation" = python.mkDerivation {
  -      name = "zope.deprecation-4.3.0";
  -      src = pkgs.fetchurl { url = "https://files.pythonhosted.org/packages/a1/18/2dc5e6bfe64fdc3b79411b67464c55bb0b43b127051a20f7f492ab767758/zope.deprecation-4.3.0.tar.gz"; sha256 = "7d52e134bbaaa0d72e1e2bc90f0587f1adc116c4bdf15912afaf2f1e8856b224"; };
  -      doCheck = commonDoCheck;
  -      checkPhase = "";
  -      installCheckPhase = "";
  -      buildInputs = commonBuildInputs;
  -      propagatedBuildInputs = [ ];
  -      meta = with pkgs.stdenv.lib; {
  -        homepage = "";
  +      name = "validators-0.14.0";
  +      src = pkgs.fetchurl {
  +        url = "https://files.pythonhosted.org/packages/b2/b7/5fc43b7dba2a35362b2f5ce39dbee835c48898e2458910c3af810240fbaa/validators-0.14.0.tar.gz";
  +        sha256 = "f0ac832212e3ee2e9b10e156f19b106888cf1429c291fbc5297aae87685014ae";
  +};
  +      doCheck = commonDoCheck;
  +      buildInputs = commonBuildInputs ++ [ ];
  +      propagatedBuildInputs = [
  +        self."decorator"
  +        self."six"
  +      ];
  +      meta = with pkgs.stdenv.lib; {
  +        homepage = "https://github.com/kvesteri/validators";
  +        license = licenses.bsdOriginal;
  +        description = "";
  +      };
  +    };
  +
  +    "webob" = python.mkDerivation {
  +      name = "webob-1.8.5";
  +      src = pkgs.fetchurl {
  +        url = "https://files.pythonhosted.org/packages/9d/1a/0c89c070ee2829c934cb6c7082287c822e28236a4fcf90063e6be7c35532/WebOb-1.8.5.tar.gz";
  +        sha256 = "05aaab7975e0ee8af2026325d656e5ce14a71f1883c52276181821d6d5bf7086";
  +};
  +      doCheck = commonDoCheck;
  +      buildInputs = commonBuildInputs ++ [ ];
  +      propagatedBuildInputs = [ ];
  +      meta = with pkgs.stdenv.lib; {
  +        homepage = "http://webob.org/";
  +        license = licenses.mit;
  +        description = "WSGI request and response object";
  +      };
  +    };
  +
  +    "werkzeug" = python.mkDerivation {
  +      name = "werkzeug-0.15.5";
  +      src = pkgs.fetchurl {
  +        url = "https://files.pythonhosted.org/packages/c7/fb/56734c47bc5bb4d00898c2581bc08166cb6fea72b6894cf279053521c25a/Werkzeug-0.15.5.tar.gz";
  +        sha256 = "a13b74dd3c45f758d4ebdb224be8f1ab8ef58b3c0ffc1783a8c7d9f4f50227e6";
  +};
  +      doCheck = commonDoCheck;
  +      buildInputs = commonBuildInputs ++ [ ];
  +      propagatedBuildInputs = [ ];
  +      meta = with pkgs.stdenv.lib; {
  +        homepage = "https://palletsprojects.com/p/werkzeug/";
  +        license = licenses.bsd3;
  +        description = "The comprehensive WSGI web application library.";
  +      };
  +    };
  +
  +    "zope-deprecation" = python.mkDerivation {
  +      name = "zope-deprecation-4.4.0";
  +      src = pkgs.fetchurl {
  +        url = "https://files.pythonhosted.org/packages/34/da/46e92d32d545dd067b9436279d84c339e8b16de2ca393d7b892bc1e1e9fd/zope.deprecation-4.4.0.tar.gz";
  +        sha256 = "0d453338f04bacf91bbfba545d8bcdf529aa829e67b705eac8c1a7fdce66e2df";
  +};
  +      doCheck = commonDoCheck;
  +      buildInputs = commonBuildInputs ++ [ ];
  +      propagatedBuildInputs = [ ];
  +      meta = with pkgs.stdenv.lib; {
  +        homepage = "https://github.com/zopefoundation/zope.deprecation";
           license = licenses.zpl21;
           description = "Zope Deprecation Infrastructure";
         };
       };
   
  -    "zope.interface" = python.mkDerivation {
  -      name = "zope.interface-4.6.0";
  -      src = pkgs.fetchurl { url = "https://files.pythonhosted.org/packages/4e/d0/c9d16bd5b38de44a20c6dc5d5ed80a49626fafcb3db9f9efdc2a19026db6/zope.interface-4.6.0.tar.gz"; sha256 = "1b3d0dcabc7c90b470e59e38a9acaa361be43b3a6ea644c0063951964717f0e5"; };
  -      doCheck = commonDoCheck;
  -      checkPhase = "";
  -      installCheckPhase = "";
  -      buildInputs = commonBuildInputs;
  -      propagatedBuildInputs = [ ];
  -      meta = with pkgs.stdenv.lib; {
  -        homepage = "";
  +    "zope-interface" = python.mkDerivation {
  +      name = "zope-interface-4.6.0";
  +      src = pkgs.fetchurl {
  +        url = "https://files.pythonhosted.org/packages/4e/d0/c9d16bd5b38de44a20c6dc5d5ed80a49626fafcb3db9f9efdc2a19026db6/zope.interface-4.6.0.tar.gz";
  +        sha256 = "1b3d0dcabc7c90b470e59e38a9acaa361be43b3a6ea644c0063951964717f0e5";
  +};
  +      doCheck = commonDoCheck;
  +      buildInputs = commonBuildInputs ++ [ ];
  +      propagatedBuildInputs = [ ];
  +      meta = with pkgs.stdenv.lib; {
  +        homepage = "https://github.com/zopefoundation/zope.interface";
           license = licenses.zpl21;
           description = "Interfaces for Python";
         };
       };
   
  -    "zope.sqlalchemy" = python.mkDerivation {
  -      name = "zope.sqlalchemy-1.0";
  -      src = pkgs.fetchurl { url = "https://files.pythonhosted.org/packages/75/13/b88b597ef6027b5480f68e022206e4b3ee2310a59bbc85bd3e9eca9566b6/zope.sqlalchemy-1.0.tar.gz"; sha256 = "9316a1a8bb9e4f9f59332acf1ad2cc8b664f19a4bde5f68be7f61f3e11f80514"; };
  -      doCheck = commonDoCheck;
  -      checkPhase = "";
  -      installCheckPhase = "";
  -      buildInputs = commonBuildInputs;
  -      propagatedBuildInputs = [
  -      self."SQLAlchemy"
  -      self."transaction"
  -      self."zope.interface"
  -    ];
  -      meta = with pkgs.stdenv.lib; {
  -        homepage = "";
  +    "zope-sqlalchemy" = python.mkDerivation {
  +      name = "zope-sqlalchemy-1.1";
  +      src = pkgs.fetchurl {
  +        url = "https://files.pythonhosted.org/packages/b8/4f/4a372512cd37885c572dc7d36d3befe8adecb07e451d1f03723b29c947f2/zope.sqlalchemy-1.1.tar.gz";
  +        sha256 = "81554c5b03fbf924c4144ef835b7900271fbd85cfe81cb6bd95e3ab7aa85189f";
  +};
  +      doCheck = commonDoCheck;
  +      buildInputs = commonBuildInputs ++ [ ];
  +      propagatedBuildInputs = [
  +        self."sqlalchemy"
  +        self."transaction"
  +        self."zope-interface"
  +      ];
  +      meta = with pkgs.stdenv.lib; {
  +        homepage = "http://pypi.python.org/pypi/zope.sqlalchemy";
           license = licenses.zpl21;
           description = "Minimal Zope/SQLAlchemy transaction integration";
         };
  
positive.code:       __old = pythonPackages;
        inherit interpreter;
        inherit interpreterWithPackages;
        mkDerivation = pythonPackages.buildPythonPackage;
        packages = pkgs;
        overrideDerivation = drv: f:
          pythonPackages.buildPythonPackage (
  
negative.code: 
      "peppercorn" = python.mkDerivation {
        name = "peppercorn-0.6";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/e4/77/93085de7108cdf1a0b092ff443872a8f9442c736d7ddebdf2f27627935f4/peppercorn-0.6.tar.gz";
          sha256 = "96d7681d7a04545cfbaf2c6fb66de67b29cfc42421aa263e4c78f2cbb85be4c6";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [ ];
        meta = with pkgs.stdenv.lib; {
          homepage = "https://docs.pylonsproject.org/projects/peppercorn/en/latest/";
          license = "BSD-derived (http://www.repoze.org/LICENSE.txt)";
          description = "A library for converting a token stream into a data structure for use in web form posts";
        };
      };
  
      "psycopg2" = python.mkDerivation {
        name = "psycopg2-2.8.3";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/5c/1c/6997288da181277a0c29bc39a5f9143ff20b8c99f2a7d059cfb55163e165/psycopg2-2.8.3.tar.gz";
          sha256 = "897a6e838319b4bf648a574afb6cabcb17d0488f8c7195100d48d872419f4457";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [ ];
        meta = with pkgs.stdenv.lib; {
          homepage = "http://initd.org/psycopg/";
          license = licenses.zpl21;
          description = "psycopg2 - Python-PostgreSQL Database Adapter";
        };
      };
  
      "py-gfm" = python.mkDerivation {
        name = "py-gfm-0.1.4";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/06/ee/004a03a1d92bb386dae44f6dd087db541bc5093374f1637d4d4ae5596cc2/py-gfm-0.1.4.tar.gz";
          sha256 = "ef6750c579d26651cfd23968258b604228fd71b2a4e1f71dea3bea289e01377e";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [
          self."markdown"
        ];
        meta = with pkgs.stdenv.lib; {
          homepage = "https://github.com/zopieux/py-gfm";
          license = "UNKNOWN";
          description = "An implementation of Github-Flavored Markdown written as an extension to the Python Markdown library.";
        };
      };
  
      "pyjade" = python.mkDerivation {
        name = "pyjade-4.0.0";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/4a/04/396ec24e806fd3af7ea5d0f3cb6c7bbd4d00f7064712e4dd48f24c02ca95/pyjade-4.0.0.tar.gz";
          sha256 = "8d95b741de09c4942259fc3d1ad7b4f48166e69cef6f11c172e4b2c458b1ccd7";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [
          self."six"
        ];
        meta = with pkgs.stdenv.lib; {
          homepage = "http://github.com/syrusakbary/pyjade";
          license = licenses.mit;
          description = "Jade syntax template adapter for Django, Jinja2, Mako and Tornado templates";
        };
      };
  
      "pytz" = python.mkDerivation {
        name = "pytz-2019.2";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/27/c0/fbd352ca76050952a03db776d241959d5a2ee1abddfeb9e2a53fdb489be4/pytz-2019.2.tar.gz";
          sha256 = "26c0b32e437e54a18161324a2fca3c4b9846b74a8dccddd843113109e1116b32";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [ ];
        meta = with pkgs.stdenv.lib; {
          homepage = "http://pythonhosted.org/pytz";
          license = licenses.mit;
          description = "World timezone definitions, modern and historical";
        };
      };
  
      "pyyaml" = python.mkDerivation {
        name = "pyyaml-5.1.2";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/e3/e8/b3212641ee2718d556df0f23f78de8303f068fe29cdaa7a91018849582fe/PyYAML-5.1.2.tar.gz";
          sha256 = "01adf0b6c6f61bd11af6e10ca52b7d4057dd0be0343eb9283c878cf3af56aee4";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [ ];
        meta = with pkgs.stdenv.lib; {
          homepage = "https://github.com/yaml/pyyaml";
          license = licenses.mit;
          description = "YAML parser and emitter for Python";
        };
      };
  
      "reg" = python.mkDerivation {
        name = "reg-0.11";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/50/45/cdf15fd2fe84d9bcedc38fb42e5c0836c9e6bf21d9b0f7b40ba4cf488008/reg-0.11.tar.gz";
          sha256 = "ce61bc8c37d58477675d8eb4922ef26c1446e1691249de613f629ef286addf04";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [
          self."repoze-lru"
        ];
        meta = with pkgs.stdenv.lib; {
          homepage = "http://reg.readthedocs.io";
          license = licenses.bsdOriginal;
          description = "Clever dispatch";
        };
      };
  
      "regex" = python.mkDerivation {
        name = "regex-2019.8.19";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/6f/a6/99eeb5904ab763db87af4bd71d9b1dfdd9792681240657a4c0a599c10a81/regex-2019.08.19.tar.gz";
          sha256 = "587b62d48ca359d2d4f02d486f1f0aa9a20fbaf23a9d4198c4bed72ab2f6c849";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [ ];
        meta = with pkgs.stdenv.lib; {
          homepage = "https://bitbucket.org/mrabarnett/mrab-regex";
          license = licenses.psfl;
          description = "Alternative regular expression module, to replace re.";
        };
      };
  
      "repoze-lru" = python.mkDerivation {
        name = "repoze-lru-0.7";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/12/bc/595a77c4b5e204847fdf19268314ef59c85193a9dc9f83630fc459c0fee5/repoze.lru-0.7.tar.gz";
          sha256 = "0429a75e19380e4ed50c0694e26ac8819b4ea7851ee1fc7583c8572db80aff77";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [ ];
        meta = with pkgs.stdenv.lib; {
          homepage = "http://www.repoze.org";
          license = "BSD-derived (http://www.repoze.org/LICENSE.txt)";
          description = "A tiny LRU cache implementation and decorator";
        };
      };
  
      "requests" = python.mkDerivation {
        name = "requests-2.22.0";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/01/62/ddcf76d1d19885e8579acb1b1df26a852b03472c0e46d2b959a714c90608/requests-2.22.0.tar.gz";
          sha256 = "11e007a8a2aa0323f5a921e9e6a2d7e4e67d9877e85773fba9ba6419025cbeb4";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [
          self."certifi"
          self."chardet"
          self."idna"
          self."urllib3"
        ];
        meta = with pkgs.stdenv.lib; {
          homepage = "http://python-requests.org";
          license = licenses.asl20;
          description = "Python HTTP for Humans.";
        };
      };
  
      "requests-oauthlib" = python.mkDerivation {
        name = "requests-oauthlib-1.2.0";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/de/a2/f55312dfe2f7a344d0d4044fdfae12ac8a24169dc668bd55f72b27090c32/requests-oauthlib-1.2.0.tar.gz";
          sha256 = "bd6533330e8748e94bf0b214775fed487d309b8b8fe823dc45641ebcd9a32f57";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [
          self."oauthlib"
          self."requests"
        ];
        meta = with pkgs.stdenv.lib; {
          homepage = "https://github.com/requests/requests-oauthlib";
          license = "ISC";
          description = "OAuthlib authentication support for Requests.";
        };
      };
  
      "six" = python.mkDerivation {
        name = "six-1.12.0";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/dd/bf/4138e7bfb757de47d1f4b6994648ec67a51efe58fa907c1e11e350cddfca/six-1.12.0.tar.gz";
          sha256 = "d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [ ];
        meta = with pkgs.stdenv.lib; {
          homepage = "https://github.com/benjaminp/six";
          license = licenses.mit;
          description = "Python 2 and 3 compatibility utilities";
        };
      };
  
      "sqlalchemy" = python.mkDerivation {
        name = "sqlalchemy-1.3.7";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/c2/75/6217c626fa22ad56ae5ccb1a36e7c4f17f5ca31543887e00179468d10464/SQLAlchemy-1.3.7.tar.gz";
          sha256 = "0459bf0ea6478f3e904de074d65769a11d74cdc34438ab3159250c96d089aef0";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [
          self."psycopg2"
        ];
        meta = with pkgs.stdenv.lib; {
          homepage = "http://www.sqlalchemy.org";
          license = licenses.mit;
          description = "Database Abstraction Library";
        };
      };
  
      "sqlalchemy-searchable" = python.mkDerivation {
        name = "sqlalchemy-searchable-1.1.0";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/93/6e/9df05493d1bbc96eb1ca2c7ab87879a299399c9aa4ea73af52c159824884/SQLAlchemy-Searchable-1.1.0.tar.gz";
          sha256 = "b48e67ef238a154e4b8de84637ef9645c213a2367b1f1915dd2f65242b2f04b2";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [
          self."sqlalchemy"
          self."sqlalchemy-utils"
          self."validators"
        ];
        meta = with pkgs.stdenv.lib; {
          homepage = "https://github.com/kvesteri/sqlalchemy-searchable";
          license = licenses.bsdOriginal;
          description = "Provides fulltext search capabilities for declarative SQLAlchemy models.";
        };
      };
  
      "sqlalchemy-utils" = python.mkDerivation {
        name = "sqlalchemy-utils-0.34.2";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/45/61/3bdd2931e86253fa7df6445a26929fbcc9bc43ad6b27a10f991eb6ecde75/SQLAlchemy-Utils-0.34.2.tar.gz";
          sha256 = "6689b29d7951c5c7c4d79fa6b8c95f9ff9ec708b07aa53f82060599bd14dcc88";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [
          self."babel"
          self."jinja2"
          self."passlib"
          self."psycopg2"
          self."pytz"
          self."six"
          self."sqlalchemy"
        ];
        meta = with pkgs.stdenv.lib; {
          homepage = "https://github.com/kvesteri/sqlalchemy-utils";
          license = licenses.bsdOriginal;
          description = "Various utility functions for SQLAlchemy.";
        };
      };
  
      "stringcase" = python.mkDerivation {
        name = "stringcase-1.2.0";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/f3/1f/1241aa3d66e8dc1612427b17885f5fcd9c9ee3079fc0d28e9a3aeeb36fa3/stringcase-1.2.0.tar.gz";
          sha256 = "48a06980661908efe8d9d34eab2b6c13aefa2163b3ced26972902e3bdfd87008";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [ ];
        meta = with pkgs.stdenv.lib; {
          homepage = "https://github.com/okunishinishi/python-stringcase";
          license = licenses.mit;
          description = "String case converter.";
        };
      };
  
      "transaction" = python.mkDerivation {
        name = "transaction-2.4.0";
        src = pkgs.fetchurl {
          url = "https://files.pythonhosted.org/packages/9d/7d/0e8af0d059e052b9dcf2bb5a08aad20ae3e238746bdd3f8701a60969b363/transaction-2.4.0.tar.gz";
          sha256 = "726059c461b9ec4e69e5bead6680667a3db01bf2adf901f23e4031228a0f9f9f";
  };
        doCheck = commonDoCheck;
        buildInputs = commonBuildInputs ++ [ ];
        propagatedBuildInputs = [
          self."zope-interface"
        ];
        meta = with pkgs.stdenv.lib; {
          homepage = "https://github.com/zopefoundation/transaction";
          license = licenses.zpl21;
          description = "Transaction management for Python";
        };
  