nautobot 2.3.0b1__py3-none-any.whl → 2.3.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of nautobot might be problematic. Click here for more details.

Files changed (380) hide show
  1. nautobot/cloud/factory.py +2 -0
  2. nautobot/cloud/filters.py +3 -0
  3. nautobot/cloud/forms.py +8 -2
  4. nautobot/cloud/migrations/0001_initial.py +1 -1
  5. nautobot/cloud/models.py +1 -2
  6. nautobot/cloud/tables.py +1 -17
  7. nautobot/cloud/templates/cloud/cloudnetwork_retrieve.html +1 -7
  8. nautobot/cloud/templates/cloud/cloudresourcetype_retrieve.html +11 -0
  9. nautobot/cloud/templates/cloud/cloudservice_retrieve.html +4 -0
  10. nautobot/cloud/tests/test_filters.py +12 -0
  11. nautobot/cloud/tests/test_views.py +17 -0
  12. nautobot/cloud/views.py +1 -1
  13. nautobot/core/celery/__init__.py +5 -2
  14. nautobot/core/filters.py +15 -1
  15. nautobot/core/forms/forms.py +10 -2
  16. nautobot/core/graphql/generators.py +2 -2
  17. nautobot/core/graphql/schema.py +6 -14
  18. nautobot/core/jobs/__init__.py +4 -1
  19. nautobot/core/management/commands/generate_test_data.py +2 -2
  20. nautobot/core/models/__init__.py +2 -2
  21. nautobot/core/settings.py +13 -2
  22. nautobot/core/settings.yaml +16 -2
  23. nautobot/core/tables.py +3 -0
  24. nautobot/core/templates/generic/object_retrieve.html +6 -6
  25. nautobot/core/templates/inc/computed_fields/panel_data.html +36 -24
  26. nautobot/core/templates/inc/object_details_advanced_panel.html +1 -1
  27. nautobot/core/templates/nautobot_config.py.j2 +15 -0
  28. nautobot/core/testing/filters.py +12 -1
  29. nautobot/core/tests/integration/test_general_functionality.py +1 -1
  30. nautobot/core/tests/test_jobs.py +74 -1
  31. nautobot/core/views/__init__.py +1 -1
  32. nautobot/core/views/generic.py +1 -1
  33. nautobot/core/views/mixins.py +1 -1
  34. nautobot/core/views/utils.py +8 -6
  35. nautobot/dcim/factory.py +4 -1
  36. nautobot/dcim/filters/__init__.py +4 -0
  37. nautobot/dcim/forms.py +24 -0
  38. nautobot/dcim/migrations/0061_module_models.py +1 -0
  39. nautobot/dcim/models/device_components.py +7 -0
  40. nautobot/dcim/models/devices.py +18 -19
  41. nautobot/dcim/models/racks.py +0 -1
  42. nautobot/dcim/tables/devices.py +17 -3
  43. nautobot/dcim/tables/devicetypes.py +1 -1
  44. nautobot/dcim/templates/dcim/device/base.html +1 -1
  45. nautobot/dcim/templates/dcim/device.html +3 -3
  46. nautobot/dcim/templates/dcim/deviceredundancygroup_retrieve.html +6 -0
  47. nautobot/dcim/templates/dcim/moduletype_retrieve.html +17 -0
  48. nautobot/dcim/templates/dcim/softwareimagefile_retrieve.html +3 -3
  49. nautobot/dcim/tests/test_api.py +2 -0
  50. nautobot/dcim/tests/test_filters.py +14 -7
  51. nautobot/dcim/tests/test_forms.py +54 -0
  52. nautobot/dcim/tests/test_models.py +40 -1
  53. nautobot/dcim/tests/test_views.py +45 -2
  54. nautobot/dcim/views.py +4 -1
  55. nautobot/extras/api/serializers.py +0 -1
  56. nautobot/extras/api/views.py +7 -59
  57. nautobot/extras/factory.py +50 -12
  58. nautobot/extras/filters/__init__.py +4 -1
  59. nautobot/extras/forms/base.py +10 -4
  60. nautobot/extras/forms/forms.py +1 -0
  61. nautobot/extras/homepage.py +12 -2
  62. nautobot/extras/jobs.py +2 -2
  63. nautobot/extras/migrations/0111_metadata.py +4 -4
  64. nautobot/extras/migrations/0114_computedfield_grouping.py +17 -0
  65. nautobot/extras/models/customfields.py +54 -0
  66. nautobot/extras/models/jobs.py +83 -0
  67. nautobot/extras/models/metadata.py +18 -18
  68. nautobot/extras/models/models.py +2 -0
  69. nautobot/extras/signals.py +14 -1
  70. nautobot/extras/tables.py +43 -14
  71. nautobot/extras/templates/extras/computedfield.html +4 -0
  72. nautobot/extras/templates/extras/job_detail.html +11 -0
  73. nautobot/extras/tests/test_api.py +16 -9
  74. nautobot/extras/tests/test_jobs.py +2 -2
  75. nautobot/extras/tests/test_models.py +20 -18
  76. nautobot/extras/tests/test_views.py +23 -3
  77. nautobot/extras/utils.py +35 -6
  78. nautobot/extras/views.py +28 -51
  79. nautobot/ipam/filters.py +1 -1
  80. nautobot/ipam/forms.py +1 -1
  81. nautobot/ipam/models.py +9 -20
  82. nautobot/ipam/querysets.py +26 -0
  83. nautobot/ipam/tables.py +4 -0
  84. nautobot/ipam/tests/test_models.py +89 -2
  85. nautobot/ipam/views.py +10 -15
  86. nautobot/project-static/css/base.css +1 -0
  87. nautobot/project-static/docs/404.html +18 -18
  88. nautobot/project-static/docs/apps/index.html +18 -18
  89. nautobot/project-static/docs/apps/nautobot-apps.html +18 -18
  90. nautobot/project-static/docs/assets/stylesheets/main.3cba04c6.min.css +1 -0
  91. nautobot/project-static/docs/assets/stylesheets/main.3cba04c6.min.css.map +1 -0
  92. nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +18 -18
  93. nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +18 -18
  94. nautobot/project-static/docs/code-reference/nautobot/apps/api.html +66 -18
  95. nautobot/project-static/docs/code-reference/nautobot/apps/change_logging.html +18 -18
  96. nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +18 -18
  97. nautobot/project-static/docs/code-reference/nautobot/apps/config.html +18 -18
  98. nautobot/project-static/docs/code-reference/nautobot/apps/constants.html +18 -18
  99. nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +18 -18
  100. nautobot/project-static/docs/code-reference/nautobot/apps/exceptions.html +66 -18
  101. nautobot/project-static/docs/code-reference/nautobot/apps/factory.html +34 -18
  102. nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +82 -63
  103. nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +75 -111
  104. nautobot/project-static/docs/code-reference/nautobot/apps/graphql.html +18 -18
  105. nautobot/project-static/docs/code-reference/nautobot/apps/jobs.html +34 -18
  106. nautobot/project-static/docs/code-reference/nautobot/apps/models.html +161 -18
  107. nautobot/project-static/docs/code-reference/nautobot/apps/querysets.html +18 -18
  108. nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +18 -18
  109. nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +18 -18
  110. nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +18 -18
  111. nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +18 -18
  112. nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +18 -18
  113. nautobot/project-static/docs/code-reference/nautobot/apps/utils.html +21 -19
  114. nautobot/project-static/docs/code-reference/nautobot/apps/views.html +34 -18
  115. nautobot/project-static/docs/development/apps/api/configuration-view.html +18 -18
  116. nautobot/project-static/docs/development/apps/api/database-backend-config.html +18 -18
  117. nautobot/project-static/docs/development/apps/api/models/django-admin.html +18 -18
  118. nautobot/project-static/docs/development/apps/api/models/global-search.html +18 -18
  119. nautobot/project-static/docs/development/apps/api/models/graphql.html +18 -18
  120. nautobot/project-static/docs/development/apps/api/models/index.html +33 -22
  121. nautobot/project-static/docs/development/apps/api/nautobot-app-config.html +18 -18
  122. nautobot/project-static/docs/development/apps/api/platform-features/custom-validators.html +18 -18
  123. nautobot/project-static/docs/development/apps/api/platform-features/filter-extensions.html +18 -18
  124. nautobot/project-static/docs/development/apps/api/platform-features/git-repository-content.html +18 -18
  125. nautobot/project-static/docs/development/apps/api/platform-features/index.html +18 -18
  126. nautobot/project-static/docs/development/apps/api/platform-features/jinja2-filters.html +18 -18
  127. nautobot/project-static/docs/development/apps/api/platform-features/jobs.html +18 -18
  128. nautobot/project-static/docs/development/apps/api/platform-features/populating-extensibility-features.html +18 -18
  129. nautobot/project-static/docs/development/apps/api/platform-features/secrets-providers.html +18 -18
  130. nautobot/project-static/docs/development/apps/api/platform-features/uniquely-identify-objects.html +18 -18
  131. nautobot/project-static/docs/development/apps/api/prometheus.html +18 -18
  132. nautobot/project-static/docs/development/apps/api/setup.html +18 -18
  133. nautobot/project-static/docs/development/apps/api/testing.html +18 -18
  134. nautobot/project-static/docs/development/apps/api/ui-extensions/banners.html +18 -18
  135. nautobot/project-static/docs/development/apps/api/ui-extensions/home-page.html +18 -18
  136. nautobot/project-static/docs/development/apps/api/ui-extensions/index.html +18 -18
  137. nautobot/project-static/docs/development/apps/api/ui-extensions/navigation.html +18 -18
  138. nautobot/project-static/docs/development/apps/api/ui-extensions/object-views.html +18 -18
  139. nautobot/project-static/docs/development/apps/api/views/base-template.html +18 -18
  140. nautobot/project-static/docs/development/apps/api/views/core-view-overrides.html +18 -18
  141. nautobot/project-static/docs/development/apps/api/views/django-generic-views.html +18 -18
  142. nautobot/project-static/docs/development/apps/api/views/help-documentation.html +18 -18
  143. nautobot/project-static/docs/development/apps/api/views/index.html +18 -18
  144. nautobot/project-static/docs/development/apps/api/views/nautobot-generic-views.html +18 -18
  145. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewset.html +18 -18
  146. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewsetrouter.html +18 -18
  147. nautobot/project-static/docs/development/apps/api/views/notes.html +18 -18
  148. nautobot/project-static/docs/development/apps/api/views/rest-api.html +18 -18
  149. nautobot/project-static/docs/development/apps/api/views/urls.html +18 -18
  150. nautobot/project-static/docs/development/apps/index.html +18 -18
  151. nautobot/project-static/docs/development/apps/migration/code-updates.html +18 -18
  152. nautobot/project-static/docs/development/apps/migration/dependency-updates.html +18 -18
  153. nautobot/project-static/docs/development/apps/migration/from-v1.html +18 -18
  154. nautobot/project-static/docs/development/apps/migration/model-updates/dcim.html +18 -18
  155. nautobot/project-static/docs/development/apps/migration/model-updates/extras.html +18 -18
  156. nautobot/project-static/docs/development/apps/migration/model-updates/global.html +18 -18
  157. nautobot/project-static/docs/development/apps/migration/model-updates/ipam.html +18 -18
  158. nautobot/project-static/docs/development/apps/porting-from-netbox.html +18 -18
  159. nautobot/project-static/docs/development/core/application-registry.html +18 -18
  160. nautobot/project-static/docs/development/core/best-practices.html +18 -18
  161. nautobot/project-static/docs/development/core/bootstrap-ui.html +18 -18
  162. nautobot/project-static/docs/development/core/caching.html +18 -18
  163. nautobot/project-static/docs/development/core/controllers.html +18 -18
  164. nautobot/project-static/docs/development/core/docker-compose-advanced-use-cases.html +18 -18
  165. nautobot/project-static/docs/development/core/generic-views.html +18 -18
  166. nautobot/project-static/docs/development/core/getting-started.html +18 -18
  167. nautobot/project-static/docs/development/core/homepage.html +18 -18
  168. nautobot/project-static/docs/development/core/index.html +29 -18
  169. nautobot/project-static/docs/development/core/model-checklist.html +26 -20
  170. nautobot/project-static/docs/development/core/model-features.html +18 -18
  171. nautobot/project-static/docs/development/core/natural-keys.html +18 -18
  172. nautobot/project-static/docs/development/core/navigation-menu.html +18 -18
  173. nautobot/project-static/docs/development/core/release-checklist.html +18 -18
  174. nautobot/project-static/docs/development/core/role-internals.html +18 -18
  175. nautobot/project-static/docs/development/core/settings.html +18 -18
  176. nautobot/project-static/docs/development/core/style-guide.html +19 -19
  177. nautobot/project-static/docs/development/core/templates.html +18 -18
  178. nautobot/project-static/docs/development/core/testing.html +18 -18
  179. nautobot/project-static/docs/development/core/user-preferences.html +18 -18
  180. nautobot/project-static/docs/development/index.html +18 -18
  181. nautobot/project-static/docs/development/jobs/index.html +393 -379
  182. nautobot/project-static/docs/development/jobs/migration/from-v1.html +18 -18
  183. nautobot/project-static/docs/index.html +9032 -13
  184. nautobot/project-static/docs/models/extras/metadatachoice.html +3 -3
  185. nautobot/project-static/docs/models/extras/metadatatype.html +3 -3
  186. nautobot/project-static/docs/models/extras/objectmetadata.html +3 -3
  187. nautobot/project-static/docs/objects.inv +0 -0
  188. nautobot/project-static/docs/overview/application_stack.html +18 -18
  189. nautobot/project-static/docs/overview/design_philosophy.html +20 -20
  190. nautobot/project-static/docs/overview/index.html +13 -9032
  191. nautobot/project-static/docs/release-notes/index.html +252 -19
  192. nautobot/project-static/docs/release-notes/version-1.0.html +18 -18
  193. nautobot/project-static/docs/release-notes/version-1.1.html +18 -18
  194. nautobot/project-static/docs/release-notes/version-1.2.html +18 -18
  195. nautobot/project-static/docs/release-notes/version-1.3.html +18 -18
  196. nautobot/project-static/docs/release-notes/version-1.4.html +18 -18
  197. nautobot/project-static/docs/release-notes/version-1.5.html +18 -18
  198. nautobot/project-static/docs/release-notes/version-1.6.html +18 -18
  199. nautobot/project-static/docs/release-notes/version-2.0.html +18 -18
  200. nautobot/project-static/docs/release-notes/version-2.1.html +18 -18
  201. nautobot/project-static/docs/release-notes/version-2.2.html +248 -111
  202. nautobot/project-static/docs/release-notes/version-2.3.html +644 -90
  203. nautobot/project-static/docs/requirements.txt +3 -3
  204. nautobot/project-static/docs/search/search_index.json +1 -1
  205. nautobot/project-static/docs/sitemap.xml +278 -278
  206. nautobot/project-static/docs/sitemap.xml.gz +0 -0
  207. nautobot/project-static/docs/user-guide/administration/configuration/authentication/ldap.html +18 -18
  208. nautobot/project-static/docs/user-guide/administration/configuration/authentication/remote.html +18 -18
  209. nautobot/project-static/docs/user-guide/administration/configuration/authentication/sso.html +18 -18
  210. nautobot/project-static/docs/user-guide/administration/configuration/index.html +18 -18
  211. nautobot/project-static/docs/user-guide/administration/configuration/optional-settings.html +52 -20
  212. nautobot/project-static/docs/user-guide/administration/configuration/required-settings.html +18 -18
  213. nautobot/project-static/docs/user-guide/administration/configuration/time-zones.html +18 -18
  214. nautobot/project-static/docs/user-guide/administration/guides/caching.html +18 -18
  215. nautobot/project-static/docs/user-guide/administration/guides/celery-queues.html +22 -18
  216. nautobot/project-static/docs/user-guide/administration/guides/healthcheck.html +18 -18
  217. nautobot/project-static/docs/user-guide/administration/guides/permissions.html +18 -18
  218. nautobot/project-static/docs/user-guide/administration/guides/prometheus-metrics.html +18 -18
  219. nautobot/project-static/docs/user-guide/administration/guides/replicating-nautobot.html +18 -18
  220. nautobot/project-static/docs/user-guide/administration/guides/request-profiling.html +18 -18
  221. nautobot/project-static/docs/user-guide/administration/guides/s3-django-storage.html +18 -18
  222. nautobot/project-static/docs/user-guide/administration/installation/app-install.html +18 -18
  223. nautobot/project-static/docs/user-guide/administration/installation/external-authentication.html +18 -18
  224. nautobot/project-static/docs/user-guide/administration/installation/http-server.html +69 -82
  225. nautobot/project-static/docs/user-guide/administration/installation/index.html +24 -24
  226. nautobot/project-static/docs/user-guide/administration/installation/install_system.html +60 -52
  227. nautobot/project-static/docs/user-guide/administration/installation/nautobot.html +80 -87
  228. nautobot/project-static/docs/user-guide/administration/installation/services.html +37 -44
  229. nautobot/project-static/docs/user-guide/administration/installation-extras/docker.html +18 -18
  230. nautobot/project-static/docs/user-guide/administration/installation-extras/health-checks.html +18 -18
  231. nautobot/project-static/docs/user-guide/administration/installation-extras/selinux-troubleshooting.html +18 -18
  232. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-netbox.html +18 -18
  233. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-postgresql.html +18 -18
  234. nautobot/project-static/docs/user-guide/administration/tools/nautobot-server.html +76 -24
  235. nautobot/project-static/docs/user-guide/administration/tools/nautobot-shell.html +18 -18
  236. nautobot/project-static/docs/user-guide/administration/upgrading/database-backup.html +18 -18
  237. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/after-you-upgrade.html +18 -18
  238. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/before-you-upgrade.html +18 -18
  239. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/for-developers.html +18 -18
  240. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/index.html +18 -18
  241. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/whats-changed.html +18 -18
  242. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/region-and-site-data-migration-guide.html +18 -18
  243. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/upgrading-from-nautobot-v1.html +18 -18
  244. nautobot/project-static/docs/user-guide/administration/upgrading/upgrading.html +18 -18
  245. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuit.html +18 -18
  246. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittermination.html +18 -18
  247. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittype.html +18 -18
  248. nautobot/project-static/docs/user-guide/core-data-model/circuits/provider.html +18 -18
  249. nautobot/project-static/docs/user-guide/core-data-model/circuits/providernetwork.html +18 -18
  250. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloud.html +18 -18
  251. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudaccount.html +18 -18
  252. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetwork.html +18 -18
  253. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudnetworkprefixassignment.html +18 -18
  254. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudresourcetype.html +18 -18
  255. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservice.html +18 -18
  256. nautobot/project-static/docs/user-guide/core-data-model/cloud/cloudservicenetworkassignment.html +18 -18
  257. nautobot/project-static/docs/user-guide/core-data-model/dcim/cable.html +18 -18
  258. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleport.html +18 -18
  259. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleporttemplate.html +18 -18
  260. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverport.html +18 -18
  261. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverporttemplate.html +18 -18
  262. nautobot/project-static/docs/user-guide/core-data-model/dcim/controller.html +18 -18
  263. nautobot/project-static/docs/user-guide/core-data-model/dcim/controllermanageddevicegroup.html +18 -18
  264. nautobot/project-static/docs/user-guide/core-data-model/dcim/device.html +19 -19
  265. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebay.html +18 -18
  266. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebaytemplate.html +18 -18
  267. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicefamily.html +18 -18
  268. nautobot/project-static/docs/user-guide/core-data-model/dcim/deviceredundancygroup.html +18 -18
  269. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicetype.html +18 -18
  270. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontport.html +18 -18
  271. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontporttemplate.html +18 -18
  272. nautobot/project-static/docs/user-guide/core-data-model/dcim/interface.html +18 -18
  273. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfaceredundancygroup.html +18 -18
  274. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfacetemplate.html +18 -18
  275. nautobot/project-static/docs/user-guide/core-data-model/dcim/inventoryitem.html +18 -18
  276. nautobot/project-static/docs/user-guide/core-data-model/dcim/location.html +18 -18
  277. nautobot/project-static/docs/user-guide/core-data-model/dcim/locationtype.html +18 -18
  278. nautobot/project-static/docs/user-guide/core-data-model/dcim/manufacturer.html +19 -19
  279. nautobot/project-static/docs/user-guide/core-data-model/dcim/module.html +18 -18
  280. nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebay.html +18 -18
  281. nautobot/project-static/docs/user-guide/core-data-model/dcim/modulebaytemplate.html +18 -18
  282. nautobot/project-static/docs/user-guide/core-data-model/dcim/moduletype.html +18 -18
  283. nautobot/project-static/docs/user-guide/core-data-model/dcim/platform.html +18 -18
  284. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerfeed.html +18 -18
  285. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlet.html +18 -18
  286. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlettemplate.html +18 -18
  287. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerpanel.html +18 -18
  288. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerport.html +18 -18
  289. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerporttemplate.html +18 -18
  290. nautobot/project-static/docs/user-guide/core-data-model/dcim/rack.html +18 -18
  291. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackgroup.html +18 -18
  292. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackreservation.html +18 -18
  293. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearport.html +18 -18
  294. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearporttemplate.html +18 -18
  295. nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareimagefile.html +18 -18
  296. nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareversion.html +18 -18
  297. nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualchassis.html +18 -18
  298. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontext.html +62 -18
  299. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontextschema.html +18 -18
  300. nautobot/project-static/docs/user-guide/core-data-model/extras/contact.html +18 -18
  301. nautobot/project-static/docs/user-guide/core-data-model/extras/team.html +18 -18
  302. nautobot/project-static/docs/user-guide/core-data-model/ipam/ipaddress.html +18 -18
  303. nautobot/project-static/docs/user-guide/core-data-model/ipam/namespace.html +18 -18
  304. nautobot/project-static/docs/user-guide/core-data-model/ipam/prefix.html +18 -18
  305. nautobot/project-static/docs/user-guide/core-data-model/ipam/rir.html +18 -18
  306. nautobot/project-static/docs/user-guide/core-data-model/ipam/routetarget.html +18 -18
  307. nautobot/project-static/docs/user-guide/core-data-model/ipam/service.html +18 -18
  308. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlan.html +18 -18
  309. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlangroup.html +18 -18
  310. nautobot/project-static/docs/user-guide/core-data-model/ipam/vrf.html +18 -18
  311. nautobot/project-static/docs/user-guide/core-data-model/overview/introduction.html +18 -18
  312. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenant.html +18 -18
  313. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenantgroup.html +18 -18
  314. nautobot/project-static/docs/user-guide/core-data-model/virtualization/cluster.html +18 -18
  315. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustergroup.html +18 -18
  316. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustertype.html +18 -18
  317. nautobot/project-static/docs/user-guide/core-data-model/virtualization/virtualmachine.html +18 -18
  318. nautobot/project-static/docs/user-guide/core-data-model/virtualization/vminterface.html +18 -18
  319. nautobot/project-static/docs/user-guide/feature-guides/contacts-and-teams.html +18 -18
  320. nautobot/project-static/docs/user-guide/feature-guides/custom-fields.html +18 -18
  321. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-devices.html +18 -18
  322. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-location-types-and-locations.html +18 -18
  323. nautobot/project-static/docs/user-guide/feature-guides/getting-started/index.html +18 -18
  324. nautobot/project-static/docs/user-guide/feature-guides/getting-started/interfaces.html +18 -18
  325. nautobot/project-static/docs/user-guide/feature-guides/getting-started/ipam.html +18 -18
  326. nautobot/project-static/docs/user-guide/feature-guides/getting-started/platforms.html +18 -18
  327. nautobot/project-static/docs/user-guide/feature-guides/getting-started/search-bar.html +18 -18
  328. nautobot/project-static/docs/user-guide/feature-guides/getting-started/tenants.html +18 -18
  329. nautobot/project-static/docs/user-guide/feature-guides/getting-started/vlans-and-vlan-groups.html +18 -18
  330. nautobot/project-static/docs/user-guide/feature-guides/git-data-source.html +18 -18
  331. nautobot/project-static/docs/user-guide/feature-guides/graphql.html +18 -18
  332. nautobot/project-static/docs/user-guide/feature-guides/ip-address-merge-tool.html +18 -18
  333. nautobot/project-static/docs/user-guide/feature-guides/relationships.html +18 -18
  334. nautobot/project-static/docs/user-guide/feature-guides/software-image-files-and-versions.html +18 -18
  335. nautobot/project-static/docs/user-guide/index.html +18 -18
  336. nautobot/project-static/docs/user-guide/platform-functionality/change-logging.html +18 -18
  337. nautobot/project-static/docs/user-guide/platform-functionality/computedfield.html +18 -18
  338. nautobot/project-static/docs/user-guide/platform-functionality/customfield.html +18 -18
  339. nautobot/project-static/docs/user-guide/platform-functionality/customlink.html +18 -18
  340. nautobot/project-static/docs/user-guide/platform-functionality/dynamicgroup.html +18 -18
  341. nautobot/project-static/docs/user-guide/platform-functionality/exporttemplate.html +18 -18
  342. nautobot/project-static/docs/user-guide/platform-functionality/externalintegration.html +18 -18
  343. nautobot/project-static/docs/user-guide/platform-functionality/gitrepository.html +18 -18
  344. nautobot/project-static/docs/user-guide/platform-functionality/graphql.html +18 -18
  345. nautobot/project-static/docs/user-guide/platform-functionality/graphqlquery.html +18 -18
  346. nautobot/project-static/docs/user-guide/platform-functionality/imageattachment.html +18 -18
  347. nautobot/project-static/docs/user-guide/platform-functionality/jobs/index.html +18 -18
  348. nautobot/project-static/docs/user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html +21 -21
  349. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobbutton.html +18 -18
  350. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobhook.html +18 -18
  351. nautobot/project-static/docs/user-guide/platform-functionality/jobs/models.html +18 -18
  352. nautobot/project-static/docs/user-guide/platform-functionality/napalm.html +36 -36
  353. nautobot/project-static/docs/user-guide/platform-functionality/note.html +33 -33
  354. nautobot/project-static/docs/user-guide/platform-functionality/{metadata.html → objectmetadata.html} +197 -84
  355. nautobot/project-static/docs/user-guide/platform-functionality/relationship.html +21 -21
  356. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/authentication.html +18 -18
  357. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/filtering.html +18 -18
  358. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/overview.html +18 -18
  359. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/ui-related-endpoints.html +18 -18
  360. nautobot/project-static/docs/user-guide/platform-functionality/role.html +18 -18
  361. nautobot/project-static/docs/user-guide/platform-functionality/savedview.html +18 -18
  362. nautobot/project-static/docs/user-guide/platform-functionality/secret.html +18 -18
  363. nautobot/project-static/docs/user-guide/platform-functionality/staticgroupassociation.html +18 -18
  364. nautobot/project-static/docs/user-guide/platform-functionality/status.html +18 -18
  365. nautobot/project-static/docs/user-guide/platform-functionality/tag.html +18 -18
  366. nautobot/project-static/docs/user-guide/platform-functionality/template-filters.html +18 -18
  367. nautobot/project-static/docs/user-guide/platform-functionality/users/objectpermission.html +18 -18
  368. nautobot/project-static/docs/user-guide/platform-functionality/users/token.html +18 -18
  369. nautobot/project-static/docs/user-guide/platform-functionality/webhook.html +18 -18
  370. nautobot/tenancy/templates/tenancy/tenant.html +4 -4
  371. nautobot/virtualization/models.py +0 -2
  372. nautobot/virtualization/tables.py +2 -5
  373. {nautobot-2.3.0b1.dist-info → nautobot-2.3.1.dist-info}/METADATA +3 -3
  374. {nautobot-2.3.0b1.dist-info → nautobot-2.3.1.dist-info}/RECORD +378 -377
  375. nautobot/project-static/docs/assets/stylesheets/main.76a95c52.min.css +0 -1
  376. nautobot/project-static/docs/assets/stylesheets/main.76a95c52.min.css.map +0 -1
  377. {nautobot-2.3.0b1.dist-info → nautobot-2.3.1.dist-info}/LICENSE.txt +0 -0
  378. {nautobot-2.3.0b1.dist-info → nautobot-2.3.1.dist-info}/NOTICE +0 -0
  379. {nautobot-2.3.0b1.dist-info → nautobot-2.3.1.dist-info}/WHEEL +0 -0
  380. {nautobot-2.3.0b1.dist-info → nautobot-2.3.1.dist-info}/entry_points.txt +0 -0
