Skip to main content

EdX utilities for Django Application development.

Project description

PyPI Travis Codecov Documentation Supported Python versions License

EdX utilities for Django Application development.

Note that some utilities may warrant their own repository. A judgement call needs to be made as to whether code properly belongs here or not. Please review with the Architecture Team if you have any questions.


This repository includes shared utilities for:

  • Cache Utilities: Includes a RequestCache and a TieredCache.
  • Monitoring Utilities: Includes Middleware and utilities for enhancing metrics output. At this time, supports NewRelic monitoring.


The full documentation is in the docs directory.

TODO: Publish to


The code in this repository is licensed under the AGPL 3.0 unless otherwise noted.

Please see LICENSE.txt for details.

How To Contribute

Contributions are very welcome.

Please read How To Contribute for details.

Even though they were written with edx-platform in mind, the guidelines should be followed for Open edX code in general.

PR description template should be automatically applied if you are sending PR from github interface; otherwise you can find it it at

Issue report template should be automatically applied if you are sending it from github UI as well; otherwise you can find it at

Reporting Security Issues

Please do not report security issues in public. Please email

Getting Help

Have a question about this repository, or about Open edX in general? Please refer to this list of resources if you need any assistance.

Change Log


[2.0.1] - 2019-10-09


  • Fixed: Updated function tracing to accomodate changes in New Relic’s 5.x Agent.

[2.0.0] - 2019-07-07


  • Converted Middleware (from old style MIDDLEWARE_CLASSES to MIDDLEWARE).
  • Removed support for Django versions < 1.11

[1.0.1] - 2018-09-07


  • Fixed: RequestCache now properly uses thread.local.
  • Fixed: CachedResponse.__repr__ now handles unicode.

[1.0.0] - 2018-08-28


  • Add data dict property to better match legacy RequestCache interface.


  • Change is_hit/is_miss to is_found.

[0.5.1] - 2018-08-17


  • Fixed bug in TieredCacheMiddleware dependency declaration.

[0.5.0] - 2018-08-16


  • Restored Python 3 support.
  • Refactor/clean-up, including Middleware dependency checking.
  • Docs updates and other cookiecutter updates.

[0.4.1] - 2018-08-10


  • Split out TieredCacheMiddleware from RequestCacheMiddleware.

[0.4.0] - 2018-08-10


  • Rename CacheUtilsMiddleware to RequestCacheMiddleware.

[0.3.0] - 2018-08-02


  • Temporarily dropped Python 3 support to land this.

[0.2.0] - 2018-08-01


  • Added cache and monitoring utilities.

[0.1.0] - 2018-07-23


  • First release on PyPI.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for edx-django-utils, version 2.0.3
Filename, size File type Python version Upload date Hashes
Filename, size edx_django_utils-2.0.3-py2.py3-none-any.whl (30.7 kB) File type Wheel Python version py2.py3 Upload date Hashes View hashes
Filename, size edx-django-utils-2.0.3.tar.gz (28.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page