paul@amok:~/src/authentic$ tox -e py3-coverage-dj111-authentic-pg- 
py3-coverage-dj111-authentic-pg- create: /tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-
py3-coverage-dj111-authentic-pg- installdeps: pip > 9, django<2.0, django-tables<2.0, psycopg2-binary, psycopg2-binary, coverage, pytest-cov, pytest-django<3.4.6, pytest-random, mock, pytest<5, lxml, cssselect, django-webtest<1.9.3, Markdown<3, WebTest, pyquery, httmock, pytz, pytest-freezegun, ldaptools>=0.15
py3-coverage-dj111-authentic-pg- develop-inst: /home/paul/src/authentic
py3-coverage-dj111-authentic-pg- installed: atomicwrites==1.3.0,attrs==19.3.0,-e git+https://repos.entrouvert.org/authentic.git@23bb02a20857554431a350c76c6e787936feee1d#egg=authentic2,beautifulsoup4==4.8.1,certifi==2019.9.11,cffi==1.13.1,chardet==3.0.4,coverage==4.5.4,cryptography==2.8,cssselect==1.1.0,defusedxml==0.6.0,diff-match-patch==20181111,Django==1.11.25,django-appconf==1.0.3,django-filter==1.1.0,django-import-export==0.4.5,django-jsonfield==1.2.0,django-mellon==1.10.1,django-model-utils==3.2.0,Django-Select2==5.11.1,django-tables==0.2,django-tables2==1.21.2,django-webtest==1.9.2,djangorestframework==3.4.7,dnspython==1.16.0,et-xmlfile==1.0.1,freezegun==0.3.12,gadjo==0.81,httmock==1.3.0,idna==2.8,importlib-metadata==0.23,isodate==0.6.0,jdcal==1.4.1,jwcrypto==0.6.0,ldaptools==0.18,lxml==4.4.1,Markdown==2.6.11,MarkupPy==1.14,mock==3.0.5,more-itertools==7.2.0,oauthlib==3.1.0,odfpy==1.4.0,openpyxl==3.0.0,packaging==19.2,Pillow==6.2.1,pkg-resources==0.0.0,pluggy==0.13.0,psycopg2-binary==2.8.4,py==1.8.0,pyasn1==0.4.7,pyasn1-modules==0.2.7,pycparser==2.19,pycrypto==2.6.1,pyparsing==2.4.2,pyquery==1.4.0,pytest==4.6.6,pytest-cov==2.8.1,pytest-django==3.4.5,pytest-freezegun==0.3.0.post1,pytest-random==0.2,python-dateutil==2.8.0,python-ldap==3.2.0,pytz==2019.3,PyYAML==5.1.2,requests==2.22.0,requests-oauthlib==1.2.0,six==1.12.0,soupsieve==1.9.4,tablib==0.14.0,urllib3==1.25.6,waitress==1.3.1,wcwidth==0.1.7,WebOb==1.8.5,WebTest==2.0.33,xlrd==1.2.0,xlwt==1.3.0,XStatic==1.0.2,XStatic-Font-Awesome==4.7.0.0,XStatic-jQuery==1.12.4.1,XStatic-jquery-ui==1.12.1.1,XStatic-OpenSans==1.0.0,XStatic-Select2==4.0.3.1,zipp==0.6.0
py3-coverage-dj111-authentic-pg- run-test-pre: PYTHONHASHSEED='3591196439'
py3-coverage-dj111-authentic-pg- run-test: commands[0] | ./getlasso3.sh
'/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/lasso.py' -> '/usr/lib/python3/dist-packages/lasso.py'
'/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/_lasso.cpython-*.so' -> '/usr/lib/python3/dist-packages/_lasso.cpython-*.so'
'/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/_lasso.cpython-37m-x86_64-linux-gnu.so' -> '/usr/lib/python3/dist-packages/_lasso.cpython-37m-x86_64-linux-gnu.so'
ln: impossible de créer le lien symbolique '/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/_lasso.cpython-37m-x86_64-linux-gnu.so': Le fichier existe
py3-coverage-dj111-authentic-pg- run-test: commands[1] | py.test --cov=src --cov-branch --cov-append --cov-report xml --cov-report html tests/ --random-group
Traceback (most recent call last):
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/bin/py.test", line 10, in <module>
    sys.exit(main())
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/_pytest/config/__init__.py", line 63, in main
    config = _prepareconfig(args, plugins)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/_pytest/config/__init__.py", line 207, in _prepareconfig
    pluginmanager=pluginmanager, args=args
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/hooks.py", line 286, in __call__
    return self._hookexec(self, self.get_hookimpls(), kwargs)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/manager.py", line 92, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/manager.py", line 86, in <lambda>
    firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/callers.py", line 203, in _multicall
    gen.send(outcome)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/_pytest/helpconfig.py", line 94, in pytest_cmdline_parse
    config = outcome.get_result()
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/callers.py", line 80, in get_result
    raise ex[1].with_traceback(ex[2])
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/callers.py", line 187, in _multicall
    res = hook_impl.function(*args)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/_pytest/config/__init__.py", line 687, in pytest_cmdline_parse
    self.parse(args)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/_pytest/config/__init__.py", line 895, in parse
    self._preparse(args, addopts=addopts)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/_pytest/config/__init__.py", line 851, in _preparse
    early_config=self, args=args, parser=self._parser
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/hooks.py", line 286, in __call__
    return self._hookexec(self, self.get_hookimpls(), kwargs)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/manager.py", line 92, in _hookexec
    return self._inner_hookexec(hook, methods, kwargs)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/manager.py", line 86, in <lambda>
    firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/callers.py", line 208, in _multicall
    return outcome.get_result()
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/callers.py", line 80, in get_result
    raise ex[1].with_traceback(ex[2])
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pluggy/callers.py", line 187, in _multicall
    res = hook_impl.function(*args)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pytest_django/plugin.py", line 328, in pytest_load_initial_conftests
    _setup_django()
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/pytest_django/plugin.py", line 216, in _setup_django
    django.setup()
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/django/__init__.py", line 27, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/django/apps/registry.py", line 108, in populate
    app_config.import_models()
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/django/apps/config.py", line 202, in import_models
    self.models_module = import_module(models_module_name)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/paul/src/authentic/src/authentic2_auth_fc/models.py", line 28, in <module>
    from authentic2_auth_oidc.utils import parse_timestamp
  File "/home/paul/src/authentic/src/authentic2_auth_oidc/utils.py", line 33, in <module>
    from . import models
  File "/home/paul/src/authentic/src/authentic2_auth_oidc/models.py", line 45, in <module>
    class OIDCProvider(models.Model):
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/django/db/models/base.py", line 162, in __new__
    new_class.add_to_class(obj_name, obj)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/django/db/models/base.py", line 325, in add_to_class
    value.contribute_to_class(cls, name)
  File "/home/paul/src/authentic/src/authentic2/compat.py", line 90, in contribute_to_class
    cls._meta.add_field(self)
  File "/tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/lib/python3.7/site-packages/django/db/models/options.py", line 277, in add_field
    self.local_fields.insert(bisect(self.local_fields, field), field)
TypeError: '<' not supported between instances of 'JSONField' and 'URLField'
ERROR: InvocationError for command /tmp/tox-paul/authentic/py3-coverage-dj111-authentic-pg-/bin/py.test --cov=src --cov-branch --cov-append --cov-report xml --cov-report html tests/ --random-group (exited with code 1)
___________________________________________ summary ___________________________________________
ERROR:   py3-coverage-dj111-authentic-pg-: commands failed