mirror of
https://github.com/netbox-community/netbox.git
synced 2025-12-10 02:19:37 -06:00
12 KiB
12 KiB
NetBox v3.3
v3.3.0 (FUTURE)
Breaking Changes
- Device position and rack unit values are now reported as decimals (e.g.
1.0or1.5) to support modeling half-height rack units. - The
nat_outsiderelation on the IP address model now returns a list of zero or more related IP addresses, rather than a single instance (or None). - Several fields on the cable API serializers have been altered to support multiple-object cable terminations:
| Old Name | Old Type | New Name | New Type |
|---|---|---|---|
termination_a_type |
string | a_terminations_type |
string |
termination_b_type |
string | b_terminations_type |
string |
termination_a_id |
integer | Removed | - |
termination_b_id |
integer | Removed | - |
termination_a |
object | a_terminations |
list |
termination_b |
object | b_terminations |
list |
- As with the cable model, several API fields on all objects to which cables can be connected (interfaces, circuit terminations, etc.) have been changed:
| Old Name | Old Type | New Name | New Type |
|---|---|---|---|
link_peer |
object | link_peers |
list |
link_peer_type |
string | link_peers_type |
string |
connected_endpoint |
object | connected_endpoints |
list |
connected_endpoint_type |
string | connected_endpoints_type |
string |
connected_endpoint_reachable |
boolean | connected_endpoints_reachable |
boolean |
- The cable path serialization returned by the
/paths/endpoint for pass-through ports has been simplified, and the following fields removed:origin_type,origin,destination_type,destination. (Additionally,is_completehas been added.)
New Features
Half-Height Rack Units (#51)
PoE Interface Attributes (#1099)
L2VPN Modeling (#8157)
Restrict API Tokens by Client IP (#8233)
Reference User in Permission Constraints (#9074)
Multi-object Cable Terminations (#9102)
Enhancements
- #1202 - Support overlapping assignment of NAT IP addresses
- #4350 - Illustrate reservations vertically alongside rack elevations
- #4434 - Enable highlighting devices within rack elevations
- #5303 - A virtual machine may be assigned to a site and/or cluster
- #7120 - Add
termination_datefield to Circuit - #7744 - Add
statusfield to Location - #8171 - Populate next available address when cloning an IP
- #8222 - Enable the assignment of a VM to a specific host device within a cluster
- #8471 - Add
statusfield to Cluster - #8495 - Enable custom field grouping
- #8511 - Enable custom fields and tags for circuit terminations
- #8995 - Enable arbitrary ordering of REST API results
- #9070 - Hide navigation menu items based on user permissions
- #9166 - Add UI visibility toggle for custom fields
- #9177 - Add tenant assignment for wireless LANs & links
- #9536 - Track API token usage times
- #9582 - Enable assigning config contexts based on device location
Plugins API
- #9075 - Introduce
AbortRequestexception for cleanly interrupting object mutations - #9092 - Add support for
ObjectChildrenViewgeneric view - #9228 - Subclasses of
ChangeLoggingMixincan overrideserialize_object()to control JSON serialization for change logging - #9414 - Add
clone()method to NetBoxModel for copying instance attributes - #9647 - Introduce
customfield_valuetemplate tag
Other Changes
- #9261 -
NetBoxTableno longer automatically clears pre-existing calls toprefetch_related()on its queryset - #9434 - Enabled
django-richtest runner for more user-friendly output
REST API Changes
- Added the following endpoints:
/api/dcim/cable-terminations//api/ipam/l2vpns//api/ipam/l2vpn-terminations/
- circuits.Circuit
- Added optional
termination_datefield
- Added optional
- circuits.CircuitTermination
link_peerhas been renamed tolink_peersand now returns a list of objectslink_peer_typehas been renamed tolink_peers_typeconnected_endpointhas been renamed toconnected_endpointsand now returns a list of objectsconnected_endpoint_typehas been renamed toconnected_endpoints_typeconnected_endpoint_reachablehas been renamed toconnected_endpoints_reachable- Added
custom_fieldsandtagsfields
- dcim.Cable
termination_a_typehas been renamed toa_terminations_typetermination_b_typehas been renamed tob_terminations_typetermination_arenamed toa_terminationsand now returns a list of objectstermination_brenamed tob_terminationsand now returns a list of objectstermination_a_idhas been removedtermination_b_idhas been removed
- dcim.ConsolePort
link_peerhas been renamed tolink_peersand now returns a list of objectslink_peer_typehas been renamed tolink_peers_typeconnected_endpointhas been renamed toconnected_endpointsand now returns a list of objectsconnected_endpoint_typehas been renamed toconnected_endpoints_typeconnected_endpoint_reachablehas been renamed toconnected_endpoints_reachable
- dcim.ConsoleServerPort
link_peerhas been renamed tolink_peersand now returns a list of objectslink_peer_typehas been renamed tolink_peers_typeconnected_endpointhas been renamed toconnected_endpointsand now returns a list of objectsconnected_endpoint_typehas been renamed toconnected_endpoints_typeconnected_endpoint_reachablehas been renamed toconnected_endpoints_reachable
- dcim.Device
- The
positionfield has been changed from an integer to a decimal
- The
- dcim.DeviceType
- The
u_heightfield has been changed from an integer to a decimal
- The
- dcim.FrontPort
link_peerhas been renamed tolink_peersand now returns a list of objectslink_peer_typehas been renamed tolink_peers_typeconnected_endpointhas been renamed toconnected_endpointsand now returns a list of objectsconnected_endpoint_typehas been renamed toconnected_endpoints_typeconnected_endpoint_reachablehas been renamed toconnected_endpoints_reachable
- dcim.Interface
link_peerhas been renamed tolink_peersand now returns a list of objectslink_peer_typehas been renamed tolink_peers_typeconnected_endpointhas been renamed toconnected_endpointsand now returns a list of objectsconnected_endpoint_typehas been renamed toconnected_endpoints_typeconnected_endpoint_reachablehas been renamed toconnected_endpoints_reachable- Added the optional
poe_modeandpoe_typefields - Added the
l2vpn_terminationread-only field
- dcim.Location
- Added required
statusfield (default value:active)
- Added required
- dcim.PowerOutlet
link_peerhas been renamed tolink_peersand now returns a list of objectslink_peer_typehas been renamed tolink_peers_typeconnected_endpointhas been renamed toconnected_endpointsand now returns a list of objectsconnected_endpoint_typehas been renamed toconnected_endpoints_typeconnected_endpoint_reachablehas been renamed toconnected_endpoints_reachable
- dcim.PowerFeed
link_peerhas been renamed tolink_peersand now returns a list of objectslink_peer_typehas been renamed tolink_peers_typeconnected_endpointhas been renamed toconnected_endpointsand now returns a list of objectsconnected_endpoint_typehas been renamed toconnected_endpoints_typeconnected_endpoint_reachablehas been renamed toconnected_endpoints_reachable
- dcim.PowerPort
link_peerhas been renamed tolink_peersand now returns a list of objectslink_peer_typehas been renamed tolink_peers_typeconnected_endpointhas been renamed toconnected_endpointsand now returns a list of objectsconnected_endpoint_typehas been renamed toconnected_endpoints_typeconnected_endpoint_reachablehas been renamed toconnected_endpoints_reachable
- dcim.Rack
- The
elevationendpoint now includes half-height rack units, and utilizes decimal values for the ID and name of each unit
- The
- dcim.RearPort
link_peerhas been renamed tolink_peersand now returns a list of objectslink_peer_typehas been renamed tolink_peers_typeconnected_endpointhas been renamed toconnected_endpointsand now returns a list of objectsconnected_endpoint_typehas been renamed toconnected_endpoints_typeconnected_endpoint_reachablehas been renamed toconnected_endpoints_reachable
- extras.ConfigContext
- Added the
locationsmany-to-many field to track the assignment of ConfigContexts to Locations
- Added the
- extras.CustomField
- Added
group_nameandui_visibilityfields
- Added
- ipam.IPAddress
- The
nat_insidefield no longer requires a unique value - The
nat_outsidefield has changed from a single IP address instance to a list of multiple IP addresses
- The
- ipam.VLAN
- Added the
l2vpn_terminationread-only field
- Added the
- users.Token
- Added the
allowed_ipsarray field - Added the read-only
last_useddatetime field
- Added the
- virtualization.Cluster
- Added required
statusfield (default value:active)
- Added required
- virtualization.VirtualMachine
- The
sitefield is now directly writable (rather than being inferred from the assigned cluster) - The
clusterfield is now optional. A virtual machine must have a site and/or cluster assigned. - Added the
devicefield - Added the
l2vpn_terminationread-only field wireless.WirelessLAN - Added
tenantfield wireless.WirelessLink - Added
tenantfield
- The