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