@@ -18,7 +18,7 @@
18
18
 
19
19
 
20
20
  <link rel="icon" href="../assets/favicon.ico">
21
- <meta name="generator" content="mkdocs-1.6.0, mkdocs-material-9.5.29">
21
+ <meta name="generator" content="mkdocs-1.6.0, mkdocs-material-9.5.31">
22
22
 
23
23
 
24
24
 
@@ -26,7 +26,7 @@
26
26
 
27
27
 
28
28
 
29
- <link rel="stylesheet" href="../assets/stylesheets/main.76a95c52.min.css">
29
+ <link rel="stylesheet" href="../assets/stylesheets/main.3cba04c6.min.css">
30
30
 
31
31
 
32
32
  <link rel="stylesheet" href="../assets/stylesheets/palette.06af60db.min.css">
@@ -38,7 +38,7 @@
38
38
 
39
39
 
40
40
 
41
- <style>:root{--md-admonition-icon--example:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M288 0H128c-17.7 0-32 14.3-32 32s14.3 32 32 32v132.8c0 11.8-3.3 23.5-9.5 33.5L10.3 406.2C3.6 417.2 0 429.7 0 442.6 0 480.9 31.1 512 69.4 512h309.2c38.3 0 69.4-31.1 69.4-69.4 0-12.8-3.6-25.4-10.3-36.4L329.5 230.4c-6.2-10.1-9.5-21.7-9.5-33.5V64c17.7 0 32-14.3 32-32S337.7 0 320 0h-32zm-96 196.8V64h64v132.8c0 23.7 6.6 46.9 19 67.1l34.5 56.1h-171l34.5-56.1c12.4-20.2 19-43.4 19-67.1z"/></svg>');}</style>
41
+ <style>:root{--md-admonition-icon--example:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M288 0H128c-17.7 0-32 14.3-32 32s14.3 32 32 32v132.8c0 11.8-3.3 23.5-9.5 33.5L10.3 406.2C3.6 417.2 0 429.7 0 442.6 0 480.9 31.1 512 69.4 512h309.2c38.3 0 69.4-31.1 69.4-69.4 0-12.8-3.6-25.4-10.3-36.4L329.5 230.4c-6.2-10.1-9.5-21.7-9.5-33.5V64c17.7 0 32-14.3 32-32S337.7 0 320 0h-32zm-96 196.8V64h64v132.8c0 23.7 6.6 46.9 19 67.1l34.5 56.1h-171l34.5-56.1c12.4-20.2 19-43.4 19-67.1z"/></svg>');}</style>
42
42
 
43
43
 
44
44
 
@@ -217,7 +217,7 @@
217
217
  <a href="https://github.com/nautobot/nautobot" title="Go to repository" class="md-source" data-md-component="source">
218
218
  <div class="md-source__icon md-icon">
219
219
 
220
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
220
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
221
221
  </div>
222
222
  <div class="md-source__repository">
223
223
  GitHub
@@ -238,7 +238,7 @@
238
238
 
239
239
 
240
240
  <li class="md-tabs__item">
241
- <a href="../overview/index.html" class="md-tabs__link">
241
+ <a href="../index.html" class="md-tabs__link">
242
242
 
243
243
 
244
244
 
@@ -377,7 +377,7 @@
377
377
  <a href="https://github.com/nautobot/nautobot" title="Go to repository" class="md-source" data-md-component="source">
378
378
  <div class="md-source__icon md-icon">
379
379
 
380
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
380
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
381
381
  </div>
382
382
  <div class="md-source__repository">
383
383
  GitHub
@@ -409,7 +409,7 @@
409
409
 
410
410
 
411
411
  <div class="md-nav__link md-nav__container">
412
- <a href="../overview/index.html" class="md-nav__link ">
412
+ <a href="../index.html" class="md-nav__link ">
413
413
 
414
414
 
415
415
  <span class="md-ellipsis">
@@ -5153,11 +5153,11 @@
5153
5153
 
5154
5154
 
5155
5155
  <li class="md-nav__item">
5156
- <a href="../user-guide/platform-functionality/metadata.html" class="md-nav__link">
5156
+ <a href="../user-guide/platform-functionality/napalm.html" class="md-nav__link">
5157
5157
 
5158
5158
 
5159
5159
  <span class="md-ellipsis">
5160
- Metadata
5160
+ NAPALM
5161
5161
  </span>
5162
5162
 
5163
5163
 
@@ -5174,11 +5174,11 @@
5174
5174
 
5175
5175
 
5176
5176
  <li class="md-nav__item">
5177
- <a href="../user-guide/platform-functionality/napalm.html" class="md-nav__link">
5177
+ <a href="../user-guide/platform-functionality/note.html" class="md-nav__link">
5178
5178
 
5179
5179
 
5180
5180
  <span class="md-ellipsis">
5181
- NAPALM
5181
+ Notes
5182
5182
  </span>
5183
5183
 
5184
5184
 
@@ -5195,11 +5195,11 @@
5195
5195
 
5196
5196
 
5197
5197
  <li class="md-nav__item">
5198
- <a href="../user-guide/platform-functionality/note.html" class="md-nav__link">
5198
+ <a href="../user-guide/platform-functionality/objectmetadata.html" class="md-nav__link">
5199
5199
 
5200
5200
 
5201
5201
  <span class="md-ellipsis">
5202
- Notes
5202
+ Object Metadata
5203
5203
  </span>
5204
5204
 
5205
5205
 
@@ -8104,6 +8104,39 @@
8104
8104
  </label>
8105
8105
  <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
8106
8106
 
8107
+ <li class="md-nav__item">
8108
+ <a href="#upgrade-actions" class="md-nav__link">
8109
+ <span class="md-ellipsis">
8110
+ Upgrade Actions
8111
+ </span>
8112
+ </a>
8113
+
8114
+ <nav class="md-nav" aria-label="Upgrade Actions">
8115
+ <ul class="md-nav__list">
8116
+
8117
+ <li class="md-nav__item">
8118
+ <a href="#administrators" class="md-nav__link">
8119
+ <span class="md-ellipsis">
8120
+ Administrators
8121
+ </span>
8122
+ </a>
8123
+
8124
+ </li>
8125
+
8126
+ <li class="md-nav__item">
8127
+ <a href="#job-authors-app-developers" class="md-nav__link">
8128
+ <span class="md-ellipsis">
8129
+ Job Authors &amp; App Developers
8130
+ </span>
8131
+ </a>
8132
+
8133
+ </li>
8134
+
8135
+ </ul>
8136
+ </nav>
8137
+
8138
+ </li>
8139
+
8107
8140
  <li class="md-nav__item">
8108
8141
  <a href="#release-overview" class="md-nav__link">
8109
8142
  <span class="md-ellipsis">
@@ -8125,27 +8158,36 @@
8125
8158
  <ul class="md-nav__list">
8126
8159
 
8127
8160
  <li class="md-nav__item">
8128
- <a href="#added-an-optional-role-field-to-interface-and-vminterface-models-4406" class="md-nav__link">
8161
+ <a href="#cloud-models-5716-5719-5721-5872" class="md-nav__link">
8129
8162
  <span class="md-ellipsis">
8130
- Added an Optional role field to Interface and VMInterface models (#4406)
8163
+ Cloud Models (#5716, #5719, #5721, #5872)
8131
8164
  </span>
8132
8165
  </a>
8133
8166
 
8134
8167
  </li>
8135
8168
 
8136
8169
  <li class="md-nav__item">
8137
- <a href="#cloud-models-5716-5719-5721-5872" class="md-nav__link">
8170
+ <a href="#device-modules-2101" class="md-nav__link">
8138
8171
  <span class="md-ellipsis">
8139
- Cloud Models (#5716, #5719, #5721, #5872)
8172
+ Device Modules (#2101)
8173
+ </span>
8174
+ </a>
8175
+
8176
+ </li>
8177
+
8178
+ <li class="md-nav__item">
8179
+ <a href="#dynamic-group-enhancements-5472-5786" class="md-nav__link">
8180
+ <span class="md-ellipsis">
8181
+ Dynamic Group Enhancements (#5472, #5786)
8140
8182
  </span>
8141
8183
  </a>
8142
8184
 
8143
8185
  </li>
8144
8186
 
8145
8187
  <li class="md-nav__item">
8146
- <a href="#dynamic-group-enhancements" class="md-nav__link">
8188
+ <a href="#interface-and-vminterface-roles-4406" class="md-nav__link">
8147
8189
  <span class="md-ellipsis">
8148
- Dynamic Group Enhancements
8190
+ Interface and VMInterface Roles (#4406)
8149
8191
  </span>
8150
8192
  </a>
8151
8193
 
@@ -8161,18 +8203,27 @@
8161
8203
  </li>
8162
8204
 
8163
8205
  <li class="md-nav__item">
8164
- <a href="#saved-views" class="md-nav__link">
8206
+ <a href="#python-312-support-5429" class="md-nav__link">
8165
8207
  <span class="md-ellipsis">
8166
- Saved Views
8208
+ Python 3.12 Support (#5429)
8167
8209
  </span>
8168
8210
  </a>
8169
8211
 
8170
8212
  </li>
8171
8213
 
8172
8214
  <li class="md-nav__item">
8173
- <a href="#device-modules-2101" class="md-nav__link">
8215
+ <a href="#saved-views-1758" class="md-nav__link">
8174
8216
  <span class="md-ellipsis">
8175
- Device Modules (#2101)
8217
+ Saved Views (#1758)
8218
+ </span>
8219
+ </a>
8220
+
8221
+ </li>
8222
+
8223
+ <li class="md-nav__item">
8224
+ <a href="#worker-status-page-5873" class="md-nav__link">
8225
+ <span class="md-ellipsis">
8226
+ Worker Status Page (#5873)
8176
8227
  </span>
8177
8228
  </a>
8178
8229
 
@@ -8194,18 +8245,18 @@
8194
8245
  <ul class="md-nav__list">
8195
8246
 
8196
8247
  <li class="md-nav__item">
8197
- <a href="#dynamic-group-cache-changes" class="md-nav__link">
8248
+ <a href="#changed-treemanager-default-behavior-5786" class="md-nav__link">
8198
8249
  <span class="md-ellipsis">
8199
- Dynamic Group Cache Changes
8250
+ Changed TreeManager Default Behavior (#5786)
8200
8251
  </span>
8201
8252
  </a>
8202
8253
 
8203
8254
  </li>
8204
8255
 
8205
8256
  <li class="md-nav__item">
8206
- <a href="#updated-to-django-42" class="md-nav__link">
8257
+ <a href="#dynamic-group-cache-changes-5473" class="md-nav__link">
8207
8258
  <span class="md-ellipsis">
8208
- Updated to Django 4.2
8259
+ Dynamic Group Cache Changes (#5473)
8209
8260
  </span>
8210
8261
  </a>
8211
8262
 
@@ -8218,6 +8269,39 @@
8218
8269
  </span>
8219
8270
  </a>
8220
8271
 
8272
+ </li>
8273
+
8274
+ <li class="md-nav__item">
8275
+ <a href="#ui-button-consolidation-5869-5870-5871" class="md-nav__link">
8276
+ <span class="md-ellipsis">
8277
+ UI Button Consolidation (#5869, #5870, #5871)
8278
+ </span>
8279
+ </a>
8280
+
8281
+ </li>
8282
+
8283
+ </ul>
8284
+ </nav>
8285
+
8286
+ </li>
8287
+
8288
+ <li class="md-nav__item">
8289
+ <a href="#dependencies" class="md-nav__link">
8290
+ <span class="md-ellipsis">
8291
+ Dependencies
8292
+ </span>
8293
+ </a>
8294
+
8295
+ <nav class="md-nav" aria-label="Dependencies">
8296
+ <ul class="md-nav__list">
8297
+
8298
+ <li class="md-nav__item">
8299
+ <a href="#updated-to-django-42-3581" class="md-nav__link">
8300
+ <span class="md-ellipsis">
8301
+ Updated to Django 4.2 (#3581)
8302
+ </span>
8303
+ </a>
8304
+
8221
8305
  </li>
8222
8306
 
8223
8307
  </ul>
@@ -8228,6 +8312,135 @@
8228
8312
  </ul>
8229
8313
  </nav>
8230
8314
 
8315
+ </li>
8316
+
8317
+ <li class="md-nav__item">
8318
+ <a href="#v231-2024-08-19" class="md-nav__link">
8319
+ <span class="md-ellipsis">
8320
+ v2.3.1 (2024-08-19)
8321
+ </span>
8322
+ </a>
8323
+
8324
+ <nav class="md-nav" aria-label="v2.3.1 (2024-08-19)">
8325
+ <ul class="md-nav__list">
8326
+
8327
+ <li class="md-nav__item">
8328
+ <a href="#added_1" class="md-nav__link">
8329
+ <span class="md-ellipsis">
8330
+ Added
8331
+ </span>
8332
+ </a>
8333
+
8334
+ </li>
8335
+
8336
+ <li class="md-nav__item">
8337
+ <a href="#changed_1" class="md-nav__link">
8338
+ <span class="md-ellipsis">
8339
+ Changed
8340
+ </span>
8341
+ </a>
8342
+
8343
+ </li>
8344
+
8345
+ <li class="md-nav__item">
8346
+ <a href="#fixed" class="md-nav__link">
8347
+ <span class="md-ellipsis">
8348
+ Fixed
8349
+ </span>
8350
+ </a>
8351
+
8352
+ </li>
8353
+
8354
+ <li class="md-nav__item">
8355
+ <a href="#housekeeping" class="md-nav__link">
8356
+ <span class="md-ellipsis">
8357
+ Housekeeping
8358
+ </span>
8359
+ </a>
8360
+
8361
+ </li>
8362
+
8363
+ </ul>
8364
+ </nav>
8365
+
8366
+ </li>
8367
+
8368
+ <li class="md-nav__item">
8369
+ <a href="#v230-2024-08-08" class="md-nav__link">
8370
+ <span class="md-ellipsis">
8371
+ v2.3.0 (2024-08-08)
8372
+ </span>
8373
+ </a>
8374
+
8375
+ <nav class="md-nav" aria-label="v2.3.0 (2024-08-08)">
8376
+ <ul class="md-nav__list">
8377
+
8378
+ <li class="md-nav__item">
8379
+ <a href="#security" class="md-nav__link">
8380
+ <span class="md-ellipsis">
8381
+ Security
8382
+ </span>
8383
+ </a>
8384
+
8385
+ </li>
8386
+
8387
+ <li class="md-nav__item">
8388
+ <a href="#added_2" class="md-nav__link">
8389
+ <span class="md-ellipsis">
8390
+ Added
8391
+ </span>
8392
+ </a>
8393
+
8394
+ </li>
8395
+
8396
+ <li class="md-nav__item">
8397
+ <a href="#changed_2" class="md-nav__link">
8398
+ <span class="md-ellipsis">
8399
+ Changed
8400
+ </span>
8401
+ </a>
8402
+
8403
+ </li>
8404
+
8405
+ <li class="md-nav__item">
8406
+ <a href="#removed" class="md-nav__link">
8407
+ <span class="md-ellipsis">
8408
+ Removed
8409
+ </span>
8410
+ </a>
8411
+
8412
+ </li>
8413
+
8414
+ <li class="md-nav__item">
8415
+ <a href="#fixed_1" class="md-nav__link">
8416
+ <span class="md-ellipsis">
8417
+ Fixed
8418
+ </span>
8419
+ </a>
8420
+
8421
+ </li>
8422
+
8423
+ <li class="md-nav__item">
8424
+ <a href="#documentation" class="md-nav__link">
8425
+ <span class="md-ellipsis">
8426
+ Documentation
8427
+ </span>
8428
+ </a>
8429
+
8430
+ </li>
8431
+
8432
+ <li class="md-nav__item">
8433
+ <a href="#housekeeping_1" class="md-nav__link">
8434
+ <span class="md-ellipsis">
8435
+ Housekeeping
8436
+ </span>
8437
+ </a>
8438
+
8439
+ </li>
8440
+
8441
+ </ul>
8442
+ </nav>
8443
+
8231
8444
  </li>
8232
8445
 
8233
8446
  <li class="md-nav__item">
@@ -8241,7 +8454,7 @@
8241
8454
  <ul class="md-nav__list">
8242
8455
 
8243
8456
  <li class="md-nav__item">
8244
- <a href="#security" class="md-nav__link">
8457
+ <a href="#security_1" class="md-nav__link">
8245
8458
  <span class="md-ellipsis">
8246
8459
  Security
8247
8460
  </span>
@@ -8250,7 +8463,7 @@
8250
8463
  </li>
8251
8464
 
8252
8465
  <li class="md-nav__item">
8253
- <a href="#added_1" class="md-nav__link">
8466
+ <a href="#added_3" class="md-nav__link">
8254
8467
  <span class="md-ellipsis">
8255
8468
  Added
8256
8469
  </span>
@@ -8259,7 +8472,7 @@
8259
8472
  </li>
8260
8473
 
8261
8474
  <li class="md-nav__item">
8262
- <a href="#changed_1" class="md-nav__link">
8475
+ <a href="#changed_3" class="md-nav__link">
8263
8476
  <span class="md-ellipsis">
8264
8477
  Changed
8265
8478
  </span>
@@ -8277,7 +8490,7 @@
8277
8490
  </li>
8278
8491
 
8279
8492
  <li class="md-nav__item">
8280
- <a href="#removed" class="md-nav__link">
8493
+ <a href="#removed_1" class="md-nav__link">
8281
8494
  <span class="md-ellipsis">
8282
8495
  Removed
8283
8496
  </span>
@@ -8286,7 +8499,7 @@
8286
8499
  </li>
8287
8500
 
8288
8501
  <li class="md-nav__item">
8289
- <a href="#fixed" class="md-nav__link">
8502
+ <a href="#fixed_2" class="md-nav__link">
8290
8503
  <span class="md-ellipsis">
8291
8504
  Fixed
8292
8505
  </span>
@@ -8295,7 +8508,7 @@
8295
8508
  </li>
8296
8509
 
8297
8510
  <li class="md-nav__item">
8298
- <a href="#dependencies" class="md-nav__link">
8511
+ <a href="#dependencies_1" class="md-nav__link">
8299
8512
  <span class="md-ellipsis">
8300
8513
  Dependencies
8301
8514
  </span>
@@ -8304,7 +8517,7 @@
8304
8517
  </li>
8305
8518
 
8306
8519
  <li class="md-nav__item">
8307
- <a href="#documentation" class="md-nav__link">
8520
+ <a href="#documentation_1" class="md-nav__link">
8308
8521
  <span class="md-ellipsis">
8309
8522
  Documentation
8310
8523
  </span>
@@ -8313,7 +8526,7 @@
8313
8526
  </li>
8314
8527
 
8315
8528
  <li class="md-nav__item">
8316
- <a href="#housekeeping" class="md-nav__link">
8529
+ <a href="#housekeeping_2" class="md-nav__link">
8317
8530
  <span class="md-ellipsis">
8318
8531
  Housekeeping
8319
8532
  </span>
@@ -8907,6 +9120,39 @@
8907
9120
  </label>
8908
9121
  <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
8909
9122
 
9123
+ <li class="md-nav__item">
9124
+ <a href="#upgrade-actions" class="md-nav__link">
9125
+ <span class="md-ellipsis">
9126
+ Upgrade Actions
9127
+ </span>
9128
+ </a>
9129
+
9130
+ <nav class="md-nav" aria-label="Upgrade Actions">
9131
+ <ul class="md-nav__list">
9132
+
9133
+ <li class="md-nav__item">
9134
+ <a href="#administrators" class="md-nav__link">
9135
+ <span class="md-ellipsis">
9136
+ Administrators
9137
+ </span>
9138
+ </a>
9139
+
9140
+ </li>
9141
+
9142
+ <li class="md-nav__item">
9143
+ <a href="#job-authors-app-developers" class="md-nav__link">
9144
+ <span class="md-ellipsis">
9145
+ Job Authors &amp; App Developers
9146
+ </span>
9147
+ </a>
9148
+
9149
+ </li>
9150
+
9151
+ </ul>
9152
+ </nav>
9153
+
9154
+ </li>
9155
+
8910
9156
  <li class="md-nav__item">
8911
9157
  <a href="#release-overview" class="md-nav__link">
8912
9158
  <span class="md-ellipsis">
@@ -8928,27 +9174,36 @@
8928
9174
  <ul class="md-nav__list">
8929
9175
 
8930
9176
  <li class="md-nav__item">
8931
- <a href="#added-an-optional-role-field-to-interface-and-vminterface-models-4406" class="md-nav__link">
9177
+ <a href="#cloud-models-5716-5719-5721-5872" class="md-nav__link">
8932
9178
  <span class="md-ellipsis">
8933
- Added an Optional role field to Interface and VMInterface models (#4406)
9179
+ Cloud Models (#5716, #5719, #5721, #5872)
8934
9180
  </span>
8935
9181
  </a>
8936
9182
 
8937
9183
  </li>
8938
9184
 
8939
9185
  <li class="md-nav__item">
8940
- <a href="#cloud-models-5716-5719-5721-5872" class="md-nav__link">
9186
+ <a href="#device-modules-2101" class="md-nav__link">
8941
9187
  <span class="md-ellipsis">
8942
- Cloud Models (#5716, #5719, #5721, #5872)
9188
+ Device Modules (#2101)
8943
9189
  </span>
8944
9190
  </a>
8945
9191
 
8946
9192
  </li>
8947
9193
 
8948
9194
  <li class="md-nav__item">
8949
- <a href="#dynamic-group-enhancements" class="md-nav__link">
9195
+ <a href="#dynamic-group-enhancements-5472-5786" class="md-nav__link">
8950
9196
  <span class="md-ellipsis">
8951
- Dynamic Group Enhancements
9197
+ Dynamic Group Enhancements (#5472, #5786)
9198
+ </span>
9199
+ </a>
9200
+
9201
+ </li>
9202
+
9203
+ <li class="md-nav__item">
9204
+ <a href="#interface-and-vminterface-roles-4406" class="md-nav__link">
9205
+ <span class="md-ellipsis">
9206
+ Interface and VMInterface Roles (#4406)
8952
9207
  </span>
8953
9208
  </a>
8954
9209
 
@@ -8964,18 +9219,27 @@
8964
9219
  </li>
8965
9220
 
8966
9221
  <li class="md-nav__item">
8967
- <a href="#saved-views" class="md-nav__link">
9222
+ <a href="#python-312-support-5429" class="md-nav__link">
8968
9223
  <span class="md-ellipsis">
8969
- Saved Views
9224
+ Python 3.12 Support (#5429)
8970
9225
  </span>
8971
9226
  </a>
8972
9227
 
8973
9228
  </li>
8974
9229
 
8975
9230
  <li class="md-nav__item">
8976
- <a href="#device-modules-2101" class="md-nav__link">
9231
+ <a href="#saved-views-1758" class="md-nav__link">
8977
9232
  <span class="md-ellipsis">
8978
- Device Modules (#2101)
9233
+ Saved Views (#1758)
9234
+ </span>
9235
+ </a>
9236
+
9237
+ </li>
9238
+
9239
+ <li class="md-nav__item">
9240
+ <a href="#worker-status-page-5873" class="md-nav__link">
9241
+ <span class="md-ellipsis">
9242
+ Worker Status Page (#5873)
8979
9243
  </span>
8980
9244
  </a>
8981
9245
 
@@ -8997,18 +9261,18 @@
8997
9261
  <ul class="md-nav__list">
8998
9262
 
8999
9263
  <li class="md-nav__item">
9000
- <a href="#dynamic-group-cache-changes" class="md-nav__link">
9264
+ <a href="#changed-treemanager-default-behavior-5786" class="md-nav__link">
9001
9265
  <span class="md-ellipsis">
9002
- Dynamic Group Cache Changes
9266
+ Changed TreeManager Default Behavior (#5786)
9003
9267
  </span>
9004
9268
  </a>
9005
9269
 
9006
9270
  </li>
9007
9271
 
9008
9272
  <li class="md-nav__item">
9009
- <a href="#updated-to-django-42" class="md-nav__link">
9273
+ <a href="#dynamic-group-cache-changes-5473" class="md-nav__link">
9010
9274
  <span class="md-ellipsis">
9011
- Updated to Django 4.2
9275
+ Dynamic Group Cache Changes (#5473)
9012
9276
  </span>
9013
9277
  </a>
9014
9278
 
@@ -9021,11 +9285,173 @@
9021
9285
  </span>
9022
9286
  </a>
9023
9287
 
9288
+ </li>
9289
+
9290
+ <li class="md-nav__item">
9291
+ <a href="#ui-button-consolidation-5869-5870-5871" class="md-nav__link">
9292
+ <span class="md-ellipsis">
9293
+ UI Button Consolidation (#5869, #5870, #5871)
9294
+ </span>
9295
+ </a>
9296
+
9297
+ </li>
9298
+
9299
+ </ul>
9300
+ </nav>
9301
+
9302
+ </li>
9303
+
9304
+ <li class="md-nav__item">
9305
+ <a href="#dependencies" class="md-nav__link">
9306
+ <span class="md-ellipsis">
9307
+ Dependencies
9308
+ </span>
9309
+ </a>
9310
+
9311
+ <nav class="md-nav" aria-label="Dependencies">
9312
+ <ul class="md-nav__list">
9313
+
9314
+ <li class="md-nav__item">
9315
+ <a href="#updated-to-django-42-3581" class="md-nav__link">
9316
+ <span class="md-ellipsis">
9317
+ Updated to Django 4.2 (#3581)
9318
+ </span>
9319
+ </a>
9320
+
9321
+ </li>
9322
+
9323
+ </ul>
9324
+ </nav>
9325
+
9024
9326
  </li>
9025
9327
 
9026
9328
  </ul>
9027
9329
  </nav>
9028
9330
 
9331
+ </li>
9332
+
9333
+ <li class="md-nav__item">
9334
+ <a href="#v231-2024-08-19" class="md-nav__link">
9335
+ <span class="md-ellipsis">
9336
+ v2.3.1 (2024-08-19)
9337
+ </span>
9338
+ </a>
9339
+
9340
+ <nav class="md-nav" aria-label="v2.3.1 (2024-08-19)">
9341
+ <ul class="md-nav__list">
9342
+
9343
+ <li class="md-nav__item">
9344
+ <a href="#added_1" class="md-nav__link">
9345
+ <span class="md-ellipsis">
9346
+ Added
9347
+ </span>
9348
+ </a>
9349
+
9350
+ </li>
9351
+
9352
+ <li class="md-nav__item">
9353
+ <a href="#changed_1" class="md-nav__link">
9354
+ <span class="md-ellipsis">
9355
+ Changed
9356
+ </span>
9357
+ </a>
9358
+
9359
+ </li>
9360
+
9361
+ <li class="md-nav__item">
9362
+ <a href="#fixed" class="md-nav__link">
9363
+ <span class="md-ellipsis">
9364
+ Fixed
9365
+ </span>
9366
+ </a>
9367
+
9368
+ </li>
9369
+
9370
+ <li class="md-nav__item">
9371
+ <a href="#housekeeping" class="md-nav__link">
9372
+ <span class="md-ellipsis">
9373
+ Housekeeping
9374
+ </span>
9375
+ </a>
9376
+
9377
+ </li>
9378
+
9379
+ </ul>
9380
+ </nav>
9381
+
9382
+ </li>
9383
+
9384
+ <li class="md-nav__item">
9385
+ <a href="#v230-2024-08-08" class="md-nav__link">
9386
+ <span class="md-ellipsis">
9387
+ v2.3.0 (2024-08-08)
9388
+ </span>
9389
+ </a>
9390
+
9391
+ <nav class="md-nav" aria-label="v2.3.0 (2024-08-08)">
9392
+ <ul class="md-nav__list">
9393
+
9394
+ <li class="md-nav__item">
9395
+ <a href="#security" class="md-nav__link">
9396
+ <span class="md-ellipsis">
9397
+ Security
9398
+ </span>
9399
+ </a>
9400
+
9401
+ </li>
9402
+
9403
+ <li class="md-nav__item">
9404
+ <a href="#added_2" class="md-nav__link">
9405
+ <span class="md-ellipsis">
9406
+ Added
9407
+ </span>
9408
+ </a>
9409
+
9410
+ </li>
9411
+
9412
+ <li class="md-nav__item">
9413
+ <a href="#changed_2" class="md-nav__link">
9414
+ <span class="md-ellipsis">
9415
+ Changed
9416
+ </span>
9417
+ </a>
9418
+
9419
+ </li>
9420
+
9421
+ <li class="md-nav__item">
9422
+ <a href="#removed" class="md-nav__link">
9423
+ <span class="md-ellipsis">
9424
+ Removed
9425
+ </span>
9426
+ </a>
9427
+
9428
+ </li>
9429
+
9430
+ <li class="md-nav__item">
9431
+ <a href="#fixed_1" class="md-nav__link">
9432
+ <span class="md-ellipsis">
9433
+ Fixed
9434
+ </span>
9435
+ </a>
9436
+
9437
+ </li>
9438
+
9439
+ <li class="md-nav__item">
9440
+ <a href="#documentation" class="md-nav__link">
9441
+ <span class="md-ellipsis">
9442
+ Documentation
9443
+ </span>
9444
+ </a>
9445
+
9446
+ </li>
9447
+
9448
+ <li class="md-nav__item">
9449
+ <a href="#housekeeping_1" class="md-nav__link">
9450
+ <span class="md-ellipsis">
9451
+ Housekeeping
9452
+ </span>
9453
+ </a>
9454
+
9029
9455
  </li>
9030
9456
 
9031
9457
  </ul>
@@ -9044,7 +9470,7 @@
9044
9470
  <ul class="md-nav__list">
9045
9471
 
9046
9472
  <li class="md-nav__item">
9047
- <a href="#security" class="md-nav__link">
9473
+ <a href="#security_1" class="md-nav__link">
9048
9474
  <span class="md-ellipsis">
9049
9475
  Security
9050
9476
  </span>
@@ -9053,7 +9479,7 @@
9053
9479
  </li>
9054
9480
 
9055
9481
  <li class="md-nav__item">
9056
- <a href="#added_1" class="md-nav__link">
9482
+ <a href="#added_3" class="md-nav__link">
9057
9483
  <span class="md-ellipsis">
9058
9484
  Added
9059
9485
  </span>
@@ -9062,7 +9488,7 @@
9062
9488
  </li>
9063
9489
 
9064
9490
  <li class="md-nav__item">
9065
- <a href="#changed_1" class="md-nav__link">
9491
+ <a href="#changed_3" class="md-nav__link">
9066
9492
  <span class="md-ellipsis">
9067
9493
  Changed
9068
9494
  </span>
@@ -9080,7 +9506,7 @@
9080
9506
  </li>
9081
9507
 
9082
9508
  <li class="md-nav__item">
9083
- <a href="#removed" class="md-nav__link">
9509
+ <a href="#removed_1" class="md-nav__link">
9084
9510
  <span class="md-ellipsis">
9085
9511
  Removed
9086
9512
  </span>
@@ -9089,7 +9515,7 @@
9089
9515
  </li>
9090
9516
 
9091
9517
  <li class="md-nav__item">
9092
- <a href="#fixed" class="md-nav__link">
9518
+ <a href="#fixed_2" class="md-nav__link">
9093
9519
  <span class="md-ellipsis">
9094
9520
  Fixed
9095
9521
  </span>
@@ -9098,7 +9524,7 @@
9098
9524
  </li>
9099
9525
 
9100
9526
  <li class="md-nav__item">
9101
- <a href="#dependencies" class="md-nav__link">
9527
+ <a href="#dependencies_1" class="md-nav__link">
9102
9528
  <span class="md-ellipsis">
9103
9529
  Dependencies
9104
9530
  </span>
@@ -9107,7 +9533,7 @@
9107
9533
  </li>
9108
9534
 
9109
9535
  <li class="md-nav__item">
9110
- <a href="#documentation" class="md-nav__link">
9536
+ <a href="#documentation_1" class="md-nav__link">
9111
9537
  <span class="md-ellipsis">
9112
9538
  Documentation
9113
9539
  </span>
@@ -9116,7 +9542,7 @@
9116
9542
  </li>
9117
9543
 
9118
9544
  <li class="md-nav__item">
9119
- <a href="#housekeeping" class="md-nav__link">
9545
+ <a href="#housekeeping_2" class="md-nav__link">
9120
9546
  <span class="md-ellipsis">
9121
9547
  Housekeeping
9122
9548
  </span>
@@ -9151,24 +9577,64 @@
9151
9577
 
9152
9578
  <h1 id="nautobot-v23">Nautobot v2.3<a class="headerlink" href="#nautobot-v23" title="Permanent link">&para;</a></h1>
9153
9579
  <p>This document describes all new features and changes in Nautobot 2.3.</p>
9580
+ <h2 id="upgrade-actions">Upgrade Actions<a class="headerlink" href="#upgrade-actions" title="Permanent link">&para;</a></h2>
9581
+ <h3 id="administrators">Administrators<a class="headerlink" href="#administrators" title="Permanent link">&para;</a></h3>
9582
+ <p>Administrators should plan to take these actions during or immediately after upgrade from a previous version. New installations should also take note of these actions where appropriate.</p>
9583
+ <ul>
9584
+ <li>Python 3.12 is now the default recommended version of Python.</li>
9585
+ </ul>
9586
+ <div class="admonition warning">
9587
+ <p class="admonition-title">Python 3.12</p>
9588
+ <p>Because Nautobot prior to 2.3.0 did not declare support for Python 3.12, most Apps similarly needed to previously declare an upper bound of Python 3.11 for their own compatibility. Therefore, older versions of most Apps <strong>will not be installable</strong> under Python 3.12. Before migrating your Nautobot environment to Python 3.12, it is your responsibility to confirm that all relevant Apps in your environment are also compatible and installable.</p>
9589
+ <p>There is a minor "chicken-and-egg" problem here in that Apps generally cannot declare support for a new Python version before Nautobot itself publishes a release that does so; therefore, as of the 2.3.0 Nautobot release day, most Apps have not yet been updated to declare support for Python 3.12. We'll be working in the following days to promptly update our supported Apps as needed, so stay tuned.</p>
9590
+ </div>
9591
+ <div class="admonition warning">
9592
+ <p class="admonition-title">Docker images</p>
9593
+ <p>As has been Nautobot's policy since version 1.6.1, our published Docker images <em>that are not tagged with a specific Python version</em> implicitly always include the <em>latest</em> supported version of Python. This means that as of the release of Nautobot 2.3.0, the tags <code>latest</code>, <code>stable</code>, <code>2.3</code>, and <code>2.3.0</code> will all indicate Docker images that include Python 3.12, whereas previously these indicated Python 3.11 images. As noted above and below, updating to Python 3.12 may not be immediately desirable (or even possible, depending on the status of your Apps) as a "day one" action.</p>
9594
+ <p>If you need to stay with a given Python version for the time being, you must make sure that you're relying on an appropriately specific image tag, such as <code>2.3-py3.11</code>, <code>stable-py3.10</code>, etc.</p>
9595
+ </div>
9596
+ <ul>
9597
+ <li>As noted <a href="#dynamic-group-cache-changes-5473">below</a>, a new system job is provided for automated Dynamic Group cache updates. Administrators should schedule this system job to run on a recurring basis within the Jobs UI, after the upgrade, or on new install. Configuration referencing the <code>DYNAMIC_GROUPS_MEMBER_CACHE_TIMEOUT</code> setting can be safely removed, as it is no longer used. If this setting was being used previously, it is recommended to set the new scheduled job's interval to the same value.</li>
9598
+ <li>As noted <a href="#log-cleanup-as-system-job-3749">below</a>, change logging retention cleanup is now handled via a system job. Administrators should schedule this job to run on a recurring basis to meet their needs. The <code>CHANGELOG_RETENTION</code> setting is still used to define the retention period, but the scheduled system job will perform the actual cleanup, if any needed.</li>
9599
+ </ul>
9600
+ <h3 id="job-authors-app-developers">Job Authors &amp; App Developers<a class="headerlink" href="#job-authors-app-developers" title="Permanent link">&para;</a></h3>
9601
+ <p>Job Authors and App Developers should take these actions to ensure compatibility with their Jobs and Apps.</p>
9602
+ <ul>
9603
+ <li>Job Authors and App Developers should carefully consider the <a href="#dynamic-group-cache-changes-5473">updates to the DynamicGroup API</a> and decide if their use cases dictate changing their group membership access patterns to use <code>DynamicGroup.update_cached_members()</code> to find the correct balance between Dynamic Group performance and membership updates.</li>
9604
+ <li>Job Authors and App Developers should carefully consider the <a href="#changed-treemanager-default-behavior-5786">updates to the TreeManager default behavior</a> and make necessary changes to their access of Tree based models.</li>
9605
+ <li>Django 4.2 is now required by Nautobot, replacing the previous Django 3.2 dependency. Job Authors and App Developers should carefully consider the updates and changes in the Django release-notes (<a href="https://docs.djangoproject.com/en/4.2/releases/4.0/">4.0</a>, <a href="https://docs.djangoproject.com/en/4.2/releases/4.1/">4.1</a>, <a href="https://docs.djangoproject.com/en/4.2/releases/4.2/">4.2</a>), especially the relevant "Backwards incompatible changes" sections, to proactively identify any impact to their Apps.</li>
9606
+ </ul>
9607
+ <div class="admonition warning">
9608
+ <p class="admonition-title">Django 4</p>
9609
+ <p>Django 4 includes a small number of breaking changes compared to Django 3. In our experience, most Apps have required few (or zero) updates to be Django 4 compatible, but your mileage may vary.</p>
9610
+ </div>
9611
+ <ul>
9612
+ <li>Python 3.12 is now supported by Nautobot and is now the default recommended version of Python. Apps will likely need to update their packaging in order to explicitly declare support for Python 3.12.</li>
9613
+ </ul>
9154
9614
  <h2 id="release-overview">Release Overview<a class="headerlink" href="#release-overview" title="Permanent link">&para;</a></h2>
9155
9615
  <h3 id="added">Added<a class="headerlink" href="#added" title="Permanent link">&para;</a></h3>
9156
- <h4 id="added-an-optional-role-field-to-interface-and-vminterface-models-4406">Added an Optional <code>role</code> field to Interface and VMInterface models (<a href="https://github.com/nautobot/nautobot/issues/4406">#4406</a>)<a class="headerlink" href="#added-an-optional-role-field-to-interface-and-vminterface-models-4406" title="Permanent link">&para;</a></h4>
9157
- <p>Added an optional <code>role</code> field to Interface and VMInterface models to track common interface configurations. Now the users can create <a href="../user-guide/platform-functionality/role.html">Role</a> instances that can be assigned to <a href="../user-guide/core-data-model/dcim/interface.html">interfaces</a> and <a href="../user-guide/core-data-model/virtualization/vminterface.html">vminterfaces</a>.</p>
9158
9616
  <h4 id="cloud-models-5716-5719-5721-5872">Cloud Models (<a href="https://github.com/nautobot/nautobot/issues/5716">#5716</a>, <a href="https://github.com/nautobot/nautobot/issues/5719">#5719</a>, <a href="https://github.com/nautobot/nautobot/issues/5721">#5721</a>, <a href="https://github.com/nautobot/nautobot/issues/5872">#5872</a>)<a class="headerlink" href="#cloud-models-5716-5719-5721-5872" title="Permanent link">&para;</a></h4>
9159
9617
  <p>Added the new models <code>CloudAccount</code>, <code>CloudResourceType</code>, <code>CloudNetwork</code>, and <code>CloudService</code> to support recording of cloud provider accounts (AWS, Azure, GCP, DigitalOcean, etc.), cloud resource types (AWS EC2, Azure Virtual Machine Service, Google App Engine, etc.), cloud services (specific instances of services described by cloud resource types) and cloud network objects (such as VPCs) in Nautobot.</p>
9160
- <h4 id="dynamic-group-enhancements">Dynamic Group Enhancements<a class="headerlink" href="#dynamic-group-enhancements" title="Permanent link">&para;</a></h4>
9161
- <p>Dynamic Groups now have a <code>group_type</code> field, which specifies whether this group is defined by an object filter, defined by aggregating other groups via set operations, or defined via static assignment of objects as group members (this third type is new in Nautobot 2.3). Additionally, you can now assign a tenant and/or tags to each Dynamic Group.</p>
9162
- <p>A new model, <code>StaticGroupAssociation</code>, and associated REST API, have been added in support of the new "static" group type. See also "<a href="#dynamic-group-cache-changes">Dynamic Group Cache Changes</a>" below.</p>
9618
+ <h4 id="device-modules-2101">Device Modules (<a href="https://github.com/nautobot/nautobot/issues/2101">#2101</a>)<a class="headerlink" href="#device-modules-2101" title="Permanent link">&para;</a></h4>
9619
+ <p>Added new models for <code>ModuleBay</code>, <code>Module</code>, <code>ModuleType</code>, and <code>ModuleBayTemplate</code> to support modeling line cards and other modular components of a device. These models allow you to define a hierarchy of module bays and modules within a device, and to assign components (such as interfaces, power ports, etc.) to specific modules.</p>
9620
+ <h4 id="dynamic-group-enhancements-5472-5786">Dynamic Group Enhancements (<a href="https://github.com/nautobot/nautobot/issues/5472">#5472</a>, <a href="https://github.com/nautobot/nautobot/issues/5786">#5786</a>)<a class="headerlink" href="#dynamic-group-enhancements-5472-5786" title="Permanent link">&para;</a></h4>
9621
+ <p>Dynamic Groups now have a <code>group_type</code> field, which specifies whether this group is defined by an object filter, defined by aggregating other groups via set operations, or defined via static assignment of objects as group members (this third type is new in Nautobot 2.3). Additionally, you can now assign a tenant and/or tags to each Dynamic Group, and many more models now can be included in Dynamic Groups.</p>
9622
+ <p>A new model, <code>StaticGroupAssociation</code>, and associated REST API, have been added in support of the new "static" group type. See also "<a href="#dynamic-group-cache-changes-5473">Dynamic Group Cache Changes</a>" below.</p>
9163
9623
  <p>For more details, refer to the <a href="../user-guide/platform-functionality/dynamicgroup.html">Dynamic Group</a> documentation.</p>
9624
+ <h4 id="interface-and-vminterface-roles-4406">Interface and VMInterface Roles (<a href="https://github.com/nautobot/nautobot/issues/4406">#4406</a>)<a class="headerlink" href="#interface-and-vminterface-roles-4406" title="Permanent link">&para;</a></h4>
9625
+ <p>Added an optional <code>role</code> field to Interface and VMInterface models to track common interface configurations. Now the users can create <a href="../user-guide/platform-functionality/role.html">Role</a> instances that can be assigned to <a href="../user-guide/core-data-model/dcim/interface.html">interfaces</a> and <a href="../user-guide/core-data-model/virtualization/vminterface.html">vminterfaces</a>.</p>
9164
9626
  <h4 id="object-metadata-models-5663">Object Metadata Models (<a href="https://github.com/nautobot/nautobot/issues/5663">#5663</a>)<a class="headerlink" href="#object-metadata-models-5663" title="Permanent link">&para;</a></h4>
9165
- <p>Added <a href="../user-guide/platform-functionality/metadata.html">a set of functionality</a> for defining and managing object metadata, that is to say, data <em>about</em> the network data managed in Nautobot, such as data provenance, data ownership, and data classification. For more details, refer to the linked documentation.</p>
9166
- <h4 id="saved-views">Saved Views<a class="headerlink" href="#saved-views" title="Permanent link">&para;</a></h4>
9627
+ <p>Added <a href="../user-guide/platform-functionality/objectmetadata.html">a set of functionality</a> for defining and managing object metadata, that is to say, data <em>about</em> the network data managed in Nautobot, such as data provenance, data ownership, and data classification. For more details, refer to the linked documentation.</p>
9628
+ <h4 id="python-312-support-5429">Python 3.12 Support (<a href="https://github.com/nautobot/nautobot/issues/5429">#5429</a>)<a class="headerlink" href="#python-312-support-5429" title="Permanent link">&para;</a></h4>
9629
+ <p>Nautobot now supports Python 3.12, and Python 3.12 is now the default Python version included in the <code>nautobot</code> Docker images.</p>
9630
+ <h4 id="saved-views-1758">Saved Views (<a href="https://github.com/nautobot/nautobot/issues/1758">#1758</a>)<a class="headerlink" href="#saved-views-1758" title="Permanent link">&para;</a></h4>
9167
9631
  <p>Added the ability for users to save multiple configurations of list views (table columns, filtering, pagination and sorting) for ease of later use and reuse. Refer to the <a href="../user-guide/platform-functionality/savedview.html">Saved View</a> documentation for more details and on how to use saved views.</p>
9168
- <h4 id="device-modules-2101">Device Modules (<a href="https://github.com/nautobot/nautobot/issues/2101">#2101</a>)<a class="headerlink" href="#device-modules-2101" title="Permanent link">&para;</a></h4>
9169
- <p>Added new models for <code>ModuleBay</code>, <code>Module</code>, <code>ModuleType</code>, and <code>ModuleBayTemplate</code> to support modeling line cards and other modular components of a device. These models allow you to define a hierarchy of module bays and modules within a device, and to assign components (such as interfaces, power ports, etc.) to specific modules.</p>
9632
+ <h4 id="worker-status-page-5873">Worker Status Page (<a href="https://github.com/nautobot/nautobot/issues/5873">#5873</a>)<a class="headerlink" href="#worker-status-page-5873" title="Permanent link">&para;</a></h4>
9633
+ <p>User accounts with the <code>is_staff</code> flag set can access a new worker status page at <code>/worker-status/</code> to view the status of the Celery worker(s) and the configured queues. The link to this page appears in the "User" dropdown at the bottom of the navigation menu, under the link to the "Profile" page. Use this page with caution as it runs a live query against the Celery worker(s) and may impact performance of your web service.</p>
9170
9634
  <h3 id="changed">Changed<a class="headerlink" href="#changed" title="Permanent link">&para;</a></h3>
9171
- <h4 id="dynamic-group-cache-changes">Dynamic Group Cache Changes<a class="headerlink" href="#dynamic-group-cache-changes" title="Permanent link">&para;</a></h4>
9635
+ <h4 id="changed-treemanager-default-behavior-5786">Changed TreeManager Default Behavior (<a href="https://github.com/nautobot/nautobot/issues/5786">#5786</a>)<a class="headerlink" href="#changed-treemanager-default-behavior-5786" title="Permanent link">&para;</a></h4>
9636
+ <p>The <code>TreeManager</code> class (used for tree-models such as Location, RackGroup, and TenantGroup) default behavior has changed from <code>with_tree_fields</code> to <code>without_tree_fields</code>. This should improve performance in many cases but may impact Apps or Jobs that were relying on the old default; such code should be updated to explicitly call <code>.with_tree_fields()</code> where appropriate.</p>
9637
+ <h4 id="dynamic-group-cache-changes-5473">Dynamic Group Cache Changes (<a href="https://github.com/nautobot/nautobot/issues/5473">#5473</a>)<a class="headerlink" href="#dynamic-group-cache-changes-5473" title="Permanent link">&para;</a></h4>
9172
9638
  <p>To improve performance of the Dynamic Groups feature, a number of changes have been made:</p>
9173
9639
  <ul>
9174
9640
  <li>Dynamic Groups now always use <code>StaticGroupAssociation</code> records as a database cache of their member objects, rather than optionally caching their members in Redis for a limited time period. For Dynamic Groups of types other than the new "static" group type, these <code>StaticGroupAssociation</code> records are hidden by default from the UI and REST API.</li>
@@ -9177,11 +9643,9 @@
9177
9643
  <li>The APIs <code>DynamicGroup.members_cached</code>, <code>DynamicGroup.members_cache_key</code>, <code>object.dynamic_groups_cached</code>, <code>object.dynamic_groups_list</code>, and <code>object.dynamic_groups_list_cached</code> are now deprecated.</li>
9178
9644
  <li>Editing a Dynamic Group definition refreshes its cached members and those of any "parent" groups that use it.</li>
9179
9645
  <li>Viewing a Dynamic Group detail view in the UI refreshes its cached members (only).</li>
9180
- <li>A new System Job, <code>Refresh Dynamic Group Caches</code>, can be run or scheduled as apprropriate to refresh Dynamic Group member caches on demand.</li>
9646
+ <li>A new System Job, <code>Refresh Dynamic Group Caches</code>, can be run or scheduled as appropriate to refresh Dynamic Group member caches on demand.</li>
9181
9647
  <li>The existing API <code>DynamicGroup.update_cached_members()</code> can be called by Apps or Jobs needing to ensure that the cache is up-to-date for any given Dynamic Group.</li>
9182
9648
  </ul>
9183
- <h4 id="updated-to-django-42">Updated to Django 4.2<a class="headerlink" href="#updated-to-django-42" title="Permanent link">&para;</a></h4>
9184
- <p>As Django 3.2 has reached end-of-life, Nautobot 2.3 requires Django 4.2, the next long-term-support (LTS) version of Django. There are a number of changes in Django itself as a result of this upgrade; Nautobot App maintainers are urged to review the Django release-notes (<a href="https://docs.djangoproject.com/en/4.2/releases/4.0/">4.0</a>, <a href="https://docs.djangoproject.com/en/4.2/releases/4.1/">4.1</a>, <a href="https://docs.djangoproject.com/en/4.2/releases/4.2/">4.2</a>), especially the relevant "Backwards incompatible changes" sections, to proactively identify any impact to their Apps.</p>
9185
9649
  <h4 id="log-cleanup-as-system-job-3749">Log Cleanup as System Job (<a href="https://github.com/nautobot/nautobot/issues/3749">#3749</a>)<a class="headerlink" href="#log-cleanup-as-system-job-3749" title="Permanent link">&para;</a></h4>
9186
9650
  <p>Cleanup of the change log (deletion of <code>ObjectChange</code> records older than a given cutoff) is now handled by the new <code>LogsCleanup</code> system Job, rather than occurring at random as a side effect of new change log records being created. Admins desiring automatic cleanup are encouraged to schedule this job to run at an appropriate interval suitable to your deployment's needs.</p>
9187
9651
  <div class="admonition info">
@@ -9189,13 +9653,103 @@
9189
9653
  <p>Setting <a href="../user-guide/administration/configuration/optional-settings.html#changelog_retention"><code>CHANGELOG_RETENTION</code></a> in your Nautobot configuration by itself no longer directly results in periodic cleanup of <code>ObjectChange</code> records. You must run (or schedule to periodically run) the <code>LogsCleanup</code> Job for this to occur.</p>
9190
9654
  </div>
9191
9655
  <p>As an additional enhancement, the <code>LogsCleanup</code> Job can also be used to cleanup <code>JobResult</code> records if desired as well.</p>
9656
+ <h4 id="ui-button-consolidation-5869-5870-5871">UI Button Consolidation (<a href="https://github.com/nautobot/nautobot/issues/5869">#5869</a>, <a href="https://github.com/nautobot/nautobot/issues/5870">#5870</a>, <a href="https://github.com/nautobot/nautobot/issues/5871">#5871</a>)<a class="headerlink" href="#ui-button-consolidation-5869-5870-5871" title="Permanent link">&para;</a></h4>
9657
+ <p>Various button groups in the "object list" and "object detail" views have been consolidated following a common UI pattern of a single button for the most common action plus a popup menu for less common actions.</p>
9658
+ <h3 id="dependencies">Dependencies<a class="headerlink" href="#dependencies" title="Permanent link">&para;</a></h3>
9659
+ <h4 id="updated-to-django-42-3581">Updated to Django 4.2 (<a href="https://github.com/nautobot/nautobot/issues/3581">#3581</a>)<a class="headerlink" href="#updated-to-django-42-3581" title="Permanent link">&para;</a></h4>
9660
+ <p>As Django 3.2 has reached end-of-life, Nautobot 2.3 requires Django 4.2, the next long-term-support (LTS) version of Django. There are a number of changes in Django itself as a result of this upgrade; Nautobot App maintainers are urged to review the Django release-notes (<a href="https://docs.djangoproject.com/en/4.2/releases/4.0/">4.0</a>, <a href="https://docs.djangoproject.com/en/4.2/releases/4.1/">4.1</a>, <a href="https://docs.djangoproject.com/en/4.2/releases/4.2/">4.2</a>), especially the relevant "Backwards incompatible changes" sections, to proactively identify any impact to their Apps.</p>
9192
9661
  <!-- towncrier release notes start -->
9193
- <h2 id="v230-beta1-2024-07-25">v2.3.0-beta.1 (2024-07-25)<a class="headerlink" href="#v230-beta1-2024-07-25" title="Permanent link">&para;</a></h2>
9662
+ <h2 id="v231-2024-08-19">v2.3.1 (2024-08-19)<a class="headerlink" href="#v231-2024-08-19" title="Permanent link">&para;</a></h2>
9663
+ <h3 id="added_1">Added<a class="headerlink" href="#added_1" title="Permanent link">&para;</a></h3>
9664
+ <ul>
9665
+ <li><a href="https://github.com/nautobot/nautobot/issues/5232">#5232</a> - Added support for groupings to computed fields.</li>
9666
+ <li><a href="https://github.com/nautobot/nautobot/issues/5494">#5494</a> - Added validation logic to <code>DeviceForm</code> <code>clean()</code> method to raise a validation error if there is any invalid software image file specified.</li>
9667
+ <li><a href="https://github.com/nautobot/nautobot/issues/5915">#5915</a> - Enhanced <code>IPAddress.objects.get_or_create</code> method to permit specifying a namespace as an alternative to a parent prefix.</li>
9668
+ </ul>
9669
+ <h3 id="changed_1">Changed<a class="headerlink" href="#changed_1" title="Permanent link">&para;</a></h3>
9670
+ <ul>
9671
+ <li><a href="https://github.com/nautobot/nautobot/issues/5970">#5970</a> - Removed indentations for PrefixTable in various locations in the UI.</li>
9672
+ </ul>
9673
+ <h3 id="fixed">Fixed<a class="headerlink" href="#fixed" title="Permanent link">&para;</a></h3>
9674
+ <ul>
9675
+ <li><a href="https://github.com/nautobot/nautobot/issues/5494">#5494</a> - Fixed <code>Device</code> model <code>clean()</code> validation logic to allow user to specify a software version on a device without specifying any software image files.</li>
9676
+ <li><a href="https://github.com/nautobot/nautobot/issues/6096">#6096</a> - Updated CloudAccount UI: Set the <code>secrets_group</code> form field to be optional.</li>
9677
+ <li><a href="https://github.com/nautobot/nautobot/issues/6097">#6097</a> - Updated ContactAssociation API: Set the role field to be required.</li>
9678
+ <li><a href="https://github.com/nautobot/nautobot/issues/6116">#6116</a> - Added handling for an <code>OperationalError</code> that might be raised when running <code>pylint-nautobot</code> or similar linters that depend on successfully running <code>nautobot.setup()</code>.</li>
9679
+ </ul>
9680
+ <h3 id="housekeeping">Housekeeping<a class="headerlink" href="#housekeeping" title="Permanent link">&para;</a></h3>
9681
+ <ul>
9682
+ <li><a href="https://github.com/nautobot/nautobot/issues/6107">#6107</a> - Updated documentation dependency <code>mkdocstrings-python</code> to <code>~1.10.8</code>.</li>
9683
+ </ul>
9684
+ <h2 id="v230-2024-08-08">v2.3.0 (2024-08-08)<a class="headerlink" href="#v230-2024-08-08" title="Permanent link">&para;</a></h2>
9194
9685
  <h3 id="security">Security<a class="headerlink" href="#security" title="Permanent link">&para;</a></h3>
9195
9686
  <ul>
9687
+ <li><a href="https://github.com/nautobot/nautobot/issues/6073">#6073</a> - Updated <code>Django</code> to <code>~4.2.15</code> due to <code>CVE-2024-41989</code>, <code>CVE-2024-41990</code>, <code>CVE-2024-41991</code>, and <code>CVE-2024-42005</code>.</li>
9688
+ </ul>
9689
+ <h3 id="added_2">Added<a class="headerlink" href="#added_2" title="Permanent link">&para;</a></h3>
9690
+ <ul>
9691
+ <li><a href="https://github.com/nautobot/nautobot/issues/5996">#5996</a> - Added missing <code>comments</code> field to DeviceType bulk edit.</li>
9692
+ <li><a href="https://github.com/nautobot/nautobot/issues/5996">#5996</a> - Added <code>comments</code> field to ModuleType.</li>
9693
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Added <code>Cloud Networks</code> column to <code>PrefixTable</code>.</li>
9694
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Added <code>prefixes</code> filter to <code>CloudNetworkFilterSet</code>.</li>
9695
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Added <code>parent__name</code> and <code>parent__description</code> to <code>CloudNetworkFilterSet</code> <code>q</code> filter.</li>
9696
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Added support for querying <code>GenericRelation</code> relationships (reverse of <code>GenericForeignKey</code>) in GraphQL.</li>
9697
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Added support for filtering an object's <code>associated_contacts</code> in GraphQL.</li>
9698
+ </ul>
9699
+ <h3 id="changed_2">Changed<a class="headerlink" href="#changed_2" title="Permanent link">&para;</a></h3>
9700
+ <ul>
9701
+ <li><a href="https://github.com/nautobot/nautobot/issues/6003">#6003</a> - Changed rendering of <code>scoped_fields</code> column in <code>ObjectMetadataTable</code>.</li>
9702
+ <li><a href="https://github.com/nautobot/nautobot/issues/6003">#6003</a> - Changed default ordering of <code>ObjectMetadata</code> list views.</li>
9703
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Renamed <code>associated_object_metadatas</code> GenericRelation to <code>associated_object_metadata</code>.</li>
9704
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Renamed <code>object_metadatas</code> reverse-relations to <code>object_metadata</code>.</li>
9705
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Changed <code>CloudNetwork.parent</code> foreign-key <code>on_delete</code> behavior to <code>PROTECT</code>.</li>
9706
+ <li><a href="https://github.com/nautobot/nautobot/issues/6070">#6070</a> - Marked the <code>Note</code> model as <code>is_metadata_associable_model = False</code>.</li>
9707
+ </ul>
9708
+ <h3 id="removed">Removed<a class="headerlink" href="#removed" title="Permanent link">&para;</a></h3>
9709
+ <ul>
9710
+ <li><a href="https://github.com/nautobot/nautobot/issues/6005">#6005</a> - Removed "delete" and "bulk-delete" functionalities from the ObjectMetadata views.</li>
9711
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Removed unneeded <code>CloudNetworkPrefixAssignmentTable</code>.</li>
9712
+ </ul>
9713
+ <h3 id="fixed_1">Fixed<a class="headerlink" href="#fixed_1" title="Permanent link">&para;</a></h3>
9714
+ <ul>
9715
+ <li><a href="https://github.com/nautobot/nautobot/issues/5967">#5967</a> - Fixed a regression in the display of custom fields in object-edit forms.</li>
9716
+ <li><a href="https://github.com/nautobot/nautobot/issues/5996">#5996</a> - Fixed URL typo in module and module type list views.</li>
9717
+ <li><a href="https://github.com/nautobot/nautobot/issues/6003">#6003</a> - Added missing <code>blank=True</code> to <code>ObjectMetadata.scoped_fields</code>.</li>
9718
+ <li><a href="https://github.com/nautobot/nautobot/issues/6019">#6019</a> - Marked the <code>JobLogEntry</code> model as invalid for association of <code>ObjectMetadata</code>.</li>
9719
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Added missing <code>Config Schema</code> display to detail view of <code>CloudResourceType</code>.</li>
9720
+ <li><a href="https://github.com/nautobot/nautobot/issues/6039">#6039</a> - Added missing <code>Description</code> display to detail view of <code>CloudService</code>.</li>
9721
+ <li><a href="https://github.com/nautobot/nautobot/issues/6045">#6045</a> - Fixed interfaces of Virtual Chassis Master missing other member's interfaces.</li>
9722
+ <li><a href="https://github.com/nautobot/nautobot/issues/6051">#6051</a> - Fixed improper escaping of saved-view name in success message.</li>
9723
+ <li><a href="https://github.com/nautobot/nautobot/issues/6051">#6051</a> - Fixed incorrect ordering of items in Tenant detail view.</li>
9724
+ <li><a href="https://github.com/nautobot/nautobot/issues/6051">#6051</a> - Fixed query parameters for <code>CloudNetwork.parent</code> form field.</li>
9725
+ <li><a href="https://github.com/nautobot/nautobot/issues/6056">#6056</a> - Fixed the order of object deletion by constructing delete success message before the object is deleted.</li>
9726
+ <li><a href="https://github.com/nautobot/nautobot/issues/6064">#6064</a> - Reverted an undesired change to <code>IPAddressFilterSet.device</code> filter.</li>
9727
+ <li><a href="https://github.com/nautobot/nautobot/issues/6064">#6064</a> - Reverted an undesired change to <code>ServiceForm.ip_addresses</code> valid addresses.</li>
9728
+ </ul>
9729
+ <h3 id="documentation">Documentation<a class="headerlink" href="#documentation" title="Permanent link">&para;</a></h3>
9730
+ <ul>
9731
+ <li><a href="https://github.com/nautobot/nautobot/issues/5920">#5920</a> - Updated documentation for installation under Ubuntu 24.04 LTS, Fedora 40, AlmaLinux 9, and similar distros.</li>
9732
+ <li><a href="https://github.com/nautobot/nautobot/issues/6019">#6019</a> - Updated the installation documentation to recommend a more secure set of filesystem permissions.</li>
9733
+ <li><a href="https://github.com/nautobot/nautobot/issues/6050">#6050</a> - Updated model development docs with information about object metadata and dynamic groups features.</li>
9734
+ <li><a href="https://github.com/nautobot/nautobot/issues/6050">#6050</a> - Added some crosslinks within the DCIM model documentation.</li>
9735
+ <li><a href="https://github.com/nautobot/nautobot/issues/6062">#6062</a> - Updated Configuration Context docs with additional examples for dictionary of dictionaries.</li>
9736
+ </ul>
9737
+ <h3 id="housekeeping_1">Housekeeping<a class="headerlink" href="#housekeeping_1" title="Permanent link">&para;</a></h3>
9738
+ <ul>
9739
+ <li><a href="https://github.com/nautobot/nautobot/issues/5962">#5962</a> - Updated development dependency <code>ruff</code> to <code>~0.5.6</code>.</li>
9740
+ <li><a href="https://github.com/nautobot/nautobot/issues/5962">#5962</a> - Updated documentation dependencies: <code>mkdocs-material</code> to <code>~9.5.31</code>, <code>mkdocstrings</code> to <code>~0.25.2</code>, and <code>mkdocstrings-python</code> to <code>~1.10.7</code>.</li>
9741
+ <li><a href="https://github.com/nautobot/nautobot/issues/6003">#6003</a> - Updated <code>ObjectMetadataFactory</code> to produce more realistic <code>scoped_fields</code> values.</li>
9742
+ <li><a href="https://github.com/nautobot/nautobot/issues/6014">#6014</a> - Fixed intermittent <code>ObjectMetadata</code> factory failures.</li>
9743
+ <li><a href="https://github.com/nautobot/nautobot/issues/6047">#6047</a> - Made sure that there is a sufficient amount of <code>Contact</code> and <code>Team</code> instances exist in the database when testing <code>contacts</code> and <code>teams</code> filters of an object's filterset.</li>
9744
+ <li><a href="https://github.com/nautobot/nautobot/issues/6055">#6055</a> - Added migrations check to upstream testing workflow.</li>
9745
+ <li><a href="https://github.com/nautobot/nautobot/issues/6071">#6071</a> - Fixed incorrect generic-test logic in <code>FilterTestCase.test_q_filter_valid</code> for <code>q</code> filters containing <code>iexact</code> lookups.</li>
9746
+ </ul>
9747
+ <h2 id="v230-beta1-2024-07-25">v2.3.0-beta.1 (2024-07-25)<a class="headerlink" href="#v230-beta1-2024-07-25" title="Permanent link">&para;</a></h2>
9748
+ <h3 id="security_1">Security<a class="headerlink" href="#security_1" title="Permanent link">&para;</a></h3>
9749
+ <ul>
9196
9750
  <li><a href="https://github.com/nautobot/nautobot/issues/5889">#5889</a> - Updated <code>Django</code> to <code>~4.2.14</code> due to <code>CVE-2024-38875</code>, <code>CVE-2024-39329</code>, <code>CVE-2024-39330</code>, and <code>CVE-2024-39614</code>.</li>
9197
9751
  </ul>
9198
- <h3 id="added_1">Added<a class="headerlink" href="#added_1" title="Permanent link">&para;</a></h3>
9752
+ <h3 id="added_3">Added<a class="headerlink" href="#added_3" title="Permanent link">&para;</a></h3>
9199
9753
  <ul>
9200
9754
  <li><a href="https://github.com/nautobot/nautobot/issues/1758">#1758</a> - Implemented SavedView model.</li>
9201
9755
  <li><a href="https://github.com/nautobot/nautobot/issues/2101">#2101</a> - Added ModuleBay, Module, ModuleType and ModuleBayTemplate models to support modeling line cards and other modular components of a device.</li>
@@ -9225,8 +9779,8 @@
9225
9779
  <li><a href="https://github.com/nautobot/nautobot/issues/5716">#5716</a> - Added CloudNetwork to CircuitTermination model, UI, and REST API.</li>
9226
9780
  <li><a href="https://github.com/nautobot/nautobot/issues/5716">#5716</a> - Added CloudNetwork to Prefix View.</li>
9227
9781
  <li><a href="https://github.com/nautobot/nautobot/issues/5719">#5719</a> - Added CloudAccount Model, UI, GraphQL and REST API.</li>
9228
- <li><a href="https://github.com/nautobot/nautobot/issues/5721">#5721</a> - Added ~<code>CloudType</code>~ <code>CloudResourceType</code> Model, UI, GraphQL and REST API.</li>
9229
- <li><a href="https://github.com/nautobot/nautobot/issues/5730">#5730</a> - Added a feature that replaces <code>{module}</code>, <code>{module.parent}</code>, <code>{module.parent.parent}</code>, etc. with the selected module's parent_module_bay <code>position</code> when creating a component in a module.</li>
9782
+ <li><a href="https://github.com/nautobot/nautobot/issues/5721">#5721</a> - Added <del><code>CloudType</code></del> <code>CloudResourceType</code> Model, UI, GraphQL and REST API.</li>
9783
+ <li><a href="https://github.com/nautobot/nautobot/issues/5730">#5730</a> - Added a feature that replaces <code>{module}</code>, <code>{module.parent}</code>, <code>{module.parent.parent}</code>, etc. with the selected module's <code>parent_module_bay</code> <code>position</code> when creating a component in a module.</li>
9230
9784
  <li><a href="https://github.com/nautobot/nautobot/issues/5732">#5732</a> - Added indices on <code>StaticGroupAssociation</code> table for common lookup patterns.</li>
9231
9785
  <li><a href="https://github.com/nautobot/nautobot/issues/5786">#5786</a> - Added <code>DynamicGroup.group_type</code> field with options <code>dynamic-filter</code>, <code>dynamic-set</code>, and <code>static</code>. Existing DynamicGroups will automatically be set to either <code>dynamic-filter</code> or <code>dynamic-set</code> as befits their definitions.</li>
9232
9786
  <li><a href="https://github.com/nautobot/nautobot/issues/5786">#5786</a> - Added <code>DynamicGroup.tenant</code> and <code>DynamicGroup.tags</code> fields.</li>
@@ -9238,12 +9792,11 @@
9238
9792
  <li><a href="https://github.com/nautobot/nautobot/issues/5872">#5872</a> - Added CloudService Model, UI, GraphQL and REST API.</li>
9239
9793
  <li><a href="https://github.com/nautobot/nautobot/issues/5873">#5873</a> - Added worker status page for staff users.</li>
9240
9794
  <li><a href="https://github.com/nautobot/nautobot/issues/5890">#5890</a> - Add CSS class to pagination dropdown to resolve issue with color-scheme.</li>
9241
- <li><a href="https://github.com/nautobot/nautobot/issues/5895">#5895</a> - Added missing model documentation for <code>CloudNetwork</code>, <code>CloudNetworkPrefixAssignment</code>, <code>CloudService</code> and ~<code>CloudType</code>~ <code>CloudResourceType</code>.</li>
9242
9795
  <li><a href="https://github.com/nautobot/nautobot/issues/5923">#5923</a> - Added <code>prefers_id</code> keyword argument to NaturalKeyOrPKMultipleChoiceFilter initialization to use the object ID instead of the <code>to_field_name</code> when automatically generating a form field for the filter.</li>
9243
9796
  <li><a href="https://github.com/nautobot/nautobot/issues/5933">#5933</a> - Added tables of related <code>CloudService</code> and/or <code>CloudNetwork</code> instances to the <code>CloudResourceType</code> detail view.</li>
9244
9797
  <li><a href="https://github.com/nautobot/nautobot/issues/5933">#5933</a> - Added <code>description</code> field to <code>CloudService</code> model.</li>
9245
9798
  </ul>
9246
- <h3 id="changed_1">Changed<a class="headerlink" href="#changed_1" title="Permanent link">&para;</a></h3>
9799
+ <h3 id="changed_3">Changed<a class="headerlink" href="#changed_3" title="Permanent link">&para;</a></h3>
9247
9800
  <ul>
9248
9801
  <li><a href="https://github.com/nautobot/nautobot/issues/2101">#2101</a> - Updated device interfaces filter to support filtering by interface name as well as by ID.</li>
9249
9802
  <li><a href="https://github.com/nautobot/nautobot/issues/3749">#3749</a> - Changed behavior of the <code>CHANGELOG_RETENTION</code> setting; it no longer applies automatically to force cleanup of ObjectChange records over a certain age cutoff, but instead serves as the default cutoff age whenever running the new "Logs Cleanup" system Job.</li>
@@ -9260,7 +9813,7 @@
9260
9813
  <li><a href="https://github.com/nautobot/nautobot/issues/5786">#5786</a> - Replaced <code>static_groups</code> GraphQL field added in <a href="https://github.com/nautobot/nautobot/issues/5472">#5472</a> with a <code>dynamic_groups</code> field.</li>
9261
9814
  <li><a href="https://github.com/nautobot/nautobot/issues/5786">#5786</a> - Replaced <code>StaticGroupMixin</code> model mixin class added in <a href="https://github.com/nautobot/nautobot/pull/5631">#5631</a> with a <code>DynamicGroupsModelMixin</code> class. Still included by default in <code>OrganizationalModel</code> and <code>PrimaryModel</code>.</li>
9262
9815
  <li><a href="https://github.com/nautobot/nautobot/issues/5790">#5790</a> - Updated Cable table to display the parent Device of Cables connected to Modules in a Device.</li>
9263
- <li><a href="https://github.com/nautobot/nautobot/issues/5790">#5790</a> - Updated device and device_id filters for Cables, Interfaces, and other modular device components to recognize components that are nested in Modules in a Device.</li>
9816
+ <li><a href="https://github.com/nautobot/nautobot/issues/5790">#5790</a> - Updated device and <code>device_id</code> filters for Cables, Interfaces, and other modular device components to recognize components that are nested in Modules in a Device.</li>
9264
9817
  <li><a href="https://github.com/nautobot/nautobot/issues/5790">#5790</a> - Updated Cable connect form to allow connecting to Console Ports, Console Server Ports, Interfaces, Power Ports, Power Outlets, Front Ports, and Rear Ports that are nested in Modules in a Device.</li>
9265
9818
  <li><a href="https://github.com/nautobot/nautobot/issues/5790">#5790</a> - Updated Interface <code>device</code> filter to allow filtering on Device <code>name</code> or <code>id</code>.</li>
9266
9819
  <li><a href="https://github.com/nautobot/nautobot/issues/5790">#5790</a> - Updated <code>Cable._termination_a_device</code> and <code>Cable._termination_b_device</code> to cache the Device when cables are connected to an Interface or Port of a Module in a Device.</li>
@@ -9281,13 +9834,13 @@
9281
9834
  <li><a href="https://github.com/nautobot/nautobot/issues/5786">#5786</a> - Deprecated the <code>DynamicGroupMixin</code> model mixin class. Models supporting Dynamic Groups should use <code>DynamicGroupsModelMixin</code> instead.</li>
9282
9835
  <li><a href="https://github.com/nautobot/nautobot/issues/5870">#5870</a> - Deprecated the blocks <code>block export_button</code> and <code>block import_button</code> in <code>generic/object_list.html</code>. Apps and templates should migrate to using <code>block export_list_element</code> and <code>block import_list_element</code> respectively.</li>
9283
9836
  </ul>
9284
- <h3 id="removed">Removed<a class="headerlink" href="#removed" title="Permanent link">&para;</a></h3>
9837
+ <h3 id="removed_1">Removed<a class="headerlink" href="#removed_1" title="Permanent link">&para;</a></h3>
9285
9838
  <ul>
9286
9839
  <li><a href="https://github.com/nautobot/nautobot/issues/3749">#3749</a> - Removed automatic random cleanup of ObjectChange records when processing requests and signals.</li>
9287
9840
  <li><a href="https://github.com/nautobot/nautobot/issues/5473">#5473</a> - Removed <code>DYNAMIC_GROUPS_MEMBER_CACHE_TIMEOUT</code> setting as it is no longer relevant after refactoring the Dynamic Group membership caching implementation.</li>
9288
9841
  <li><a href="https://github.com/nautobot/nautobot/issues/5786">#5786</a> - Removed the <code>StaticGroup</code> model added in #5472, replacing it with a subtype of the <code>DynamicGroup</code> model.</li>
9289
9842
  </ul>
9290
- <h3 id="fixed">Fixed<a class="headerlink" href="#fixed" title="Permanent link">&para;</a></h3>
9843
+ <h3 id="fixed_2">Fixed<a class="headerlink" href="#fixed_2" title="Permanent link">&para;</a></h3>
9291
9844
  <ul>
9292
9845
  <li><a href="https://github.com/nautobot/nautobot/issues/2352">#2352</a> - Fixed random deadlocks in long-running Jobs resulting from the ObjectChange automatic cleanup signal.</li>
9293
9846
  <li><a href="https://github.com/nautobot/nautobot/issues/5123">#5123</a> - Fixed an unhandled <code>ValueError</code> when filtering on <code>vlans</code> by their UUID rather than their VLAN ID.</li>
@@ -9311,7 +9864,7 @@
9311
9864
  <li><a href="https://github.com/nautobot/nautobot/issues/5951">#5951</a> - Removed unused consolidated action button on job list view.</li>
9312
9865
  <li><a href="https://github.com/nautobot/nautobot/issues/5952">#5952</a> - Changed generic "Bulk Actions" dropup button styling to match generic "Actions" dropdown button.</li>
9313
9866
  </ul>
9314
- <h3 id="dependencies">Dependencies<a class="headerlink" href="#dependencies" title="Permanent link">&para;</a></h3>
9867
+ <h3 id="dependencies_1">Dependencies<a class="headerlink" href="#dependencies_1" title="Permanent link">&para;</a></h3>
9315
9868
  <ul>
9316
9869
  <li><a href="https://github.com/nautobot/nautobot/issues/1758">#1758</a> - Updated <code>materialdesignicons</code> to version 7.4.47.</li>
9317
9870
  <li><a href="https://github.com/nautobot/nautobot/issues/4616">#4616</a> - Updated <code>django-taggit</code> to <code>~5.0.0</code>.</li>
@@ -9337,13 +9890,13 @@
9337
9890
  <li><a href="https://github.com/nautobot/nautobot/issues/5889">#5889</a> - Updated <code>django-filter</code> to version <code>~24.2</code>.</li>
9338
9891
  <li><a href="https://github.com/nautobot/nautobot/issues/5889">#5889</a> - Updated <code>django-timezone-field</code> to version <code>~7.0</code>.</li>
9339
9892
  </ul>
9340
- <h3 id="documentation">Documentation<a class="headerlink" href="#documentation" title="Permanent link">&para;</a></h3>
9893
+ <h3 id="documentation_1">Documentation<a class="headerlink" href="#documentation_1" title="Permanent link">&para;</a></h3>
9341
9894
  <ul>
9342
- <li><a href="https://github.com/nautobot/nautobot/issues/5699">#5699</a> - Updated to <code>mkdocs~1.6.0</code> and <code>mkdocs-material~9.5.23</code>.</li>
9343
9895
  <li><a href="https://github.com/nautobot/nautobot/issues/5699">#5699</a> - Fixed a number of broken links within the documentation.</li>
9344
- <li><a href="https://github.com/nautobot/nautobot/issues/5735">#5735</a> - Updated <code>mkdocstrings</code> to <code>~0.25.1</code> and <code>mkdocstrings-python</code> to <code>~1.10.2</code>.</li>
9896
+ <li><a href="https://github.com/nautobot/nautobot/issues/5895">#5895</a> - Added missing model documentation for <code>CloudNetwork</code>, <code>CloudNetworkPrefixAssignment</code>, <code>CloudService</code> and <del><code>CloudType</code></del> <code>CloudResourceType</code>.</li>
9897
+ <li><a href="https://github.com/nautobot/nautobot/issues/5934">#5934</a> - Add Cloud Model Example and Entity Diagram.</li>
9345
9898
  </ul>
9346
- <h3 id="housekeeping">Housekeeping<a class="headerlink" href="#housekeeping" title="Permanent link">&para;</a></h3>
9899
+ <h3 id="housekeeping_2">Housekeeping<a class="headerlink" href="#housekeeping_2" title="Permanent link">&para;</a></h3>
9347
9900
  <ul>
9348
9901
  <li><a href="https://github.com/nautobot/nautobot/issues/5160">#5160</a> - Replaced references to <code>pytz</code> with <code>zoneinfo</code> in keeping with Django 4.</li>
9349
9902
  <li><a href="https://github.com/nautobot/nautobot/issues/5212">#5212</a> - Enhanced <code>nautobot.core.testing.filters.FilterTestCases.BaseFilterTestCase.test_filters_generic()</code> test case to test for the presence and proper functioning of the <code>contacts</code> and <code>teams</code> filters on any appropriate model FilterSet.</li>
@@ -9353,7 +9906,9 @@
9353
9906
  <li><a href="https://github.com/nautobot/nautobot/issues/5473">#5473</a> - Added <code>assertApproximateNumQueries</code> test-case helper method.</li>
9354
9907
  <li><a href="https://github.com/nautobot/nautobot/issues/5524">#5524</a> - Deleted unnecessary special case handling for <code>test_view_with_content_types</code>.</li>
9355
9908
  <li><a href="https://github.com/nautobot/nautobot/issues/5663">#5663</a> - Added support for <code>django_get_or_create</code> property in <code>BaseModelFactory</code>.</li>
9909
+ <li><a href="https://github.com/nautobot/nautobot/issues/5699">#5699</a> - Updated to <code>mkdocs~1.6.0</code> and <code>mkdocs-material~9.5.23</code>.</li>
9356
9910
  <li><a href="https://github.com/nautobot/nautobot/issues/5725">#5725</a> - Updated development dependencies <code>pylint</code> to <code>3.2.0</code>, <code>ruff</code> to <code>0.4.0</code>, and <code>selenium</code> to <code>4.21</code>.</li>
9911
+ <li><a href="https://github.com/nautobot/nautobot/issues/5735">#5735</a> - Updated <code>mkdocstrings</code> to <code>~0.25.1</code> and <code>mkdocstrings-python</code> to <code>~1.10.2</code>.</li>
9357
9912
  <li><a href="https://github.com/nautobot/nautobot/issues/5786">#5786</a> - Substantially reduced the setup overhead (time/memory) of <code>OpenAPISchemaTestCases</code> tests.</li>
9358
9913
  <li><a href="https://github.com/nautobot/nautobot/issues/5842">#5842</a> - Fixed missing mysqldump client when trying to run tests with --parallel on mysql.</li>
9359
9914
  <li><a href="https://github.com/nautobot/nautobot/issues/5865">#5865</a> - Updated <code>django-debug-toolbar</code> development dependency to <code>~4.4.0</code>.</li>
@@ -9364,7 +9919,6 @@
9364
9919
  <li><a href="https://github.com/nautobot/nautobot/issues/5865">#5865</a> - Updated <code>pylint</code> development dependency to <code>~3.2.5</code>.</li>
9365
9920
  <li><a href="https://github.com/nautobot/nautobot/issues/5865">#5865</a> - Updated <code>ruff</code> development dependency to <code>~0.5.0</code>.</li>
9366
9921
  <li><a href="https://github.com/nautobot/nautobot/issues/5865">#5865</a> - Updated <code>selenium</code> development dependency to <code>~4.22.0</code>.</li>
9367
- <li><a href="https://github.com/nautobot/nautobot/issues/5934">#5934</a> - Add Cloud Model Example and Entity Diagram.</li>
9368
9922
  <li><a href="https://github.com/nautobot/nautobot/issues/5986">#5986</a> - Fixed multiple intermittent failures in unit tests.</li>
9369
9923
  </ul>
9370
9924
 
@@ -9463,7 +10017,7 @@
9463
10017
 
9464
10018
 
9465
10019
  <a href="https://blog.networktocode.com/blog/tags/nautobot" target="_blank" rel="noopener" title="Network to Code Blog" class="md-social__link">
9466
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M0 64c0-17.7 14.3-32 32-32 229.8 0 416 186.2 416 416 0 17.7-14.3 32-32 32s-32-14.3-32-32C384 253.6 226.4 96 32 96 14.3 96 0 81.7 0 64zm0 352a64 64 0 1 1 128 0 64 64 0 1 1-128 0zm32-256c159.1 0 288 128.9 288 288 0 17.7-14.3 32-32 32s-32-14.3-32-32c0-123.7-100.3-224-224-224-17.7 0-32-14.3-32-32s14.3-32 32-32z"/></svg>
10020
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M0 64c0-17.7 14.3-32 32-32 229.8 0 416 186.2 416 416 0 17.7-14.3 32-32 32s-32-14.3-32-32C384 253.6 226.4 96 32 96 14.3 96 0 81.7 0 64zm0 352a64 64 0 1 1 128 0 64 64 0 1 1-128 0zm32-256c159.1 0 288 128.9 288 288 0 17.7-14.3 32-32 32s-32-14.3-32-32c0-123.7-100.3-224-224-224-17.7 0-32-14.3-32-32s14.3-32 32-32z"/></svg>
9467
10021
  </a>
9468
10022
 
9469
10023
 
@@ -9471,7 +10025,7 @@
9471
10025
 
9472
10026
 
9473
10027
  <a href="https://www.youtube.com/playlist?list=PLjA0bhxgryJ2Ts4GJMDA-tPzVWEncv4pb" target="_blank" rel="noopener" title="Nautobot Videos" class="md-social__link">
9474
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"/></svg>
10028
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"/></svg>
9475
10029
  </a>
9476
10030
 
9477
10031
 
@@ -9479,7 +10033,7 @@
9479
10033
 
9480
10034
 
9481
10035
  <a href="https://www.networktocode.com/community/" target="_blank" rel="noopener" title="Network to Code Community" class="md-social__link">
9482
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z"/></svg>
10036
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z"/></svg>
9483
10037
  </a>
9484
10038
 
9485
10039
 
@@ -9487,7 +10041,7 @@
9487
10041
 
9488
10042
 
9489
10043
  <a href="https://github.com/nautobot/nautobot" target="_blank" rel="noopener" title="GitHub Repo" class="md-social__link">
9490
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
10044
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
9491
10045
  </a>
9492
10046
 
9493
10047
 
@@ -9495,7 +10049,7 @@
9495
10049
 
9496
10050
 
9497
10051
  <a href="https://twitter.com/networktocode" target="_blank" rel="noopener" title="Network to Code Twitter" class="md-social__link">
9498
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></svg>
10052
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></svg>
9499
10053
  </a>
9500
10054
 
9501
10055
  </div>