aboutsummaryrefslogtreecommitdiff
path: root/net-mgmt
diff options
context:
space:
mode:
authorKai Knoblich <kai@FreeBSD.org>2021-07-20 12:29:27 +0000
committerKai Knoblich <kai@FreeBSD.org>2021-07-20 12:29:27 +0000
commit8e1a50a558fa2a6ba256e1d4d53b791bfc628394 (patch)
tree72dc74b61c95192551d3b9abbe3e43a3a3f54a41 /net-mgmt
parentfd76d1a5770102ebbf7653e96dc34910dcf6e01a (diff)
downloadports-8e1a50a558fa2a6ba256e1d4d53b791bfc628394.tar.gz
ports-8e1a50a558fa2a6ba256e1d4d53b791bfc628394.zip
net-mgmt/netbox: Update to 2.11.9
Changelogs since 2.10.10: It contains many bugfixes/enhancements and the following new features: * Journaling Support * Parent Interface Assignments * Pre- and Post-Change Snapshots in Webhooks * Mark as Connected Without a Cable * Allow Assigning Devices to Locations * Dynamic Object Exports * Variable Scope Support for VLAN Groups * New Site Group Model * Improved Change Logging * Provider Network Modeling https://netbox.readthedocs.io/en/stable/release-notes/version-2.11/ MFH: (No, feature release)
Diffstat (limited to 'net-mgmt')
-rw-r--r--net-mgmt/netbox/Makefile47
-rw-r--r--net-mgmt/netbox/distinfo6
-rw-r--r--net-mgmt/netbox/files/pkg-message.in33
-rw-r--r--net-mgmt/netbox/pkg-plist145
4 files changed, 161 insertions, 70 deletions
diff --git a/net-mgmt/netbox/Makefile b/net-mgmt/netbox/Makefile
index 9ba3d9b4ed1d..129260dd1778 100644
--- a/net-mgmt/netbox/Makefile
+++ b/net-mgmt/netbox/Makefile
@@ -1,6 +1,6 @@
PORTNAME= netbox
DISTVERSIONPREFIX= v
-DISTVERSION= 2.10.10
+DISTVERSION= 2.11.9
CATEGORIES= net-mgmt
MAINTAINER= kai@FreeBSD.org
@@ -17,33 +17,34 @@ 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-dj31-django-rq
-# - www/py-dj31-django-filter
-# - www/py-dj31-django-tables2
-# - www/py-dj31-djangorestframework (in conjunction with www/py-dj31-drf-yasg)
+# - devel/py-dj32-django-rq
+# - www/py-dj32-django-filter
+# - www/py-dj32-django-tables2
+# - www/py-dj32-djangorestframework (in conjunction with www/py-dj32-drf-yasg)
#
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django31>=3.1.7<3.2:www/py-django31@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-django-cacheops>=5.1.0<5.2:www/py-dj31-django-cacheops@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-django-cors-headers>=3.7.0<3.8:www/py-dj31-django-cors-headers@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-django-debug-toolbar>=3.2<4:www/py-dj31-django-debug-toolbar@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-django-filter>=2.4.0<2.5:www/py-dj31-django-filter@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-django-mptt>=0.12.0<0.13:www/py-dj31-django-mptt@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-django-prometheus>=2.1.0<2.2:www/py-dj31-django-prometheus@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-django-rq>=2.4.0<2.5:devel/py-dj31-django-rq@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-django-tables2>=2.3.4<2.4:www/py-dj31-django-tables2@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-django-taggit>=1.3.0<2:www/py-dj31-django-taggit@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-django-timezone-field>=4.1.2<5:www/py-dj31-django-timezone-field@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-djangorestframework>=3.12.4<3.13.0:www/py-dj31-djangorestframework@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}dj31-drf-yasg>=1.20.0<1.21:www/py-dj31-drf-yasg@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django32>=3.2.5<3.3:www/py-django32@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-django-cacheops>=6.0<7.0:www/py-dj32-django-cacheops@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-django-cors-headers>=3.7.0<3.8:www/py-dj32-django-cors-headers@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-django-debug-toolbar>=3.2.1<4:www/py-dj32-django-debug-toolbar@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-django-filter>=2.4.0<2.5:www/py-dj32-django-filter@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-django-mptt>=0.12.0<0.13:www/py-dj32-django-mptt@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-django-prometheus>=2.1.0<2.2:www/py-dj32-django-prometheus@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-django-rq>=2.4.1<2.5:devel/py-dj32-django-rq@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-django-tables2>=2.4.0<2.5:www/py-dj32-django-tables2@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-django-taggit>=1.5.1<2:www/py-dj32-django-taggit@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-django-timezone-field>=4.1.2<5:www/py-dj32-django-timezone-field@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-djangorestframework>=3.12.4<3.13.0:www/py-dj32-djangorestframework@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}dj32-drf-yasg>=1.20.0<1.21:www/py-dj32-drf-yasg@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}django-pglocks>=1.0.4<1.1:www/py-django-pglocks@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.11.2<3:devel/py-Jinja2@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}markdown>=2.6.11<3.5:textproc/py-markdown@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.11.2<4:devel/py-Jinja2@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}markdown>=3.3.4<3.5:textproc/py-markdown@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}netaddr>=0.8.0<1:net/py-netaddr@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pycryptodome>=3.10.1<4:security/py-pycryptodome@${PY_FLAVOR} \
- ${PY_PILLOW} \
- ${PYTHON_PKGNAMEPREFIX}psycopg2>=2.8.6<3:databases/py-psycopg2@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pillow>=8.2.0<9:graphics/py-pillow@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}psycopg2>=2.9.1<3:databases/py-psycopg2@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}svgwrite>=1.4.1<2:graphics/py-svgwrite@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}yaml>=5.3.1<6:devel/py-yaml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}tablib>=3.0.0<3.1:textproc/py-tablib@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}yaml>=5.4.1<6:devel/py-yaml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}gunicorn>=19.9.0<21:www/py-gunicorn@${PY_FLAVOR}
USES= pgsql:9.6+ python:3.7+
diff --git a/net-mgmt/netbox/distinfo b/net-mgmt/netbox/distinfo
index 1287264024cf..dce423057dbd 100644
--- a/net-mgmt/netbox/distinfo
+++ b/net-mgmt/netbox/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1618576233
-SHA256 (netbox-community-netbox-v2.10.10_GH0.tar.gz) = ddbba1df4321bd4fe3c1778348e0c534616f506661da0f5eb36187c54a7d0972
-SIZE (netbox-community-netbox-v2.10.10_GH0.tar.gz) = 7066062
+TIMESTAMP = 1626024676
+SHA256 (netbox-community-netbox-v2.11.9_GH0.tar.gz) = 11915f56a16e5931ac8e2dbb494081b572accf68cd6aee47eed6908dc6ee161a
+SIZE (netbox-community-netbox-v2.11.9_GH0.tar.gz) = 7109590
diff --git a/net-mgmt/netbox/files/pkg-message.in b/net-mgmt/netbox/files/pkg-message.in
index 91259bc023b8..2ecf2f9639bc 100644
--- a/net-mgmt/netbox/files/pkg-message.in
+++ b/net-mgmt/netbox/files/pkg-message.in
@@ -17,11 +17,13 @@ database migrations will be executed.
The following steps are required to finish the upgrade:
-1. Run database migrations, collect static files, remove stale content files,
- delete any expired user sessions and clear all cached data:
+1. Run database migrations, trace any missing cable paths, collect static
+ files, remove stale content files, delete any expired user sessions and
+ clear all cached data:
# cd %%DATADIR%%
# python%%PYTHON_VER%% manage.py migrate
+# python%%PYTHON_VER%% manage.py trace_paths --no-input
# python%%PYTHON_VER%% manage.py collectstatic --no-input
# python%%PYTHON_VER%% manage.py remove_stale_contenttypes --no-input
# python%%PYTHON_VER%% manage.py clearsessions
@@ -215,4 +217,31 @@ Also the support for embedded graphs was completely removed and several changes
to the REST API were made. Please check the changelogs for further details.
EOD
}
+{ type: upgrade
+ maximum_version: 2.11.9
+ message: <<EOD
+* All objects now use numeric IDs in their UI view URLs instead of slugs. You
+ may need to update external references to NetBox objects. (Note that this
+ does _not_ affect the REST API.)
+
+* The UI now uses numeric IDs when filtering object lists. You may need to
+ update external links to filtered object lists. (Note that the slug- and
+ name-based filters will continue to work, however the filter selection fields
+ within the UI will not be automatically populated.)
+
+* The RackGroup model has been renamed to "Location". Its REST API endpoint
+ has changed from /api/dcim/rack-groups/ to /api/dcim/locations/.
+
+* The foreign key field "group" on dcim.Rack has been renamed to "location".
+
+* The foreign key field "site" on ipam.VLANGroup has been replaced with the
+ "scope" generic foreign key.
+
+* Custom script ObjectVars no longer support the "queryset" parameter:
+ Use "model" instead.
+
+Several changes to the REST API were made as well. Please check the changelogs
+for further details.
+EOD
+}
]
diff --git a/net-mgmt/netbox/pkg-plist b/net-mgmt/netbox/pkg-plist
index f735d07b8c30..e3ab28c7439a 100644
--- a/net-mgmt/netbox/pkg-plist
+++ b/net-mgmt/netbox/pkg-plist
@@ -4,6 +4,7 @@
%%PORTDOCS%%%%DOCSDIR%%/additional-features/custom-links.md
%%PORTDOCS%%%%DOCSDIR%%/additional-features/custom-scripts.md
%%PORTDOCS%%%%DOCSDIR%%/additional-features/export-templates.md
+%%PORTDOCS%%%%DOCSDIR%%/additional-features/journaling.md
%%PORTDOCS%%%%DOCSDIR%%/additional-features/napalm.md
%%PORTDOCS%%%%DOCSDIR%%/additional-features/prometheus-metrics.md
%%PORTDOCS%%%%DOCSDIR%%/additional-features/reports.md
@@ -29,6 +30,7 @@
%%PORTDOCS%%%%DOCSDIR%%/development/extending-models.md
%%PORTDOCS%%%%DOCSDIR%%/development/getting-started.md
%%PORTDOCS%%%%DOCSDIR%%/development/index.md
+%%PORTDOCS%%%%DOCSDIR%%/development/models.md
%%PORTDOCS%%%%DOCSDIR%%/development/release-checklist.md
%%PORTDOCS%%%%DOCSDIR%%/development/style-guide.md
%%PORTDOCS%%%%DOCSDIR%%/development/user-preferences.md
@@ -58,6 +60,7 @@
%%PORTDOCS%%%%DOCSDIR%%/models/circuits/circuittermination.md
%%PORTDOCS%%%%DOCSDIR%%/models/circuits/circuittype.md
%%PORTDOCS%%%%DOCSDIR%%/models/circuits/provider.md
+%%PORTDOCS%%%%DOCSDIR%%/models/circuits/providernetwork.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/cable.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/consoleport.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/consoleporttemplate.md
@@ -73,6 +76,7 @@
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/interface.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/interfacetemplate.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/inventoryitem.md
+%%PORTDOCS%%%%DOCSDIR%%/models/dcim/location.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/manufacturer.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/platform.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/powerfeed.md
@@ -82,13 +86,13 @@
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/powerport.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/powerporttemplate.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/rack.md
-%%PORTDOCS%%%%DOCSDIR%%/models/dcim/rackgroup.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/rackreservation.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/rackrole.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/rearport.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/rearporttemplate.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/region.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/site.md
+%%PORTDOCS%%%%DOCSDIR%%/models/dcim/sitegroup.md
%%PORTDOCS%%%%DOCSDIR%%/models/dcim/virtualchassis.md
%%PORTDOCS%%%%DOCSDIR%%/models/extras/configcontext.md
%%PORTDOCS%%%%DOCSDIR%%/models/extras/imageattachment.md
@@ -123,6 +127,7 @@
%%PORTDOCS%%%%DOCSDIR%%/release-notes/version-2.0.md
%%PORTDOCS%%%%DOCSDIR%%/release-notes/version-2.1.md
%%PORTDOCS%%%%DOCSDIR%%/release-notes/version-2.10.md
+%%PORTDOCS%%%%DOCSDIR%%/release-notes/version-2.11.md
%%PORTDOCS%%%%DOCSDIR%%/release-notes/version-2.2.md
%%PORTDOCS%%%%DOCSDIR%%/release-notes/version-2.3.md
%%PORTDOCS%%%%DOCSDIR%%/release-notes/version-2.4.md
@@ -149,7 +154,7 @@
%%DATADIR%%/circuits/api/views.py
%%DATADIR%%/circuits/apps.py
%%DATADIR%%/circuits/choices.py
-%%DATADIR%%/circuits/filters.py
+%%DATADIR%%/circuits/filtersets.py
%%DATADIR%%/circuits/forms.py
%%DATADIR%%/circuits/migrations/0001_initial.py
%%DATADIR%%/circuits/migrations/0002_auto_20160622_1821.py
@@ -175,14 +180,18 @@
%%DATADIR%%/circuits/migrations/0022_cablepath.py
%%DATADIR%%/circuits/migrations/0023_circuittermination_port_speed_optional.py
%%DATADIR%%/circuits/migrations/0024_standardize_name_length.py
+%%DATADIR%%/circuits/migrations/0025_standardize_models.py
+%%DATADIR%%/circuits/migrations/0026_mark_connected.py
+%%DATADIR%%/circuits/migrations/0027_providernetwork.py
+%%DATADIR%%/circuits/migrations/0028_cache_circuit_terminations.py
+%%DATADIR%%/circuits/migrations/0029_circuit_tracing.py
%%DATADIR%%/circuits/migrations/__init__.py
%%DATADIR%%/circuits/models.py
-%%DATADIR%%/circuits/querysets.py
%%DATADIR%%/circuits/signals.py
%%DATADIR%%/circuits/tables.py
%%DATADIR%%/circuits/tests/__init__.py
%%DATADIR%%/circuits/tests/test_api.py
-%%DATADIR%%/circuits/tests/test_filters.py
+%%DATADIR%%/circuits/tests/test_filtersets.py
%%DATADIR%%/circuits/tests/test_views.py
%%DATADIR%%/circuits/urls.py
%%DATADIR%%/circuits/views.py
@@ -198,7 +207,7 @@
%%DATADIR%%/dcim/constants.py
%%DATADIR%%/dcim/elevations.py
%%DATADIR%%/dcim/fields.py
-%%DATADIR%%/dcim/filters.py
+%%DATADIR%%/dcim/filtersets.py
%%DATADIR%%/dcim/forms.py
%%DATADIR%%/dcim/lookups.py
%%DATADIR%%/dcim/management/__init__.py
@@ -327,6 +336,15 @@
%%DATADIR%%/dcim/migrations/0120_cache_cable_peer.py
%%DATADIR%%/dcim/migrations/0121_cablepath.py
%%DATADIR%%/dcim/migrations/0122_standardize_name_length.py
+%%DATADIR%%/dcim/migrations/0123_standardize_models.py
+%%DATADIR%%/dcim/migrations/0124_mark_connected.py
+%%DATADIR%%/dcim/migrations/0125_console_port_speed.py
+%%DATADIR%%/dcim/migrations/0126_rename_rackgroup_location.py
+%%DATADIR%%/dcim/migrations/0127_device_location.py
+%%DATADIR%%/dcim/migrations/0128_device_location_populate.py
+%%DATADIR%%/dcim/migrations/0129_interface_parent.py
+%%DATADIR%%/dcim/migrations/0130_sitegroup.py
+%%DATADIR%%/dcim/migrations/0131_consoleport_speed.py
%%DATADIR%%/dcim/migrations/__init__.py
%%DATADIR%%/dcim/models/__init__.py
%%DATADIR%%/dcim/models/cables.py
@@ -348,7 +366,7 @@
%%DATADIR%%/dcim/tests/__init__.py
%%DATADIR%%/dcim/tests/test_api.py
%%DATADIR%%/dcim/tests/test_cablepaths.py
-%%DATADIR%%/dcim/tests/test_filters.py
+%%DATADIR%%/dcim/tests/test_filtersets.py
%%DATADIR%%/dcim/tests/test_forms.py
%%DATADIR%%/dcim/tests/test_models.py
%%DATADIR%%/dcim/tests/test_natural_ordering.py
@@ -369,7 +387,9 @@
%%DATADIR%%/extras/constants.py
%%DATADIR%%/extras/context_managers.py
%%DATADIR%%/extras/filters.py
+%%DATADIR%%/extras/filtersets.py
%%DATADIR%%/extras/forms.py
+%%DATADIR%%/extras/lookups.py
%%DATADIR%%/extras/management/__init__.py
%%DATADIR%%/extras/management/commands/__init__.py
%%DATADIR%%/extras/management/commands/nbshell.py
@@ -430,9 +450,16 @@
%%DATADIR%%/extras/migrations/0051_migrate_customfields.py
%%DATADIR%%/extras/migrations/0052_customfield_cleanup.py
%%DATADIR%%/extras/migrations/0053_rename_webhook_obj_type.py
+%%DATADIR%%/extras/migrations/0054_standardize_models.py
+%%DATADIR%%/extras/migrations/0055_objectchange_data.py
+%%DATADIR%%/extras/migrations/0056_extend_configcontext.py
+%%DATADIR%%/extras/migrations/0057_customlink_rename_fields.py
+%%DATADIR%%/extras/migrations/0058_journalentry.py
+%%DATADIR%%/extras/migrations/0059_exporttemplate_as_attachment.py
%%DATADIR%%/extras/migrations/__init__.py
%%DATADIR%%/extras/models/__init__.py
%%DATADIR%%/extras/models/change_logging.py
+%%DATADIR%%/extras/models/configcontexts.py
%%DATADIR%%/extras/models/customfields.py
%%DATADIR%%/extras/models/models.py
%%DATADIR%%/extras/models/tags.py
@@ -467,7 +494,7 @@
%%DATADIR%%/extras/tests/test_api.py
%%DATADIR%%/extras/tests/test_changelog.py
%%DATADIR%%/extras/tests/test_customfields.py
-%%DATADIR%%/extras/tests/test_filters.py
+%%DATADIR%%/extras/tests/test_filtersets.py
%%DATADIR%%/extras/tests/test_models.py
%%DATADIR%%/extras/tests/test_plugins.py
%%DATADIR%%/extras/tests/test_registry.py
@@ -491,10 +518,13 @@
%%DATADIR%%/ipam/choices.py
%%DATADIR%%/ipam/constants.py
%%DATADIR%%/ipam/fields.py
-%%DATADIR%%/ipam/filters.py
+%%DATADIR%%/ipam/filtersets.py
%%DATADIR%%/ipam/formfields.py
%%DATADIR%%/ipam/forms.py
%%DATADIR%%/ipam/lookups.py
+%%DATADIR%%/ipam/management/__init__.py
+%%DATADIR%%/ipam/management/commands/__init__.py
+%%DATADIR%%/ipam/management/commands/rebuild_prefixes.py
%%DATADIR%%/ipam/managers.py
%%DATADIR%%/ipam/migrations/0001_initial.py
%%DATADIR%%/ipam/migrations/0002_vrf_add_enforce_unique.py
@@ -539,14 +569,23 @@
%%DATADIR%%/ipam/migrations/0041_routetarget.py
%%DATADIR%%/ipam/migrations/0042_standardize_name_length.py
%%DATADIR%%/ipam/migrations/0043_add_tenancy_to_aggregates.py
+%%DATADIR%%/ipam/migrations/0044_standardize_models.py
+%%DATADIR%%/ipam/migrations/0045_vlangroup_scope.py
+%%DATADIR%%/ipam/migrations/0046_set_vlangroup_scope_types.py
+%%DATADIR%%/ipam/migrations/0047_prefix_depth_children.py
+%%DATADIR%%/ipam/migrations/0048_prefix_populate_depth_children.py
%%DATADIR%%/ipam/migrations/__init__.py
-%%DATADIR%%/ipam/models.py
+%%DATADIR%%/ipam/models/__init__.py
+%%DATADIR%%/ipam/models/ip.py
+%%DATADIR%%/ipam/models/services.py
+%%DATADIR%%/ipam/models/vlans.py
+%%DATADIR%%/ipam/models/vrfs.py
%%DATADIR%%/ipam/querysets.py
%%DATADIR%%/ipam/signals.py
%%DATADIR%%/ipam/tables.py
%%DATADIR%%/ipam/tests/__init__.py
%%DATADIR%%/ipam/tests/test_api.py
-%%DATADIR%%/ipam/tests/test_filters.py
+%%DATADIR%%/ipam/tests/test_filtersets.py
%%DATADIR%%/ipam/tests/test_models.py
%%DATADIR%%/ipam/tests/test_ordering.py
%%DATADIR%%/ipam/tests/test_views.py
@@ -574,8 +613,10 @@
%%DATADIR%%/netbox/configuration.testing.py
%%DATADIR%%/netbox/constants.py
%%DATADIR%%/netbox/context_processors.py
+%%DATADIR%%/netbox/filtersets.py
%%DATADIR%%/netbox/forms.py
%%DATADIR%%/netbox/middleware.py
+%%DATADIR%%/netbox/models.py
%%DATADIR%%/netbox/releases.py
%%DATADIR%%/netbox/settings.py
%%DATADIR%%/netbox/tests/__init__.py
@@ -1371,7 +1412,7 @@
%%DATADIR%%/secrets/apps.py
%%DATADIR%%/secrets/constants.py
%%DATADIR%%/secrets/exceptions.py
-%%DATADIR%%/secrets/filters.py
+%%DATADIR%%/secrets/filtersets.py
%%DATADIR%%/secrets/forms.py
%%DATADIR%%/secrets/hashers.py
%%DATADIR%%/secrets/migrations/0001_initial.py
@@ -1386,6 +1427,7 @@
%%DATADIR%%/secrets/migrations/0010_custom_field_data.py
%%DATADIR%%/secrets/migrations/0011_secret_generic_assignments.py
%%DATADIR%%/secrets/migrations/0012_standardize_name_length.py
+%%DATADIR%%/secrets/migrations/0013_standardize_models.py
%%DATADIR%%/secrets/migrations/__init__.py
%%DATADIR%%/secrets/models.py
%%DATADIR%%/secrets/querysets.py
@@ -1394,7 +1436,7 @@
%%DATADIR%%/secrets/tests/__init__.py
%%DATADIR%%/secrets/tests/constants.py
%%DATADIR%%/secrets/tests/test_api.py
-%%DATADIR%%/secrets/tests/test_filters.py
+%%DATADIR%%/secrets/tests/test_filtersets.py
%%DATADIR%%/secrets/tests/test_form.py
%%DATADIR%%/secrets/tests/test_models.py
%%DATADIR%%/secrets/tests/test_views.py
@@ -1408,13 +1450,12 @@
%%DATADIR%%/templates/admin/index.html
%%DATADIR%%/templates/base.html
%%DATADIR%%/templates/circuits/circuit.html
-%%DATADIR%%/templates/circuits/circuit_edit.html
%%DATADIR%%/templates/circuits/circuit_terminations_swap.html
%%DATADIR%%/templates/circuits/circuittermination_edit.html
+%%DATADIR%%/templates/circuits/circuittype.html
%%DATADIR%%/templates/circuits/inc/circuit_termination.html
-%%DATADIR%%/templates/circuits/inc/speed_widget.html
%%DATADIR%%/templates/circuits/provider.html
-%%DATADIR%%/templates/circuits/provider_edit.html
+%%DATADIR%%/templates/circuits/providernetwork.html
%%DATADIR%%/templates/dcim/bulk_disconnect.html
%%DATADIR%%/templates/dcim/cable.html
%%DATADIR%%/templates/dcim/cable_connect.html
@@ -1450,9 +1491,9 @@
%%DATADIR%%/templates/dcim/devicebay_delete.html
%%DATADIR%%/templates/dcim/devicebay_depopulate.html
%%DATADIR%%/templates/dcim/devicebay_populate.html
+%%DATADIR%%/templates/dcim/devicerole.html
%%DATADIR%%/templates/dcim/devicetype.html
%%DATADIR%%/templates/dcim/devicetype_component_add.html
-%%DATADIR%%/templates/dcim/devicetype_edit.html
%%DATADIR%%/templates/dcim/frontport.html
%%DATADIR%%/templates/dcim/inc/cable_form.html
%%DATADIR%%/templates/dcim/inc/cable_termination.html
@@ -1470,25 +1511,29 @@
%%DATADIR%%/templates/dcim/inventoryitem.html
%%DATADIR%%/templates/dcim/inventoryitem_bulk_delete.html
%%DATADIR%%/templates/dcim/inventoryitem_delete.html
+%%DATADIR%%/templates/dcim/location.html
+%%DATADIR%%/templates/dcim/manufacturer.html
+%%DATADIR%%/templates/dcim/platform.html
%%DATADIR%%/templates/dcim/powerfeed.html
-%%DATADIR%%/templates/dcim/powerfeed_edit.html
%%DATADIR%%/templates/dcim/poweroutlet.html
%%DATADIR%%/templates/dcim/poweroutlet_delete.html
%%DATADIR%%/templates/dcim/powerpanel.html
-%%DATADIR%%/templates/dcim/powerpanel_edit.html
%%DATADIR%%/templates/dcim/powerport.html
%%DATADIR%%/templates/dcim/powerport_delete.html
%%DATADIR%%/templates/dcim/rack.html
%%DATADIR%%/templates/dcim/rack_edit.html
%%DATADIR%%/templates/dcim/rack_elevation_list.html
%%DATADIR%%/templates/dcim/rackreservation.html
-%%DATADIR%%/templates/dcim/rackreservation_edit.html
+%%DATADIR%%/templates/dcim/rackrole.html
%%DATADIR%%/templates/dcim/rearport.html
+%%DATADIR%%/templates/dcim/region.html
%%DATADIR%%/templates/dcim/site.html
-%%DATADIR%%/templates/dcim/site_edit.html
+%%DATADIR%%/templates/dcim/sitegroup.html
+%%DATADIR%%/templates/dcim/trace/attachment.html
%%DATADIR%%/templates/dcim/trace/cable.html
%%DATADIR%%/templates/dcim/trace/circuit.html
%%DATADIR%%/templates/dcim/trace/device.html
+%%DATADIR%%/templates/dcim/trace/object.html
%%DATADIR%%/templates/dcim/trace/powerpanel.html
%%DATADIR%%/templates/dcim/trace/termination.html
%%DATADIR%%/templates/dcim/virtualchassis.html
@@ -1506,8 +1551,10 @@
%%DATADIR%%/templates/extras/inc/configcontext_format.html
%%DATADIR%%/templates/extras/inc/job_label.html
%%DATADIR%%/templates/extras/inc/tags_panel.html
+%%DATADIR%%/templates/extras/journalentry.html
%%DATADIR%%/templates/extras/object_changelog.html
%%DATADIR%%/templates/extras/object_configcontext.html
+%%DATADIR%%/templates/extras/object_journal.html
%%DATADIR%%/templates/extras/objectchange.html
%%DATADIR%%/templates/extras/objectchange_list.html
%%DATADIR%%/templates/extras/report.html
@@ -1517,8 +1564,8 @@
%%DATADIR%%/templates/extras/script_list.html
%%DATADIR%%/templates/extras/script_result.html
%%DATADIR%%/templates/extras/tag.html
-%%DATADIR%%/templates/extras/tag_edit.html
%%DATADIR%%/templates/extras/templatetags/log_level.html
+%%DATADIR%%/templates/generic/object.html
%%DATADIR%%/templates/generic/object_bulk_add_component.html
%%DATADIR%%/templates/generic/object_bulk_delete.html
%%DATADIR%%/templates/generic/object_bulk_edit.html
@@ -1532,7 +1579,6 @@
%%DATADIR%%/templates/home.html
%%DATADIR%%/templates/import_success.html
%%DATADIR%%/templates/inc/ajax_loader.html
-%%DATADIR%%/templates/inc/created_updated.html
%%DATADIR%%/templates/inc/custom_fields_panel.html
%%DATADIR%%/templates/inc/image_attachments.html
%%DATADIR%%/templates/inc/modal.html
@@ -1542,33 +1588,33 @@
%%DATADIR%%/templates/inc/search_panel.html
%%DATADIR%%/templates/inc/table.html
%%DATADIR%%/templates/ipam/aggregate.html
-%%DATADIR%%/templates/ipam/aggregate_edit.html
%%DATADIR%%/templates/ipam/aggregate_list.html
%%DATADIR%%/templates/ipam/inc/ipadress_edit_header.html
%%DATADIR%%/templates/ipam/inc/service.html
%%DATADIR%%/templates/ipam/inc/toggle_available.html
-%%DATADIR%%/templates/ipam/inc/vlangroup_header.html
%%DATADIR%%/templates/ipam/ipaddress.html
%%DATADIR%%/templates/ipam/ipaddress_assign.html
%%DATADIR%%/templates/ipam/ipaddress_bulk_add.html
%%DATADIR%%/templates/ipam/ipaddress_edit.html
%%DATADIR%%/templates/ipam/prefix.html
+%%DATADIR%%/templates/ipam/prefix/base.html
+%%DATADIR%%/templates/ipam/prefix/ip_addresses.html
+%%DATADIR%%/templates/ipam/prefix/prefixes.html
%%DATADIR%%/templates/ipam/prefix_delete.html
-%%DATADIR%%/templates/ipam/prefix_edit.html
-%%DATADIR%%/templates/ipam/prefix_ipaddresses.html
%%DATADIR%%/templates/ipam/prefix_list.html
-%%DATADIR%%/templates/ipam/prefix_prefixes.html
-%%DATADIR%%/templates/ipam/rir_list.html
+%%DATADIR%%/templates/ipam/rir.html
+%%DATADIR%%/templates/ipam/role.html
%%DATADIR%%/templates/ipam/routetarget.html
%%DATADIR%%/templates/ipam/service.html
%%DATADIR%%/templates/ipam/service_edit.html
%%DATADIR%%/templates/ipam/vlan.html
+%%DATADIR%%/templates/ipam/vlan/base.html
+%%DATADIR%%/templates/ipam/vlan/interfaces.html
+%%DATADIR%%/templates/ipam/vlan/vminterfaces.html
%%DATADIR%%/templates/ipam/vlan_edit.html
-%%DATADIR%%/templates/ipam/vlan_interfaces.html
-%%DATADIR%%/templates/ipam/vlan_vminterfaces.html
-%%DATADIR%%/templates/ipam/vlangroup_vlans.html
+%%DATADIR%%/templates/ipam/vlangroup.html
+%%DATADIR%%/templates/ipam/vlangroup_edit.html
%%DATADIR%%/templates/ipam/vrf.html
-%%DATADIR%%/templates/ipam/vrf_edit.html
%%DATADIR%%/templates/login.html
%%DATADIR%%/templates/media_failure.html
%%DATADIR%%/templates/panel_table.html
@@ -1582,8 +1628,9 @@
%%DATADIR%%/templates/secrets/secret_delete.html
%%DATADIR%%/templates/secrets/secret_edit.html
%%DATADIR%%/templates/secrets/secret_import.html
+%%DATADIR%%/templates/secrets/secretrole.html
%%DATADIR%%/templates/tenancy/tenant.html
-%%DATADIR%%/templates/tenancy/tenant_edit.html
+%%DATADIR%%/templates/tenancy/tenantgroup.html
%%DATADIR%%/templates/users/api_tokens.html
%%DATADIR%%/templates/users/base.html
%%DATADIR%%/templates/users/change_password.html
@@ -1602,11 +1649,15 @@
%%DATADIR%%/templates/utilities/templatetags/tag.html
%%DATADIR%%/templates/utilities/templatetags/utilization_graph.html
%%DATADIR%%/templates/virtualization/cluster.html
+%%DATADIR%%/templates/virtualization/cluster/base.html
+%%DATADIR%%/templates/virtualization/cluster/devices.html
+%%DATADIR%%/templates/virtualization/cluster/virtual_machines.html
%%DATADIR%%/templates/virtualization/cluster_add_devices.html
-%%DATADIR%%/templates/virtualization/cluster_edit.html
+%%DATADIR%%/templates/virtualization/clustergroup.html
+%%DATADIR%%/templates/virtualization/clustertype.html
%%DATADIR%%/templates/virtualization/virtualmachine.html
-%%DATADIR%%/templates/virtualization/virtualmachine_component_add.html
-%%DATADIR%%/templates/virtualization/virtualmachine_edit.html
+%%DATADIR%%/templates/virtualization/virtualmachine/base.html
+%%DATADIR%%/templates/virtualization/virtualmachine/interfaces.html
%%DATADIR%%/templates/virtualization/virtualmachine_list.html
%%DATADIR%%/templates/virtualization/vminterface.html
%%DATADIR%%/templates/virtualization/vminterface_edit.html
@@ -1617,7 +1668,7 @@
%%DATADIR%%/tenancy/api/urls.py
%%DATADIR%%/tenancy/api/views.py
%%DATADIR%%/tenancy/apps.py
-%%DATADIR%%/tenancy/filters.py
+%%DATADIR%%/tenancy/filtersets.py
%%DATADIR%%/tenancy/forms.py
%%DATADIR%%/tenancy/migrations/0001_initial.py
%%DATADIR%%/tenancy/migrations/0002_tenant_group_optional.py
@@ -1630,12 +1681,13 @@
%%DATADIR%%/tenancy/migrations/0009_standardize_description.py
%%DATADIR%%/tenancy/migrations/0010_custom_field_data.py
%%DATADIR%%/tenancy/migrations/0011_standardize_name_length.py
+%%DATADIR%%/tenancy/migrations/0012_standardize_models.py
%%DATADIR%%/tenancy/migrations/__init__.py
%%DATADIR%%/tenancy/models.py
%%DATADIR%%/tenancy/tables.py
%%DATADIR%%/tenancy/tests/__init__.py
%%DATADIR%%/tenancy/tests/test_api.py
-%%DATADIR%%/tenancy/tests/test_filters.py
+%%DATADIR%%/tenancy/tests/test_filtersets.py
%%DATADIR%%/tenancy/tests/test_views.py
%%DATADIR%%/tenancy/urls.py
%%DATADIR%%/tenancy/views.py
@@ -1646,7 +1698,8 @@
%%DATADIR%%/users/api/serializers.py
%%DATADIR%%/users/api/urls.py
%%DATADIR%%/users/api/views.py
-%%DATADIR%%/users/filters.py
+%%DATADIR%%/users/constants.py
+%%DATADIR%%/users/filtersets.py
%%DATADIR%%/users/forms.py
%%DATADIR%%/users/migrations/0001_api_tokens.py
%%DATADIR%%/users/migrations/0002_unicode_literals.py
@@ -1658,11 +1711,12 @@
%%DATADIR%%/users/migrations/0008_objectpermission.py
%%DATADIR%%/users/migrations/0009_replicate_permissions.py
%%DATADIR%%/users/migrations/0010_update_jsonfield.py
+%%DATADIR%%/users/migrations/0011_standardize_models.py
%%DATADIR%%/users/migrations/__init__.py
%%DATADIR%%/users/models.py
%%DATADIR%%/users/tests/__init__.py
%%DATADIR%%/users/tests/test_api.py
-%%DATADIR%%/users/tests/test_filters.py
+%%DATADIR%%/users/tests/test_filtersets.py
%%DATADIR%%/users/tests/test_models.py
%%DATADIR%%/users/urls.py
%%DATADIR%%/users/views.py
@@ -1702,6 +1756,7 @@
%%DATADIR%%/utilities/templates/widgets/colorselect_option.html
%%DATADIR%%/utilities/templates/widgets/select_contenttype.html
%%DATADIR%%/utilities/templates/widgets/select_option_with_pk.html
+%%DATADIR%%/utilities/templates/widgets/select_speed.html
%%DATADIR%%/utilities/templates/widgets/selectwithdisabled_option.html
%%DATADIR%%/utilities/templates/widgets/sluginput.html
%%DATADIR%%/utilities/templatetags/__init__.py
@@ -1711,6 +1766,8 @@
%%DATADIR%%/utilities/templatetags/perms.py
%%DATADIR%%/utilities/testing/__init__.py
%%DATADIR%%/utilities/testing/api.py
+%%DATADIR%%/utilities/testing/base.py
+%%DATADIR%%/utilities/testing/filtersets.py
%%DATADIR%%/utilities/testing/utils.py
%%DATADIR%%/utilities/testing/views.py
%%DATADIR%%/utilities/tests/__init__.py
@@ -1732,7 +1789,7 @@
%%DATADIR%%/virtualization/api/views.py
%%DATADIR%%/virtualization/apps.py
%%DATADIR%%/virtualization/choices.py
-%%DATADIR%%/virtualization/filters.py
+%%DATADIR%%/virtualization/filtersets.py
%%DATADIR%%/virtualization/forms.py
%%DATADIR%%/virtualization/migrations/0001_virtualization.py
%%DATADIR%%/virtualization/migrations/0002_virtualmachine_add_status.py
@@ -1753,12 +1810,16 @@
%%DATADIR%%/virtualization/migrations/0017_update_jsonfield.py
%%DATADIR%%/virtualization/migrations/0018_custom_field_data.py
%%DATADIR%%/virtualization/migrations/0019_standardize_name_length.py
+%%DATADIR%%/virtualization/migrations/0020_standardize_models.py
+%%DATADIR%%/virtualization/migrations/0021_virtualmachine_vcpus_decimal.py
+%%DATADIR%%/virtualization/migrations/0022_vminterface_parent.py
+%%DATADIR%%/virtualization/migrations/0023_virtualmachine_natural_ordering.py
%%DATADIR%%/virtualization/migrations/__init__.py
%%DATADIR%%/virtualization/models.py
%%DATADIR%%/virtualization/tables.py
%%DATADIR%%/virtualization/tests/__init__.py
%%DATADIR%%/virtualization/tests/test_api.py
-%%DATADIR%%/virtualization/tests/test_filters.py
+%%DATADIR%%/virtualization/tests/test_filtersets.py
%%DATADIR%%/virtualization/tests/test_models.py
%%DATADIR%%/virtualization/tests/test_views.py
%%DATADIR%%/virtualization/urls.py