[0KRunning with gitlab-runner 13.4.1 (e95f89a0) [0;m[0K on edugit-runner-01 4yHzzzyE [0;msection_start:1604842401:prepare_executor [0K[0K[36;1mPreparing the "docker" executor[0;m [0;m[0KUsing Docker executor with image registry.edugit.org/teckids/team-sysadmin/docker-images/python-pimped:latest ... [0;m[0KStarting service selenium/standalone-firefox:latest ... [0;m[0KPulling docker image selenium/standalone-firefox:latest ... [0;m[0KUsing docker image sha256:f13fe467127e0d9e6f82c339d6c4f3e5eb5be19f4b73afaded5ce90f55294d00 for selenium/standalone-firefox:latest with digest selenium/standalone-firefox@sha256:1a7845ce3e800c5bf14ed857f1292799bb4834a814ff22b6e50ba495026088ef ... [0;m[0KWaiting for services to be up and running... [0;m[0KAuthenticating with credentials from job payload (GitLab Registry) [0;m[0KPulling docker image registry.edugit.org/teckids/team-sysadmin/docker-images/python-pimped:latest ... [0;m[0KUsing docker image sha256:a78b2b3f17ea25fe27f9d12dbe218b7eb95fbdac64fec5b496002cf1b634fe61 for registry.edugit.org/teckids/team-sysadmin/docker-images/python-pimped:latest with digest registry.edugit.org/teckids/team-sysadmin/docker-images/python-pimped@sha256:fa7e9c35976cabbdd2320aebcdba8f9229304bb03d236057ad7aef7cd046a7d9 ... [0;msection_end:1604842409:prepare_executor [0Ksection_start:1604842409:prepare_script [0K[0K[36;1mPreparing environment[0;m [0;mRunning on runner-4yhzzzye-project-118-concurrent-0 via edugit-runner-01... section_end:1604842410:prepare_script [0Ksection_start:1604842410:get_sources [0K[0K[36;1mGetting source from Git repository[0;m [0;m[32;1mFetching changes...[0;m Reinitialized existing Git repository in /builds/AlekSIS/official/AlekSIS/.git/ [32;1mChecking out 35de8737 as group-stats...[0;m Removing .tox/ Removing dist/ [32;1mUpdating/initializing submodules recursively...[0;m Synchronizing submodule url for 'apps/official/AlekSIS-App-Chronos' Synchronizing submodule url for 'apps/official/AlekSIS-App-DashboardFeeds' Synchronizing submodule url for 'apps/official/AlekSIS-App-Hjelp' Synchronizing submodule url for 'apps/official/AlekSIS-App-LDAP' Synchronizing submodule url for 'apps/official/AlekSIS-App-Untis' Entering 'apps/official/AlekSIS-App-Chronos' Entering 'apps/official/AlekSIS-App-DashboardFeeds' Entering 'apps/official/AlekSIS-App-Hjelp' Entering 'apps/official/AlekSIS-App-LDAP' Entering 'apps/official/AlekSIS-App-Untis' Entering 'apps/official/AlekSIS-App-Chronos' HEAD is now at d0d7bb4 Merge branch 'docker-build' into 'master' Entering 'apps/official/AlekSIS-App-DashboardFeeds' HEAD is now at ed998b9 Merge branch 'docker-build' into 'master' Entering 'apps/official/AlekSIS-App-Hjelp' HEAD is now at bd6163d Merge branch 'docker-build' into 'master' Entering 'apps/official/AlekSIS-App-LDAP' HEAD is now at a6be040 Merge branch 'docker-build' into 'master' Entering 'apps/official/AlekSIS-App-Untis' HEAD is now at c15111e Merge branch 'docker-build' into 'master' Entering 'apps/official/AlekSIS-App-Chronos' Entering 'apps/official/AlekSIS-App-DashboardFeeds' Entering 'apps/official/AlekSIS-App-Hjelp' Entering 'apps/official/AlekSIS-App-LDAP' Entering 'apps/official/AlekSIS-App-Untis' section_end:1604842425:get_sources [0Ksection_start:1604842425:restore_cache [0K[0K[36;1mRestoring cache[0;m [0;m[32;1mChecking cache for 0fbdf37fc035db5e3ccadf2b0ec5393fde8f85f9...[0;m No URL provided, cache will not be downloaded from shared cache server. Instead a local version of cache will be extracted.[0;m [0;33mWARNING: .tox/globalenv/bin/python: chmod .tox/globalenv/bin/python: no such file or directory (suppressing repeats)[0;m [32;1mSuccessfully extracted cache[0;m section_end:1604842438:restore_cache [0Ksection_start:1604842438:step_script [0K[0K[36;1mExecuting "step_script" stage of the job script[0;m [0;m[32;1m$ adduser --disabled-password --gecos "Test User" testuser[0;m Adding user `testuser' ... Adding new group `testuser' (1000) ... Adding new user `testuser' (1000) with group `testuser' ... Creating home directory `/home/testuser' ... Copying files from `/etc/skel' ... [32;1m$ chown -R testuser .[0;m [32;1m$ sudo apt update[0;m WARNING: apt does not have a stable CLI interface. Use with caution in scripts. Get:1 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB] Get:2 http://deb.debian.org/debian buster InRelease [121 kB] Get:3 http://deb.debian.org/debian buster-updates InRelease [51.9 kB] Get:4 http://security.debian.org/debian-security buster/updates/main amd64 Packages [245 kB] Get:5 http://deb.debian.org/debian buster/main amd64 Packages [7906 kB] Get:6 http://deb.debian.org/debian buster-updates/main amd64 Packages [7856 B] Fetched 8398 kB in 2s (4930 kB/s) Reading package lists... Building dependency tree... Reading state information... 66 packages can be upgraded. Run 'apt list --upgradable' to see them. [32;1m$ sudo apt install python3-ldap libldap2-dev libssl-dev libsasl2-dev python3.7-dev -y[0;m WARNING: apt does not have a stable CLI interface. Use with caution in scripts. Reading package lists... Building dependency tree... Reading state information... libsasl2-dev is already the newest version (2.1.27+dfsg-1+deb10u1). libssl-dev is already the newest version (1.1.1d-0+deb10u3). python3-ldap is already the newest version (3.1.0-2). The following additional packages will be installed: libldap-2.4-2 libpython3.7 libpython3.7-dev libpython3.7-minimal libpython3.7-stdlib python3.7 python3.7-minimal Suggested packages: python3.7-venv python3.7-doc binfmt-support The following packages will be upgraded: libldap-2.4-2 libldap2-dev libpython3.7 libpython3.7-dev libpython3.7-minimal libpython3.7-stdlib python3.7 python3.7-dev python3.7-minimal 9 upgraded, 0 newly installed, 0 to remove and 57 not upgraded. Need to get 55.3 MB of archives. After this operation, 19.5 kB disk space will be freed. Get:1 http://deb.debian.org/debian buster/main amd64 python3.7-dev amd64 3.7.3-2+deb10u2 [510 kB] Get:2 http://security.debian.org/debian-security buster/updates/main amd64 libldap2-dev amd64 2.4.47+dfsg-3+deb10u3 [331 kB] Get:3 http://security.debian.org/debian-security buster/updates/main amd64 libldap-2.4-2 amd64 2.4.47+dfsg-3+deb10u3 [225 kB] Get:4 http://deb.debian.org/debian buster/main amd64 libpython3.7-dev amd64 3.7.3-2+deb10u2 [48.4 MB] Get:5 http://deb.debian.org/debian buster/main amd64 libpython3.7 amd64 3.7.3-2+deb10u2 [1498 kB] Get:6 http://deb.debian.org/debian buster/main amd64 python3.7 amd64 3.7.3-2+deb10u2 [330 kB] Get:7 http://deb.debian.org/debian buster/main amd64 libpython3.7-stdlib amd64 3.7.3-2+deb10u2 [1732 kB] Get:8 http://deb.debian.org/debian buster/main amd64 python3.7-minimal amd64 3.7.3-2+deb10u2 [1731 kB] Get:9 http://deb.debian.org/debian buster/main amd64 libpython3.7-minimal amd64 3.7.3-2+deb10u2 [589 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 55.3 MB in 2s (32.9 MB/s) (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 42690 files and directories currently installed.) Preparing to unpack .../0-python3.7-dev_3.7.3-2+deb10u2_amd64.deb ... Unpacking python3.7-dev (3.7.3-2+deb10u2) over (3.7.3-2+deb10u1) ... Preparing to unpack .../1-libpython3.7-dev_3.7.3-2+deb10u2_amd64.deb ... Unpacking libpython3.7-dev:amd64 (3.7.3-2+deb10u2) over (3.7.3-2+deb10u1) ... Preparing to unpack .../2-libpython3.7_3.7.3-2+deb10u2_amd64.deb ... Unpacking libpython3.7:amd64 (3.7.3-2+deb10u2) over (3.7.3-2+deb10u1) ... Preparing to unpack .../3-python3.7_3.7.3-2+deb10u2_amd64.deb ... Unpacking python3.7 (3.7.3-2+deb10u2) over (3.7.3-2+deb10u1) ... Preparing to unpack .../4-libpython3.7-stdlib_3.7.3-2+deb10u2_amd64.deb ... Unpacking libpython3.7-stdlib:amd64 (3.7.3-2+deb10u2) over (3.7.3-2+deb10u1) ... Preparing to unpack .../5-python3.7-minimal_3.7.3-2+deb10u2_amd64.deb ... Unpacking python3.7-minimal (3.7.3-2+deb10u2) over (3.7.3-2+deb10u1) ... Preparing to unpack .../6-libpython3.7-minimal_3.7.3-2+deb10u2_amd64.deb ... Unpacking libpython3.7-minimal:amd64 (3.7.3-2+deb10u2) over (3.7.3-2+deb10u1) ... Preparing to unpack .../7-libldap2-dev_2.4.47+dfsg-3+deb10u3_amd64.deb ... Unpacking libldap2-dev:amd64 (2.4.47+dfsg-3+deb10u3) over (2.4.47+dfsg-3+deb10u2) ... Preparing to unpack .../8-libldap-2.4-2_2.4.47+dfsg-3+deb10u3_amd64.deb ... Unpacking libldap-2.4-2:amd64 (2.4.47+dfsg-3+deb10u3) over (2.4.47+dfsg-3+deb10u2) ... Setting up libldap-2.4-2:amd64 (2.4.47+dfsg-3+deb10u3) ... Setting up libpython3.7-minimal:amd64 (3.7.3-2+deb10u2) ... Setting up libldap2-dev:amd64 (2.4.47+dfsg-3+deb10u3) ... Setting up python3.7-minimal (3.7.3-2+deb10u2) ... Setting up libpython3.7-stdlib:amd64 (3.7.3-2+deb10u2) ... Setting up libpython3.7:amd64 (3.7.3-2+deb10u2) ... Setting up libpython3.7-dev:amd64 (3.7.3-2+deb10u2) ... Setting up python3.7 (3.7.3-2+deb10u2) ... Setting up python3.7-dev (3.7.3-2+deb10u2) ... Processing triggers for libc-bin (2.28-10) ... Processing triggers for mime-support (3.62) ... [32;1m$ sudo -u testuser env TEST_SELENIUM_HUB=http://selenium:4444/wd/hub TEST_SELENIUM_BROWSERS=firefox TEST_HOST=build tox -e selenium -- --junitxml=.tox/junit.xml[0;m selenium installed: alabaster==0.7.12,appdirs==1.4.4,asgiref==3.2.10,attrs==20.2.0,Babel==2.8.0,bandit==1.6.2,beautifulsoup4==4.9.3,black==19.10b0,bleach==3.2.1,boolean.py==3.8,calendarweek==0.4.6.post2,celery-progress==0.0.12,certifi==2020.6.20,chardet==3.0.4,click==7.1.2,colour==0.1.5,configobj==5.0.6,coverage==5.3,dj-database-url==0.5.0,Django==3.1.2,django-any-js==1.0.3.post0,django-appconf==1.0.4,django-bleach==0.6.1,django-bulk-update==2.2.0,django-cache-memoize==0.1.7,django-ckeditor==6.0.0,django-colorfield==0.3.2,django-dbbackup==3.3.0,django-debug-toolbar==2.2,django-dynamic-preferences==1.10.1,django-easy-audit==1.3.0,django-favicon-plus-reloaded==1.0.4,django-filter==2.4.0,django-formtools==2.2,django-guardian==2.3.0,django-hattori==0.2.1,django-haystack==3.0b1,django-health-check==3.14.3,django-image-cropping==1.5.0,django-impersonate==1.5.1,django-ipware==3.0.1,django-js-asset==1.2.2,django-js-reverse==0.9.1,django-jsonstore==0.4.1,django-maintenance-mode==0.15.0,django-material==1.7.1,django-menu-generator==1.0.4,django-middleware-global-request==0.1.2,django-otp==1.0.2,django-otp-yubikey==1.0.0,django-phonenumber-field==3.0.1,django-polymorphic==3.0.0,django-pwa==1.0.10,django-render-block==0.8.1,django-reversion==3.0.8,django-sass-processor==0.8.2,django-select2==7.4.2,django-settings-context-processor==0.2,django-stubs==1.7.0,django-tables2==2.3.3,django-templated-email==2.3.0,django-two-factor-auth==1.13,django-widget-tweaks==1.4.8,django-yarnpkg==6.0.1,docutils==0.16,dparse==0.5.1,dynaconf==3.1.2,easy-thumbnails==2.7,Faker==4.14.0,flake8==3.8.4,flake8-bandit==2.1.2,flake8-black==0.2.1,flake8-builtins==1.5.3,flake8-django==1.1.1,flake8-docstrings==1.5.0,flake8-fixme==1.1.1,flake8-isort==4.0.0,flake8-mypy==17.8.0,flake8-polyfill==1.0.2,flake8-rst-docstrings==0.0.13,gitdb==4.0.5,GitPython==3.1.11,html2text==2020.1.16,idna==2.10,imagesize==1.2.0,iniconfig==1.1.1,isort==5.6.4,Jinja2==2.11.2,libsass==0.20.1,license-expression==1.2,MarkupSafe==1.1.1,mccabe==0.6.1,mypy==0.790,mypy-extensions==0.4.3,packaging==20.4,pathspec==0.8.0,pbr==5.5.1,persisting-theory==0.2.1,pg8000==1.16.6,phonenumbers==8.12.11,Pillow==7.2.0,pluggy==0.13.1,psutil==5.7.3,psycopg2==2.8.6,py==1.9.0,pycodestyle==2.6.0,pycryptodome==3.9.8,pydocstyle==5.1.1,pyflakes==2.2.0,Pygments==2.7.2,PyJWT==1.7.1,pyparsing==2.4.7,pytest==6.1.2,pytest-cov==2.10.1,pytest-django==3.10.0,pytest-django-testing-postgresql==0.1.post0,pytest-sugar==0.9.4,python-dateutil==2.8.1,python-memcached==1.59,pytz==2020.1,PyYAML==5.3.1,qrcode==6.1,regex==2020.10.28,requests==2.24.0,restructuredtext-lint==1.3.1,ruamel.yaml==0.16.12,ruamel.yaml.clib==0.2.2,rules==2.2,safety==1.9.0,scramp==1.2.0,selenium==3.141.0,six==1.15.0,smmap==3.0.4,snowballstemmer==2.0.0,soupsieve==2.0.1,spdx-license-list==0.5.1,Sphinx==3.2.1,sphinx-autodoc-typehints==1.11.1,sphinxcontrib-applehelp==1.0.2,sphinxcontrib-devhelp==1.0.2,sphinxcontrib-django==0.5.1,sphinxcontrib-htmlhelp==1.0.3,sphinxcontrib-jsmath==1.0.1,sphinxcontrib-qthelp==1.0.3,sphinxcontrib-serializinghtml==1.1.4,sqlparse==0.4.1,stevedore==3.2.2,termcolor==1.1.0,testfixtures==6.15.0,testing.common.database==2.0.3,testing.postgresql==1.3.0,text-unidecode==1.3,toml==0.10.1,tqdm==4.51.0,twilio==6.46.0,typed-ast==1.4.1,typing-extensions==3.7.4.3,urllib3==1.25.11,webencodings==0.5.1,YubiOTP==1.0.0.post1 selenium run-test-pre: PYTHONHASHSEED='2726264162' selenium run-test-pre: commands[0] | - poetry install Installing dependencies from lock file No dependencies to install or update - Installing AlekSIS (2.0a3.dev0) selenium run-test: commands[0] | - poetry run pytest --cov=. --junitxml=.tox/junit.xml aleksis/ ============================= test session starts ============================== platform linux -- Python 3.8.3, pytest-6.1.2, py-1.9.0, pluggy-0.13.1 cachedir: .tox/globalenv/.pytest_cache django: settings: aleksis.core.settings (from env) rootdir: /builds/AlekSIS/official/AlekSIS, configfile: tox.ini plugins: django-3.10.0, django-testing-postgresql-0.1.post0, sugar-0.9.4, cov-2.10.1, Faker-4.14.0 collected 18 items aleksis/core/tests/test_authentication_backends.py EE [ 11%] aleksis/core/tests/models/test_notification.py E [ 16%] aleksis/core/tests/models/test_person.py E [ 22%] aleksis/core/tests/templatetags/test_data_helpers.py EEEEEEEE [ 66%] aleksis/core/tests/views/test_account.py EEE [ 83%] aleksis/core/tests/browser/test_selenium.py EE [ 94%] aleksis/core/tests/util/test_core_helpers.py . [100%] ==================================== ERRORS ==================================== ____________________ ERROR at setup of test_backends_simple ____________________ request = <SubRequest '_django_db_marker' for <Function test_backends_simple>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError _______________ ERROR at setup of test_backends_with_activation ________________ request = <SubRequest '_django_db_marker' for <Function test_backends_with_activation>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError __________________ ERROR at setup of test_email_notification ___________________ request = <SubRequest '_django_db_marker' for <Function test_email_notification>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError _______________________ ERROR at setup of test_full_name _______________________ request = <SubRequest '_django_db_marker' for <Function test_full_name>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError ____________________ ERROR at setup of test_get_dict_object ____________________ request = <SubRequest '_django_db_marker' for <Function test_get_dict_object>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError _____________________ ERROR at setup of test_get_dict_dict _____________________ request = <SubRequest '_django_db_marker' for <Function test_get_dict_dict>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError _____________________ ERROR at setup of test_get_dict_list _____________________ request = <SubRequest '_django_db_marker' for <Function test_get_dict_list>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError ___________________ ERROR at setup of test_get_dict_invalid ____________________ request = <SubRequest '_django_db_marker' for <Function test_get_dict_invalid>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError __________________ ERROR at setup of test_verbose_name_model ___________________ request = <SubRequest '_django_db_marker' for <Function test_verbose_name_model>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError __________________ ERROR at setup of test_verbose_name_field ___________________ request = <SubRequest '_django_db_marker' for <Function test_verbose_name_field>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError ____________________ ERROR at setup of test_parse_json_json ____________________ request = <SubRequest '_django_db_marker' for <Function test_parse_json_json>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError ___________________ ERROR at setup of test_parse_json_empty ____________________ request = <SubRequest '_django_db_marker' for <Function test_parse_json_empty>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError __________________ ERROR at setup of test_index_not_logged_in __________________ request = <SubRequest '_django_db_marker' for <Function test_index_not_logged_in>> @pytest.fixture(autouse=True) def _django_db_marker(request): """Implement the django_db marker, internal to pytest-django. This will dynamically request the ``db``, ``transactional_db`` or ``django_db_reset_sequences`` fixtures as required by the django_db marker. """ marker = request.node.get_closest_marker("django_db") if marker: transaction, reset_sequences = validate_django_db(marker) if reset_sequences: request.getfixturevalue("django_db_reset_sequences") elif transaction: request.getfixturevalue("transactional_db") else: > request.getfixturevalue("db") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:513: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError _________________ ERROR at setup of test_login_without_person __________________ request = <SubRequest 'django_db_setup' for <Function test_backends_simple>> django_test_environment = None django_db_blocker = <pytest_django.plugin._DatabaseBlocker object at 0x7faa3ae161c0> django_db_use_migrations = True, django_db_keepdb = False django_db_createdb = False, django_db_modify_db_settings = None @pytest.fixture(scope="session") def django_db_setup( request, django_test_environment, django_db_blocker, django_db_use_migrations, django_db_keepdb, django_db_createdb, django_db_modify_db_settings, ): """Top level fixture to ensure test databases are available""" from .compat import setup_databases, teardown_databases setup_databases_args = {} if not django_db_use_migrations: _disable_native_migrations() if django_db_keepdb and not django_db_createdb: setup_databases_args["keepdb"] = True with django_db_blocker.unblock(): > db_cfg = setup_databases( verbosity=request.config.option.verbose, interactive=False, **setup_databases_args ) .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError ________________________ ERROR at setup of test_logout _________________________ request = <SubRequest 'django_db_setup' for <Function test_backends_simple>> django_test_environment = None django_db_blocker = <pytest_django.plugin._DatabaseBlocker object at 0x7faa3ae161c0> django_db_use_migrations = True, django_db_keepdb = False django_db_createdb = False, django_db_modify_db_settings = None @pytest.fixture(scope="session") def django_db_setup( request, django_test_environment, django_db_blocker, django_db_use_migrations, django_db_keepdb, django_db_createdb, django_db_modify_db_settings, ): """Top level fixture to ensure test databases are available""" from .compat import setup_databases, teardown_databases setup_databases_args = {} if not django_db_use_migrations: _disable_native_migrations() if django_db_keepdb and not django_db_createdb: setup_databases_args["keepdb"] = True with django_db_blocker.unblock(): > db_cfg = setup_databases( verbosity=request.config.option.verbose, interactive=False, **setup_databases_args ) .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError __________________ ERROR at setup of SeleniumTests.test_index __________________ request = <SubRequest '_django_setup_unittest' for <TestCaseFunction test_index>> django_db_blocker = <pytest_django.plugin._DatabaseBlocker object at 0x7faa3ae161c0> @pytest.fixture(autouse=True, scope="class") def _django_setup_unittest(request, django_db_blocker): """Setup a django unittest, internal to pytest-django.""" if not django_settings_is_configured() or not is_django_unittest(request): yield return # Fix/patch pytest. # Before pytest 5.4: https://github.com/pytest-dev/pytest/issues/5991 # After pytest 5.4: https://github.com/pytest-dev/pytest-django/issues/824 from _pytest.monkeypatch import MonkeyPatch def non_debugging_runtest(self): self._testcase(result=self) mp_debug = MonkeyPatch() mp_debug.setattr("_pytest.unittest.TestCaseFunction.runtest", non_debugging_runtest) > request.getfixturevalue("django_db_setup") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:534: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError _________ ERROR at setup of SeleniumTests.test_login_default_superuser _________ request = <SubRequest '_django_setup_unittest' for <TestCaseFunction test_index>> django_db_blocker = <pytest_django.plugin._DatabaseBlocker object at 0x7faa3ae161c0> @pytest.fixture(autouse=True, scope="class") def _django_setup_unittest(request, django_db_blocker): """Setup a django unittest, internal to pytest-django.""" if not django_settings_is_configured() or not is_django_unittest(request): yield return # Fix/patch pytest. # Before pytest 5.4: https://github.com/pytest-dev/pytest/issues/5991 # After pytest 5.4: https://github.com/pytest-dev/pytest-django/issues/824 from _pytest.monkeypatch import MonkeyPatch def non_debugging_runtest(self): self._testcase(result=self) mp_debug = MonkeyPatch() mp_debug.setattr("_pytest.unittest.TestCaseFunction.runtest", non_debugging_runtest) > request.getfixturevalue("django_db_setup") .tox/globalenv/lib/python3.8/site-packages/pytest_django/plugin.py:534: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .tox/globalenv/lib/python3.8/site-packages/pytest_django/fixtures.py:105: in django_db_setup db_cfg = setup_databases( .tox/globalenv/lib/python3.8/site-packages/django/test/utils.py:170: in setup_databases connection.creation.create_test_db( .tox/globalenv/lib/python3.8/site-packages/django/db/backends/base/creation.py:72: in create_test_db call_command( .tox/globalenv/lib/python3.8/site-packages/django/core/management/__init__.py:168: in call_command return command.execute(*args, **defaults) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:371: in execute output = self.handle(*args, **options) .tox/globalenv/lib/python3.8/site-packages/django/core/management/base.py:85: in wrapped res = handle_func(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <django.core.management.commands.migrate.Command object at 0x7faa33489070> args = () options = {'app_label': None, 'check_unapplied': False, 'database': 'default', 'fake': False, ...} database = 'default', app_config = <AppConfig: favicon> connection = <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7faa3757af10> executor = <django.db.migrations.executor.MigrationExecutor object at 0x7faa33430e20> conflicts = {'core': {'0003_add_permissions_for_group_stats', '0003_drop_image_cropping'}} name_str = '0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core' @no_translations def handle(self, *args, **options): database = options['database'] if not options['skip_checks']: self.check(databases=[database]) self.verbosity = options['verbosity'] self.interactive = options['interactive'] # Import the 'management' module within each installed app, to register # dispatcher events. for app_config in apps.get_app_configs(): if module_has_submodule(app_config.module, "management"): import_module('.management', app_config.name) # Get the database we're operating from connection = connections[database] # Hook for backends needing any database preparation connection.prepare_database() # Work out which apps have migrations and which do not executor = MigrationExecutor(connection, self.migration_progress_callback) # Raise an error if any migrations are applied before their dependencies. executor.loader.check_consistent_history(connection) # Before anything else, see if there's conflicting apps and drop out # hard if there are any conflicts = executor.loader.detect_conflicts() if conflicts: name_str = "; ".join( "%s in %s" % (", ".join(names), app) for app, names in conflicts.items() ) > raise CommandError( "Conflicting migrations detected; multiple leaf nodes in the " "migration graph: (%s).\nTo fix them run " "'python manage.py makemigrations --merge'" % name_str ) E django.core.management.base.CommandError: Conflicting migrations detected; multiple leaf nodes in the migration graph: (0003_add_permissions_for_group_stats, 0003_drop_image_cropping in core). E To fix them run 'python manage.py makemigrations --merge' .tox/globalenv/lib/python3.8/site-packages/django/core/management/commands/migrate.py:105: CommandError =============================== warnings summary =============================== .tox/globalenv/lib/python3.8/site-packages/dbbackup/apps.py:12 /builds/AlekSIS/official/AlekSIS/.tox/globalenv/lib/python3.8/site-packages/dbbackup/apps.py:12: RemovedInDjango40Warning: django.utils.translation.ugettext_lazy() is deprecated in favor of django.utils.translation.gettext_lazy(). verbose_name = _('Backup and restore') .tox/globalenv/lib/python3.8/site-packages/reversion/signals.py:9 /builds/AlekSIS/official/AlekSIS/.tox/globalenv/lib/python3.8/site-packages/reversion/signals.py:9: RemovedInDjango40Warning: The providing_args argument is deprecated. As it is purely documentational, it has no replacement. If you rely on this argument as documentation, you can move the text to a code comment or docstring. pre_revision_commit = Signal(providing_args=_signal_args) .tox/globalenv/lib/python3.8/site-packages/reversion/signals.py:10 /builds/AlekSIS/official/AlekSIS/.tox/globalenv/lib/python3.8/site-packages/reversion/signals.py:10: RemovedInDjango40Warning: The providing_args argument is deprecated. As it is purely documentational, it has no replacement. If you rely on this argument as documentation, you can move the text to a code comment or docstring. post_revision_commit = Signal(providing_args=_signal_args) .tox/globalenv/lib/python3.8/site-packages/persisting_theory/registries.py:6 /builds/AlekSIS/official/AlekSIS/.tox/globalenv/lib/python3.8/site-packages/persisting_theory/registries.py:6: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses from imp import reload .tox/globalenv/lib/python3.8/site-packages/dynamic_preferences/signals.py:3 /builds/AlekSIS/official/AlekSIS/.tox/globalenv/lib/python3.8/site-packages/dynamic_preferences/signals.py:3: RemovedInDjango40Warning: The providing_args argument is deprecated. As it is purely documentational, it has no replacement. If you rely on this argument as documentation, you can move the text to a code comment or docstring. preference_updated = Signal(providing_args=("section", "name", "old_value", "new_value")) .tox/globalenv/lib/python3.8/site-packages/dynamic_preferences/managers.py:8 /builds/AlekSIS/official/AlekSIS/.tox/globalenv/lib/python3.8/site-packages/dynamic_preferences/managers.py:8: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.9 it will stop working class PreferencesManager(collections.Mapping): .tox/globalenv/lib/python3.8/site-packages/easy_thumbnails/signals.py:3 /builds/AlekSIS/official/AlekSIS/.tox/globalenv/lib/python3.8/site-packages/easy_thumbnails/signals.py:3: RemovedInDjango40Warning: The providing_args argument is deprecated. As it is purely documentational, it has no replacement. If you rely on this argument as documentation, you can move the text to a code comment or docstring. saved_file = django.dispatch.Signal(providing_args=['fieldfile']) .tox/globalenv/lib/python3.8/site-packages/easy_thumbnails/signals.py:19 /builds/AlekSIS/official/AlekSIS/.tox/globalenv/lib/python3.8/site-packages/easy_thumbnails/signals.py:19: RemovedInDjango40Warning: The providing_args argument is deprecated. As it is purely documentational, it has no replacement. If you rely on this argument as documentation, you can move the text to a code comment or docstring. thumbnail_missed = django.dispatch.Signal( -- Docs: https://docs.pytest.org/en/stable/warnings.html ----- generated xml file: /builds/AlekSIS/official/AlekSIS/.tox/junit.xml ------ ----------- coverage: platform linux, python 3.8.3-final-0 ----------- Name Stmts Miss Cover --------------------------------------------------------------- aleksis/core/__init__.py 10 2 80% aleksis/core/admin.py 14 0 100% aleksis/core/apps.py 57 15 74% aleksis/core/celery.py 6 4 33% aleksis/core/checks.py 24 15 38% aleksis/core/managers.py 41 18 56% aleksis/core/mixins.py 184 76 59% aleksis/core/models.py 365 128 65% aleksis/core/preferences.py 148 2 99% aleksis/core/registries.py 10 0 100% aleksis/core/rules.py 90 0 100% aleksis/core/settings.py 195 64 67% aleksis/core/tasks.py 25 17 32% aleksis/core/templatetags/__init__.py 0 0 100% aleksis/core/templatetags/data_helpers.py 31 17 45% aleksis/core/util/__init__.py 0 0 100% aleksis/core/util/apps.py 81 47 42% aleksis/core/util/core_helpers.py 158 96 39% aleksis/core/util/messages.py 18 8 56% aleksis/core/util/model_helpers.py 2 0 100% aleksis/core/util/notifications.py 42 25 40% aleksis/core/util/predicates.py 63 23 63% aleksis/core/util/sass_helpers.py 18 9 50% --------------------------------------------------------------- TOTAL 1582 566 64% =========================== short test summary info ============================ ERROR aleksis/core/tests/test_authentication_backends.py::test_backends_simple ERROR aleksis/core/tests/test_authentication_backends.py::test_backends_with_activation ERROR aleksis/core/tests/models/test_notification.py::test_email_notification ERROR aleksis/core/tests/models/test_person.py::test_full_name - django.core.... ERROR aleksis/core/tests/templatetags/test_data_helpers.py::test_get_dict_object ERROR aleksis/core/tests/templatetags/test_data_helpers.py::test_get_dict_dict ERROR aleksis/core/tests/templatetags/test_data_helpers.py::test_get_dict_list ERROR aleksis/core/tests/templatetags/test_data_helpers.py::test_get_dict_invalid ERROR aleksis/core/tests/templatetags/test_data_helpers.py::test_verbose_name_model ERROR aleksis/core/tests/templatetags/test_data_helpers.py::test_verbose_name_field ERROR aleksis/core/tests/templatetags/test_data_helpers.py::test_parse_json_json ERROR aleksis/core/tests/templatetags/test_data_helpers.py::test_parse_json_empty ERROR aleksis/core/tests/views/test_account.py::test_index_not_logged_in - dj... ERROR aleksis/core/tests/views/test_account.py::test_login_without_person - d... ERROR aleksis/core/tests/views/test_account.py::test_logout - django.core.man... ERROR aleksis/core/tests/browser/test_selenium.py::SeleniumTests::test_index ERROR aleksis/core/tests/browser/test_selenium.py::SeleniumTests::test_login_default_superuser =================== 1 passed, 8 warnings, 17 errors in 3.01s =================== ___________________________________ summary ____________________________________ selenium: commands succeeded congratulations :) section_end:1604842484:step_script [0Ksection_start:1604842484:archive_cache [0K[0K[36;1mSaving cache[0;m [0;m[32;1mCreating cache 0fbdf37fc035db5e3ccadf2b0ec5393fde8f85f9...[0;m [0;33mWARNING: .cache/pip: no matching files [0;m .tox: found 30391 matching files and directories [0;m No URL provided, cache will be not uploaded to shared cache server. Cache will be stored only locally.[0;m [32;1mCreated cache[0;m section_end:1604842506:archive_cache [0Ksection_start:1604842506:upload_artifacts_on_success [0K[0K[36;1mUploading artifacts for successful job[0;m [0;m[32;1mUploading artifacts...[0;m .tox/screenshots: found 3 matching files and directories[0;m Uploading artifacts as "archive" to coordinator... ok[0;m id[0;m=13192 responseStatus[0;m=201 Created token[0;m=4bJRDTse [32;1mUploading artifacts...[0;m .tox/junit.xml: found 1 matching files and directories[0;m Uploading artifacts as "junit" to coordinator... ok[0;m id[0;m=13192 responseStatus[0;m=201 Created token[0;m=4bJRDTse section_end:1604842508:upload_artifacts_on_success [0Ksection_start:1604842508:cleanup_file_variables [0K[0K[36;1mCleaning up file based variables[0;m [0;msection_end:1604842509:cleanup_file_variables [0K[32;1mJob succeeded [0;m