Skip to content

Releases: netbox-community/netbox

v4.2.1 - 2025-01-08

08 Jan 15:20
d04fc11
Compare
Choose a tag to compare

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

06 Jan 21:15
Compare
Choose a tag to compare

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 and provider_network foreign key fields on circuits.CircuitTermination have been replaced by the termination generic foreign key.
  • The site foreign key field on ipam.Prefix has been replaced by the scope generic foreign key.
  • The site foreign key field on virtualization.Cluster has been replaced by the scope generic foreign key.
  • The circuit foreign key field on circuits.CircuitGroupAssignment has been replaced by the member 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 (replace model with models)
  • #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

06 Jan 16:52
Compare
Choose a tag to compare

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

23 Dec 16:43
c6452b3
Compare
Choose a tag to compare

Bug Fixes

  • #18260 - Fix object change logging

v4.1.9 - 2024-12-18

18 Dec 15:14
1a631dd
Compare
Choose a tag to compare

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

12 Dec 15:53
b89601d
Compare
Choose a tag to compare

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

02 Dec 15:32
Compare
Choose a tag to compare
Pre-release

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 and provider_network foreign key fields on circuits.CircuitTermination have been replaced by the termination generic foreign key.
  • The site foreign key field on ipam.Prefix has been replaced by the scope generic foreign key.
  • The site foreign key field on virtualization.Cluster has been replaced by the scope 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 (replace model with models)
  • #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

21 Nov 18:52
9c7f2ec
Compare
Choose a tag to compare

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

31 Oct 17:51
58bc388
Compare
Choose a tag to compare

Bug Fixes

  • #17700 - Fix warning when no scripts are found within a script module
  • #17884 - Fix translation support for certain tab headings
  • #17885 - Fix regression preventing custom scripts from executing

v4.1.5 - 2024-10-28

28 Oct 21:21
58d9057
Compare
Choose a tag to compare

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 and children 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 reference python3 executable