dj-queue 0.10.0__tar.gz → 0.10.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {dj_queue-0.10.0 → dj_queue-0.10.1}/PKG-INFO +1 -1
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/config.py +15 -2
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/operations/jobs.py +2 -2
- {dj_queue-0.10.0 → dj_queue-0.10.1}/pyproject.toml +1 -1
- {dj_queue-0.10.0 → dj_queue-0.10.1}/LICENSE +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/README.md +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/__init__.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/admin.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/api.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/apps.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/backend.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/contrib/__init__.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/contrib/asgi.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/contrib/gunicorn.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/contrib/prometheus.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/cron.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/dashboard.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/db.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/exceptions.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/hooks.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/log.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/management/__init__.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/management/commands/__init__.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/management/commands/dj_queue.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/management/commands/dj_queue_health.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/management/commands/dj_queue_prune.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/metrics.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0001_initial.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0002_pause_semaphore.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0003_recurringtask_recurringexecution.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0004_dashboard.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0005_remove_recurringexecution_dj_queue_recurring_executions_task_key_run_at_unique_and_more.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0006_blockedexecution_dj_queue_bl_concurr_2d8393_idx_and_more.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0007_recurringtask_next_run_at.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0008_remove_blockedexecution_dj_queue_bl_concurr_1ce730_idx_and_more.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0009_remove_process_dj_queue_processes_name_supervisor_unique_and_more.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0010_remove_process_djq_pr_name_parent_uniq_and_more.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/__init__.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/models/__init__.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/models/jobs.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/models/recurring.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/models/runtime.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/observability.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/operations/__init__.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/operations/_helpers.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/operations/_insert.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/operations/cleanup.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/operations/concurrency.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/operations/queues.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/operations/recurring.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/queue_selectors.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/queue_state.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/routers.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/__init__.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/base.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/connection_budget.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/dispatcher.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/errors.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/interruptible.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/notify.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/pidfile.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/pool.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/procline.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/scheduler.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/supervisor.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/topology.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/runtime/worker.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/task_results.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_dashboard_process_rows.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_dashboard_recurring_rows.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_dashboard_section_table.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_dashboard_semaphore_rows.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_paginator.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_queue_controls.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_sortable_header_cells.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/change_form.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/change_list.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/dashboard.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/includes/fieldset.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/queue_jobs.html +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templatetags/__init__.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templatetags/dj_queue_admin.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/urls.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/views.py +0 -0
- {dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/wakeup.py +0 -0
|
@@ -166,6 +166,18 @@ def load_backend_config(
|
|
|
166
166
|
return _BACKEND_CONFIG_CACHE[cache_key]
|
|
167
167
|
|
|
168
168
|
|
|
169
|
+
def load_allowed_queues(
|
|
170
|
+
backend_alias: str = "default",
|
|
171
|
+
*,
|
|
172
|
+
tasks_settings: Mapping[str, Any] | None = None,
|
|
173
|
+
) -> tuple[str, ...]:
|
|
174
|
+
if tasks_settings is None:
|
|
175
|
+
tasks_settings = getattr(settings, "TASKS", {})
|
|
176
|
+
ensure_dj_queue_backend_alias(tasks_settings, backend_alias)
|
|
177
|
+
backend_block = _backend_block(tasks_settings, backend_alias)
|
|
178
|
+
return _as_string_tuple(backend_block.get("QUEUES", []))
|
|
179
|
+
|
|
180
|
+
|
|
169
181
|
def _load_backend_config_uncached(
|
|
170
182
|
backend_alias: str,
|
|
171
183
|
cli_overrides: Mapping[str, Any],
|
|
@@ -189,10 +201,11 @@ def _load_backend_config_uncached(
|
|
|
189
201
|
preserve_finished_jobs = _bool_option(
|
|
190
202
|
resolved_options["preserve_finished_jobs"], "preserve_finished_jobs"
|
|
191
203
|
)
|
|
204
|
+
allowed_queues = _as_string_tuple(backend_block.get("QUEUES", []))
|
|
192
205
|
on_thread_error = _validated_callback_path(resolved_options.get("on_thread_error"))
|
|
193
206
|
recurring = _build_recurring_config(
|
|
194
207
|
resolved_options.get("recurring", {}),
|
|
195
|
-
allowed_queues=
|
|
208
|
+
allowed_queues=allowed_queues,
|
|
196
209
|
backend_alias=backend_alias,
|
|
197
210
|
)
|
|
198
211
|
scheduler = _build_scheduler_config(resolved_options.get("scheduler", DEFAULT_SCHEDULER))
|
|
@@ -222,7 +235,7 @@ def _load_backend_config_uncached(
|
|
|
222
235
|
|
|
223
236
|
return BackendConfig(
|
|
224
237
|
backend_alias=backend_alias,
|
|
225
|
-
allowed_queues=
|
|
238
|
+
allowed_queues=allowed_queues,
|
|
226
239
|
mode=mode,
|
|
227
240
|
workers=workers,
|
|
228
241
|
dispatchers=dispatchers,
|
|
@@ -14,7 +14,7 @@ from django.tasks import TaskContext
|
|
|
14
14
|
from django.utils import timezone
|
|
15
15
|
from django.utils.module_loading import import_string
|
|
16
16
|
|
|
17
|
-
from dj_queue.config import load_backend_config
|
|
17
|
+
from dj_queue.config import load_allowed_queues, load_backend_config
|
|
18
18
|
from dj_queue.db import get_database_alias, locked_queryset
|
|
19
19
|
from dj_queue.exceptions import EnqueueError
|
|
20
20
|
from dj_queue.log import event_logging_enabled, log_event
|
|
@@ -1006,7 +1006,7 @@ def _semaphore_limit(job):
|
|
|
1006
1006
|
|
|
1007
1007
|
|
|
1008
1008
|
def validate_queue_allowed(queue_name, *, backend_alias="default"):
|
|
1009
|
-
allowed_queues =
|
|
1009
|
+
allowed_queues = load_allowed_queues(backend_alias)
|
|
1010
1010
|
if allowed_queues and queue_name not in allowed_queues:
|
|
1011
1011
|
raise EnqueueError(f"queue {queue_name!r} is not allowed for backend {backend_alias!r}")
|
|
1012
1012
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/migrations/0003_recurringtask_recurringexecution.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_dashboard_process_rows.html
RENAMED
|
File without changes
|
{dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_dashboard_recurring_rows.html
RENAMED
|
File without changes
|
{dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_dashboard_section_table.html
RENAMED
|
File without changes
|
{dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_dashboard_semaphore_rows.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/_sortable_header_cells.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dj_queue-0.10.0 → dj_queue-0.10.1}/dj_queue/templates/admin/dj_queue/includes/fieldset.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|