mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
6.3 KiB
6.3 KiB
NetBox v4.0
v4.0.0 (FUTURE)
Breaking Changes
- The deprecated
device_role
&device_role_id
filters for devices have been removed. (Userole
androle_id
instead.) - The legacy reports functionality has been dropped. Reports will be automatically converted to custom scripts on upgrade.
- The
parent
andparent_id
filters for locations now return only immediate children of the specified location. (Useancestor
andancestor_id
to return all descendants.)
New Features
Complete UI Refresh (#12128)
The NetBox user interface has been completely refreshed and updated.
Dynamic REST API Fields (#15087)
The REST API now supports specifying which fields to include in the response data.
Advanced FieldSet Functionality (#14739)
New resources have been introduced to enable advanced form rendering without a need for custom HTML templates.
Enhancements
- #12851 - Replace bleach HTML sanitization library with nh3
- #13283 - Display additional context on API-backed dropdown fields
- #13918 - Add
facility
field to Location model - #14237 - Automatically clear dependent selection fields when modifying a parent selection
- #14454 - Include member devices for virtual chassis in REST API
- #14637 - Upgrade to Django 5.0
- #14672 - Add support for Python 3.12
- #14728 - The plugins list view has been moved from the legacy admin UI to the main NetBox UI
- #14729 - All background task views have been moved from the legacy admin UI to the main NetBox UI
- #14438 - Track individual custom scripts as database objects
- #15131 - Automatically annotate related object counts on REST API querysets
- #15237 - Ensure consistent filtering ability for all model fields
- #15238 - Include the
description
field in "brief" REST API serializations - #15383 - Standardize filtering logic for the parents of recursively-nested models (parent & ancestor filters)
Other Changes
- #12325 - The Django admin UI is now disabled by default (set
DJANGO_ADMIN_ENABLED
to True to enable it) - #12510 - Dropped support for legacy reports
- #12795 - NetBox now uses custom User and Group models rather than the stock models provided by Django
- #13647 - Squash all database migrations prior to v3.7
- #14092 - Remove backward compatibility for importing plugin resources from
extras.plugins
(nownetbox.plugins
) - #14638 - Drop support for Python 3.8 and 3.9
- #14657 - Remove backward compatibility for old permissions mapping under
ActionsMixin
- #14658 - Remove backward compatibility for importing
process_webhook()
(nowextras.webhooks.send_webhook()
) - #14740 - Remove the obsolete
BootstrapMixin
form mixin class - #15042 - Rearchitect the logic for registering models & model features
- #15099 - Remove obsolete
device_role
anddevice_role_id
filters for devices - #15100 - Remove obsolete
NullableCharField
class - #15193 - Switch to compiled distribution of the
psycopg
library - #15277 - Replace references to ContentType without ObjectType proxy model & standardize field names
- #15292 - Remove obsolete
device_role
attribute from Device model (this field was renamed torole
in v3.6)
REST API Changes
- The
/api/extras/content-types/
endpoint has moved to/api/extras/object-types/
- dcim.Device
- The obsolete read-only attribute
device_role
has been removed (replaced byrole
in v3.6)
- The obsolete read-only attribute
- extras.CustomField
content_types
has been renamed toobject_types
- The
content_types
filter is nowobject_type
- The
content_type_id
filter is nowobject_type_id
- extras.CustomLink
content_types
has been renamed toobject_types
- The
content_types
filter is nowobject_type
- The
content_type_id
filter is nowobject_type_id
- extras.EventRule
content_types
has been renamed toobject_types
- The
content_types
filter is nowobject_type
- The
content_type_id
filter is nowobject_type_id
- extras.ExportTemplate
content_types
has been renamed toobject_types
- The
content_types
filter is nowobject_type
- The
content_type_id
filter is nowobject_type_id
- extras.ImageAttachment
content_type
has been renamed toobject_type
- The
content_type
filter is nowobject_type
- extras.SavedFilter
content_types
has been renamed toobject_types
- The
content_types
filter is nowobject_type
- The
content_type_id
filter is nowobject_type_id
- tenancy.ContactAssignment
content_type
has been renamed toobject_type
- The
content_type_id
filter is nowobject_type_id