Plain Core
Plain Packages
plain-jobs changelog
0.33.0 (2025-10-10)
What's changed
Renamed package from plain.worker
to plain.jobs
(24219856e0 )
Upgrade instructions
Update any imports from plain.worker
to plain.jobs
(e.g., from plain.worker import Job
becomes from plain.jobs import Job
)
Change worker commands from plain worker run
to plain jobs worker
Check updated settings names
0.32.0 (2025-10-07)
What's changed
Models now use model_options
instead of _meta
for accessing model configuration like package_label
and model_name
(73ba469 )
Model configuration now uses model_options = models.Options()
instead of class Meta
(17a378d )
QuerySet types now properly use Self
return type for better type checking (2578301 )
Removed unnecessary type ignore comments now that QuerySet is properly typed (2578301 )
Upgrade instructions
0.31.1 (2025-10-06)
What's changed
Updated dependency resolution to use newer compatible versions of plain
and plain.models
Upgrade instructions
0.31.0 (2025-09-25)
What's changed
The jobs autodiscovery now includes app.jobs
modules in addition to package jobs modules (b0b610d )
Upgrade instructions
0.30.0 (2025-09-19)
What's changed
The Job
model has been renamed to JobProcess
for better clarity (986c914 )
The job_uuid
field in JobResult has been renamed to job_process_uuid
to match the model rename (986c914 )
Admin interface now shows "Job processes" as the section title instead of "Jobs" (986c914 )
Upgrade instructions
Run plain migrate
to apply the database migration that renames the Job model to JobProcess
If you have any custom code that directly references the Job
model (different than the Job
base class for job type definitions), update it to use JobProcess
instead
If you have any code that accesses the job_uuid
field on JobResult instances, update it to use job_process_uuid
0.29.0 (2025-09-12)
What's changed
Model managers have been renamed from .objects
to .query
(037a239 )
Manager functionality has been merged into QuerySet classes (bbaee93 )
Models now use Meta.queryset_class
instead of separate manager configuration (6b60a00 )
Upgrade instructions
Update all model queries to use .query
instead of .objects
(e.g., Job.query.all()
becomes Job.query.all()
)
0.28.1 (2025-09-10)
What's changed
Fixed log context method in worker middleware to use include_context
instead of with_context
(755f873 )
Upgrade instructions
0.28.0 (2025-09-09)
What's changed
Improved logging middleware to use context manager pattern for cleaner job context handling (ea7c953 )
Updated minimum Python requirement to 3.13 (d86e307 )
Added explicit nav_icon definitions to admin views to ensure consistent icon display (2aac07d )
Upgrade instructions
0.27.1 (2025-08-27)
What's changed
Jobs are now marked as cancelled when the worker process is killed or fails unexpectedly (e73ca53 )
Upgrade instructions
0.27.0 (2025-08-22)
What's changed
Added support for date and datetime job parameters with proper serialization/deserialization (7bb5ab0911 )
Improved job priority documentation to clarify that higher numbers run first (73271b5bf0 )
Updated admin interface with consolidated navigation icons at the section level (5a6479ac79 )
Enhanced admin views to use cached object properties for better performance (bd0507a72c )
Upgrade instructions
0.26.0 (2025-08-19)
What's changed
Improved CSRF token handling in admin forms by removing manual csrf_input
in favor of automatic Sec-Fetch-Site header validation (955150800c )
Enhanced README documentation with comprehensive examples, table of contents, and detailed sections covering job parameters, scheduling, monitoring, and FAQs (4ebecd1856 )
Updated package description to be more descriptive: "Process background jobs with a database-driven worker" (4ebecd1856 )
Upgrade instructions
0.25.1 (2025-07-23)
What's changed
Added Bootstrap icons to admin interface for worker job views (9e9f8b0 )
Removed the description field from admin views (8d2352d )
Upgrade instructions
0.25.0 (2025-07-22)
What's changed
Removed pk
alias and auto fields in favor of a single automatic id
PrimaryKeyField (4b8fa6a )
Admin interface methods now use target_ids
parameter instead of target_pks
for batch actions
Model instance registry now uses .id
instead of .pk
for Global ID generation
Updated database migrations to use models.PrimaryKeyField()
instead of models.BigAutoField()
Upgrade instructions
0.24.0 (2025-07-18)
What's changed
Added OpenTelemetry tracing support to job processing system (b0224d0 )
Job requests now capture trace context when queued from traced operations
Job execution creates proper consumer spans linked to the original producer trace
Added trace_id
and span_id
fields to JobRequest, Job, and JobResult models for trace correlation
Upgrade instructions
Run plain migrate
to apply new database migration that adds trace context fields to worker tables
0.23.0 (2025-07-18)
What's changed
Migrations have been reset and consolidated into a single initial migration (484f1b6e93 )
Upgrade instructions
Run plain migrate --prune plainworker
to remove old migration records and apply the consolidated migration
0.22.5 (2025-06-24)
What's changed
No functional changes. This release only updates internal documentation (CHANGELOG) and contains no code modifications that impact users (82710c3 , 9a1963d , e1f5dd3 ).
Upgrade instructions