New Features
Background Jobs for Bulk Operations (#19589, #19891)
Most bulk operations, such as the import, modification, or deletion of objects can now be executed as a background job. This frees the user to continue working in NetBox while the bulk operation is processed. Once completed, the user will be notified of the job's result.
Logging Mechanism for Background Jobs (#19816)
A dedicated logging mechanism has been implemented for background jobs. Jobs can now easily record log messages by calling e.g. self.logger.info("Log message")
under the run()
method. These messages are displayed along with the job's resulting data. Supported log levels include DEBUG
, INFO
, WARNING
, and ERROR
.
Changelog Comments (#19713)
When creating, editing, or deleting objects in NetBox, users now have the option of providing a short message explaining the change. This message will be recorded on the resulting changelog records for all affected objects.
Config Context Data Validation (#19377)
A new ConfigContextProfile model has been introduced to support JSON schema validation for config context data. If a validation schema has been defined for a profile, all config contexts assigned to it will have their data validated against the schema whenever a change is made. (The assignment of a config context to a profile is optional.)
Enhancements
- #17413 - Platforms belonging to different manufacturers may now have identical names
- #18204 - Improved layout of the image attachments view & tables
- #18528 - Introduced the
HOSTNAME
configuration parameter to override the system hostname reported by NetBox - #18984 - Added a
status
field for rack reservations - #18990 - Image attachments now include an optional description field
- #19134 - Interface transmit power now accepts negative values
- #19231 - Bulk renaming support has been implemented in the UI for most object types
- #19591 - Thumbnails for all images attached to an object are now displayed under a dedicated tab
- #19722 - The REST API endpoint for object types has been extended to include additional details
- #19739 - Introduced a user preference for CSV delimiter
- #19740 - Enable nesting of platforms within a hierarchy for improved organization
- #19773 - Extend the system UI view with additional information
- #19893 - The
/api/status/
REST API endpoint now includes the system hostname - #19920 - Contacts can now be assigned to ASNs
- #19945 - Introduce a new custom script variable to represent decimal values
- #19965 - Add REST & GraphQL API request counters to the Prometheus metrics exporter
- #20029 - Include complete representation of object type in webhook payload data
Plugins
- #18006 - A Javascript is now triggered when UI is toggled between light and dark mode
- #19735 - Custom individual and bulk operations can now be registered under individual views using
ObjectAction
- #20003 - Enable registration of callbacks to provide supplementary webhook payload data
Deprecations
- #19738 - The direct assignment of VLANs to sites is now discouraged in favor of VLAN groups
Other Changes
- #18349 - The housekeeping script has been replaced with a system job
- #18588 - The "Service" model has been renamed to "Application Service" for clarity (UI change only)
- #19829 - The REST API endpoint for object types is now available under
/api/core/
- #19924 - ObjectTypes are now tracked as concrete objects in the database (alongside ContentTypes)
- #19973 - Miscellaneous improvements to the
nbshell
management command