Nautobot v3.0¶
This document describes all new features and changes in Nautobot 3.0.
Upgrade Actions¶
Job Authors & App Developers¶
- The Data Compliance feature set from the Data Validation Engine App has been moved directly into core. Import paths that reference
nautobot_data_validation_engine.custom_validators.DataComplianceRule
ornautobot_data_validation_engine.custom_validators.ComplianceError
should be updated tonautobot.apps.models.DataComplianceRule
andnautobot.apps.models.ComplianceError
, respectively. - Code that calls the GraphQL
execute_query()
andexecute_saved_query()
functions may need to be updated to account for changes to the response object returned by these APIs. Specifically, theresponse.to_dict()
method is no longer supported, but instead the returned data and any errors encountered may now be accessed directly asresponse.data
andresponse.errors
respectively. - Filtering data that supports a
type
filter in the REST API now also supports a correspondingtype
filter in GraphQL. (In Nautobot v2.x and earlier, the filter had to be referenced in GraphQL as_type
instead.) Filtering by_type
is still supported where applicable but should be considered deprecated; please update your GraphQL queries accordingly.
Release Overview¶
Added¶
Data Validation Engine¶
The Nautobot Data Validation Engine functionality previously provided as a separate Nautobot App has been migrated into Nautobot as a core feature. (...TODO provide more details here...)
Dependencies¶
GraphQL and GraphiQL Updates¶
The underlying GraphQL libraries (graphene
, graphene-django
, graphene-django-optimizer
) used by Nautobot have been updated to new major versions, including a new major version of the GraphiQL UI. For the most part this upgrade will be seamless to end users, but the response object returned by Nautobot's execute_query()
and execute_saved_query()
Python APIs has changed type -- see Upgrade Actions above for specifics.
Added Python 3.13 Support and Removed Python 3.9 Support¶
As Python 3.9 has reached end-of-life, Nautobot 3.0 requires a minimum of Python 3.10. Python 3.13 support was added.