aboutsummaryrefslogtreecommitdiff
path: root/net-mgmt/netbox
diff options
context:
space:
mode:
authorKai Knoblich <kai@FreeBSD.org>2023-09-10 12:49:24 +0000
committerKai Knoblich <kai@FreeBSD.org>2023-09-10 13:15:32 +0000
commitbbe8e56f6856f531284f73bf0b30eb52d19e2a39 (patch)
tree5637d9fca50161429554fee6e1930292c4f1b549 /net-mgmt/netbox
parent178f4991ec22c5c9164d973f091ef067ca28bcb6 (diff)
downloadports-bbe8e56f6856f531284f73bf0b30eb52d19e2a39.tar.gz
ports-bbe8e56f6856f531284f73bf0b30eb52d19e2a39.zip
Diffstat (limited to 'net-mgmt/netbox')
-rw-r--r--net-mgmt/netbox/Makefile74
-rw-r--r--net-mgmt/netbox/distinfo6
-rw-r--r--net-mgmt/netbox/files/pkg-message.in43
-rw-r--r--net-mgmt/netbox/pkg-plist89
4 files changed, 154 insertions, 58 deletions
diff --git a/net-mgmt/netbox/Makefile b/net-mgmt/netbox/Makefile
index 2ae70dded438..c00cb1525012 100644
--- a/net-mgmt/netbox/Makefile
+++ b/net-mgmt/netbox/Makefile
@@ -1,7 +1,6 @@
PORTNAME= netbox
DISTVERSIONPREFIX= v
-DISTVERSION= 3.5.9
-PORTREVISION= 1
+DISTVERSION= 3.6.1
CATEGORIES= net-mgmt python
MAINTAINER= kai@FreeBSD.org
@@ -19,52 +18,49 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
# Django packages that are known for regressions in conjunction with NetBox and
# should therefore only be updated with caution.
#
-# - devel/py-dj41-django-rq
-# - www/py-dj41-django-filter
-# - www/py-dj41-django-tables2
-# - www/py-dj41-djangorestframework
+# - devel/py-dj42-django-rq
+# - www/py-dj42-django-filter
+# - www/py-dj42-django-tables2
+# - www/py-dj42-djangorestframework
#
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django41>=4.1.10<4.2:www/py-django41@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-cors-headers>=4.2.0<5:www/py-dj41-django-cors-headers@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-debug-toolbar>=4.1.0<5:www/py-dj41-django-debug-toolbar@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-filter>=23.2<24:www/py-dj41-django-filter@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-graphiql-debug-toolbar>=0.2.0<1:www/py-dj41-django-graphiql-debug-toolbar@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-mptt>=0.14.0<0.15:www/py-dj41-django-mptt@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-prometheus>=2.3.1<2.4:www/py-dj41-django-prometheus@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-redis>=5.3.0<6:www/py-dj41-django-redis@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-rich>=1.7.0<2:www/py-dj41-django-rich@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-rq>=2.8.1<2.9:devel/py-dj41-django-rq@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-tables2>=2.6<2.7:www/py-dj41-django-tables2@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-taggit>=4.0.0<5:www/py-dj41-django-taggit@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-django-timezone-field>=5.1<6:www/py-dj41-django-timezone-field@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-djangorestframework>=3.14.0<3.15.0:www/py-dj41-djangorestframework@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-drf-spectacular>=0.26.4<1:www/py-dj41-drf-spectacular@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-drf-spectacular-sidecar>=2023.8.1:www/py-dj41-drf-spectacular-sidecar@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj41-graphene-django>=3.0.0,1<3.0.0_99,1:devel/py-dj41-graphene-django@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=4.2.5<4.3:www/py-django42@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-cors-headers>=4.2.0<5:www/py-dj42-django-cors-headers@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-debug-toolbar>=4.2.0<5:www/py-dj42-django-debug-toolbar@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-filter>=23.2<24:www/py-dj42-django-filter@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-graphiql-debug-toolbar>=0.2.0<1:www/py-dj42-django-graphiql-debug-toolbar@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-mptt>=0.14.0<0.15:www/py-dj42-django-mptt@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-prometheus>=2.3.1<2.4:www/py-dj42-django-prometheus@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-redis>=5.3.0<6:www/py-dj42-django-redis@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-rich>=1.7.0<2:www/py-dj42-django-rich@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-rq>=2.8.1<2.9:devel/py-dj42-django-rq@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-tables2>=2.6<2.7:www/py-dj42-django-tables2@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-taggit>=4.0.0<5:www/py-dj42-django-taggit@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-django-timezone-field>=6.0<7:www/py-dj42-django-timezone-field@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-djangorestframework>=3.14.0<3.15.0:www/py-dj42-djangorestframework@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-drf-spectacular>=0.26.4<1:www/py-dj42-drf-spectacular@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-drf-spectacular-sidecar>=2023.9.1:www/py-dj42-drf-spectacular-sidecar@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj42-graphene-django>=3.0.0<3.0.0_99:devel/py-dj42-graphene-django@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}django-pglocks>=1.0.4<1.1:www/py-django-pglocks@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}bleach>=5.0.1<7:www/py-bleach@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}boto3>=1.26.145<2:www/py-boto3@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dulwich>=0.21.2<1:devel/py-dulwich@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}bleach>=6.0.0<7:www/py-bleach@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}feedparser>=6.0.8<7:textproc/py-feedparser@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>=3.1.2<4:devel/py-Jinja2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}markdown>=3.3.7<3.4:textproc/py-markdown@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}markdown-include>=0.7.0<1:textproc/py-markdown-include@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}mkdocs-material>=9.1.21<10:textproc/py-mkdocs-material@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}mkdocstrings>=0.22.0<1:textproc/py-mkdocstrings@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mkdocs-material>=9.2.7<10:textproc/py-mkdocs-material@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mkdocstrings>=0.23.0<1:textproc/py-mkdocstrings@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mkdocstrings-python-legacy>0:textproc/py-mkdocstrings-python-legacy@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}netaddr>=0.8.0<1:net/py-netaddr@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}pillow>=9.5.0:graphics/py-pillow@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}psycopg2>=2.9.6<3:databases/py-psycopg2@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pillow>=10.0.0:graphics/py-pillow@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}psycopg>=3.1.10<4:databases/py-psycopg@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sentry-sdk>=1.21.1<2:devel/py-sentry-sdk@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}social-auth-app-django>=5.2.0<6:www/py-social-auth-app-django@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}social-auth-app-django>=5.3.0<6:www/py-social-auth-app-django@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}social-auth-core>=4.4.2<5:security/py-social-auth-core@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}svgwrite>=1.4.3<2:graphics/py-svgwrite@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tablib>=3.5.0<4:textproc/py-tablib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tzdata>=2023.3:devel/py-tzdata@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}yaml>=6.0<7:devel/py-yaml@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}gunicorn>=20.1.0<22:www/py-gunicorn@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}gunicorn>=21.2.0<22:www/py-gunicorn@${PY_FLAVOR}
-USES= cpe pgsql:11+ python
+USES= cpe pgsql:12+ python
CPE_VENDOR= netbox_project
USE_GITHUB= yes
GH_ACCOUNT= netbox-community
@@ -75,6 +71,16 @@ NO_BUILD= yes
NO_ARCH= yes
OPTIONS_DEFINE= EXAMPLES
+OPTIONS_GROUP= BACKENDS
+OPTIONS_GROUP_BACKENDS= GIT LDAP S3
+
+GIT_DESC= Git backend support
+LDAP_DESC= LDAP backend support
+S3_DESC= Amazon S3 backend support
+
+GIT_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dulwich>0:devel/py-dulwich@${PY_FLAVOR}
+LDAP_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj42-django-auth-ldap>0:www/py-dj42-django-auth-ldap
+S3_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}boto3>0:www/py-boto3@${PY_FLAVOR}
do-install:
cd ${WRKSRC}/netbox ; \
diff --git a/net-mgmt/netbox/distinfo b/net-mgmt/netbox/distinfo
index 4cbba28d3f38..717de0ec4401 100644
--- a/net-mgmt/netbox/distinfo
+++ b/net-mgmt/netbox/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1693289458
-SHA256 (netbox-community-netbox-v3.5.9_GH0.tar.gz) = 98d9dd0dd7e44bc1ce95bc7758eb2c624a444f92516d63f6800bd897ba09a793
-SIZE (netbox-community-netbox-v3.5.9_GH0.tar.gz) = 5790742
+TIMESTAMP = 1694248193
+SHA256 (netbox-community-netbox-v3.6.1_GH0.tar.gz) = 7614307e8257a8f53f6c001470e123e74b816cba0031c80b5b01c2d13ab051be
+SIZE (netbox-community-netbox-v3.6.1_GH0.tar.gz) = 7267993
diff --git a/net-mgmt/netbox/files/pkg-message.in b/net-mgmt/netbox/files/pkg-message.in
index 2ae5d8a55343..21ef608f2c4e 100644
--- a/net-mgmt/netbox/files/pkg-message.in
+++ b/net-mgmt/netbox/files/pkg-message.in
@@ -392,4 +392,47 @@ been adjusted accordingly. This also includes a fix for the default path of
the configuration if the rc variable "netbox_config" is not set.
EOD
}
+{ type: upgrade
+ maximum_version: 3.6.1
+ message: <<EOD
+1. The NetBox 3.6 release contains some breaking changes, so the following
+ items should be checked before upgrading:
+
+ * PostgreSQL 11 is no longer supported (dropped in Django 4.2). NetBox v3.6
+ requires PostgreSQL 12 or later.
+
+ * The "device_role" field on the Device model has been renamed to "role".
+ The "device_role" field has been temporarily retained on the REST API
+ serializer for devices for backward compatibility, but is read-only.
+
+ * The "choices" array field has been removed from the CustomField model.
+ Any defined choices are automatically migrated to CustomFieldChoiceSets,
+ accessible via the new "choice_set" field on the CustomField model.
+
+ * The "napalm_driver" and "napalm_args" fields (which were deprecated in v3.5)
+ have been removed from the Platform model.
+
+ * The "device" and "device_id" filter for interfaces will no longer include
+ interfaces from virtual chassis peers. Two new filters,
+ "virtual_chassis_member" and "virtual_chassis_member_id", have been
+ introduced to match all interfaces belonging to the specified device's
+ virtual chassis (if any).
+
+ * Reports and scripts are now returned within a "results" list when fetched via
+ the REST API, consistent with other models.
+
+ * Superusers can no longer retrieve API token keys via the web UI if
+ ALLOW_TOKEN_RETRIEVAL is disabled. (The admin view has been removed
+ per #13044.)
+
+2. The following dependencies are now optional and have therefore been moved to
+ corresponding options. An exception is the LDAP option, which has been added
+ for the sake of completeness, because this backend has been around for a
+ good while:
+
+ * devel/py-dulwich -> non-default GIT option
+ * www/py-dj42-django-auth-ldap -> non-default LDAP option
+ * www/py-boto3 -> non-default S3 option
+EOD
+}
]
diff --git a/net-mgmt/netbox/pkg-plist b/net-mgmt/netbox/pkg-plist
index 0e0ece6cbd2b..2854ce44bff3 100644
--- a/net-mgmt/netbox/pkg-plist
+++ b/net-mgmt/netbox/pkg-plist
@@ -4,6 +4,13 @@
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/netbox_rq.sample
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/netboxrc.sample
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/nginx.conf
+%%DATADIR%%/account/__init__.py
+%%DATADIR%%/account/migrations/0001_initial.py
+%%DATADIR%%/account/migrations/__init__.py
+%%DATADIR%%/account/models.py
+%%DATADIR%%/account/tables.py
+%%DATADIR%%/account/urls.py
+%%DATADIR%%/account/views.py
%%DATADIR%%/circuits/__init__.py
%%DATADIR%%/circuits/api/__init__.py
%%DATADIR%%/circuits/api/nested_serializers.py
@@ -78,7 +85,6 @@
%%DATADIR%%/core/management/commands/__init__.py
%%DATADIR%%/core/management/commands/clearcache.py
%%DATADIR%%/core/management/commands/makemigrations.py
-%%DATADIR%%/core/management/commands/migrate.py
%%DATADIR%%/core/management/commands/nbshell.py
%%DATADIR%%/core/management/commands/rqworker.py
%%DATADIR%%/core/management/commands/syncdatasource.py
@@ -181,6 +187,16 @@
%%DATADIR%%/dcim/migrations/0170_configtemplate.py
%%DATADIR%%/dcim/migrations/0171_cabletermination_change_logging.py
%%DATADIR%%/dcim/migrations/0172_larger_power_draw_values.py
+%%DATADIR%%/dcim/migrations/0173_remove_napalm_fields.py
+%%DATADIR%%/dcim/migrations/0174_device_latitude_device_longitude.py
+%%DATADIR%%/dcim/migrations/0174_rack_starting_unit.py
+%%DATADIR%%/dcim/migrations/0175_device_oob_ip.py
+%%DATADIR%%/dcim/migrations/0176_device_component_counters.py
+%%DATADIR%%/dcim/migrations/0177_devicetype_component_counters.py
+%%DATADIR%%/dcim/migrations/0178_virtual_chassis_member_counter.py
+%%DATADIR%%/dcim/migrations/0179_interfacetemplate_rf_role.py
+%%DATADIR%%/dcim/migrations/0180_powerfeed_tenant.py
+%%DATADIR%%/dcim/migrations/0181_rename_device_role_device_role.py
%%DATADIR%%/dcim/migrations/__init__.py
%%DATADIR%%/dcim/models/__init__.py
%%DATADIR%%/dcim/models/cables.py
@@ -250,6 +266,7 @@
%%DATADIR%%/docs/development/getting-started.md
%%DATADIR%%/docs/development/git-cheat-sheet.md
%%DATADIR%%/docs/development/index.md
+%%DATADIR%%/docs/development/internationalization.md
%%DATADIR%%/docs/development/models.md
%%DATADIR%%/docs/development/release-checklist.md
%%DATADIR%%/docs/development/search.md
@@ -296,7 +313,6 @@
%%DATADIR%%/docs/integrations/synchronized-data.md
%%DATADIR%%/docs/integrations/webhooks.md
%%DATADIR%%/docs/introduction.md
-%%DATADIR%%/docs/media/admin_ui_grant_permission.png
%%DATADIR%%/docs/media/admin_ui_run_permission.png
%%DATADIR%%/docs/media/authentication/azure_ad_add_app_registration.png
%%DATADIR%%/docs/media/authentication/azure_ad_add_client_secret.png
@@ -374,10 +390,12 @@
%%DATADIR%%/docs/models/dcim/sitegroup.md
%%DATADIR%%/docs/models/dcim/virtualchassis.md
%%DATADIR%%/docs/models/dcim/virtualdevicecontext.md
+%%DATADIR%%/docs/models/extras/bookmark.md
%%DATADIR%%/docs/models/extras/branch.md
%%DATADIR%%/docs/models/extras/configcontext.md
%%DATADIR%%/docs/models/extras/configtemplate.md
%%DATADIR%%/docs/models/extras/customfield.md
+%%DATADIR%%/docs/models/extras/customfieldchoiceset.md
%%DATADIR%%/docs/models/extras/customlink.md
%%DATADIR%%/docs/models/extras/exporttemplate.md
%%DATADIR%%/docs/models/extras/imageattachment.md
@@ -457,6 +475,7 @@
%%DATADIR%%/docs/release-notes/version-3.3.md
%%DATADIR%%/docs/release-notes/version-3.4.md
%%DATADIR%%/docs/release-notes/version-3.5.md
+%%DATADIR%%/docs/release-notes/version-3.6.md
%%DATADIR%%/extras/__init__.py
%%DATADIR%%/extras/admin.py
%%DATADIR%%/extras/api/__init__.py
@@ -475,13 +494,16 @@
%%DATADIR%%/extras/dashboard/forms.py
%%DATADIR%%/extras/dashboard/utils.py
%%DATADIR%%/extras/dashboard/widgets.py
+%%DATADIR%%/extras/data/__init__.py
+%%DATADIR%%/extras/data/iata.py
+%%DATADIR%%/extras/data/iso_3166.py
+%%DATADIR%%/extras/data/un_locode.py
%%DATADIR%%/extras/fields.py
%%DATADIR%%/extras/filters.py
%%DATADIR%%/extras/filtersets.py
%%DATADIR%%/extras/forms/__init__.py
%%DATADIR%%/extras/forms/bulk_edit.py
%%DATADIR%%/extras/forms/bulk_import.py
-%%DATADIR%%/extras/forms/config.py
%%DATADIR%%/extras/forms/filtersets.py
%%DATADIR%%/extras/forms/misc.py
%%DATADIR%%/extras/forms/mixins.py
@@ -536,6 +558,12 @@
%%DATADIR%%/extras/migrations/0090_objectchange_index_request_id.py
%%DATADIR%%/extras/migrations/0091_create_managedfiles.py
%%DATADIR%%/extras/migrations/0092_delete_jobresult.py
+%%DATADIR%%/extras/migrations/0093_configrevision_ordering.py
+%%DATADIR%%/extras/migrations/0094_tag_object_types.py
+%%DATADIR%%/extras/migrations/0095_bookmarks.py
+%%DATADIR%%/extras/migrations/0096_customfieldchoiceset.py
+%%DATADIR%%/extras/migrations/0097_customfield_remove_choices.py
+%%DATADIR%%/extras/migrations/0098_webhook_custom_field_data_webhook_tags.py
%%DATADIR%%/extras/migrations/__init__.py
%%DATADIR%%/extras/models/__init__.py
%%DATADIR%%/extras/models/change_logging.py
@@ -657,6 +685,7 @@
%%DATADIR%%/ipam/migrations/0064_clear_search_cache.py
%%DATADIR%%/ipam/migrations/0065_asnrange.py
%%DATADIR%%/ipam/migrations/0066_iprange_mark_utilized.py
+%%DATADIR%%/ipam/migrations/0067_ipaddress_index_host.py
%%DATADIR%%/ipam/migrations/__init__.py
%%DATADIR%%/ipam/models/__init__.py
%%DATADIR%%/ipam/models/asns.py
@@ -876,7 +905,13 @@
%%DATADIR%%/templates/403.html
%%DATADIR%%/templates/404.html
%%DATADIR%%/templates/500.html
-%%DATADIR%%/templates/admin/extras/configrevision/restore.html
+%%DATADIR%%/templates/account/base.html
+%%DATADIR%%/templates/account/bookmarks.html
+%%DATADIR%%/templates/account/password.html
+%%DATADIR%%/templates/account/preferences.html
+%%DATADIR%%/templates/account/profile.html
+%%DATADIR%%/templates/account/token.html
+%%DATADIR%%/templates/account/token_list.html
%%DATADIR%%/templates/admin/index.html
%%DATADIR%%/templates/base/40x.html
%%DATADIR%%/templates/base/base.html
@@ -899,11 +934,10 @@
%%DATADIR%%/templates/dcim/cable_edit.html
%%DATADIR%%/templates/dcim/cable_trace.html
%%DATADIR%%/templates/dcim/component_create.html
+%%DATADIR%%/templates/dcim/component_list.html
%%DATADIR%%/templates/dcim/connections_list.html
%%DATADIR%%/templates/dcim/consoleport.html
-%%DATADIR%%/templates/dcim/consoleport_delete.html
%%DATADIR%%/templates/dcim/consoleserverport.html
-%%DATADIR%%/templates/dcim/consoleserverport_delete.html
%%DATADIR%%/templates/dcim/device.html
%%DATADIR%%/templates/dcim/device/base.html
%%DATADIR%%/templates/dcim/device/components_base.html
@@ -938,10 +972,8 @@
%%DATADIR%%/templates/dcim/inc/panels/inventory_items.html
%%DATADIR%%/templates/dcim/inc/rack_elevation.html
%%DATADIR%%/templates/dcim/interface.html
-%%DATADIR%%/templates/dcim/interface_delete.html
%%DATADIR%%/templates/dcim/inventoryitem.html
%%DATADIR%%/templates/dcim/inventoryitem_bulk_delete.html
-%%DATADIR%%/templates/dcim/inventoryitem_delete.html
%%DATADIR%%/templates/dcim/inventoryitem_edit.html
%%DATADIR%%/templates/dcim/inventoryitemrole.html
%%DATADIR%%/templates/dcim/location.html
@@ -954,10 +986,8 @@
%%DATADIR%%/templates/dcim/platform.html
%%DATADIR%%/templates/dcim/powerfeed.html
%%DATADIR%%/templates/dcim/poweroutlet.html
-%%DATADIR%%/templates/dcim/poweroutlet_delete.html
%%DATADIR%%/templates/dcim/powerpanel.html
%%DATADIR%%/templates/dcim/powerport.html
-%%DATADIR%%/templates/dcim/powerport_delete.html
%%DATADIR%%/templates/dcim/rack.html
%%DATADIR%%/templates/dcim/rack/base.html
%%DATADIR%%/templates/dcim/rack/non_racked_devices.html
@@ -990,14 +1020,18 @@
%%DATADIR%%/templates/extras/admin/plugins_list.html
%%DATADIR%%/templates/extras/configcontext.html
%%DATADIR%%/templates/extras/configcontext_list.html
+%%DATADIR%%/templates/extras/configrevision.html
+%%DATADIR%%/templates/extras/configrevision_restore.html
%%DATADIR%%/templates/extras/configtemplate.html
%%DATADIR%%/templates/extras/configtemplate_list.html
%%DATADIR%%/templates/extras/customfield.html
+%%DATADIR%%/templates/extras/customfieldchoiceset.html
%%DATADIR%%/templates/extras/customlink.html
%%DATADIR%%/templates/extras/dashboard/reset.html
%%DATADIR%%/templates/extras/dashboard/widget.html
%%DATADIR%%/templates/extras/dashboard/widget_add.html
%%DATADIR%%/templates/extras/dashboard/widget_config.html
+%%DATADIR%%/templates/extras/dashboard/widgets/bookmarks.html
%%DATADIR%%/templates/extras/dashboard/widgets/objectcounts.html
%%DATADIR%%/templates/extras/dashboard/widgets/objectlist.html
%%DATADIR%%/templates/extras/dashboard/widgets/rssfeed.html
@@ -1121,12 +1155,10 @@
%%DATADIR%%/templates/tenancy/object_contacts.html
%%DATADIR%%/templates/tenancy/tenant.html
%%DATADIR%%/templates/tenancy/tenantgroup.html
-%%DATADIR%%/templates/users/api_token.html
-%%DATADIR%%/templates/users/api_tokens.html
-%%DATADIR%%/templates/users/base.html
-%%DATADIR%%/templates/users/password.html
-%%DATADIR%%/templates/users/preferences.html
-%%DATADIR%%/templates/users/profile.html
+%%DATADIR%%/templates/users/group.html
+%%DATADIR%%/templates/users/objectpermission.html
+%%DATADIR%%/templates/users/token.html
+%%DATADIR%%/templates/users/user.html
%%DATADIR%%/templates/virtualization/cluster.html
%%DATADIR%%/templates/virtualization/cluster/base.html
%%DATADIR%%/templates/virtualization/cluster/devices.html
@@ -1136,6 +1168,7 @@
%%DATADIR%%/templates/virtualization/virtualmachine.html
%%DATADIR%%/templates/virtualization/virtualmachine/base.html
%%DATADIR%%/templates/virtualization/virtualmachine/interfaces.html
+%%DATADIR%%/templates/virtualization/virtualmachine/render_config.html
%%DATADIR%%/templates/virtualization/virtualmachine_list.html
%%DATADIR%%/templates/virtualization/vminterface.html
%%DATADIR%%/templates/wireless/inc/authentication_attrs.html
@@ -1171,6 +1204,7 @@
%%DATADIR%%/tenancy/migrations/0008_unique_constraints.py
%%DATADIR%%/tenancy/migrations/0009_standardize_description_comments.py
%%DATADIR%%/tenancy/migrations/0010_tenant_relax_uniqueness.py
+%%DATADIR%%/tenancy/migrations/0011_contactassignment_tags.py
%%DATADIR%%/tenancy/migrations/__init__.py
%%DATADIR%%/tenancy/models/__init__.py
%%DATADIR%%/tenancy/models/contacts.py
@@ -1187,10 +1221,7 @@
%%DATADIR%%/tenancy/urls.py
%%DATADIR%%/tenancy/views.py
%%DATADIR%%/users/__init__.py
-%%DATADIR%%/users/admin/__init__.py
-%%DATADIR%%/users/admin/filters.py
-%%DATADIR%%/users/admin/forms.py
-%%DATADIR%%/users/admin/inlines.py
+%%DATADIR%%/users/admin.py
%%DATADIR%%/users/api/__init__.py
%%DATADIR%%/users/api/nested_serializers.py
%%DATADIR%%/users/api/serializers.py
@@ -1199,13 +1230,19 @@
%%DATADIR%%/users/apps.py
%%DATADIR%%/users/constants.py
%%DATADIR%%/users/filtersets.py
-%%DATADIR%%/users/forms.py
+%%DATADIR%%/users/forms/__init__.py
+%%DATADIR%%/users/forms/authentication.py
+%%DATADIR%%/users/forms/bulk_edit.py
+%%DATADIR%%/users/forms/bulk_import.py
+%%DATADIR%%/users/forms/filtersets.py
+%%DATADIR%%/users/forms/model_forms.py
%%DATADIR%%/users/graphql/__init__.py
%%DATADIR%%/users/graphql/schema.py
%%DATADIR%%/users/graphql/types.py
%%DATADIR%%/users/migrations/0001_squashed_0011.py
%%DATADIR%%/users/migrations/0002_standardize_id_fields.py
%%DATADIR%%/users/migrations/0003_token_allowed_ips_last_used.py
+%%DATADIR%%/users/migrations/0004_netboxgroup_netboxuser.py
%%DATADIR%%/users/migrations/__init__.py
%%DATADIR%%/users/models.py
%%DATADIR%%/users/preferences.py
@@ -1216,6 +1253,7 @@
%%DATADIR%%/users/tests/test_filtersets.py
%%DATADIR%%/users/tests/test_models.py
%%DATADIR%%/users/tests/test_preferences.py
+%%DATADIR%%/users/tests/test_views.py
%%DATADIR%%/users/urls.py
%%DATADIR%%/users/utils.py
%%DATADIR%%/users/views.py
@@ -1223,6 +1261,7 @@
%%DATADIR%%/utilities/api.py
%%DATADIR%%/utilities/choices.py
%%DATADIR%%/utilities/constants.py
+%%DATADIR%%/utilities/counters.py
%%DATADIR%%/utilities/error_handlers.py
%%DATADIR%%/utilities/exceptions.py
%%DATADIR%%/utilities/fields.py
@@ -1250,6 +1289,9 @@
%%DATADIR%%/utilities/htmx.py
%%DATADIR%%/utilities/jinja2.py
%%DATADIR%%/utilities/json.py
+%%DATADIR%%/utilities/management/__init__.py
+%%DATADIR%%/utilities/management/commands/__init__.py
+%%DATADIR%%/utilities/management/commands/calculate_cached_counts.py
%%DATADIR%%/utilities/markdown.py
%%DATADIR%%/utilities/migration.py
%%DATADIR%%/utilities/mptt.py
@@ -1269,6 +1311,7 @@
%%DATADIR%%/utilities/templates/builtins/htmx_table.html
%%DATADIR%%/utilities/templates/builtins/tag.html
%%DATADIR%%/utilities/templates/buttons/add.html
+%%DATADIR%%/utilities/templates/buttons/bookmark.html
%%DATADIR%%/utilities/templates/buttons/bulk_delete.html
%%DATADIR%%/utilities/templates/buttons/bulk_edit.html
%%DATADIR%%/utilities/templates/buttons/clone.html
@@ -1313,11 +1356,13 @@
%%DATADIR%%/utilities/tests/__init__.py
%%DATADIR%%/utilities/tests/test_api.py
%%DATADIR%%/utilities/tests/test_choices.py
+%%DATADIR%%/utilities/tests/test_counters.py
%%DATADIR%%/utilities/tests/test_filters.py
%%DATADIR%%/utilities/tests/test_forms.py
%%DATADIR%%/utilities/tests/test_managers.py
%%DATADIR%%/utilities/tests/test_ordering.py
%%DATADIR%%/utilities/tests/test_utils.py
+%%DATADIR%%/utilities/tracking.py
%%DATADIR%%/utilities/urls.py
%%DATADIR%%/utilities/utils.py
%%DATADIR%%/utilities/validators.py
@@ -1354,6 +1399,8 @@
%%DATADIR%%/virtualization/migrations/0032_virtualmachine_update_sites.py
%%DATADIR%%/virtualization/migrations/0033_unique_constraints.py
%%DATADIR%%/virtualization/migrations/0034_standardize_description_comments.py
+%%DATADIR%%/virtualization/migrations/0035_virtualmachine_interface_count.py
+%%DATADIR%%/virtualization/migrations/0036_virtualmachine_config_template.py
%%DATADIR%%/virtualization/migrations/__init__.py
%%DATADIR%%/virtualization/models/__init__.py
%%DATADIR%%/virtualization/models/clusters.py