Releases: netbox-community/netbox
v4.2.1 - 2025-01-08
Bug Fixes
- #18282 - Fix ordering of prefixes list by assigned VLAN
- #18314 - Fix KeyError exception when rendering pre-saved dashboard (
requires_internet
missing) - #18316 - Fix AttributeError exception when global search results include prefixes and/or clusters
- #18318 - Correct navigation breadcrumbs for module type UI view
- #18324 - Correct filtering for certain related object listings
- #18329 - Address upstream bug in GraphQL API where only one primary IP address is returned within a device/VM list
v4.2.0 - 2025-01-06
Warning
This release requires PostgreSQL 13 or later. Please ensure you are running a suitable version of PostgreSQL before attempting to upgrade.
Breaking Changes
- Support for the Django admin UI has been completely removed. (The Django admin UI was disabled by default in NetBox v4.0.)
- This release drops support for PostgreSQL 12. PostgreSQL 13 or later is required to run this release.
- NetBox has adopted collation-based natural ordering for many models. This may alter the order in which some objects are listed by default.
- Automatic redirects from pre-v4.1 UI views for virtual disks have been removed.
- The
site
andprovider_network
foreign key fields oncircuits.CircuitTermination
have been replaced by thetermination
generic foreign key. - The
site
foreign key field onipam.Prefix
has been replaced by thescope
generic foreign key. - The
site
foreign key field onvirtualization.Cluster
has been replaced by thescope
generic foreign key. - The
circuit
foreign key field oncircuits.CircuitGroupAssignment
has been replaced by themember
generic foreign key. - Obsolete nested REST API serializers have been removed. These were deprecated in NetBox v4.1 under #17143.
New Features
Assign Multiple MAC Addresses per Interface (#4867)
MAC addresses are now managed as independent objects, rather than attributes on device and VM interfaces. NetBox now supports the assignment of multiple MAC addresses per interface, and allows a primary MAC address to be designated for each.
Quick Add UI Widget (#5858)
A new UI widget has been introduced to enable conveniently creating new related objects while creating or editing an object. For instance, it is now possible to create and assign a new device role when creating or editing a device from within the device form.
VLAN Translation (#7336)
User can now define policies which track the translation of VLAN IDs on IEEE 802.1Q-encapsulated interfaces. Translation policies can be reused across multiple interfaces.
Virtual Circuits (#13086)
New models have been introduced to support the documentation of virtual circuits as an extension to the physical circuit modeling already supported. This enables users to accurately reflect point-to-point or multipoint virtual circuits atop infrastructure comprising physical circuits and cables.
Q-in-Q Encapsulation (#13428)
NetBox now supports the designation of customer VLANs (CVLANs) and service VLANs (SVLANs) to support IEEE 802.1ad/Q-in-Q encapsulation. Each interface can now have it mode designated "Q-in-Q" and be assigned an SVLAN.
Enhancements
- #6414 - Prefixes can now be scoped by region, site group, site, or location
- #7699 - Virtualization clusters can now be scoped by region, site group, site, or location
- #9604 - The scope of a circuit termination now include a region, site group, site, location, or provider network
- #10711 - Wireless LANs can now be scoped by region, site group, site, or location
- #11279 - Improved the use of natural ordering for various models throughout the application
- #12596 - Extended the virtualization clusters REST API endpoint to report on allocated VM resources
- #16547 - Add a geographic distance field for circuits
- #16783 - Add an operational status field for inventory items
- #17195 - Add a color field for power outlets
Plugins
- #15093 - Introduced the
events_pipeline
configuration parameter, which allows plugins to hook into NetBox event processing - #16546 - NetBoxModel now provides a default
get_absolute_url()
method - #16971 - Plugins can now easily register system jobs to perform background tasks
- #17029 - Registering a
PluginTemplateExtension
subclass for a single model has been deprecated (replacemodel
withmodels
) - #18023 - Extend
register_model_view()
to handle list views
Other Changes
- #16136 - Removed support for the Django admin UI
- #17165 - All obsolete nested REST API serializers have been removed
- #17472 - The legacy staged changes API has been deprecated, and will be removed in Netbox v4.3
- #17476 - Upgrade to Django 5.1
- #17752 - Bulk object import URL paths have been renamed from
*_import
to*_bulk_import
- #17761 - Optional choice fields now store empty values as null (rather than empty strings) in the database
- #18093 - Redirects for pre-v4.1 virtual disk UI views have been removed
v4.1.11 - 2025-01-06
Bug Fixes
- #17771 - Fix duplicate entries appearing on VLAN list when filtering by interface assignment
- #18222 - Pass event rule action data to webhooks as context data
- #18263 - Fix recalculation of cable paths when modifying cable terminations via the REST API
- #18271 - Require only encryption or authentication algorithm when creating an IPSec proposal via the REST API
- #18289 - Enable ordering modules and module types by created & last updated times
v4.1.10 - 2024-12-23
Bug Fixes
- #18260 - Fix object change logging
v4.1.9 - 2024-12-18
Caution
This release contains a regression which breaks change logging. Please use release v4.1.10 instead.
Enhancements
- #17215 - Change the highlighted color of disabled interfaces in interface lists
- #18224 - Apply all registered request processors when running custom scripts
Bug Fixes
- #16757 - Fix rendering of IP addresses table when assigning an existing IP address to an interface with global HTMX navigation enabled
- #17868 - Fix
ZeroDivisionError
exception under specific circumstances when generating a cable trace - #18124 - Enable referencing cable attributes when querying a
cabletermination_set
via the GraphQL API - #18230 - Fix
AttributeError
exception when attempting to edit an IP address assigned to a virtual machine interface
v4.1.8 - 2024-12-12
Enhancements
- #17071 - Enable OOB IP address designation during bulk import
- #17465 - Enable designation of rack type during bulk import & bulk edit
- #17889 - Enable designating an IP address as out-of-band for a device upon creation
- #17960 - Add L2TP, PPTP, Wireguard, and OpenVPN tunnel types
- #18021 - Automatically clear cache on restart when
DEBUG
is enabled - #18061 - Omit stack trace from rendered device/VM configuration when an exception is raised
- #18065 - Include status in device details when hovering on rack elevation
- #18211 - Enable the dynamic registration of context managers for request processing
Bug Fixes
- #14044 - Fix unhandled AttributeError exception when bulk renaming objects
- #17490 - Fix dynamic inclusion support for config templates
- #17810 - Fix validation of racked device fields when modifying via REST API
- #17820 - Ensure default custom field values are populated when creating new modules
- #18044 - Show plugin-generated alerts within UI views for custom scripts
- #18150 - Fix REST API pagination for low
MAX_PAGE_SIZE
values - #18183 - Omit UI navigation bar when printing
- #18213 - Fix searching for ASN ranges by name
v4.2-beta1 - 2024-12-02
Caution
This is a beta release of NetBox intended for testing and evaluation. Do not use this software in production. Also be aware that no upgrade path is provided to future releases.
Breaking Changes
- Support for the Django admin UI has been completely removed. (The Django admin UI was disabled by default in NetBox v4.0.)
- NetBox has adopted collation-based natural ordering for many models. This may alter the order in which some objects are listed by default.
- Automatic redirects from pre-v4.1 UI views for virtual disks have been removed.
- The
site
andprovider_network
foreign key fields oncircuits.CircuitTermination
have been replaced by thetermination
generic foreign key. - The
site
foreign key field onipam.Prefix
has been replaced by thescope
generic foreign key. - The
site
foreign key field onvirtualization.Cluster
has been replaced by thescope
generic foreign key. - Obsolete nested REST API serializers have been removed. These were deprecated in NetBox v4.1 under #17143.
New Features
Assign Multiple MAC Addresses per Interface (#4867)
MAC addresses are now managed as independent objects, rather than attributes on device and VM interfaces. NetBox now supports the assignment of multiple MAC addresses per interface, and allows a primary MAC address to be designated for each.
Quick Add UI Widget (#5858)
A new UI widget has been introduced to enable conveniently creating new related objects while creating or editing an object. For instance, it is now possible to create and assign a new device role when creating or editing a device from within the device form.
VLAN Translation (#7336)
User can now define policies which track the translation of VLAN IDs on IEEE 802.1Q-encapsulated interfaces. Translation policies can be reused across multiple interfaces.
Virtual Circuits (#13086)
New models have been introduced to support the documentation of virtual circuits as an extension to the physical circuit modeling already supported. This enables users to accurately reflect point-to-point or multipoint virtual circuits atop infrastructure comprising physical circuits and cables.
Q-in-Q Encapsulation (#13428)
NetBox now supports the designation of customer VLANs (CVLANs) and service VLANs (SVLANs) to support IEEE 802.1ad/Q-in-Q encapsulation. Each interface can now have it mode designated "Q-in-Q" and be assigned an SVLAN.
Enhancements
- #6414 - Prefixes can now be scoped by region, site group, site, or location
- #7699 - Virtualization clusters can now be scoped by region, site group, site, or location
- #9604 - The scope of a circuit termination now include a region, site group, site, location, or provider network
- #10711 - Wireless LANs can now be scoped by region, site group, site, or location
- #11279 - Improved the use of natural ordering for various models throughout the application
- #12596 - Extended the virtualization clusters REST API endpoint to report on allocated VM resources
- #16547 - Add a geographic distance field for circuits
- #16783 - Add an operational status field for inventory items
- #17195 - Add a color field for power outlets
Plugins
- #15093 - Introduced the
events_pipeline
configuration parameter, which allows plugins to hook into NetBox event processing - #16546 - NetBoxModel now provides a default
get_absolute_url()
method - #16971 - Plugins can now easily register system jobs to perform background tasks
- #17029 - Registering a
PluginTemplateExtension
subclass for a single model has been deprecated (replacemodel
withmodels
) - #18023 - Extend
register_model_view()
to handle list views
Other Changes
- #16136 - Removed support for the Django admin UI
- #17165 - All obsolete nested REST API serializers have been removed
- #17472 - The legacy staged changes API has been deprecated, and will be removed in Netbox v4.3
- #17476 - Upgrade to Django 5.1
- #17752 - Bulk object import URL paths have been renamed from
*_import
to*_bulk_import
- #17761 - Optional choice fields now store empty values as null (rather than empty strings) in the database
- #18093 - Redirects for pre-v4.1 virtual disk UI views have been removed
v4.1.7 - 2024-11-21
Enhancements
- #15239 - Enable adding/removing individual VLANs while bulk editing device interfaces
- #17871 - Enable the assignment/removal of virtualization cluster via device bulk edit
- #17934 - Add 1000Base-LX interface type
- #18007 - Hide sensitive parameters under data source view (even for privileged users)
Bug Fixes
- #17459 - Correct help text on
name
field of module type component templates - #17901 - Ensure GraphiQL UI resources are served locally
- #17921 - Fix scheduling of recurring custom scripts
- #17923 - Fix the execution of custom scripts via REST API & management command
- #17963 - Fix selection of all listed objects during bulk edit
- #17969 - Fix system info export when a config revision exists
- #17972 - Force evaluation of
LOGIN_REQUIRED
when requesting static media - #17986 - Correct labels for virtual machine & virtual disk size properties
- #18037 - Fix validation of maximum VLAN ID value when defining VLAN groups
- #18038 - The
to_grams()
utility function should always return an integer value
v4.1.6 - 2024-10-31
v4.1.5 - 2024-10-28
Enhancements
- #17789 - Provide a single "scope" field for bulk editing VLAN group scope assignments
Bug Fixes
- #17358 - Fix validation of overlapping IP ranges
- #17374 - Fix styling of highlighted table rows in dark mode
- #17460 - Ensure bulk action buttons are consistent for device type components
- #17635 - Ensure AbortTransaction is caught when running a custom script with
commit=False
- #17685 - Ensure background jobs are validated before being scheduled
- #17710 - Remove cached fields on CableTermination model from GraphQL API
- #17740 - Ensure support for image attachments with a
.webp
file extension - #17749 - Restore missing
devicetypes
andchildren
fields for several objects in GraphQL API - #17754 - Remove paginator from version history table under plugin view
- #17759 - Retain
job_timeout
value when scheduling a recurring custom script - #17774 - Fix SSO login support for Entra ID (formerly Azure AD)
- #17802 - Fix background color for bulk rename buttons in list views
- #17838 - Adjust
manage.py
to referencepython3
executable