Logical follow up from {T314933}.
==The 3 major releases come with their load of new features, from which I quickly selected the interesting ones:
===3.3
* L2VPN Modeling (#8157)
* Toggle Custom Field Visibility (#9166)
* #8511 - Enable custom fields and tags for circuit terminations
* #8995 - Enable arbitrary ordering of REST API results
* #6454 - Include contextual help when creating first objects in UI
* #10039 - Add "assign FHRP group" option to actions dropdown in interfaces list
* #10447 - Enable reassigning an inventory item from one device to another
===3.4
* New Global Search (#10560)
* Virtual Device Contexts (#7854)
* Saved Filters (#9623)
* JSON/YAML Bulk Imports (#4347)
* Scheduled Reports & Scripts (#8366)
* API for Staged Changes (#10851)
* #10600 - Allow custom object fields to reference a user or group
===3.5
* Customizable Dashboard (#9416)
* Remote Data Sources (#11558)
* ASN Ranges (#8550)
* Provider Accounts (#9047)
==But also their load of breaking changes:
===[[ https://github.com/netbox-community/netbox/releases/tag/v3.3.0 | 3.3 ]]
* Device position, device type height, and rack unit values are now reported as decimals (e.g. 1.0 or 1.5) to support modeling half-height rack units.
* The nat_outside relation on the IP address model now returns a list of zero or more related IP addresses, rather than a single instance (or None).
* Several fields on the cable API serializers have been altered or removed to support multiple-object cable terminations: [see table on the link]
* As with the cable model, several API fields on all objects to which cables can be connected (interfaces, circuit terminations, etc.) have been changed: [see table on the link]
* The cable path serialization returned by the /paths/ endpoint for pass-through ports has been simplified, and the following fields removed: origin_type, origin, destination_type, destination. (Additionally, is_complete has been added.)
===[[ https://github.com/netbox-community/netbox/releases/tag/v3.4.0 | 3.4 ]]
* Device and virtual machine names are no longer case-sensitive. Attempting to create e.g. "device1" and "DEVICE1" within the same site will raise a validation error.
* The asn, noc_contact, admin_contact, and portal_url fields have been removed from the provider model. Please replicate any data remaining in these fields to the ASN and contact models introduced in NetBox v3.1 prior to upgrading.
* The content_type fields on the CustomLink and ExportTemplate models have been renamed to content_types and now support the assignment of multiple content types per object.
* Within the Python API, the cf property on an object with custom fields now returns deserialized values. For example, a custom field referencing an object will return the object instance rather than its numeric ID. To access the raw serialized values, reference the object's custom_field_data attribute instead.
* The NetBoxModelCSVForm class has been renamed to NetBoxModelImportForm. Backward compatability with the previous name has been retained for this release, but will be dropped in NetBox v3.5.
===[[ https://github.com/netbox-community/netbox/releases/tag/v3.5.0 | 3.5 ]]
* The account field has been removed from the provider model. This information is now tracked using the new provider account model. Multiple accounts can be assigned per provider.
* A minimum length of 50 characters is now enforced for the SECRET_KEY configuration parameter.
* The JobResult model has been moved from the extras app to core and renamed to Job. Accordingly, its REST API endpoint has been moved from /api/extras/job-results/ to /api/core/jobs/.
* The obj_type field on the Job model (previously JobResult) has been renamed to object_type for consistency with other models.
* The JOBRESULT_RETENTION configuration parameter has been renamed to JOB_RETENTION.
* The obj context variable is no longer passed when rendering custom links: Use object instead.
* The REST API schema is now generated using the OpenAPI 3.0 spec
* The URLs for the REST API schema documentation have changed:
** /api/docs/ is now /api/schema/swagger-ui/
** /api/redoc/ is now /api/schema/redoc/
==Next steps:
TBD