anchor.diff:        modularity, scalability and security.
       '';
       homepage = "http://www.tryton.org/";
  +    changelog = "https://hg.tryton.org/trytond/file/${version}/CHANGELOG";
       license = licenses.gpl3Plus;
       maintainers = with maintainers; [ udono johbo ];
     };
  
positive.code: , werkzeug
  , wrapt
  , passlib
  , pillow
  , bcrypt
  , pydot
  , python-Levenshtein
  , simplejson
  , html2text
  , psycopg2
  , withPostgresql ? true
  }:
  
  buildPythonApplication rec {
    pname = "trytond";
    version = "6.2.6";
    format = "setuptools";
  
    disabled = pythonOlder "3.6";
  
    src = fetchPypi {
      inherit pname version;
      sha256 = "sha256-Sof6A9lxU70YnCbboJr56CAdTL0cRbaRNxdvG5Tnqnw=";
    };
  
    patches = [
      (fetchpatch {
        # werkzeug 2.1 compatibility for the tests
        url = "https://github.com/tryton/trytond/commit/86a50ca06cf0d79404dbd731141ed29f8e9fcb9d.patch";
        hash = "sha256-xY5Sdhkd0lEgscV7NHwX2YWxobWqQFElY5BJvDT+we8=";
      })
    ];
  
    # Tells the tests which database to use
    DB_NAME = ":memory:";
  
    buildInputs = [
      mock
    ];
  
    propagatedBuildInputs = [
      lxml
      relatorio
      genshi
  
negative.code: { lib
  , buildPythonPackage
  , fetchPypi
  , pythonOlder
  , defusedxml
  , lxml
  , relatorio
  , genshi
  