django-bolt 0.2.2__tar.gz → 0.2.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of django-bolt might be problematic. Click here for more details.
- {django_bolt-0.2.2 → django_bolt-0.2.4}/.gitignore +9 -0
- django_bolt-0.2.4/BENCHMARK_BASELINE.md +203 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/BENCHMARK_DEV.md +92 -92
- {django_bolt-0.2.2 → django_bolt-0.2.4}/Cargo.lock +189 -183
- {django_bolt-0.2.2 → django_bolt-0.2.4}/Cargo.toml +1 -1
- {django_bolt-0.2.2 → django_bolt-0.2.4}/PKG-INFO +4 -3
- {django_bolt-0.2.2 → django_bolt-0.2.4}/README.md +2 -2
- {django_bolt-0.2.2 → django_bolt-0.2.4}/pyproject.toml +2 -2
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/__init__.py +2 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/api.py +3 -1
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/auth/jwt_utils.py +6 -3
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/dependencies.py +4 -4
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/management/commands/runbolt.py +11 -8
- django_bolt-0.2.4/python/django_bolt/types.py +249 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/testproject/api.py +4 -1
- django_bolt-0.2.4/python/tests/test_request_get.py +146 -0
- django_bolt-0.2.4/python/tests/test_types.py +236 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/handler.rs +3 -6
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/request.rs +2 -1
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/test_state.rs +3 -5
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/testing.rs +3 -5
- django_bolt-0.2.2/.vscode/settings.json +0 -3
- django_bolt-0.2.2/BENCHMARK_BASELINE.md +0 -264
- django_bolt-0.2.2/uv.lock +0 -1454
- {django_bolt-0.2.2 → django_bolt-0.2.4}/.github/workflows/CI.yml +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/.python-version +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/CLAUDE.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/Makefile +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/TODO.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/ANNOTATION_GUIDE.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/ASYNC_DJANGO.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/CLASS_BASED_VIEWS.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/COMPRESSION.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/DEPENDENCY_INJECTION.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/DJANGO_ADMIN.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/EXCEPTIONS.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/GETTING_STARTED.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/GIL_OPTIMIZATION.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/LOGGING.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/MIDDLEWARE.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/OPENAPI.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/OPENAPI_ERROR_RESPONSES.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/OPENAPI_METADATA_IMPLEMENTATION.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/PAGINATION.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/PUBLISHING.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/README.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/RESPONSES.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/SECURITY.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/SERIALIZATION.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/TESTING_UTILITIES.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/favicon.png +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/icon.png +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/docs/logo.png +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/pytest.ini +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/_json.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/admin/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/admin/admin_detection.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/admin/asgi_bridge.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/admin/routes.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/admin/static.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/admin/static_routes.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/apps.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/async_collector.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/auth/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/auth/backends.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/auth/guards.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/auth/revocation.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/auth/token.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/binding.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/bootstrap.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/cli.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/compression.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/decorators.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/error_handlers.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/exceptions.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/health.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/logging/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/logging/config.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/logging/middleware.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/management/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/management/commands/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/middleware/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/middleware/compiler.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/middleware/middleware.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/config.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/plugins.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/routes.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/schema_generator.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/base.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/callback.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/components.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/contact.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/discriminator.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/encoding.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/enums.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/example.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/external_documentation.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/header.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/info.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/license.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/link.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/media_type.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/oauth_flow.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/oauth_flows.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/open_api.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/operation.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/parameter.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/path_item.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/paths.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/reference.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/request_body.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/response.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/responses.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/schema.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/security_requirement.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/security_scheme.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/server.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/server_variable.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/tag.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/openapi/spec/xml.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/pagination.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/param_functions.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/params.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/request_parsing.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/responses.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/router.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/serialization.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/status_codes.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/testing/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/testing/client.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/testing/helpers.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/typing.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/django_bolt/views.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/README.md +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/bench/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/bench/admin.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/bench/api.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/bench/apps.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/bench/migrations/0001_initial.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/bench/migrations/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/bench/models.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/bench/tests.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/bench/views.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/manage.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/100B +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/100B.txt +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/100K +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/100K.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/100K.txt +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/10K +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/10K.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/10K.txt +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/1K +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/1K.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/1K.txt +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/1M +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/1M.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/1M.txt +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/500K +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/500K.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/500K.txt +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/5M +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/5M.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/5M.txt +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/FILE_UPLOAD_1K +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/FILE_UPLOAD_1K_HEADERS.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/FORM_URLENCODED_1K +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/FORM_URLENCODED_1K_HEADERS.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/MULTIPART_1K +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/MULTIPART_1K_HEADERS.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/objects.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/persons_100.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/persons_50.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/test_data/persons_500.json +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/testproject/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/testproject/asgi.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/testproject/settings.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/testproject/test_api.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/testproject/urls.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/testproject/views.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/testproject/wsgi.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/users/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/users/admin.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/users/api.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/users/apps.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/users/migrations/0001_initial.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/users/migrations/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/users/models.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/users/tests.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/example/users/views.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/admin_tests/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/admin_tests/conftest.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/admin_tests/test_admin_with_django.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/admin_tests/urls.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/cbv/__init__.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/cbv/test_class_views.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/cbv/test_class_views_django_orm.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/cbv/test_class_views_features.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/cbv/test_class_views_with_client.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/conftest.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_action_decorator.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_auth_secret_key.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_cors_implementation.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_decorator_syntax.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_error_handling.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_file_response.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_global_cors.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_guards_auth.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_guards_integration.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_health.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_integration_validation.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_json_validation.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_jwt_auth.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_jwt_token.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_logging.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_logging_merge.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_middleware.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_middleware_server.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_model_viewset.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_models.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_openapi_docs.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_openapi_metadata.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_pagination.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_parameter_validation.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_syntax.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_testing_utilities.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_testing_utilities_simple.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/python/tests/test_viewset_unified.py +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/scripts/benchmark.sh +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/scripts/install_hey.sh +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/scripts/release.sh +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/direct_stream.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/error.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/json.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/lib.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/metadata.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/middleware/auth.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/middleware/mod.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/middleware/rate_limit.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/permissions.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/router.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/server.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/state.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/streaming.rs +0 -0
- {django_bolt-0.2.2 → django_bolt-0.2.4}/src/validation.rs +0 -0
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
# Django-Bolt Benchmark
|
|
2
|
+
Generated: Sun Oct 26 08:16:27 PM PKT 2025
|
|
3
|
+
Config: 8 processes × 1 workers | C=100 N=10000
|
|
4
|
+
|
|
5
|
+
## Root Endpoint Performance
|
|
6
|
+
Failed requests: 0
|
|
7
|
+
Requests per second: 86844.76 [#/sec] (mean)
|
|
8
|
+
Time per request: 1.151 [ms] (mean)
|
|
9
|
+
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
10
|
+
|
|
11
|
+
## 10kb JSON Response Performance
|
|
12
|
+
### 10kb JSON (/10k-json)
|
|
13
|
+
Failed requests: 0
|
|
14
|
+
Requests per second: 65474.16 [#/sec] (mean)
|
|
15
|
+
Time per request: 1.527 [ms] (mean)
|
|
16
|
+
Time per request: 0.015 [ms] (mean, across all concurrent requests)
|
|
17
|
+
|
|
18
|
+
## Response Type Endpoints
|
|
19
|
+
### Header Endpoint (/header)
|
|
20
|
+
Failed requests: 0
|
|
21
|
+
Requests per second: 78442.45 [#/sec] (mean)
|
|
22
|
+
Time per request: 1.275 [ms] (mean)
|
|
23
|
+
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|
|
24
|
+
### Cookie Endpoint (/cookie)
|
|
25
|
+
Failed requests: 0
|
|
26
|
+
Requests per second: 81461.75 [#/sec] (mean)
|
|
27
|
+
Time per request: 1.228 [ms] (mean)
|
|
28
|
+
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
29
|
+
### Exception Endpoint (/exc)
|
|
30
|
+
Failed requests: 0
|
|
31
|
+
Requests per second: 81399.42 [#/sec] (mean)
|
|
32
|
+
Time per request: 1.229 [ms] (mean)
|
|
33
|
+
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
34
|
+
### HTML Response (/html)
|
|
35
|
+
Failed requests: 0
|
|
36
|
+
Requests per second: 87572.58 [#/sec] (mean)
|
|
37
|
+
Time per request: 1.142 [ms] (mean)
|
|
38
|
+
Time per request: 0.011 [ms] (mean, across all concurrent requests)
|
|
39
|
+
### Redirect Response (/redirect)
|
|
40
|
+
Failed requests: 0
|
|
41
|
+
Requests per second: 87607.87 [#/sec] (mean)
|
|
42
|
+
Time per request: 1.141 [ms] (mean)
|
|
43
|
+
Time per request: 0.011 [ms] (mean, across all concurrent requests)
|
|
44
|
+
### File Static via FileResponse (/file-static)
|
|
45
|
+
Failed requests: 0
|
|
46
|
+
Requests per second: 32728.40 [#/sec] (mean)
|
|
47
|
+
Time per request: 3.055 [ms] (mean)
|
|
48
|
+
Time per request: 0.031 [ms] (mean, across all concurrent requests)
|
|
49
|
+
|
|
50
|
+
## Streaming and SSE Performance
|
|
51
|
+
### Streaming Plain Text (/stream)
|
|
52
|
+
Total: 0.2203 secs
|
|
53
|
+
Slowest: 0.0106 secs
|
|
54
|
+
Fastest: 0.0002 secs
|
|
55
|
+
Average: 0.0021 secs
|
|
56
|
+
Requests/sec: 45391.2251
|
|
57
|
+
Status code distribution:
|
|
58
|
+
### Server-Sent Events (/sse)
|
|
59
|
+
Total: 0.1937 secs
|
|
60
|
+
Slowest: 0.0108 secs
|
|
61
|
+
Fastest: 0.0002 secs
|
|
62
|
+
Average: 0.0018 secs
|
|
63
|
+
Requests/sec: 51628.5599
|
|
64
|
+
Status code distribution:
|
|
65
|
+
### Server-Sent Events (async) (/sse-async)
|
|
66
|
+
Total: 0.3621 secs
|
|
67
|
+
Slowest: 0.0155 secs
|
|
68
|
+
Fastest: 0.0003 secs
|
|
69
|
+
Average: 0.0035 secs
|
|
70
|
+
Requests/sec: 27617.2559
|
|
71
|
+
Status code distribution:
|
|
72
|
+
### OpenAI Chat Completions (stream) (/v1/chat/completions)
|
|
73
|
+
Total: 0.6261 secs
|
|
74
|
+
Slowest: 0.0196 secs
|
|
75
|
+
Fastest: 0.0004 secs
|
|
76
|
+
Average: 0.0060 secs
|
|
77
|
+
Requests/sec: 15972.5148
|
|
78
|
+
Status code distribution:
|
|
79
|
+
### OpenAI Chat Completions (async stream) (/v1/chat/completions-async)
|
|
80
|
+
Total: 0.7968 secs
|
|
81
|
+
Slowest: 0.0252 secs
|
|
82
|
+
Fastest: 0.0005 secs
|
|
83
|
+
Average: 0.0075 secs
|
|
84
|
+
Requests/sec: 12549.6355
|
|
85
|
+
Status code distribution:
|
|
86
|
+
|
|
87
|
+
## Items GET Performance (/items/1?q=hello)
|
|
88
|
+
Failed requests: 0
|
|
89
|
+
Requests per second: 80848.59 [#/sec] (mean)
|
|
90
|
+
Time per request: 1.237 [ms] (mean)
|
|
91
|
+
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
92
|
+
|
|
93
|
+
## Items PUT JSON Performance (/items/1)
|
|
94
|
+
Failed requests: 0
|
|
95
|
+
Requests per second: 75244.54 [#/sec] (mean)
|
|
96
|
+
Time per request: 1.329 [ms] (mean)
|
|
97
|
+
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|
|
98
|
+
|
|
99
|
+
## ORM Performance
|
|
100
|
+
### Users Full10 (/users/full10)
|
|
101
|
+
Failed requests: 0
|
|
102
|
+
Requests per second: 13753.08 [#/sec] (mean)
|
|
103
|
+
Time per request: 7.271 [ms] (mean)
|
|
104
|
+
Time per request: 0.073 [ms] (mean, across all concurrent requests)
|
|
105
|
+
### Users Mini10 (/users/mini10)
|
|
106
|
+
Failed requests: 0
|
|
107
|
+
Requests per second: 14591.57 [#/sec] (mean)
|
|
108
|
+
Time per request: 6.853 [ms] (mean)
|
|
109
|
+
Time per request: 0.069 [ms] (mean, across all concurrent requests)
|
|
110
|
+
|
|
111
|
+
## Class-Based Views (CBV) Performance
|
|
112
|
+
### Simple APIView GET (/cbv-simple)
|
|
113
|
+
Failed requests: 0
|
|
114
|
+
Requests per second: 85832.49 [#/sec] (mean)
|
|
115
|
+
Time per request: 1.165 [ms] (mean)
|
|
116
|
+
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
117
|
+
### Simple APIView POST (/cbv-simple)
|
|
118
|
+
Failed requests: 0
|
|
119
|
+
Requests per second: 78260.73 [#/sec] (mean)
|
|
120
|
+
Time per request: 1.278 [ms] (mean)
|
|
121
|
+
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|
|
122
|
+
### Items100 ViewSet GET (/cbv-items100)
|
|
123
|
+
Failed requests: 0
|
|
124
|
+
Requests per second: 59200.67 [#/sec] (mean)
|
|
125
|
+
Time per request: 1.689 [ms] (mean)
|
|
126
|
+
Time per request: 0.017 [ms] (mean, across all concurrent requests)
|
|
127
|
+
|
|
128
|
+
## CBV Items - Basic Operations
|
|
129
|
+
### CBV Items GET (Retrieve) (/cbv-items/1)
|
|
130
|
+
Failed requests: 0
|
|
131
|
+
Requests per second: 81760.80 [#/sec] (mean)
|
|
132
|
+
Time per request: 1.223 [ms] (mean)
|
|
133
|
+
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
134
|
+
### CBV Items PUT (Update) (/cbv-items/1)
|
|
135
|
+
Failed requests: 0
|
|
136
|
+
Requests per second: 77332.34 [#/sec] (mean)
|
|
137
|
+
Time per request: 1.293 [ms] (mean)
|
|
138
|
+
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|
|
139
|
+
|
|
140
|
+
## CBV Additional Benchmarks
|
|
141
|
+
### CBV Bench Parse (POST /cbv-bench-parse)
|
|
142
|
+
Failed requests: 0
|
|
143
|
+
Requests per second: 77139.66 [#/sec] (mean)
|
|
144
|
+
Time per request: 1.296 [ms] (mean)
|
|
145
|
+
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|
|
146
|
+
### CBV Response Types (/cbv-response)
|
|
147
|
+
Failed requests: 0
|
|
148
|
+
Requests per second: 85659.71 [#/sec] (mean)
|
|
149
|
+
Time per request: 1.167 [ms] (mean)
|
|
150
|
+
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
151
|
+
### CBV Streaming Plain Text (/cbv-stream)
|
|
152
|
+
Total: 0.4248 secs
|
|
153
|
+
Slowest: 0.0241 secs
|
|
154
|
+
Fastest: 0.0002 secs
|
|
155
|
+
Average: 0.0041 secs
|
|
156
|
+
Requests/sec: 23539.4832
|
|
157
|
+
Status code distribution:
|
|
158
|
+
### CBV Server-Sent Events (/cbv-sse)
|
|
159
|
+
Total: 0.3642 secs
|
|
160
|
+
Slowest: 0.0220 secs
|
|
161
|
+
Fastest: 0.0002 secs
|
|
162
|
+
Average: 0.0035 secs
|
|
163
|
+
Requests/sec: 27456.6322
|
|
164
|
+
Status code distribution:
|
|
165
|
+
### CBV Chat Completions (stream) (/cbv-chat-completions)
|
|
166
|
+
Total: 0.8483 secs
|
|
167
|
+
Slowest: 0.0312 secs
|
|
168
|
+
Fastest: 0.0005 secs
|
|
169
|
+
Average: 0.0082 secs
|
|
170
|
+
Requests/sec: 11787.5952
|
|
171
|
+
Status code distribution:
|
|
172
|
+
|
|
173
|
+
## ORM Performance with CBV
|
|
174
|
+
### Users CBV Mini10 (List) (/users/cbv-mini10)
|
|
175
|
+
Failed requests: 0
|
|
176
|
+
Requests per second: 16788.47 [#/sec] (mean)
|
|
177
|
+
Time per request: 5.956 [ms] (mean)
|
|
178
|
+
Time per request: 0.060 [ms] (mean, across all concurrent requests)
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
## Form and File Upload Performance
|
|
182
|
+
### Form Data (POST /form)
|
|
183
|
+
Failed requests: 0
|
|
184
|
+
Requests per second: 67969.41 [#/sec] (mean)
|
|
185
|
+
Time per request: 1.471 [ms] (mean)
|
|
186
|
+
Time per request: 0.015 [ms] (mean, across all concurrent requests)
|
|
187
|
+
### File Upload (POST /upload)
|
|
188
|
+
Failed requests: 0
|
|
189
|
+
Requests per second: 55385.40 [#/sec] (mean)
|
|
190
|
+
Time per request: 1.806 [ms] (mean)
|
|
191
|
+
Time per request: 0.018 [ms] (mean, across all concurrent requests)
|
|
192
|
+
### Mixed Form with Files (POST /mixed-form)
|
|
193
|
+
Failed requests: 0
|
|
194
|
+
Requests per second: 51656.89 [#/sec] (mean)
|
|
195
|
+
Time per request: 1.936 [ms] (mean)
|
|
196
|
+
Time per request: 0.019 [ms] (mean, across all concurrent requests)
|
|
197
|
+
|
|
198
|
+
## Django Ninja-style Benchmarks
|
|
199
|
+
### JSON Parse/Validate (POST /bench/parse)
|
|
200
|
+
Failed requests: 0
|
|
201
|
+
Requests per second: 79096.40 [#/sec] (mean)
|
|
202
|
+
Time per request: 1.264 [ms] (mean)
|
|
203
|
+
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|
|
@@ -1,203 +1,203 @@
|
|
|
1
1
|
# Django-Bolt Benchmark
|
|
2
|
-
Generated:
|
|
2
|
+
Generated: Sun Oct 26 08:16:54 PM PKT 2025
|
|
3
3
|
Config: 8 processes × 1 workers | C=100 N=10000
|
|
4
4
|
|
|
5
5
|
## Root Endpoint Performance
|
|
6
6
|
Failed requests: 0
|
|
7
|
-
Requests per second:
|
|
8
|
-
Time per request: 1.
|
|
7
|
+
Requests per second: 87222.74 [#/sec] (mean)
|
|
8
|
+
Time per request: 1.146 [ms] (mean)
|
|
9
9
|
Time per request: 0.011 [ms] (mean, across all concurrent requests)
|
|
10
10
|
|
|
11
11
|
## 10kb JSON Response Performance
|
|
12
12
|
### 10kb JSON (/10k-json)
|
|
13
13
|
Failed requests: 0
|
|
14
|
-
Requests per second:
|
|
15
|
-
Time per request: 1.
|
|
14
|
+
Requests per second: 72048.19 [#/sec] (mean)
|
|
15
|
+
Time per request: 1.388 [ms] (mean)
|
|
16
16
|
Time per request: 0.014 [ms] (mean, across all concurrent requests)
|
|
17
17
|
|
|
18
18
|
## Response Type Endpoints
|
|
19
19
|
### Header Endpoint (/header)
|
|
20
20
|
Failed requests: 0
|
|
21
|
-
Requests per second:
|
|
22
|
-
Time per request: 1.
|
|
21
|
+
Requests per second: 85033.29 [#/sec] (mean)
|
|
22
|
+
Time per request: 1.176 [ms] (mean)
|
|
23
23
|
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
24
24
|
### Cookie Endpoint (/cookie)
|
|
25
25
|
Failed requests: 0
|
|
26
|
-
Requests per second:
|
|
27
|
-
Time per request: 1.
|
|
26
|
+
Requests per second: 82033.78 [#/sec] (mean)
|
|
27
|
+
Time per request: 1.219 [ms] (mean)
|
|
28
28
|
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
29
29
|
### Exception Endpoint (/exc)
|
|
30
30
|
Failed requests: 0
|
|
31
|
-
Requests per second:
|
|
32
|
-
Time per request: 1.
|
|
31
|
+
Requests per second: 80627.61 [#/sec] (mean)
|
|
32
|
+
Time per request: 1.240 [ms] (mean)
|
|
33
33
|
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
34
34
|
### HTML Response (/html)
|
|
35
35
|
Failed requests: 0
|
|
36
|
-
Requests per second:
|
|
37
|
-
Time per request: 1.
|
|
38
|
-
Time per request: 0.
|
|
36
|
+
Requests per second: 86764.13 [#/sec] (mean)
|
|
37
|
+
Time per request: 1.153 [ms] (mean)
|
|
38
|
+
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
39
39
|
### Redirect Response (/redirect)
|
|
40
40
|
Failed requests: 0
|
|
41
|
-
Requests per second:
|
|
42
|
-
Time per request: 1.
|
|
41
|
+
Requests per second: 87570.28 [#/sec] (mean)
|
|
42
|
+
Time per request: 1.142 [ms] (mean)
|
|
43
43
|
Time per request: 0.011 [ms] (mean, across all concurrent requests)
|
|
44
44
|
### File Static via FileResponse (/file-static)
|
|
45
45
|
Failed requests: 0
|
|
46
|
-
Requests per second:
|
|
47
|
-
Time per request:
|
|
48
|
-
Time per request: 0.
|
|
46
|
+
Requests per second: 32227.40 [#/sec] (mean)
|
|
47
|
+
Time per request: 3.103 [ms] (mean)
|
|
48
|
+
Time per request: 0.031 [ms] (mean, across all concurrent requests)
|
|
49
49
|
|
|
50
50
|
## Streaming and SSE Performance
|
|
51
51
|
### Streaming Plain Text (/stream)
|
|
52
|
-
Total: 0.
|
|
53
|
-
Slowest: 0.
|
|
52
|
+
Total: 0.2005 secs
|
|
53
|
+
Slowest: 0.0096 secs
|
|
54
54
|
Fastest: 0.0002 secs
|
|
55
55
|
Average: 0.0019 secs
|
|
56
|
-
Requests/sec:
|
|
56
|
+
Requests/sec: 49863.7329
|
|
57
57
|
Status code distribution:
|
|
58
58
|
### Server-Sent Events (/sse)
|
|
59
|
-
Total: 0.
|
|
60
|
-
Slowest: 0.
|
|
59
|
+
Total: 0.2125 secs
|
|
60
|
+
Slowest: 0.0273 secs
|
|
61
61
|
Fastest: 0.0002 secs
|
|
62
|
-
Average: 0.
|
|
63
|
-
Requests/sec:
|
|
62
|
+
Average: 0.0020 secs
|
|
63
|
+
Requests/sec: 47067.4835
|
|
64
64
|
Status code distribution:
|
|
65
65
|
### Server-Sent Events (async) (/sse-async)
|
|
66
|
-
Total: 0.
|
|
67
|
-
Slowest: 0.
|
|
66
|
+
Total: 0.3738 secs
|
|
67
|
+
Slowest: 0.0120 secs
|
|
68
68
|
Fastest: 0.0003 secs
|
|
69
|
-
Average: 0.
|
|
70
|
-
Requests/sec:
|
|
69
|
+
Average: 0.0035 secs
|
|
70
|
+
Requests/sec: 26755.1136
|
|
71
71
|
Status code distribution:
|
|
72
72
|
### OpenAI Chat Completions (stream) (/v1/chat/completions)
|
|
73
|
-
Total: 0.
|
|
74
|
-
Slowest: 0.
|
|
73
|
+
Total: 0.6406 secs
|
|
74
|
+
Slowest: 0.0250 secs
|
|
75
75
|
Fastest: 0.0004 secs
|
|
76
|
-
Average: 0.
|
|
77
|
-
Requests/sec:
|
|
76
|
+
Average: 0.0060 secs
|
|
77
|
+
Requests/sec: 15609.7589
|
|
78
78
|
Status code distribution:
|
|
79
79
|
### OpenAI Chat Completions (async stream) (/v1/chat/completions-async)
|
|
80
|
-
Total: 0.
|
|
81
|
-
Slowest: 0.
|
|
80
|
+
Total: 0.8088 secs
|
|
81
|
+
Slowest: 0.0248 secs
|
|
82
82
|
Fastest: 0.0005 secs
|
|
83
|
-
Average: 0.
|
|
84
|
-
Requests/sec:
|
|
83
|
+
Average: 0.0075 secs
|
|
84
|
+
Requests/sec: 12363.4794
|
|
85
85
|
Status code distribution:
|
|
86
86
|
|
|
87
87
|
## Items GET Performance (/items/1?q=hello)
|
|
88
88
|
Failed requests: 0
|
|
89
|
-
Requests per second:
|
|
90
|
-
Time per request: 1.
|
|
91
|
-
Time per request: 0.
|
|
89
|
+
Requests per second: 76583.75 [#/sec] (mean)
|
|
90
|
+
Time per request: 1.306 [ms] (mean)
|
|
91
|
+
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|
|
92
92
|
|
|
93
93
|
## Items PUT JSON Performance (/items/1)
|
|
94
94
|
Failed requests: 0
|
|
95
|
-
Requests per second:
|
|
96
|
-
Time per request: 1.
|
|
95
|
+
Requests per second: 70008.40 [#/sec] (mean)
|
|
96
|
+
Time per request: 1.428 [ms] (mean)
|
|
97
97
|
Time per request: 0.014 [ms] (mean, across all concurrent requests)
|
|
98
98
|
|
|
99
99
|
## ORM Performance
|
|
100
100
|
### Users Full10 (/users/full10)
|
|
101
101
|
Failed requests: 0
|
|
102
|
-
Requests per second:
|
|
103
|
-
Time per request: 7.
|
|
102
|
+
Requests per second: 13184.07 [#/sec] (mean)
|
|
103
|
+
Time per request: 7.585 [ms] (mean)
|
|
104
104
|
Time per request: 0.076 [ms] (mean, across all concurrent requests)
|
|
105
105
|
### Users Mini10 (/users/mini10)
|
|
106
106
|
Failed requests: 0
|
|
107
|
-
Requests per second:
|
|
108
|
-
Time per request: 6.
|
|
109
|
-
Time per request: 0.
|
|
107
|
+
Requests per second: 14790.32 [#/sec] (mean)
|
|
108
|
+
Time per request: 6.761 [ms] (mean)
|
|
109
|
+
Time per request: 0.068 [ms] (mean, across all concurrent requests)
|
|
110
110
|
|
|
111
111
|
## Class-Based Views (CBV) Performance
|
|
112
112
|
### Simple APIView GET (/cbv-simple)
|
|
113
113
|
Failed requests: 0
|
|
114
|
-
Requests per second:
|
|
115
|
-
Time per request: 1.
|
|
114
|
+
Requests per second: 87033.72 [#/sec] (mean)
|
|
115
|
+
Time per request: 1.149 [ms] (mean)
|
|
116
116
|
Time per request: 0.011 [ms] (mean, across all concurrent requests)
|
|
117
117
|
### Simple APIView POST (/cbv-simple)
|
|
118
118
|
Failed requests: 0
|
|
119
|
-
Requests per second:
|
|
120
|
-
Time per request: 1.
|
|
121
|
-
Time per request: 0.
|
|
119
|
+
Requests per second: 79251.23 [#/sec] (mean)
|
|
120
|
+
Time per request: 1.262 [ms] (mean)
|
|
121
|
+
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|
|
122
122
|
### Items100 ViewSet GET (/cbv-items100)
|
|
123
123
|
Failed requests: 0
|
|
124
|
-
Requests per second:
|
|
125
|
-
Time per request: 1.
|
|
126
|
-
Time per request: 0.
|
|
124
|
+
Requests per second: 59658.75 [#/sec] (mean)
|
|
125
|
+
Time per request: 1.676 [ms] (mean)
|
|
126
|
+
Time per request: 0.017 [ms] (mean, across all concurrent requests)
|
|
127
127
|
|
|
128
128
|
## CBV Items - Basic Operations
|
|
129
129
|
### CBV Items GET (Retrieve) (/cbv-items/1)
|
|
130
130
|
Failed requests: 0
|
|
131
|
-
Requests per second:
|
|
132
|
-
Time per request: 1.
|
|
133
|
-
Time per request: 0.
|
|
131
|
+
Requests per second: 81070.13 [#/sec] (mean)
|
|
132
|
+
Time per request: 1.234 [ms] (mean)
|
|
133
|
+
Time per request: 0.012 [ms] (mean, across all concurrent requests)
|
|
134
134
|
### CBV Items PUT (Update) (/cbv-items/1)
|
|
135
135
|
Failed requests: 0
|
|
136
|
-
Requests per second:
|
|
137
|
-
Time per request: 1.
|
|
136
|
+
Requests per second: 77258.26 [#/sec] (mean)
|
|
137
|
+
Time per request: 1.294 [ms] (mean)
|
|
138
138
|
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|
|
139
139
|
|
|
140
140
|
## CBV Additional Benchmarks
|
|
141
141
|
### CBV Bench Parse (POST /cbv-bench-parse)
|
|
142
142
|
Failed requests: 0
|
|
143
|
-
Requests per second:
|
|
144
|
-
Time per request: 1.
|
|
145
|
-
Time per request: 0.
|
|
143
|
+
Requests per second: 67257.18 [#/sec] (mean)
|
|
144
|
+
Time per request: 1.487 [ms] (mean)
|
|
145
|
+
Time per request: 0.015 [ms] (mean, across all concurrent requests)
|
|
146
146
|
### CBV Response Types (/cbv-response)
|
|
147
147
|
Failed requests: 0
|
|
148
|
-
Requests per second:
|
|
149
|
-
Time per request: 1.
|
|
150
|
-
Time per request: 0.
|
|
148
|
+
Requests per second: 77826.46 [#/sec] (mean)
|
|
149
|
+
Time per request: 1.285 [ms] (mean)
|
|
150
|
+
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|
|
151
151
|
### CBV Streaming Plain Text (/cbv-stream)
|
|
152
|
-
Total: 0.
|
|
153
|
-
Slowest: 0.
|
|
152
|
+
Total: 0.3670 secs
|
|
153
|
+
Slowest: 0.0168 secs
|
|
154
154
|
Fastest: 0.0002 secs
|
|
155
|
-
Average: 0.
|
|
156
|
-
Requests/sec:
|
|
155
|
+
Average: 0.0035 secs
|
|
156
|
+
Requests/sec: 27244.8829
|
|
157
157
|
Status code distribution:
|
|
158
158
|
### CBV Server-Sent Events (/cbv-sse)
|
|
159
|
-
Total: 0.
|
|
160
|
-
Slowest: 0.
|
|
159
|
+
Total: 0.3554 secs
|
|
160
|
+
Slowest: 0.0165 secs
|
|
161
161
|
Fastest: 0.0002 secs
|
|
162
|
-
Average: 0.
|
|
163
|
-
Requests/sec:
|
|
162
|
+
Average: 0.0034 secs
|
|
163
|
+
Requests/sec: 28133.4238
|
|
164
164
|
Status code distribution:
|
|
165
165
|
### CBV Chat Completions (stream) (/cbv-chat-completions)
|
|
166
|
-
Total: 0.
|
|
167
|
-
Slowest: 0.
|
|
166
|
+
Total: 0.8324 secs
|
|
167
|
+
Slowest: 0.0304 secs
|
|
168
168
|
Fastest: 0.0005 secs
|
|
169
|
-
Average: 0.
|
|
170
|
-
Requests/sec:
|
|
169
|
+
Average: 0.0080 secs
|
|
170
|
+
Requests/sec: 12013.5817
|
|
171
171
|
Status code distribution:
|
|
172
172
|
|
|
173
173
|
## ORM Performance with CBV
|
|
174
174
|
### Users CBV Mini10 (List) (/users/cbv-mini10)
|
|
175
175
|
Failed requests: 0
|
|
176
|
-
Requests per second:
|
|
177
|
-
Time per request:
|
|
178
|
-
Time per request: 0.
|
|
176
|
+
Requests per second: 16835.44 [#/sec] (mean)
|
|
177
|
+
Time per request: 5.940 [ms] (mean)
|
|
178
|
+
Time per request: 0.059 [ms] (mean, across all concurrent requests)
|
|
179
179
|
|
|
180
180
|
|
|
181
181
|
## Form and File Upload Performance
|
|
182
182
|
### Form Data (POST /form)
|
|
183
183
|
Failed requests: 0
|
|
184
|
-
Requests per second:
|
|
185
|
-
Time per request: 1.
|
|
184
|
+
Requests per second: 68462.20 [#/sec] (mean)
|
|
185
|
+
Time per request: 1.461 [ms] (mean)
|
|
186
186
|
Time per request: 0.015 [ms] (mean, across all concurrent requests)
|
|
187
187
|
### File Upload (POST /upload)
|
|
188
188
|
Failed requests: 0
|
|
189
|
-
Requests per second:
|
|
190
|
-
Time per request: 1.
|
|
191
|
-
Time per request: 0.
|
|
189
|
+
Requests per second: 53837.83 [#/sec] (mean)
|
|
190
|
+
Time per request: 1.857 [ms] (mean)
|
|
191
|
+
Time per request: 0.019 [ms] (mean, across all concurrent requests)
|
|
192
192
|
### Mixed Form with Files (POST /mixed-form)
|
|
193
193
|
Failed requests: 0
|
|
194
|
-
Requests per second:
|
|
195
|
-
Time per request: 1.
|
|
194
|
+
Requests per second: 51677.98 [#/sec] (mean)
|
|
195
|
+
Time per request: 1.935 [ms] (mean)
|
|
196
196
|
Time per request: 0.019 [ms] (mean, across all concurrent requests)
|
|
197
197
|
|
|
198
198
|
## Django Ninja-style Benchmarks
|
|
199
199
|
### JSON Parse/Validate (POST /bench/parse)
|
|
200
200
|
Failed requests: 0
|
|
201
|
-
Requests per second:
|
|
202
|
-
Time per request: 1.
|
|
203
|
-
Time per request: 0.
|
|
201
|
+
Requests per second: 79510.22 [#/sec] (mean)
|
|
202
|
+
Time per request: 1.258 [ms] (mean)
|
|
203
|
+
Time per request: 0.013 [ms] (mean, across all concurrent requests)
|