anchor.diff:  , python-dateutil
   , pytz
   , requests
  -, six
   , sqlalchemy
   , sqlalchemy-utils
   , sqlalchemy-continuum
  
positive.code:     blinker
      cachetools
      click
      dnspython
      email_validator
      flask
      flask-babel
      flask-cors
      flask_mail
      flask_migrate
      flask-restful
      flask-talisman
      flask_wtf
      idna
      itsdangerous
      jinja2
      Mako
      markupsafe
      python-dateutil
      pytz
      requests
      six
      sqlalchemy-continuum
      werkzeug
      wtforms
      psycopg2
      debts
    ];
  
    patches = [
      # fix build with wtforms 3. remove with next release
      (fetchpatch {
        url = "https://github.com/spiral-project/ihatemoney/commit/40ce32d9fa58a60d26a4d0df547b8deb709c330d.patch";
        sha256 = "sha256-2ewOu21qhq/AOZaE9qrF5J6HH0h6ohFgjDb+BYjJnuQ=";
        excludes = [ "setup.cfg" ];
      })
    ];
  
    postPatch = ''
      substituteInPlace setup.cfg \
        --replace "cachetools>=4.1,<5" "cachetools>=4.1" \
        --replace "Flask-WTF>=0.14.3,<1" "Flask-WTF>=0.14.3,<2" \
        --replace "SQLAlchemy>=1.3.0,<1.4" "SQLAlchemy>=1.3.0,<1.5" \
        --replace "WTForms>=2.3.1,<2.4" "WTForms" \
        --replace "Flask-Talisman>=0.8,<1" "Flask-Talisman>=0.8,<2" # https://github.com/spiral-project/ihatemoney/pull/1006
    '';
  
    checkInputs = [
  
negative.code: { lib
  , buildPythonPackage
  , pythonOlder
  , nixosTests
  , fetchPypi
  , alembic
  