Django Probe
It's hard to remove features in open-source software. Deprecation warnings exist, but people tend to ignore them. What maintainers want to know is how many people are using a feature. That's where Django Probe comes in.
Django Probe allows you to share which parts of Django your project uses. This package counts how often specific code patterns appear in your Django project and shares the aggregated information with the community.
By sharing what your project uses, you help support the Django community. No source code is shared, just the counts of which parts of Django are used, providing maintainers helpful information to direct the future of Django.
Quickstart
Install Django Probe in your project, then create a project token:
# with uv
$ uv add --dev django-probe
$ uv run django-probe login
$ uv run django-probe init
# with pip
$ pip install django-probe
$ django-probe login
$ django-probe init
login stores an organization credential in your user configuration directory.
init prints a separate project token; copy it, then inspect and submit the first scan:
$ export DJANGO_PROBE_TOKEN=<printed_token_from_init>
# with uv
$ uv run django-probe scan . # inspect the payload; sends nothing
$ uv run django-probe submit . # share the first scan
# with pip
$ django-probe scan . # inspect the payload; sends nothing
$ django-probe submit . # share the first scan
Next, add Django Probe to CI so the project shares data on a schedule. See Privacy for exactly what a payload contains.
What we're looking to learn
This list will grow over time, but for now there are two main usages:
- The
.extra()ORM API method- The
.extra()ORM API method has had a note about avoiding its usage for years. Let's determine if this is something that is central to a signficant number of Django projects.
- The
- The
@cache_pagedecorator- The
@cache_pagedecorator can easily cause problems for projects by storing and serving sensitive information such as CSRF tokens and CSP nonces. Understanding how widespread the usage is of it can help determine what further changes are needed.
- The
Metadata
Release files for django-probe 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| django_probe-0.3.0.tar.gz | 20.7 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| django_probe-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 49.7 kB
Release files / django_probe-0.3.0.tar.gz
| Download URL | django_probe-0.3.0.tar.gz |
|---|---|
| Size | 20.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
df6253dfe921dd91fc986dde1167c3694cb1c3183b8cc43a6185410ff032b223
|
|
BLAKE2b-256 checksum How to use checksums |
475a1c571c4a493e42e7415aaf0f1770f4cfc940b13dd5df0680a461056963d7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / django_probe-0.3.0-py3-none-any.whl
| Download URL | django_probe-0.3.0-py3-none-any.whl |
|---|---|
| Size | 29.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
152007737306dc2b7c154381a8a1070b1daaca20df110a87ed36ec709f650dfc
|
|
BLAKE2b-256 checksum How to use checksums |
7a754f267d0b8a85df4b5a5fedad6b09fd7650538d20ae3c655b9301633d0b88
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for django-probe 0.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.