tribuchet: building on jamie structuredAttrs is enabled Sourcing python-remove-tests-dir-hook Sourcing python-catch-conflicts-hook.sh Sourcing python-remove-bin-bytecode-hook.sh Sourcing pypa-build-hook Using pypaBuildPhase Sourcing python-runtime-deps-check-hook Using pythonRuntimeDepsCheckHook Sourcing pypa-install-hook Using pypaInstallPhase Sourcing python-imports-check-hook.sh Using pythonImportsCheckPhase Sourcing python-metadata-check-hook.sh Using pythonMetadataCheckPhase Sourcing python-namespaces-hook Sourcing python-catch-conflicts-hook.sh Sourcing pytest-check-hook Using pytestCheckPhase Running phase: unpackPhase unpacking source archive /nix/store/8d7vdqs5m8fc7dhnfwkq12x43hp1pb81-source source root is source setting SOURCE_DATE_EPOCH to timestamp 315619200 of file "source/tox.ini" Running phase: patchPhase Running phase: updateAutotoolsGnuConfigScriptsPhase Running phase: configurePhase no configure script, doing nothing Running phase: buildPhase Executing pypaBuildPhase Creating a wheel... pypa build flags: --no-isolation --outdir dist/ --wheel * Getting build dependencies for wheel... /nix/store/d13f804szzqg28s2i8rbqwlcz2wg63w9-python3.14-setuptools-83.0.0/lib/python3.14/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: BSD License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running egg_info creating channels.egg-info writing channels.egg-info/PKG-INFO writing dependency_links to channels.egg-info/dependency_links.txt writing requirements to channels.egg-info/requires.txt writing top-level names to channels.egg-info/top_level.txt writing manifest file 'channels.egg-info/SOURCES.txt' reading manifest file 'channels.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'LICENSE' writing manifest file 'channels.egg-info/SOURCES.txt' * Building wheel... /nix/store/d13f804szzqg28s2i8rbqwlcz2wg63w9-python3.14-setuptools-83.0.0/lib/python3.14/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: BSD License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running bdist_wheel running build running build_py creating build/lib/channels copying channels/db.py -> build/lib/channels copying channels/consumer.py -> build/lib/channels copying channels/routing.py -> build/lib/channels copying channels/worker.py -> build/lib/channels copying channels/middleware.py -> build/lib/channels copying channels/auth.py -> build/lib/channels copying channels/sessions.py -> build/lib/channels copying channels/utils.py -> build/lib/channels copying channels/apps.py -> build/lib/channels copying channels/__init__.py -> build/lib/channels copying channels/layers.py -> build/lib/channels copying channels/exceptions.py -> build/lib/channels creating build/lib/tests/sample_project copying tests/sample_project/manage.py -> build/lib/tests/sample_project copying tests/sample_project/__init__.py -> build/lib/tests/sample_project creating build/lib/tests/sample_project/config copying tests/sample_project/config/settings.py -> build/lib/tests/sample_project/config copying tests/sample_project/config/__init__.py -> build/lib/tests/sample_project/config copying tests/sample_project/config/asgi.py -> build/lib/tests/sample_project/config copying tests/sample_project/config/wsgi.py -> build/lib/tests/sample_project/config copying tests/sample_project/config/urls.py -> build/lib/tests/sample_project/config creating build/lib/tests/sample_project/tests copying tests/sample_project/tests/__init__.py -> build/lib/tests/sample_project/tests copying tests/sample_project/tests/test_selenium.py -> build/lib/tests/sample_project/tests copying tests/sample_project/tests/selenium_mixin.py -> build/lib/tests/sample_project/tests creating build/lib/tests/sample_project/sampleapp copying tests/sample_project/sampleapp/apps.py -> build/lib/tests/sample_project/sampleapp copying tests/sample_project/sampleapp/consumers.py -> build/lib/tests/sample_project/sampleapp copying tests/sample_project/sampleapp/models.py -> build/lib/tests/sample_project/sampleapp copying tests/sample_project/sampleapp/__init__.py -> build/lib/tests/sample_project/sampleapp copying tests/sample_project/sampleapp/admin.py -> build/lib/tests/sample_project/sampleapp creating build/lib/tests/sample_project/sampleapp/migrations copying tests/sample_project/sampleapp/migrations/__init__.py -> build/lib/tests/sample_project/sampleapp/migrations copying tests/sample_project/sampleapp/migrations/0001_initial.py -> build/lib/tests/sample_project/sampleapp/migrations creating build/lib/channels/security copying channels/security/websocket.py -> build/lib/channels/security copying channels/security/__init__.py -> build/lib/channels/security creating build/lib/channels/testing copying channels/testing/live.py -> build/lib/channels/testing copying channels/testing/__init__.py -> build/lib/channels/testing copying channels/testing/http.py -> build/lib/channels/testing copying channels/testing/application.py -> build/lib/channels/testing copying channels/testing/websocket.py -> build/lib/channels/testing creating build/lib/channels/generic copying channels/generic/http.py -> build/lib/channels/generic copying channels/generic/websocket.py -> build/lib/channels/generic copying channels/generic/__init__.py -> build/lib/channels/generic creating build/lib/channels/management copying channels/management/__init__.py -> build/lib/channels/management creating build/lib/channels/management/commands copying channels/management/commands/__init__.py -> build/lib/channels/management/commands copying channels/management/commands/runworker.py -> build/lib/channels/management/commands running egg_info writing channels.egg-info/PKG-INFO writing dependency_links to channels.egg-info/dependency_links.txt writing requirements to channels.egg-info/requires.txt writing top-level names to channels.egg-info/top_level.txt reading manifest file 'channels.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'LICENSE' writing manifest file 'channels.egg-info/SOURCES.txt' installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/tests creating build/bdist.linux-x86_64/wheel/tests/sample_project copying build/lib/tests/sample_project/__init__.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project creating build/bdist.linux-x86_64/wheel/tests/sample_project/sampleapp copying build/lib/tests/sample_project/sampleapp/models.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/sampleapp creating build/bdist.linux-x86_64/wheel/tests/sample_project/sampleapp/migrations copying build/lib/tests/sample_project/sampleapp/migrations/__init__.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/sampleapp/migrations copying build/lib/tests/sample_project/sampleapp/migrations/0001_initial.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/sampleapp/migrations copying build/lib/tests/sample_project/sampleapp/apps.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/sampleapp copying build/lib/tests/sample_project/sampleapp/__init__.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/sampleapp copying build/lib/tests/sample_project/sampleapp/admin.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/sampleapp copying build/lib/tests/sample_project/sampleapp/consumers.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/sampleapp copying build/lib/tests/sample_project/manage.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project creating build/bdist.linux-x86_64/wheel/tests/sample_project/config copying build/lib/tests/sample_project/config/urls.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/config copying build/lib/tests/sample_project/config/wsgi.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/config copying build/lib/tests/sample_project/config/asgi.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/config copying build/lib/tests/sample_project/config/__init__.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/config copying build/lib/tests/sample_project/config/settings.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/config creating build/bdist.linux-x86_64/wheel/tests/sample_project/tests copying build/lib/tests/sample_project/tests/selenium_mixin.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/tests copying build/lib/tests/sample_project/tests/test_selenium.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/tests copying build/lib/tests/sample_project/tests/__init__.py -> build/bdist.linux-x86_64/wheel/./tests/sample_project/tests creating build/bdist.linux-x86_64/wheel/channels creating build/bdist.linux-x86_64/wheel/channels/generic copying build/lib/channels/generic/websocket.py -> build/bdist.linux-x86_64/wheel/./channels/generic copying build/lib/channels/generic/http.py -> build/bdist.linux-x86_64/wheel/./channels/generic copying build/lib/channels/generic/__init__.py -> build/bdist.linux-x86_64/wheel/./channels/generic creating build/bdist.linux-x86_64/wheel/channels/management copying build/lib/channels/management/__init__.py -> build/bdist.linux-x86_64/wheel/./channels/management creating build/bdist.linux-x86_64/wheel/channels/management/commands copying build/lib/channels/management/commands/__init__.py -> build/bdist.linux-x86_64/wheel/./channels/management/commands copying build/lib/channels/management/commands/runworker.py -> build/bdist.linux-x86_64/wheel/./channels/management/commands copying build/lib/channels/consumer.py -> build/bdist.linux-x86_64/wheel/./channels copying build/lib/channels/worker.py -> build/bdist.linux-x86_64/wheel/./channels creating build/bdist.linux-x86_64/wheel/channels/security copying build/lib/channels/security/websocket.py -> build/bdist.linux-x86_64/wheel/./channels/security copying build/lib/channels/security/__init__.py -> build/bdist.linux-x86_64/wheel/./channels/security creating build/bdist.linux-x86_64/wheel/channels/testing copying build/lib/channels/testing/application.py -> build/bdist.linux-x86_64/wheel/./channels/testing copying build/lib/channels/testing/live.py -> build/bdist.linux-x86_64/wheel/./channels/testing copying build/lib/channels/testing/http.py -> build/bdist.linux-x86_64/wheel/./channels/testing copying build/lib/channels/testing/websocket.py -> build/bdist.linux-x86_64/wheel/./channels/testing copying build/lib/channels/testing/__init__.py -> build/bdist.linux-x86_64/wheel/./channels/testing copying build/lib/channels/apps.py -> build/bdist.linux-x86_64/wheel/./channels copying build/lib/channels/middleware.py -> build/bdist.linux-x86_64/wheel/./channels copying build/lib/channels/auth.py -> build/bdist.linux-x86_64/wheel/./channels copying build/lib/channels/db.py -> build/bdist.linux-x86_64/wheel/./channels copying build/lib/channels/__init__.py -> build/bdist.linux-x86_64/wheel/./channels copying build/lib/channels/sessions.py -> build/bdist.linux-x86_64/wheel/./channels copying build/lib/channels/utils.py -> build/bdist.linux-x86_64/wheel/./channels copying build/lib/channels/layers.py -> build/bdist.linux-x86_64/wheel/./channels copying build/lib/channels/routing.py -> build/bdist.linux-x86_64/wheel/./channels copying build/lib/channels/exceptions.py -> build/bdist.linux-x86_64/wheel/./channels running install_egg_info Copying channels.egg-info to build/bdist.linux-x86_64/wheel/./channels-4.3.2-py3.14.egg-info running install_scripts creating build/bdist.linux-x86_64/wheel/channels-4.3.2.dist-info/WHEEL creating '/build/source/dist/.tmp-zw0c6i61/channels-4.3.2-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'channels/__init__.py' adding 'channels/apps.py' adding 'channels/auth.py' adding 'channels/consumer.py' adding 'channels/db.py' adding 'channels/exceptions.py' adding 'channels/layers.py' adding 'channels/middleware.py' adding 'channels/routing.py' adding 'channels/sessions.py' adding 'channels/utils.py' adding 'channels/worker.py' adding 'channels/generic/__init__.py' adding 'channels/generic/http.py' adding 'channels/generic/websocket.py' adding 'channels/management/__init__.py' adding 'channels/management/commands/__init__.py' adding 'channels/management/commands/runworker.py' adding 'channels/security/__init__.py' adding 'channels/security/websocket.py' adding 'channels/testing/__init__.py' adding 'channels/testing/application.py' adding 'channels/testing/http.py' adding 'channels/testing/live.py' adding 'channels/testing/websocket.py' adding 'channels-4.3.2.dist-info/licenses/LICENSE' adding 'tests/sample_project/__init__.py' adding 'tests/sample_project/manage.py' adding 'tests/sample_project/config/__init__.py' adding 'tests/sample_project/config/asgi.py' adding 'tests/sample_project/config/settings.py' adding 'tests/sample_project/config/urls.py' adding 'tests/sample_project/config/wsgi.py' adding 'tests/sample_project/sampleapp/__init__.py' adding 'tests/sample_project/sampleapp/admin.py' adding 'tests/sample_project/sampleapp/apps.py' adding 'tests/sample_project/sampleapp/consumers.py' adding 'tests/sample_project/sampleapp/models.py' adding 'tests/sample_project/sampleapp/migrations/0001_initial.py' adding 'tests/sample_project/sampleapp/migrations/__init__.py' adding 'tests/sample_project/tests/__init__.py' adding 'tests/sample_project/tests/selenium_mixin.py' adding 'tests/sample_project/tests/test_selenium.py' adding 'channels-4.3.2.dist-info/METADATA' adding 'channels-4.3.2.dist-info/WHEEL' adding 'channels-4.3.2.dist-info/top_level.txt' adding 'channels-4.3.2.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel Successfully built channels-4.3.2-py3-none-any.whl Finished creating a wheel... Finished executing pypaBuildPhase Running phase: pythonRuntimeDepsCheckHook Executing pythonRuntimeDepsCheck Checking runtime dependencies for channels-4.3.2-py3-none-any.whl Finished executing pythonRuntimeDepsCheck Running phase: installPhase Executing pypaInstallPhase Successfully installed channels-4.3.2-py3-none-any.whl Finished executing pypaInstallPhase Running phase: pythonOutputDistPhase Executing pythonOutputDistPhase Finished executing pythonOutputDistPhase Running phase: fixupPhase shrinking RPATHs of ELF executables and libraries in /nix/store/v1mpz22nrv466s08q70w0wwinqmq1m6q-python3.14-channels-4.3.2-dist checking for references to /build/ in /nix/store/v1mpz22nrv466s08q70w0wwinqmq1m6q-python3.14-channels-4.3.2-dist... patching script interpreter paths in /nix/store/v1mpz22nrv466s08q70w0wwinqmq1m6q-python3.14-channels-4.3.2-dist shrinking RPATHs of ELF executables and libraries in /nix/store/af78xv63rfwmj8cqfljlhm5cw11ciz3s-python3.14-channels-4.3.2 checking for references to /build/ in /nix/store/af78xv63rfwmj8cqfljlhm5cw11ciz3s-python3.14-channels-4.3.2... patching script interpreter paths in /nix/store/af78xv63rfwmj8cqfljlhm5cw11ciz3s-python3.14-channels-4.3.2 stripping (with command strip and flags -S -p) in /nix/store/af78xv63rfwmj8cqfljlhm5cw11ciz3s-python3.14-channels-4.3.2/lib Executing pythonRemoveTestsDir Finished executing pythonRemoveTestsDir Running phase: installCheckPhase no Makefile or custom installCheckPhase, doing nothing Running phase: pythonCatchConflictsPhase Running phase: pythonRemoveBinBytecodePhase Running phase: pythonImportsCheckPhase Executing pythonImportsCheckPhase Check whether the following modules can be imported: channels Running phase: pythonMetadataCheckPhase Executing pythonMetadataCheckPhase Running phase: pytestCheckPhase Executing pytestCheckPhase pytest flags: -m pytest --ignore-glob=tests/sample_project/tests/test_selenium.py ============================= test session starts ============================== platform linux -- Python 3.14.8, pytest-9.1.1, pluggy-1.6.0 django: version: 5.2.18 rootdir: /build/source configfile: setup.cfg testpaths: tests plugins: asyncio-1.4.0, django-4.14.0 asyncio: mode=Mode.AUTO, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function collected 80 items tests/test_database.py .. [ 2%] tests/security/test_auth.py ....... [ 11%] tests/security/test_websocket.py . [ 12%] tests/test_generic_http.py .... [ 17%] tests/test_generic_websocket.py ................. [ 38%] tests/test_http.py ....... [ 47%] tests/test_testing.py ........ [ 57%] tests/test_http.py . [ 58%] tests/test_inmemorychannel.py .......... [ 71%] tests/test_layers.py ............... [ 90%] tests/test_routing.py ........ [100%] ============================= 80 passed in 10.98s ============================== Finished executing pytestCheckPhase Running phase: pytestcachePhase Running phase: pytestRemoveBytecodePhase