Skip to content

Releases: netbox-community/netbox

v4.2.6 - 2025-03-21

21 Mar 21:20
e186113
Compare
Choose a tag to compare

Enhancements

  • #17503 - Add rack title above rack on rack detail view
  • #17686 - Add config option for disk space divisor
  • #18579 - Update filtersets and filter forms to include contact filters where missing
  • #18744 - Ensure contact link in tables is hyperlinked
  • #18816 - Add FC/UPC, FC/APC and FC/PC port types
  • #18880 - Delay enqueuing background tasks until DB transaction is committed to avoid race condition
  • #18939 - Support site group search for ASNs

Bug Fixes

  • #18409 - Eliminate N+1 issue by adding generic prefetch operation to Interface API endpoint
  • #18557 - Update JSONField to enclose bare string values in quotes
  • #18582 - Fix prefix bulk import with associated VLAN and conflicting VLAN IDs
  • #18742 - Ensure location list and detail views show related VLAN group information
  • #18782 - Ensure misconfigured object list widgets on the dashboard now degrade gracefully
  • #18833 - Fix inventory item bulk edit to ensure that component name and type are both validated Ensure
  • #18838 - Ensure that local context data correctly rejects falsy values
  • #18845 - Restore default sort behavior of name column on devices list view
  • #18863 - Exempt MPTT-based models from ordering fix introduced in #18279
  • #18869 - Ensure numeric conversion helper always return a clean decimal value
  • #18872 - Ensure that kind is a required field when making journal entries
  • #18884 - Ensure tag deserialization is handled correctly
  • #18887 - Allow VM interface objects to be set on prefix object-type custom field
  • #18926 - Fix icon displayed for GitHub authentication on login page
  • #18928 - Support cascading deletions when cleaning up expired changelog records
  • #18933 - Allow filtering VLAN groups by associated site groups
  • #18944 - Ensure clearing "Widget type" field when adding widgets to dashboard does not cause a "ValueError: Unregistered widget class" error
  • #18949 - Add missing contacts property to GraphQL types where the associated model has a connection to a contact

v4.2.5 - 2025-03-06

06 Mar 15:11
2d35cc5
Compare
Choose a tag to compare

Enhancements

  • #17357 - Use VirtualChassis name as fallback for unnamed devices
  • #17542 - Add contact assignments to VPN tunnels
  • #17944 - Allow script inputs to be filtered on ObjectVar and MultiObjectVar selections
  • #18024 - Add permalink URL pattern to match a custom script by module and class name
  • #18095 - Ensure contacts are shown on children of objects with contacts
  • #18141 - Support "Quick Add" for plugins
  • #18403 - Improve performance of job list views
  • #18693 - Support setting VLAN translation on bulk edit of interfaces
  • #18772 - Add "type" filter for virtual circuits
  • #18774 - Add tooltip preview of tag descriptions when hovering over tags

Bug Fixes

  • #15016 - Prevent AssertionError when adding multiple devices "mid-span" in a cable trace
  • #15924 - Prevent setting tagged VLANs on interfaces with mode: tagged-all
  • #17488 - Ensure VLANGroup.vid_ranges shows up in API results
  • #17796 - Fix IndexError on "Create & Add Another" operation on custom field choices
  • #17709 - Allow primary key for nested models in OpenAPI request schemas
  • #18605 - Limit VLAN selection dropdown to choices appropriate to site
  • #18722 - Improve UI feedback on failed script execution
  • #18729 - Fix unpredictable ordering on querysets with annotations/groupings
  • #18753 - Prevent webhooks from being triggered on a script dry-run
  • #18758 - Fix FieldError when sorting by account count field in providers list
  • #18768 - Fix removing a secondary MAC address from an interface

v4.2.4 - 2025-02-21

21 Feb 20:36
c4304d0
Compare
Choose a tag to compare

Enhancements

  • #17309 - Omit empty counts in related object tables
  • #18277 - Improve multi-table inheritance in serialization of change-logged models
  • #18286 - Add more job duration choices
  • #18357 - Display author name in plugin list for locally installed plugins
  • #18408 - Add Paused status for virtual machines
  • #18584 - Add rack type column to manufacturer list

Bug Fixes

  • #17436 - Fix {module} replacement in module bays
  • #18013 - Limit object type to selected object in change log filter
  • #18241 - Default logging level of custom scripts changed to INFO
  • #18247 - Fix visibility of disabled cable paths in dark mode
  • #18480 - Clean data passed to script in runscript command
  • #18555 - Add default get_absolute_url method to plugin models
  • #18585 - Fix filtering circuits by location
  • #18593 - Fix "Create & Add Another" IP Address workflow
  • #18594 - Enable sorting by ASN count on site and provider lists
  • #18619 - Ensure shift-click selection selects only visible list items
  • #18674 - Preserve form values when selecting speed on circuit termination

v4.2.3 - 2025-02-04

04 Feb 20:37
260adfc
Compare
Choose a tag to compare

Enhancements

  • #18518 - Add a "hostname" <meta> tag to the page header

Bug Fixes

  • #18497 - Fix unhandled FieldDoesNotExist exception when search results include virtual circuit
  • #18433 - Fix MAC address not shown as "primary for interface" in MAC address detail view
  • #18154 - Allow anonymous users to change default table preferences
  • #18515 - Fix Django collectstatic management command in debug mode with Redis not running
  • #18456 - Avoid duplicate MAC Address column in interface tables
  • #18447 - Fix FieldError exception when sorting interface tables on MAC Address columns
  • #18438 - Improve performance in IPAM migration 0072_prefix_cached_relations when upgrading from v4.1 or earlier
  • #18436 - Reset primary MAC address when unassigning MAC address from interface
  • #18181 - Fix "Create & Add Another" workflow when adding IP addresses to interfaces

v4.2.2 - 2025-01-17

17 Jan 20:05
Compare
Choose a tag to compare

Bug Fixes

  • #18336 - Validate new rack height against installed devices when changing a rack's type
  • #18350 - Fix FieldDoesNotExist exception when global search results include a circuit termination
  • #18353 - Disable fetching of plugin catalog data when ISOLATED_DEPLOYMENT is enabled
  • #18362 - Avoid transmitting census data on every worker restart
  • #18363 - Fix support for assigning a MAC address to an interface via the REST API
  • #18368 - Restore missing attributes from REST API serializer for MAC addresses (tags, created, last_updated, and custom fields)
  • #18369 - Fix TypeError exception when rendering the system configuration view with one or more custom classes defined under PROTECTION_RULES
  • #18373 - Fix AttributeError exception when attempting to assign host devices to a cluster
  • #18376 - Fix the display of tagged VLANs in interfaces list for Q-in-Q interfaces
  • #18379 - Ensure RSS feed dashboard widget content is sanitized
  • #18392 - Virtual machines should not inherit config contexts assigned to locations
  • #18400 - Fix support for STORAGE_BACKEND configuration parameter
  • #18406 - Scope column headers in object lists should not be orderable

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