v2.0.0-beta.1 - 2023-06-06 #3866
bryanculver
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Added
CircuitTermination
objects.created
andlast_updated
fields on theVMInterface
model. When migrating to this release, these fields will default toNone
for any pre-existing instances of this model.JobLogEntry
records.get_absolute_url
method onBaseModel
which will attempt to resolve the detail view route for all subclassed models.nautobot-server build_ui
command for building the web UInode_modules
to speed up rebuilds.pre_delete
signal to nullify the device'sprimary_ip
field/fields if its primary ips are removed from interface'sip_addresses
m2m field.pre_save
signal to catch invalid operations in manual creations ofIPAddressToInterface
.unique_together
for through modelIPAddressToInterface
.home_url
,config_url
, anddocs_url
keys to the/api/plugins/installed-plugins/
REST API endpoint.api
argument toBaseModel.get_absolute_url()
.TreeModel.display
to reduce redundant queries when listing such objects.sort
query parameter.celery_kwargs
field toJobResult
andScheduledJob
models.{"value": "x"}
format when writing to ChoiceFields in the REST API, making round-trip data easier.NautobotCSVParser
class, providing the ability for the REST API to accept CSV as an input format.parent_bay
when creating a Device via the REST API.APIViewTestCases.CreateObjectViewTestCase.test_recreate_object_csv
generic test, testing the "round-trip" capability of each API endpoint's CSV export and import.natural_key_field_names
toIPAddress
,Prefix
,RackReservation
,ScheduledJob
, andService
models.termination_type
filter toCableFilterSet
.natural_key_slug
field to REST API serializers.detail-view-config
API endpoint toModelViewSetMixin
.bool
return value forNautobot.extras.datasources.git.ensure_git_repository()
to indicate whether the filesystem was changed.Changed
tags
fields onPrimaryModel
subclasses is nownautobot.core.models.fields.TagsField
rather thantaggit.managers.TaggableManager
. Any apps usingPrimaryModel
as a base class will likely need to generate and run a schema migration to reflect this change.JobLogEntry.log_level
choices fromdefault
,info
,success
,warning
,failure
to Python default logging levelsdebug
,info
,warning
,error
andcritical
.BaseJob
class to celery'sget_task_logger
logging implementation.SecretsGroupAssociation
through-table model.JobLogEntry.display
REST API field to match the model behavior.Nested*Serializer
classes in favor of adepth
-based REST API design.?brief=True
REST API parameter has been replaced by a new?depth=<0-10>
API parameter, allowing greater control of the returned data.run_job
Celery task and updatedBaseJob
to subclass CeleryTask
.Relationship
model attributeslug
tokey
.Relationship
model attributename
tolabel
.ComputedField
model attributeslug
tokey
.prefix_length
field tomask_length
.host
field non-modifiable.config_context
by default and only include it when requested by using the?include=config_context
query parameter.lookup_field
forNautobotUIViewSet
to"pk"
instead of"slug"
.node_modules
andbuild
directories.delete_button
andedit_button
template tags to lookuppk
andslug
without the need to specify the lookup key.BaseModelSerializer
to inherit fromHyperlinkedModelSerializer
instead ofModelSerializer
. This changed the REST API representation of related objects (at depth 0) from UUIDs to API hyperlinks to improve discoverability and usability of the API.Meta.list_display_fields
for all serializers.JobResult
managerstore_result
method to censor sensitive variables.Job.read_only
field to an informational field set by the job author and removed the ability for administrators to override this field. This field no longer changes the behavior of Nautobot core.CSVDataField
andCSVFileField
in support of the new CSV import framework.user
parameter on the RackReservation REST API to optional; if omitted, the requesting user will now be automatically selected as the owner of any created reservations.ObjectRetrieveView
.StatusModel
mixin in favor of directly including aStatusField
as needed.class_path
property from<source>/<module>/<ClassName>
to simply<module>.<ClassName>
.module_name
for Git-derived Jobs to<git_repository_slug>.jobs.<module>
.Nautobot.core.utils.git.GitRepo.checkout()
to include whether the filesystem was changed.job
filter on JobButton, JobHook, JobResult, and ScheduledJob to be name-based rather than slug-based.Job.runnable
property to not consider whether thejob_class
is set, as a performance optimization.nautobot/extras/tests/example_jobs/test_*.py
tonautobot/extras/test_jobs/*.py
to avoid unnecessary loading by theunittest
runner.Dependencies
django-cacheops
.napalm
dependency to 4.x release in order to allow Netmiko 4.x to install. Dependency resolution resulted in removing the following packages:ciscoconfparse
,deprecat
,dnspython
,loguru
,toml
,win32-setctime
.Fixed
Tag
to the same object multiple times by adding appropriate uniqueness constraints on theTaggedItem
through table.extras.0061_collect_roles_from_related_apps_roles
migration.populate_model_features_registry
causing skipped updates.package-lock.json
which was causing test failures.Prefix.reparent_ips()
that was too greedy in reparenting IP addresses when child prexies were deeply nested (such as /31)select_related
onDeviceViewSet
andPrefixViewSet
to improve performance.Interface.mac_address
andVMInterface.mac_address
.DeviceType.front_image
andDeviceType.rear_image
.password
being incorrectly marked as a required field when editing a User via the REST API.failover_strategy
field as unspecified/blank when creating/updatingDeviceRedundancyGroup
via the REST API.Device
andVRF
models.User
via the REST API.debugpy
workflow not working with the removal ofmanage.py
.--cache_test_fixtures
when running tests.nautobot.extras.tests.test_views
.cable
field as writable.status
fields to correctly match their intended usage.Source
tab from job_approval_request.html.Removed
taggit.managers.TaggableManager
.nautobot.extras.utils.is_taggable
; usenautobot.core.models.utils.is_taggable
instead.taggit
1.x Python API; instead ofobject.tags.set(tag1, tag2, tag3)
you must now doobject.tags.set([tag1, tag2, tag3])
.django-cacheops
.BaseJob
logging methods_log
,log
,log_debug
,log_success
,log_info
,log_warning
andlog_failure
.active_test
andfailed
properties fromBaseJob
class.csv_headers
andto_csv()
from all models as they are no longer needed.changelog_url
fromObjectView
's context.test_*
andpost_run
methods in Jobs.broadcast
field from IPAddress.NavMenuButton
and its subclasses as they are not a part of the 2.0 UI.NavMenuTab.weight
property as the menu tabs/contexts are not reorderable in 2.0.verison
key from/api/plugins/installed-plugins
REST API endpoint.url
field declarations from most REST API serializers as they are now derived automatically.Job.read_only_override
,JobResult.obj_type
,JobResult.periodic_task_name
, andJobResult.task_id
fields.NautobotFakeRequest
and associated methods, variables and logic.LocatableModelCSVFormMixin
,RoleModelCSVFormMixin
,RoleRequiredRoleModelCSVFormMixin
, andStatusModelCSVFormMixin
classes, as they are no longer needed after reworking how CSV import is handled.bulk_create_form_class
field fromNautobotUIViewSet
as it's no longer used or needed.model_form
andwidget_attrs
fields fromBulkImportView
as they are no longer used or needed.Job.slug
,Job.source
, andJob.git_repository
database fields.source
andslug
filters for Jobs.get_jobs()
,get_job_classpaths()
,jobs_in_directory()
functions.Contributors
New Contributors
Full Changelog: v2.0.0-alpha.3...v2.0.0-beta.1
This discussion was created from the release v2.0.0-beta.1 - 2023-06-06.
Beta Was this translation helpful? Give feedback.
All reactions