Registry / web-framework / edx-django-utils

edx-django-utils

JSON →
library8.0.1pypypiunverified

edx-django-utils provides a collection of utility functions, middleware, and helpers for developing Django applications within the Open edX ecosystem. It offers features like monitoring integration, plugin management, and common middleware components. The current version is 8.0.1, and it maintains an active development cycle with frequent patch, minor, and occasional major releases addressing new features, bug fixes, and dependency updates.

pip install edx-django-utils
INSTALL
IMPORT
SIG · EDX-DJANGO-UTILS
E
edx-django-utils
web-frameworkpythonv8.0.1
Install
4.6s avg
Import
Disk
76MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v8.0.1 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.910 runs
installs and imports cleanly · install 0.0s · import 0.000s · 75.8MB
glibc
py 3.103.910 runs
installs and imports cleanly · install 4.6s · import 0.000s · 76MB
76MB installed
● package 76MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

MonitoringMiddleware
from edx_django_utils.monitoring import MonitoringMiddleware
from edx_django_utils.monitoring import MonitoringMiddleware

This quickstart demonstrates how to integrate edx-django-utils by adding its `MonitoringMiddleware` and `IdentityContextMiddleware` to your Django `MIDDLEWARE` settings, including `edx_django_utils.plugins` in `INSTALLED_APPS`, and using the `set_monitoring_transaction_name` utility function within a view.

# In your Django project's settings.py INSTALLED_APPS = [ # ... other apps 'edx_django_utils.plugins', # Required for some signals/plugin management features # ... ] MIDDLEWARE = [ 'edx_django_utils.monitoring.middleware.MonitoringMiddleware', 'edx_django_utils.middleware.identity.IdentityContextMiddleware', # ... other middleware ] # Example usage in a view or management command from django.http import HttpResponse from edx_django_utils.monitoring.utils import set_monitoring_transaction_name def my_app_view(request): set_monitoring_transaction_name('my_app.view_name') # Your view logic return HttpResponse('Response from my app!')
Debug
Known issues
breakingPython 3.8 support was dropped in `edx-django-utils==6.0.0`.
fix
Upgrade your Python environment to 3.9 or higher. For new projects, use Python 3.11+.
affects: >=6.0.0
breakingThe `newrelic` package was removed as a direct dependency in `edx-django-utils==8.0.0`. If your project relied on `edx-django-utils` to implicitly install `newrelic` for monitoring, you will need to add it to your project's `requirements.txt` explicitly.
fix
Explicitly add `newrelic` to your project's dependencies (e.g., `pip install newrelic`).
affects: >=8.0.0
deprecatedSeveral middleware classes, such as `RequestCacheMiddleware`, were deprecated and subsequently removed or refactored in `v7.2.0`.
fix
Review your `MIDDLEWARE` settings and replace or remove any deprecated `edx_django_utils` middleware. Refer to the official documentation or release notes for current alternatives.
affects: >=7.2.0
gotchaDjango 5.2 support was explicitly added in `edx-django-utils==7.3.0`. While earlier versions might work, full compatibility and optimal behavior with Django 5.2 are ensured from this version onwards.
fix
Ensure `edx-django-utils` is at least `7.3.0` or newer when using Django 5.2 or later.
affects: <7.3.0 (with Django 5.2)
Upgrade
Version history
8.0.1latest on PyPI · released Sep 29, 2025
Audit
Dependencies
DjangorequiredCore framework the utilities extend and integrate with.
ddtracerequiredUsed for Datadog APM integration in monitoring utilities.
elastic-apmrequiredUsed for Elastic APM integration in monitoring utilities.
pyyamlrequiredGeneral utility dependency.
Agent activity
26 hits · last 30 days
node
24
OpenAI (training)
2
Resources
edx-django-utils — pip install edx-django-utils · libregistry