Skip to content

Drop the unused djet extra - #919

Merged
tomwojcik merged 1 commit into
masterfrom
chore/drop-djet
Aug 1, 2026
Merged

Drop the unused djet extra#919
tomwojcik merged 1 commit into
masterfrom
chore/drop-djet

Conversation

@tomwojcik

Copy link
Copy Markdown
Collaborator

Removes djet from djoser entirely. The test suite relies on pytest alone.

Why

The pytest migration (#893) removed the last from djet import assertions. Since then djet has survived only as:

  • an optional extra in published metadata (djoser[djet])
  • an --extra djet install on all 28 CI matrix jobs

Two facts from full-history searches:

  • djoser/ has never imported djetgit log --all -S'djet' -- djoser/ returns nothing
  • it was never documentedgit log --all -S'djet' -- docs/ README.rst returns nothing

So pip install djoser[djet] only ever installed a test helper that djoser does not call — a development dependency leaking into published metadata.

Compatibility

Requesting an extra that no longer exists is a warning, not an error. Verified against the released 2.3.4:

$ uv pip install --dry-run --no-deps 'djoser[nonexistent-extra]==2.3.4'
Resolved 1 package in 255ms
 + djoser==2.3.4

So existing djoser[djet] pins keep installing; they just stop pulling in djet.

Changes

  • drop djet from [project.optional-dependencies]
  • drop --extra djet from the three test-suite jobs
  • uv lock — 101 → 100 packages, provides-extras = ["webauthn"]

Verified

  • synced the exact CI environment (uv sync --group test --extra webauthn), confirmed djet is absent from it, and ran the suite there: 206 passed — the strongest evidence it is unused
  • make run-hooks — all hooks pass
  • make build — wheel METADATA now advertises only Provides-Extra: webauthn; the four runtime dependencies are unchanged
  • uv lock --check — clean
  • make docs — 6 warnings, the pre-existing baseline

🤖 Generated with Claude Code

https://claude.ai/code/session_01RUccbzSjBjZYvJtzbLjLo7

The pytest migration (#893) removed the last `from djet import assertions`,
so nothing in djoser or its test suite imports djet any more. The extra
still shipped in published metadata and CI still installed it on all 28
matrix jobs.

djet was never used by library code and never documented, so
`pip install djoser[djet]` only ever installed a test helper djoser does
not call. Requesting an extra that no longer exists is a warning, not an
error, so pinned `djoser[djet]` installs keep working.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RUccbzSjBjZYvJtzbLjLo7
@codecov

codecov Bot commented Aug 1, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.33%. Comparing base (5a5dc71) to head (3ea5418).

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #919   +/-   ##
=======================================
  Coverage   99.33%   99.33%           
=======================================
  Files          27       27           
  Lines         908      908           
=======================================
  Hits          902      902           
  Misses          6        6           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@tomwojcik
tomwojcik merged commit 47e9808 into master Aug 1, 2026
32 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant