From 2f604551c19ca55b8dfefe14b7673cc456526b80 Mon Sep 17 00:00:00 2001 From: Arthur Hanson Date: Wed, 8 Jul 2026 08:19:05 -0700 Subject: [PATCH] Closes #22571: Migrate from django-pglocks to django-pgware (#22635) --- base_requirements.txt | 7 +++---- netbox/ipam/api/views.py | 2 +- netbox/netbox/jobs.py | 2 +- requirements.txt | 2 +- 4 files changed, 6 insertions(+), 7 deletions(-) diff --git a/base_requirements.txt b/base_requirements.txt index 48b0da061..0e65e3964 100644 --- a/base_requirements.txt +++ b/base_requirements.txt @@ -33,10 +33,9 @@ django-htmx # NetBox core runtime uses netbox.models.ltree.LtreeModel instead. django-mptt -# Context managers for PostgreSQL advisory locks -# https://github.com/Xof/django-pglocks/blob/main/CHANGELOG.md -# django-pglocks has been merged into django-pgware (see #22571) -django-pglocks==1.0.4 +# Context managers for PostgreSQL advisory locks (successor to django-pglocks) +# https://github.com/Xof/django-pgware +django-pgware # Prometheus metrics library for Django # https://github.com/korfuri/django-prometheus/blob/master/CHANGELOG.md diff --git a/netbox/ipam/api/views.py b/netbox/ipam/api/views.py index cdc6786f0..df998c0ad 100644 --- a/netbox/ipam/api/views.py +++ b/netbox/ipam/api/views.py @@ -5,7 +5,7 @@ from django.core.exceptions import ObjectDoesNotExist, PermissionDenied from django.db import router, transaction from django.shortcuts import get_object_or_404 from django.utils.translation import gettext as _ -from django_pglocks import advisory_lock +from django_pg_utils import advisory_lock from drf_spectacular.utils import extend_schema from netaddr import IPSet from rest_framework import status diff --git a/netbox/netbox/jobs.py b/netbox/netbox/jobs.py index 82d540499..67d6b8fc5 100644 --- a/netbox/netbox/jobs.py +++ b/netbox/netbox/jobs.py @@ -15,7 +15,7 @@ from django.http import Http404 from django.utils import timezone from django.utils.functional import classproperty from django.utils.module_loading import import_string -from django_pglocks import advisory_lock +from django_pg_utils import advisory_lock from rest_framework.exceptions import APIException from rq.timeouts import JobTimeoutException diff --git a/requirements.txt b/requirements.txt index b39618cc6..51fa6707f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,7 +6,7 @@ django-filter==25.2 django-graphiql-debug-toolbar==0.2.0 django-htmx==1.27.0 django-mptt==0.18.0 -django-pglocks==1.0.4 +django-pgware==1.0.0 django-prometheus==2.4.0 django-redis==7.0.0 django-rich==2.2.0