EdX utilities for Django Application development.
Project description
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.
Overview
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.
Documentation
The full documentation is in the docs directory.
TODO: Publish to https://edx-django-utils.readthedocs.org.
License
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 PULL_REQUEST_TEMPLATE.md
Issue report template should be automatically applied if you are sending it from github UI as well; otherwise you can find it at ISSUE_TEMPLATE.md
Reporting Security Issues
Please do not report security issues in public. Please email security@edx.org.
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
[3.4.0] - 2020-07-20
Added
Added get_current_transaction for monitoring that returns a transaction object with a name property.
Updated
Updated CodeOwnerMetricMiddleware to use NewRelic’s current transaction for cases where resolve() doesn’t work to determine the code_owner, like for Middleware.
[3.3.0] - 2020-07-16
Added
CodeOwnerMetricMiddleware was moved here (from edx-platform) in order to be able to take advantage of the code_owner metric in other IDAs. For details on this decision, see the ADR for monitoring code owner. See the docstring for more details on usage.
[3.2.3] - 2020-05-30
Removed ceninusepy3 usage.
[3.2.2] - 2020-05-04
Added support for python 3.8 and dropped support for Django versions older than 2.2
[3.2.1] - 2020-04-17
Changed
imported get_cache_key in cache/__init__.py.
[3.2.0] - 2020-04-09
Added
Added get_cache_key utility.
[2.0.1] - 2019-10-09
Changed
Fixed: Updated function tracing to accomodate changes in New Relic’s 5.x Agent.
[2.0.0] - 2019-07-07
Changed
Converted Middleware (from old style MIDDLEWARE_CLASSES to MIDDLEWARE).
Removed support for Django versions < 1.11
[1.0.1] - 2018-09-07
Changed
Fixed: RequestCache now properly uses thread.local.
Fixed: CachedResponse.__repr__ now handles unicode.
[1.0.0] - 2018-08-28
Added
Add data dict property to better match legacy RequestCache interface.
Changed
Change is_hit/is_miss to is_found.
[0.5.1] - 2018-08-17
Changed
Fixed bug in TieredCacheMiddleware dependency declaration.
[0.5.0] - 2018-08-16
Changed
Restored Python 3 support.
Refactor/clean-up, including Middleware dependency checking.
Docs updates and other cookiecutter updates.
[0.4.1] - 2018-08-10
Changed
Split out TieredCacheMiddleware from RequestCacheMiddleware.
[0.4.0] - 2018-08-10
Changed
Rename CacheUtilsMiddleware to RequestCacheMiddleware.
[0.3.0] - 2018-08-02
Removed
Temporarily dropped Python 3 support to land this.
[0.2.0] - 2018-08-01
Added
Added cache and monitoring utilities.
[0.1.0] - 2018-07-23
Added
First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for edx_django_utils-3.4.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca041274b52e078c268e484fdb094f7a6a1250a2241f1575c92e964fc370d727 |
|
MD5 | fe8e4ccf815c1e40702a66f2534cfcb9 |
|
BLAKE2b-256 | 3683d400bbac5406a60e4b597fd6b324fd0f49180f8bf3af08d990d76565a2d7 |