Install & Compatibility
Where this runs
tested against v0.11.5 · 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
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 18.1MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 1.6s · import 0.000s · 19MB
16MB installed
● package 16MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
SoftDeleteManager
✓ from softdelete.models import SoftDeleteManager
✗ from softdelete.models import SoftDeleteManager
Basic usage: define model, soft delete, restore, hard delete.
from django.db import models
from softdelete.models import SoftDeleteObject, SoftDeleteManager
class MyModel(SoftDeleteObject):
name = models.CharField(max_length=100)
objects = SoftDeleteManager()
# Soft delete
obj = MyModel.objects.create(name='test')
obj.delete() # Sets deleted_at timestamp, does not remove from DB
# Restore
obj.undelete()
# Hard delete (bypass soft delete)
obj.hard_delete()
Upgrade
Version history
0.11.5latest on PyPI · released Apr 10, 2025
Audit
Dependencies
DjangorequiredRequired: softdelete depends on Django ORM.