summaryrefslogtreecommitdiff
path: root/net-mgmt/netbox
diff options
context:
space:
mode:
Diffstat (limited to 'net-mgmt/netbox')
-rw-r--r--net-mgmt/netbox/Makefile68
-rw-r--r--net-mgmt/netbox/distinfo6
-rw-r--r--net-mgmt/netbox/files/pkg-message.in32
-rw-r--r--net-mgmt/netbox/pkg-plist74
4 files changed, 138 insertions, 42 deletions
diff --git a/net-mgmt/netbox/Makefile b/net-mgmt/netbox/Makefile
index 76693de8e122..32470a4ad12b 100644
--- a/net-mgmt/netbox/Makefile
+++ b/net-mgmt/netbox/Makefile
@@ -1,6 +1,6 @@
PORTNAME= netbox
DISTVERSIONPREFIX= v
-DISTVERSION= 4.2.9
+DISTVERSION= 4.3.2
CATEGORIES= net-mgmt python
MAINTAINER= kai@FreeBSD.org
@@ -18,53 +18,55 @@ 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-dj51-django-rq
-# - www/py-dj51-django-filter
-# - www/py-dj51-django-tables2
-# - www/py-dj51-djangorestframework
+# - devel/py-dj52-django-rq
+# - www/py-dj52-django-filter
+# - www/py-dj52-django-tables2
+# - www/py-dj52-djangorestframework
#
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django51>=5.1.8<5.2:www/py-django51@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-cors-headers>=4.7.0<5:www/py-dj51-django-cors-headers@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-debug-toolbar>=5.1.0<6:www/py-dj51-django-debug-toolbar@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-filter>=25.1<26:www/py-dj51-django-filter@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-htmx>=1.23.0<2:www/py-dj51-django-htmx@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-mptt>=0.17.0<0.18:www/py-dj51-django-mptt@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-prometheus>=2.3.1<2.4:www/py-dj51-django-prometheus@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-redis>=5.4.0<6:www/py-dj51-django-redis@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-rich>=1.14.0<2:www/py-dj51-django-rich@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-rq>=3.0<3.1:devel/py-dj51-django-rq@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-tables2>=2.7.5<2.8:www/py-dj51-django-tables2@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-taggit>=6.1.0<7:www/py-dj51-django-taggit@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-django-timezone-field>=7.1<8:www/py-dj51-django-timezone-field@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-djangorestframework>=3.16.0<3.17.0:www/py-dj51-djangorestframework@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-drf-spectacular>=0.28.0<1:www/py-dj51-drf-spectacular@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-drf-spectacular-sidecar>=2025.4.1:www/py-dj51-drf-spectacular-sidecar@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-social-auth-app-django>=5.4.3<6:www/py-dj51-social-auth-app-django@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-strawberry-graphql>=0.266.0<0.300:devel/py-dj51-strawberry-graphql@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj51-strawberry-graphql-django>=0.58.0<1:www/py-dj51-strawberry-graphql-django@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=5.2.2<5.3:www/py-django52@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-cors-headers>=4.7.0<5:www/py-dj52-django-cors-headers@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-debug-toolbar>=5.2.0<6:www/py-dj52-django-debug-toolbar@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-filter>=25.1<26:www/py-dj52-django-filter@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-htmx>=1.23.0<2:www/py-dj52-django-htmx@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-mptt>=0.17.0<0.18:www/py-dj52-django-mptt@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-prometheus>=2.3.1<2.4:www/py-dj52-django-prometheus@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-redis>=5.4.0<6:www/py-dj52-django-redis@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-rich>=2.0.0<3:www/py-dj52-django-rich@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-rq>=3.0.1<3.1:devel/py-dj52-django-rq@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-storages>=1.14.6<2:www/py-dj52-django-storages@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-tables2>=2.7.5<2.8:www/py-dj52-django-tables2@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-taggit>=6.1.0<7:www/py-dj52-django-taggit@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-django-timezone-field>=7.1<8:www/py-dj52-django-timezone-field@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-djangorestframework>=3.16.0<3.17.0:www/py-dj52-djangorestframework@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-drf-spectacular>=0.28.0<1:www/py-dj52-drf-spectacular@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-drf-spectacular-sidecar>=2025.6.1:www/py-dj52-drf-spectacular-sidecar@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-social-auth-app-django>=5.4.3<6:www/py-dj52-social-auth-app-django@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-strawberry-graphql>=0.271.0<0.300:devel/py-dj52-strawberry-graphql@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj52-strawberry-graphql-django>=0.60.0<1:www/py-dj52-strawberry-graphql-django@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}django-pglocks>=1.0.4<1.1:www/py-django-pglocks@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}feedparser>=6.0.11<7:textproc/py-feedparser@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>=3.1.6<4:devel/py-Jinja2@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}markdown>=3.6<3.9:textproc/py-markdown@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}mkdocs-material>=9.6.12<10:textproc/py-mkdocs-material@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}jsonschema>=4.24.0<5:devel/py-jsonschema@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}markdown>=3.8<3.9:textproc/py-markdown@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mkdocs-material>=9.6.14<10:textproc/py-mkdocs-material@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mkdocstrings>=0.29.1<1:textproc/py-mkdocstrings@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mkdocstrings-python>0:textproc/py-mkdocstrings-python@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}netaddr>=1.3.0<2:net/py-netaddr@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}nh3>=0.2.21<0.3:www/py-nh3@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}pillow>=11.0.0:graphics/py-pillow@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}psycopg>=3.1.20<4:databases/py-psycopg@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}psycopg-c>=3.1.20<4:databases/py-psycopg-c@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pillow>=11.2.1:graphics/py-pillow@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}psycopg>=3.2.9<4:databases/py-psycopg@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}psycopg-c>=3.2.9<4:databases/py-psycopg-c@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}psycopg-pool>=3.2.6<4:databases/py-psycopg-pool@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.32.3<3:www/py-requests@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}rq>=2.3.2<3:devel/py-rq@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}social-auth-core>=4.5.4<5:security/py-social-auth-core@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}rq>=2.3.3<3:devel/py-rq@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}social-auth-core>=4.6.1<5:security/py-social-auth-core@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}svgwrite>=1.4.3<2:graphics/py-svgwrite@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tablib>=3.8.0<4:textproc/py-tablib@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}tzdata>=2025.2:devel/py-tzdata@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyyaml>=6.0.1<7:devel/py-pyyaml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}gunicorn>=23.0.0<24:www/py-gunicorn@${PY_FLAVOR}
-USES= cpe pgsql python:3.10+
+USES= cpe pgsql:14+ python:3.10+
CPE_VENDOR= netbox
USE_GITHUB= yes
GH_ACCOUNT= netbox-community
@@ -84,7 +86,7 @@ S3_DESC= Amazon S3 backend support
SENTRY_DESC= Sentry monitoring support
GIT_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dulwich>0:devel/py-dulwich@${PY_FLAVOR}
-LDAP_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj51-django-auth-ldap>0:www/py-dj51-django-auth-ldap
+LDAP_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj52-django-auth-ldap>0:www/py-dj52-django-auth-ldap
S3_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}boto3>0:www/py-boto3@${PY_FLAVOR}
SENTRY_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sentry-sdk>0:devel/py-sentry-sdk@${PY_FLAVOR}
diff --git a/net-mgmt/netbox/distinfo b/net-mgmt/netbox/distinfo
index 4fcd1ab605bd..791fdac20c30 100644
--- a/net-mgmt/netbox/distinfo
+++ b/net-mgmt/netbox/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747310868
-SHA256 (netbox-community-netbox-v4.2.9_GH0.tar.gz) = 785e2c0838e5f31ebbcc81b1f53a1dd48b7056100f7b229e3dc137959da0874d
-SIZE (netbox-community-netbox-v4.2.9_GH0.tar.gz) = 18575314
+TIMESTAMP = 1749230459
+SHA256 (netbox-community-netbox-v4.3.2_GH0.tar.gz) = d6a1196e417f1b22e4c2a1492c06345075ec69e27bb949dd3009dae4e6134cc3
+SIZE (netbox-community-netbox-v4.3.2_GH0.tar.gz) = 18700656
diff --git a/net-mgmt/netbox/files/pkg-message.in b/net-mgmt/netbox/files/pkg-message.in
index a737d0737248..2dc5df901849 100644
--- a/net-mgmt/netbox/files/pkg-message.in
+++ b/net-mgmt/netbox/files/pkg-message.in
@@ -475,4 +475,36 @@ EOD
deprecated in NetBox v4.1 under #17143.
EOD
}
+{ type: upgrade
+ maximum_version: 4.3.2
+ message: <<EOD
+1. The NetBox 4.3 release contains some breaking changes, so the following
+ items should be checked before upgrading:
+
+ * This release drops support for PostgreSQL 13. PostgreSQL 14 or later is
+ required to run this release.
+
+2. Following items should be checked as well:
+
+ * The GraphQL API now uses an advanced syntax for filtering, to enable e.g.
+ logical AND/OR filtering and custom field lookups.
+
+ * The ALLOW_TOKEN_RETRIEVAL configuration parameter now defaults to False.
+
+ * The "device" and "virtual_machine" foreign keys on the "Service" model
+ have been replaced with a generic parent relationship to support the
+ assignment of services to FHRP groups as well.
+
+ * The group foreign key on the "Contact" model has been replaced with a
+ many-to-many groups field.
+
+ * "django-storages" is now a required dependency. (It will be installed
+ automatically on upgrade via www/py-dj52-django-storages.)
+
+ * "PluginTemplateExtension" no longer supports registration via the singular
+ model attribute (use models instead).
+
+ * The legacy staged changes functionality has been removed.
+EOD
+}
]
diff --git a/net-mgmt/netbox/pkg-plist b/net-mgmt/netbox/pkg-plist
index 8e69b760791b..26280c24f194 100644
--- a/net-mgmt/netbox/pkg-plist
+++ b/net-mgmt/netbox/pkg-plist
@@ -30,6 +30,8 @@
%%DATADIR%%/circuits/forms/filtersets.py
%%DATADIR%%/circuits/forms/model_forms.py
%%DATADIR%%/circuits/graphql/__init__.py
+%%DATADIR%%/circuits/graphql/enums.py
+%%DATADIR%%/circuits/graphql/filter_mixins.py
%%DATADIR%%/circuits/graphql/filters.py
%%DATADIR%%/circuits/graphql/schema.py
%%DATADIR%%/circuits/graphql/types.py
@@ -46,6 +48,7 @@
%%DATADIR%%/circuits/migrations/0049_natural_ordering.py
%%DATADIR%%/circuits/migrations/0050_virtual_circuits.py
%%DATADIR%%/circuits/migrations/0051_virtualcircuit_group_assignment.py
+%%DATADIR%%/circuits/migrations/0052_extend_circuit_abs_distance_upper_limit.py
%%DATADIR%%/circuits/migrations/__init__.py
%%DATADIR%%/circuits/models/__init__.py
%%DATADIR%%/circuits/models/base.py
@@ -62,6 +65,7 @@
%%DATADIR%%/circuits/tests/__init__.py
%%DATADIR%%/circuits/tests/test_api.py
%%DATADIR%%/circuits/tests/test_filtersets.py
+%%DATADIR%%/circuits/tests/test_tables.py
%%DATADIR%%/circuits/tests/test_views.py
%%DATADIR%%/circuits/urls.py
%%DATADIR%%/circuits/views.py
@@ -77,6 +81,7 @@
%%DATADIR%%/core/api/urls.py
%%DATADIR%%/core/api/views.py
%%DATADIR%%/core/apps.py
+%%DATADIR%%/core/checks.py
%%DATADIR%%/core/choices.py
%%DATADIR%%/core/constants.py
%%DATADIR%%/core/data_backends.py
@@ -90,6 +95,7 @@
%%DATADIR%%/core/forms/mixins.py
%%DATADIR%%/core/forms/model_forms.py
%%DATADIR%%/core/graphql/__init__.py
+%%DATADIR%%/core/graphql/filter_mixins.py
%%DATADIR%%/core/graphql/filters.py
%%DATADIR%%/core/graphql/mixins.py
%%DATADIR%%/core/graphql/schema.py
@@ -110,6 +116,8 @@
%%DATADIR%%/core/migrations/0011_move_objectchange.py
%%DATADIR%%/core/migrations/0012_job_object_type_optional.py
%%DATADIR%%/core/migrations/0013_job_data_encoder.py
+%%DATADIR%%/core/migrations/0014_datasource_sync_interval.py
+%%DATADIR%%/core/migrations/0015_remove_redundant_indexes.py
%%DATADIR%%/core/migrations/__init__.py
%%DATADIR%%/core/models/__init__.py
%%DATADIR%%/core/models/change_logging.py
@@ -182,6 +190,8 @@
%%DATADIR%%/dcim/forms/object_create.py
%%DATADIR%%/dcim/forms/object_import.py
%%DATADIR%%/dcim/graphql/__init__.py
+%%DATADIR%%/dcim/graphql/enums.py
+%%DATADIR%%/dcim/graphql/filter_mixins.py
%%DATADIR%%/dcim/graphql/filters.py
%%DATADIR%%/dcim/graphql/gfk_mixins.py
%%DATADIR%%/dcim/graphql/mixins.py
@@ -216,13 +226,28 @@
%%DATADIR%%/dcim/migrations/0198_natural_ordering.py
%%DATADIR%%/dcim/migrations/0199_macaddress.py
%%DATADIR%%/dcim/migrations/0200_populate_mac_addresses.py
+%%DATADIR%%/dcim/migrations/0201_add_power_outlet_status.py
+%%DATADIR%%/dcim/migrations/0202_location_comments_region_comments_sitegroup_comments.py
+%%DATADIR%%/dcim/migrations/0203_add_rack_outer_height.py
+%%DATADIR%%/dcim/migrations/0203_device_role_nested.py
+%%DATADIR%%/dcim/migrations/0204_device_role_rebuild.py
+%%DATADIR%%/dcim/migrations/0205_moduletypeprofile.py
+%%DATADIR%%/dcim/migrations/0206_load_module_type_profiles.py
+%%DATADIR%%/dcim/migrations/0207_remove_redundant_indexes.py
%%DATADIR%%/dcim/migrations/__init__.py
+%%DATADIR%%/dcim/migrations/initial_data/module_type_profiles/cpu.json
+%%DATADIR%%/dcim/migrations/initial_data/module_type_profiles/fan.json
+%%DATADIR%%/dcim/migrations/initial_data/module_type_profiles/gpu.json
+%%DATADIR%%/dcim/migrations/initial_data/module_type_profiles/hard_disk.json
+%%DATADIR%%/dcim/migrations/initial_data/module_type_profiles/memory.json
+%%DATADIR%%/dcim/migrations/initial_data/module_type_profiles/power_supply.json
%%DATADIR%%/dcim/models/__init__.py
%%DATADIR%%/dcim/models/cables.py
%%DATADIR%%/dcim/models/device_component_templates.py
%%DATADIR%%/dcim/models/device_components.py
%%DATADIR%%/dcim/models/devices.py
%%DATADIR%%/dcim/models/mixins.py
+%%DATADIR%%/dcim/models/modules.py
%%DATADIR%%/dcim/models/power.py
%%DATADIR%%/dcim/models/racks.py
%%DATADIR%%/dcim/models/sites.py
@@ -408,6 +433,7 @@
%%DATADIR%%/docs/models/dcim/modulebay.md
%%DATADIR%%/docs/models/dcim/modulebaytemplate.md
%%DATADIR%%/docs/models/dcim/moduletype.md
+%%DATADIR%%/docs/models/dcim/moduletypeprofile.md
%%DATADIR%%/docs/models/dcim/platform.md
%%DATADIR%%/docs/models/dcim/powerfeed.md
%%DATADIR%%/docs/models/dcim/poweroutlet.md
@@ -427,7 +453,6 @@
%%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
@@ -440,8 +465,8 @@
%%DATADIR%%/docs/models/extras/notification.md
%%DATADIR%%/docs/models/extras/notificationgroup.md
%%DATADIR%%/docs/models/extras/savedfilter.md
-%%DATADIR%%/docs/models/extras/stagedchange.md
%%DATADIR%%/docs/models/extras/subscription.md
+%%DATADIR%%/docs/models/extras/tableconfig.md
%%DATADIR%%/docs/models/extras/tag.md
%%DATADIR%%/docs/models/extras/webhook.md
%%DATADIR%%/docs/models/ipam/aggregate.md
@@ -502,7 +527,6 @@
%%DATADIR%%/docs/plugins/development/navigation.md
%%DATADIR%%/docs/plugins/development/rest-api.md
%%DATADIR%%/docs/plugins/development/search.md
-%%DATADIR%%/docs/plugins/development/staged-changes.md
%%DATADIR%%/docs/plugins/development/tables.md
%%DATADIR%%/docs/plugins/development/templates.md
%%DATADIR%%/docs/plugins/development/views.md
@@ -536,6 +560,7 @@
%%DATADIR%%/docs/release-notes/version-4.0.md
%%DATADIR%%/docs/release-notes/version-4.1.md
%%DATADIR%%/docs/release-notes/version-4.2.md
+%%DATADIR%%/docs/release-notes/version-4.3.md
%%DATADIR%%/extras/__init__.py
%%DATADIR%%/extras/api/__init__.py
%%DATADIR%%/extras/api/customfields.py
@@ -556,6 +581,7 @@
%%DATADIR%%/extras/api/serializers_/objecttypes.py
%%DATADIR%%/extras/api/serializers_/savedfilters.py
%%DATADIR%%/extras/api/serializers_/scripts.py
+%%DATADIR%%/extras/api/serializers_/tableconfigs.py
%%DATADIR%%/extras/api/serializers_/tags.py
%%DATADIR%%/extras/api/urls.py
%%DATADIR%%/extras/api/views.py
@@ -584,6 +610,8 @@
%%DATADIR%%/extras/forms/reports.py
%%DATADIR%%/extras/forms/scripts.py
%%DATADIR%%/extras/graphql/__init__.py
+%%DATADIR%%/extras/graphql/enums.py
+%%DATADIR%%/extras/graphql/filter_mixins.py
%%DATADIR%%/extras/graphql/filters.py
%%DATADIR%%/extras/graphql/mixins.py
%%DATADIR%%/extras/graphql/schema.py
@@ -626,6 +654,11 @@
%%DATADIR%%/extras/migrations/0121_customfield_related_object_filter.py
%%DATADIR%%/extras/migrations/0122_charfield_null_choices.py
%%DATADIR%%/extras/migrations/0123_journalentry_kind_default.py
+%%DATADIR%%/extras/migrations/0124_remove_staging.py
+%%DATADIR%%/extras/migrations/0125_alter_tag_options_tag_weight.py
+%%DATADIR%%/extras/migrations/0126_exporttemplate_file_name.py
+%%DATADIR%%/extras/migrations/0127_configtemplate_as_attachment_and_more.py
+%%DATADIR%%/extras/migrations/0128_tableconfig.py
%%DATADIR%%/extras/migrations/__init__.py
%%DATADIR%%/extras/models/__init__.py
%%DATADIR%%/extras/models/configs.py
@@ -636,13 +669,13 @@
%%DATADIR%%/extras/models/notifications.py
%%DATADIR%%/extras/models/scripts.py
%%DATADIR%%/extras/models/search.py
-%%DATADIR%%/extras/models/staging.py
%%DATADIR%%/extras/models/tags.py
%%DATADIR%%/extras/querysets.py
%%DATADIR%%/extras/reports.py
%%DATADIR%%/extras/scripts.py
%%DATADIR%%/extras/search.py
%%DATADIR%%/extras/signals.py
+%%DATADIR%%/extras/storage.py
%%DATADIR%%/extras/tables/__init__.py
%%DATADIR%%/extras/tables/columns.py
%%DATADIR%%/extras/tables/tables.py
@@ -663,6 +696,7 @@
%%DATADIR%%/extras/tests/test_models.py
%%DATADIR%%/extras/tests/test_scripts.py
%%DATADIR%%/extras/tests/test_tags.py
+%%DATADIR%%/extras/tests/test_utils.py
%%DATADIR%%/extras/tests/test_views.py
%%DATADIR%%/extras/urls.py
%%DATADIR%%/extras/utils.py
@@ -698,6 +732,8 @@
%%DATADIR%%/ipam/forms/filtersets.py
%%DATADIR%%/ipam/forms/model_forms.py
%%DATADIR%%/ipam/graphql/__init__.py
+%%DATADIR%%/ipam/graphql/enums.py
+%%DATADIR%%/ipam/graphql/filter_mixins.py
%%DATADIR%%/ipam/graphql/filters.py
%%DATADIR%%/ipam/graphql/mixins.py
%%DATADIR%%/ipam/graphql/schema.py
@@ -720,6 +756,11 @@
%%DATADIR%%/ipam/migrations/0074_vlantranslationpolicy_vlantranslationrule.py
%%DATADIR%%/ipam/migrations/0075_vlan_qinq.py
%%DATADIR%%/ipam/migrations/0076_natural_ordering.py
+%%DATADIR%%/ipam/migrations/0077_vlangroup_tenant.py
+%%DATADIR%%/ipam/migrations/0078_iprange_mark_utilized.py
+%%DATADIR%%/ipam/migrations/0079_add_service_fhrp_group_parent_gfk.py
+%%DATADIR%%/ipam/migrations/0080_populate_service_parent.py
+%%DATADIR%%/ipam/migrations/0081_remove_service_device_virtual_machine_add_parent_gfk_index.py
%%DATADIR%%/ipam/migrations/__init__.py
%%DATADIR%%/ipam/models/__init__.py
%%DATADIR%%/ipam/models/asns.py
@@ -792,6 +833,8 @@
%%DATADIR%%/netbox/forms/base.py
%%DATADIR%%/netbox/forms/mixins.py
%%DATADIR%%/netbox/graphql/__init__.py
+%%DATADIR%%/netbox/graphql/enums.py
+%%DATADIR%%/netbox/graphql/filter_lookups.py
%%DATADIR%%/netbox/graphql/filter_mixins.py
%%DATADIR%%/netbox/graphql/scalars.py
%%DATADIR%%/netbox/graphql/schema.py
@@ -818,7 +861,6 @@
%%DATADIR%%/netbox/search/utils.py
%%DATADIR%%/netbox/settings.py
%%DATADIR%%/netbox/signals.py
-%%DATADIR%%/netbox/staging.py
%%DATADIR%%/netbox/tables/__init__.py
%%DATADIR%%/netbox/tables/columns.py
%%DATADIR%%/netbox/tables/tables.py
@@ -854,7 +896,6 @@
%%DATADIR%%/netbox/tests/test_plugins.py
%%DATADIR%%/netbox/tests/test_registry.py
%%DATADIR%%/netbox/tests/test_search.py
-%%DATADIR%%/netbox/tests/test_staging.py
%%DATADIR%%/netbox/tests/test_tables.py
%%DATADIR%%/netbox/tests/test_views.py
%%DATADIR%%/netbox/urls.py
@@ -1145,6 +1186,7 @@
%%DATADIR%%/templates/dcim/modulebay.html
%%DATADIR%%/templates/dcim/moduletype.html
%%DATADIR%%/templates/dcim/moduletype/component_templates.html
+%%DATADIR%%/templates/dcim/moduletypeprofile.html
%%DATADIR%%/templates/dcim/platform.html
%%DATADIR%%/templates/dcim/powerfeed.html
%%DATADIR%%/templates/dcim/poweroutlet.html
@@ -1225,6 +1267,8 @@
%%DATADIR%%/templates/extras/script/source.html
%%DATADIR%%/templates/extras/script_list.html
%%DATADIR%%/templates/extras/script_result.html
+%%DATADIR%%/templates/extras/tableconfig.html
+%%DATADIR%%/templates/extras/tableconfig_edit.html
%%DATADIR%%/templates/extras/tag.html
%%DATADIR%%/templates/extras/templatetags/log_level.html
%%DATADIR%%/templates/extras/webhook.html
@@ -1322,6 +1366,7 @@
%%DATADIR%%/templates/tenancy/tenant.html
%%DATADIR%%/templates/tenancy/tenantgroup.html
%%DATADIR%%/templates/users/group.html
+%%DATADIR%%/templates/users/inc/user_activity.html
%%DATADIR%%/templates/users/objectpermission.html
%%DATADIR%%/templates/users/token.html
%%DATADIR%%/templates/users/token_edit.html
@@ -1373,6 +1418,8 @@
%%DATADIR%%/tenancy/forms/forms.py
%%DATADIR%%/tenancy/forms/model_forms.py
%%DATADIR%%/tenancy/graphql/__init__.py
+%%DATADIR%%/tenancy/graphql/enums.py
+%%DATADIR%%/tenancy/graphql/filter_mixins.py
%%DATADIR%%/tenancy/graphql/filters.py
%%DATADIR%%/tenancy/graphql/mixins.py
%%DATADIR%%/tenancy/graphql/schema.py
@@ -1385,6 +1432,9 @@
%%DATADIR%%/tenancy/migrations/0015_contactassignment_rename_content_type.py
%%DATADIR%%/tenancy/migrations/0016_charfield_null_choices.py
%%DATADIR%%/tenancy/migrations/0017_natural_ordering.py
+%%DATADIR%%/tenancy/migrations/0018_contact_groups.py
+%%DATADIR%%/tenancy/migrations/0019_contactgroup_comments_tenantgroup_comments.py
+%%DATADIR%%/tenancy/migrations/0020_remove_contactgroupmembership.py
%%DATADIR%%/tenancy/migrations/__init__.py
%%DATADIR%%/tenancy/models/__init__.py
%%DATADIR%%/tenancy/models/contacts.py
@@ -1513,6 +1563,7 @@
%%DATADIR%%/utilities/htmx.py
%%DATADIR%%/utilities/jinja2.py
%%DATADIR%%/utilities/json.py
+%%DATADIR%%/utilities/jsonschema.py
%%DATADIR%%/utilities/management/__init__.py
%%DATADIR%%/utilities/management/commands/__init__.py
%%DATADIR%%/utilities/management/commands/calculate_cached_counts.py
@@ -1524,6 +1575,7 @@
%%DATADIR%%/utilities/paginator.py
%%DATADIR%%/utilities/password_validation.py
%%DATADIR%%/utilities/permissions.py
+%%DATADIR%%/utilities/proxy.py
%%DATADIR%%/utilities/query.py
%%DATADIR%%/utilities/query_functions.py
%%DATADIR%%/utilities/querydict.py
@@ -1626,6 +1678,8 @@
%%DATADIR%%/virtualization/forms/model_forms.py
%%DATADIR%%/virtualization/forms/object_create.py
%%DATADIR%%/virtualization/graphql/__init__.py
+%%DATADIR%%/virtualization/graphql/enums.py
+%%DATADIR%%/virtualization/graphql/filter_mixins.py
%%DATADIR%%/virtualization/graphql/filters.py
%%DATADIR%%/virtualization/graphql/schema.py
%%DATADIR%%/virtualization/graphql/types.py
@@ -1679,6 +1733,7 @@
%%DATADIR%%/vpn/forms/filtersets.py
%%DATADIR%%/vpn/forms/model_forms.py
%%DATADIR%%/vpn/graphql/__init__.py
+%%DATADIR%%/vpn/graphql/enums.py
%%DATADIR%%/vpn/graphql/filters.py
%%DATADIR%%/vpn/graphql/schema.py
%%DATADIR%%/vpn/graphql/types.py
@@ -1689,6 +1744,8 @@
%%DATADIR%%/vpn/migrations/0005_rename_indexes.py
%%DATADIR%%/vpn/migrations/0006_charfield_null_choices.py
%%DATADIR%%/vpn/migrations/0007_natural_ordering.py
+%%DATADIR%%/vpn/migrations/0008_add_l2vpn_status.py
+%%DATADIR%%/vpn/migrations/0009_remove_redundant_indexes.py
%%DATADIR%%/vpn/migrations/__init__.py
%%DATADIR%%/vpn/models/__init__.py
%%DATADIR%%/vpn/models/crypto.py
@@ -1703,6 +1760,7 @@
%%DATADIR%%/vpn/tests/test_api.py
%%DATADIR%%/vpn/tests/test_filtersets.py
%%DATADIR%%/vpn/tests/test_models.py
+%%DATADIR%%/vpn/tests/test_tables.py
%%DATADIR%%/vpn/tests/test_views.py
%%DATADIR%%/vpn/urls.py
%%DATADIR%%/vpn/views.py
@@ -1725,6 +1783,8 @@
%%DATADIR%%/wireless/forms/filtersets.py
%%DATADIR%%/wireless/forms/model_forms.py
%%DATADIR%%/wireless/graphql/__init__.py
+%%DATADIR%%/wireless/graphql/enums.py
+%%DATADIR%%/wireless/graphql/filter_mixins.py
%%DATADIR%%/wireless/graphql/filters.py
%%DATADIR%%/wireless/graphql/schema.py
%%DATADIR%%/wireless/graphql/types.py
@@ -1734,6 +1794,8 @@
%%DATADIR%%/wireless/migrations/0011_wirelesslan__location_wirelesslan__region_and_more.py
%%DATADIR%%/wireless/migrations/0012_alter_wirelesslan__location_and_more.py
%%DATADIR%%/wireless/migrations/0013_natural_ordering.py
+%%DATADIR%%/wireless/migrations/0014_wirelesslangroup_comments.py
+%%DATADIR%%/wireless/migrations/0015_extend_wireless_link_abs_distance_upper_limit.py
%%DATADIR%%/wireless/migrations/__init__.py
%%DATADIR%%/wireless/models.py
%%DATADIR%%/wireless/search.py