5.8 KiB
NetBox v3.4
!!! warning "PostgreSQL 11 Required" NetBox v3.4 requires PostgreSQL 11 or later.
Breaking Changes
- Device and virtual machine names are no longer case-sensitive. Attempting to create e.g. "device1" and "DEVICE1" will raise a validation error.
- The
asnfield has been removed from the provider model. Please replicate any provider ASN assignments to the ASN model introduced in NetBox v3.1 prior to upgrading. - The
noc_contact,admin_contact, andportal_urlfields have been removed from the provider model. Please replicate any data remaining in these fields to the contact model introduced in NetBox v3.1 prior to upgrading. - The
content_typefield on the CustomLink and ExportTemplate models have been renamed tocontent_typesand now supports the assignment of multiple content types.
New Features
New Global Search (#10560)
NetBox's global search functionality has been completely overhauled and replaced by a new cache-based lookup.
CSV-Based Bulk Updates (#7961)
NetBox's CSV-based bulk import functionality has been extended to support also modifying existing objects. When an id column is present in the import form, it will be used to infer the object to be modified, rather than a new object being created. All fields (columns) are optional when modifying existing objects.
Top-Level Plugin Navigation Menus (#9071)
A new PluginMenu class has been introduced, which enables a plugin to inject a top-level menu in NetBox's navigation menu. This menu can have one or more groups of menu items, just like core items. Backward compatibility with the existing menu_items has been maintained.
Enhancements
- #8245 - Enable GraphQL filtering of related objects
- #8274 - Enable associating a custom link with multiple object types
- #9249 - Device and virtual machine names are no longer case-sensitive
- #9478 - Add
link_peersfield to GraphQL types for cabled objects - #9654 - Add
weightfield to racks, device types, and module types - #9817 - Add
assigned_objectfield to GraphQL type for IP addresses and L2VPN terminations - #9832 - Add
mounting_depthfield to rack model - #9892 - Add optional
namefield for FHRP groups - #10348 - Add decimal custom field type
- #10556 - Include a
displayfield in all GraphQL object types - #10595 - Add GraphQL relationships for additional generic foreign key fields
- #10761 - Enable associating an export template with multiple object types
Plugins API
- #8927 - Enable inclusion of plugin models in global search via
SearchIndex - #9071 - Introduce
PluginMenufor top-level plugin navigation menus - #9072 - Enable registration of tabbed plugin views for core NetBox models
- #9880 - Introduce
django_appsplugin configuration parameter - #9887 - Inspect
docs_urlproperty to determine link to model documentation - #10314 - Move
clone()method from NetBoxModel to CloningMixin - #10739 - Introduce
get_queryset()method on generic views
Other Changes
- #9045 - Remove legacy ASN field from provider model
- #9046 - Remove legacy contact fields from provider model
- #10358 - Raise minimum required PostgreSQL version from 10 to 11
- #10699 - Remove custom
import_object()function
REST API Changes
- circuits.provider
- Removed the
asn,noc_contact,admin_contact, andportal_urlfields
- Removed the
- dcim.DeviceType
- Added optional
weightandweight_unitfields
- Added optional
- dcim.ModuleType
- Added optional
weightandweight_unitfields
- Added optional
- dcim.Rack
- Added optional
weightandweight_unitfields
- Added optional
- extras.CustomLink
- Renamed
content_typefield tocontent_types
- Renamed
- extras.ExportTemplate
- Renamed
content_typefield tocontent_types
- Renamed
- ipam.FHRPGroup
- Added optional
namefield
- Added optional
GraphQL API Changes
- All object types now include a
displayfield - All cabled object types now include a
link_peersfield - Add a
contactsrelationship for all relevant models - dcim.Cable
- Add A/B terminations fields
- dcim.CableTermination
- Add
terminationfield
- Add
- dcim.InventoryItem
- Add
componentfield
- Add
- dcim.InventoryItemTemplate
- Add
componentfield
- Add
- dcim.Rack
- Add
mounting_depthfield
- Add
- ipam.FHRPGroupAssignment
- Add
interfacefield
- Add
- ipam.IPAddress
- Add
assigned_objectfield
- Add
- ipam.L2VPNTermination
- Add
assigned_objectfield
- Add
- ipam.VLANGroupType
- Add
scopefield
- Add