nautobot 2.1.0b1__py3-none-any.whl → 2.1.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.
Files changed (1002) hide show
  1. nautobot/__init__.py +1 -3
  2. nautobot/apps/__init__.py +1 -2
  3. nautobot/apps/admin.py +0 -1
  4. nautobot/apps/api.py +0 -1
  5. nautobot/apps/change_logging.py +0 -1
  6. nautobot/apps/choices.py +0 -3
  7. nautobot/apps/datasources.py +2 -2
  8. nautobot/apps/exceptions.py +0 -1
  9. nautobot/apps/factory.py +0 -1
  10. nautobot/apps/filters.py +6 -9
  11. nautobot/apps/forms.py +1 -2
  12. nautobot/apps/graphql.py +0 -1
  13. nautobot/apps/jobs.py +2 -1
  14. nautobot/apps/models.py +4 -2
  15. nautobot/apps/querysets.py +0 -1
  16. nautobot/apps/secrets.py +0 -1
  17. nautobot/apps/tables.py +0 -1
  18. nautobot/apps/testing.py +0 -1
  19. nautobot/apps/ui.py +1 -3
  20. nautobot/apps/urls.py +0 -1
  21. nautobot/apps/utils.py +0 -1
  22. nautobot/apps/views.py +0 -1
  23. nautobot/circuits/api/serializers.py +1 -1
  24. nautobot/circuits/api/urls.py +1 -1
  25. nautobot/circuits/api/views.py +2 -1
  26. nautobot/circuits/apps.py +1 -1
  27. nautobot/circuits/choices.py +0 -1
  28. nautobot/circuits/factory.py +1 -1
  29. nautobot/circuits/filters.py +2 -1
  30. nautobot/circuits/forms.py +2 -2
  31. nautobot/circuits/homepage.py +0 -1
  32. nautobot/circuits/migrations/0001_initial_part_1.py +3 -1
  33. nautobot/circuits/migrations/0002_initial_part_2.py +2 -1
  34. nautobot/circuits/migrations/0003_auto_slug.py +1 -0
  35. nautobot/circuits/migrations/0005_providernetwork.py +4 -2
  36. nautobot/circuits/migrations/0013_alter_circuittermination__path.py +1 -0
  37. nautobot/circuits/migrations/0014_related_name_changes.py +1 -0
  38. nautobot/circuits/migrations/0016_tagsfield.py +1 -0
  39. nautobot/circuits/migrations/0018_status_nonnullable.py +1 -0
  40. nautobot/circuits/models.py +2 -2
  41. nautobot/circuits/navigation.py +0 -1
  42. nautobot/circuits/signals.py +3 -2
  43. nautobot/circuits/tables.py +1 -0
  44. nautobot/circuits/tests/integration/test_relationships.py +1 -1
  45. nautobot/circuits/tests/test_api.py +1 -1
  46. nautobot/circuits/tests/test_urls.py +1 -1
  47. nautobot/circuits/tests/test_views.py +1 -0
  48. nautobot/circuits/urls.py +1 -1
  49. nautobot/circuits/views.py +1 -10
  50. nautobot/core/__init__.py +0 -1
  51. nautobot/core/admin.py +3 -5
  52. nautobot/core/api/__init__.py +0 -1
  53. nautobot/core/api/metadata.py +4 -6
  54. nautobot/core/api/pagination.py +2 -2
  55. nautobot/core/api/parsers.py +1 -3
  56. nautobot/core/api/renderers.py +0 -1
  57. nautobot/core/api/schema.py +2 -3
  58. nautobot/core/api/serializers.py +9 -7
  59. nautobot/core/api/urls.py +1 -5
  60. nautobot/core/api/utils.py +14 -15
  61. nautobot/core/api/versioning.py +1 -1
  62. nautobot/core/api/views.py +22 -91
  63. nautobot/core/apps/__init__.py +5 -7
  64. nautobot/core/authentication.py +1 -1
  65. nautobot/core/celery/__init__.py +1 -2
  66. nautobot/core/celery/control.py +0 -2
  67. nautobot/core/celery/encoders.py +0 -1
  68. nautobot/core/celery/schedulers.py +1 -2
  69. nautobot/core/celery/task.py +1 -1
  70. nautobot/core/checks.py +31 -2
  71. nautobot/core/choices.py +2 -2
  72. nautobot/core/cli/__init__.py +8 -17
  73. nautobot/core/context_processors.py +1 -5
  74. nautobot/core/factory.py +2 -2
  75. nautobot/core/filters.py +1 -1
  76. nautobot/core/forms/fields.py +2 -4
  77. nautobot/core/forms/forms.py +1 -1
  78. nautobot/core/forms/search.py +1 -1
  79. nautobot/core/forms/utils.py +1 -1
  80. nautobot/core/graphql/__init__.py +2 -3
  81. nautobot/core/graphql/generators.py +2 -2
  82. nautobot/core/graphql/schema.py +21 -8
  83. nautobot/core/graphql/schema_init.py +0 -1
  84. nautobot/core/graphql/types.py +10 -0
  85. nautobot/core/graphql/utils.py +1 -2
  86. nautobot/core/management/commands/generate_test_data.py +7 -6
  87. nautobot/core/management/commands/makemigrations.py +1 -1
  88. nautobot/core/management/commands/migrate.py +1 -1
  89. nautobot/core/management/commands/post_upgrade.py +1 -15
  90. nautobot/core/management/commands/refresh_content_type_cache.py +1 -2
  91. nautobot/core/management/commands/send_installation_metrics.py +2 -3
  92. nautobot/core/management/commands/validate_models.py +1 -1
  93. nautobot/core/middleware.py +2 -2
  94. nautobot/core/models/__init__.py +12 -12
  95. nautobot/core/models/fields.py +1 -1
  96. nautobot/core/models/generics.py +2 -3
  97. nautobot/core/models/managers.py +0 -1
  98. nautobot/core/models/name_color_content_types.py +2 -2
  99. nautobot/core/models/tree_queries.py +2 -4
  100. nautobot/core/models/validators.py +1 -1
  101. nautobot/core/releases.py +1 -1
  102. nautobot/core/runner/importer.py +2 -25
  103. nautobot/core/runner/runner.py +2 -2
  104. nautobot/core/runner/settings.py +1 -1
  105. nautobot/core/settings.py +15 -21
  106. nautobot/core/settings_funcs.py +1 -2
  107. nautobot/core/signals.py +0 -1
  108. nautobot/core/tables.py +1 -1
  109. nautobot/core/templates/admin/base.html +9 -9
  110. nautobot/core/templates/exceptions/programming_error.html +2 -2
  111. nautobot/core/templates/graphene/graphiql.html +9 -3
  112. nautobot/core/templates/home.html +26 -6
  113. nautobot/core/templates/inc/footer.html +0 -7
  114. nautobot/core/templates/inc/javascript.html +4 -2
  115. nautobot/core/templates/inc/media.html +2 -2
  116. nautobot/core/templates/inc/nav_menu.html +27 -25
  117. nautobot/core/templates/inc/object_details_advanced_panel.html +12 -0
  118. nautobot/core/templates/nautobot_config.py.j2 +4 -4
  119. nautobot/core/templates/utilities/theme_preview.html +883 -0
  120. nautobot/core/templatetags/bootstrapped_goodies_tags.py +6 -3
  121. nautobot/core/templatetags/buttons.py +2 -1
  122. nautobot/core/templatetags/helpers.py +45 -18
  123. nautobot/core/testing/__init__.py +1 -2
  124. nautobot/core/testing/api.py +2 -4
  125. nautobot/core/testing/filters.py +1 -1
  126. nautobot/core/testing/integration.py +2 -2
  127. nautobot/core/testing/migrations.py +1 -0
  128. nautobot/core/testing/mixins.py +1 -2
  129. nautobot/core/testing/schema.py +1 -1
  130. nautobot/core/testing/utils.py +3 -3
  131. nautobot/core/testing/views.py +8 -8
  132. nautobot/core/tests/integration/test_home.py +1 -1
  133. nautobot/core/tests/integration/test_navbar.py +2 -2
  134. nautobot/core/tests/integration/test_plugin_home.py +2 -1
  135. nautobot/core/tests/integration/test_plugin_navbar.py +6 -6
  136. nautobot/core/tests/nautobot_config.py +3 -3
  137. nautobot/core/tests/runner.py +3 -4
  138. nautobot/core/tests/test_api.py +6 -51
  139. nautobot/core/tests/test_authentication.py +2 -3
  140. nautobot/core/tests/test_checks.py +1 -2
  141. nautobot/core/tests/test_config.py +1 -1
  142. nautobot/core/tests/test_csv.py +4 -4
  143. nautobot/core/tests/test_factory.py +1 -3
  144. nautobot/core/tests/test_filters.py +4 -7
  145. nautobot/core/tests/test_forms.py +3 -6
  146. nautobot/core/tests/test_graphql.py +33 -17
  147. nautobot/core/tests/test_jinja_filters.py +5 -4
  148. nautobot/core/tests/test_jobs.py +1 -1
  149. nautobot/core/tests/test_models.py +28 -3
  150. nautobot/core/tests/test_navigations.py +2 -1
  151. nautobot/core/tests/test_openapi.py +0 -1
  152. nautobot/core/tests/test_paginator.py +2 -2
  153. nautobot/core/tests/test_releases.py +2 -2
  154. nautobot/core/tests/test_tables.py +1 -1
  155. nautobot/core/tests/test_templatetags_helpers.py +17 -2
  156. nautobot/core/tests/test_templatetags_netutils.py +1 -2
  157. nautobot/core/tests/test_utils.py +4 -8
  158. nautobot/core/tests/test_views.py +95 -1
  159. nautobot/core/tests/test_views_utils.py +0 -1
  160. nautobot/core/urls.py +24 -4
  161. nautobot/core/utils/color.py +1 -1
  162. nautobot/core/utils/data.py +1 -2
  163. nautobot/core/utils/filtering.py +4 -5
  164. nautobot/core/utils/git.py +6 -2
  165. nautobot/core/utils/logging.py +2 -1
  166. nautobot/core/utils/lookup.py +4 -6
  167. nautobot/core/utils/migrations.py +1 -0
  168. nautobot/core/utils/permissions.py +2 -4
  169. nautobot/core/utils/requests.py +10 -0
  170. nautobot/core/views/__init__.py +32 -8
  171. nautobot/core/views/generic.py +14 -13
  172. nautobot/core/views/mixins.py +24 -22
  173. nautobot/core/views/renderers.py +1 -1
  174. nautobot/core/views/routers.py +6 -0
  175. nautobot/core/views/utils.py +2 -1
  176. nautobot/dcim/api/urls.py +1 -1
  177. nautobot/dcim/api/views.py +6 -5
  178. nautobot/dcim/apps.py +1 -1
  179. nautobot/dcim/choices.py +4 -1
  180. nautobot/dcim/constants.py +0 -1
  181. nautobot/dcim/elevations.py +1 -2
  182. nautobot/dcim/factory.py +125 -13
  183. nautobot/dcim/fields.py +1 -0
  184. nautobot/dcim/filters/__init__.py +2 -3
  185. nautobot/dcim/filters/mixins.py +1 -1
  186. nautobot/dcim/forms.py +37 -44
  187. nautobot/dcim/graphql/types.py +16 -17
  188. nautobot/dcim/migrations/0001_initial_part_1.py +4 -2
  189. nautobot/dcim/migrations/0002_initial_part_2.py +2 -1
  190. nautobot/dcim/migrations/0003_initial_part_3.py +2 -1
  191. nautobot/dcim/migrations/0004_initial_part_4.py +2 -1
  192. nautobot/dcim/migrations/0006_auto_slug.py +1 -0
  193. nautobot/dcim/migrations/0009_add_natural_indexing.py +1 -0
  194. nautobot/dcim/migrations/0010_interface_status.py +1 -0
  195. nautobot/dcim/migrations/0011_interface_status_data_migration.py +1 -0
  196. nautobot/dcim/migrations/0013_location_location_type.py +4 -2
  197. nautobot/dcim/migrations/0014_location_status_data_migration.py +1 -0
  198. nautobot/dcim/migrations/0016_device_components__timestamp_data_migration.py +0 -1
  199. nautobot/dcim/migrations/0018_device_redundancy_group.py +4 -2
  200. nautobot/dcim/migrations/0019_device_redundancy_group_data_migration.py +1 -0
  201. nautobot/dcim/migrations/0022_interface_redundancy_group.py +3 -1
  202. nautobot/dcim/migrations/0023_interface_redundancy_group_data_migration.py +1 -0
  203. nautobot/dcim/migrations/0024_move_site_fields_to_location_model.py +2 -1
  204. nautobot/dcim/migrations/0027_alter_interface_mac_address.py +1 -0
  205. nautobot/dcim/migrations/0028_alter_device_and_rack_role_add_new_role.py +1 -0
  206. nautobot/dcim/migrations/0029_device_and_rack_roles_data_migrations.py +1 -0
  207. nautobot/dcim/migrations/0033_add_tree_managers_and_foreign_keys_pre_data_migration.py +1 -0
  208. nautobot/dcim/migrations/0034_migrate_region_and_site_data_to_locations.py +1 -2
  209. nautobot/dcim/migrations/0038_fixup_fks_and_related_names.py +1 -0
  210. nautobot/dcim/migrations/0039_related_name_changes.py +1 -0
  211. nautobot/dcim/migrations/0042_alter_location_managers.py +1 -0
  212. nautobot/dcim/migrations/0044_tagsfield.py +1 -0
  213. nautobot/dcim/migrations/0047_status_nonnullable.py +1 -0
  214. nautobot/dcim/migrations/0051_interface_redundancy_group_nullable_status.py +1 -0
  215. nautobot/dcim/models/cables.py +3 -3
  216. nautobot/dcim/models/device_component_templates.py +6 -6
  217. nautobot/dcim/models/devices.py +9 -4
  218. nautobot/dcim/models/locations.py +6 -1
  219. nautobot/dcim/models/power.py +1 -1
  220. nautobot/dcim/models/racks.py +5 -4
  221. nautobot/dcim/navigation.py +0 -1
  222. nautobot/dcim/signals.py +3 -2
  223. nautobot/dcim/tables/__init__.py +5 -4
  224. nautobot/dcim/tables/cables.py +1 -0
  225. nautobot/dcim/tables/devices.py +1 -0
  226. nautobot/dcim/tables/locations.py +1 -1
  227. nautobot/dcim/tables/power.py +1 -0
  228. nautobot/dcim/tables/racks.py +2 -1
  229. nautobot/dcim/templates/dcim/device/consoleports.html +2 -2
  230. nautobot/dcim/templates/dcim/device/consoleserverports.html +2 -2
  231. nautobot/dcim/templates/dcim/device/devicebays.html +1 -1
  232. nautobot/dcim/templates/dcim/device/frontports.html +2 -2
  233. nautobot/dcim/templates/dcim/device/interfaces.html +4 -4
  234. nautobot/dcim/templates/dcim/device/inventory.html +1 -1
  235. nautobot/dcim/templates/dcim/device/poweroutlets.html +2 -2
  236. nautobot/dcim/templates/dcim/device/powerports.html +2 -2
  237. nautobot/dcim/templates/dcim/device/rearports.html +2 -2
  238. nautobot/dcim/templates/dcim/inc/location_hierarchy.html +4 -2
  239. nautobot/dcim/templates/dcim/rack.html +1 -1
  240. nautobot/dcim/templates/dcim/rack_elevation_list.html +1 -1
  241. nautobot/dcim/templates/dcim/rackreservation.html +1 -1
  242. nautobot/dcim/tests/test_api.py +7 -7
  243. nautobot/dcim/tests/test_cablepaths.py +0 -1
  244. nautobot/dcim/tests/test_filters.py +16 -13
  245. nautobot/dcim/tests/test_forms.py +2 -3
  246. nautobot/dcim/tests/test_graphql.py +1 -0
  247. nautobot/dcim/tests/test_migrations.py +2 -2
  248. nautobot/dcim/tests/test_models.py +2 -2
  249. nautobot/dcim/tests/test_views.py +77 -14
  250. nautobot/dcim/urls.py +3 -2
  251. nautobot/dcim/utils.py +1 -1
  252. nautobot/dcim/views.py +4 -3
  253. nautobot/extras/admin.py +2 -1
  254. nautobot/extras/api/customfields.py +0 -2
  255. nautobot/extras/api/mixins.py +0 -1
  256. nautobot/extras/api/serializers.py +4 -4
  257. nautobot/extras/api/urls.py +1 -1
  258. nautobot/extras/api/views.py +1 -1
  259. nautobot/extras/apps.py +3 -4
  260. nautobot/extras/choices.py +3 -18
  261. nautobot/extras/context_managers.py +1 -1
  262. nautobot/extras/datasources/__init__.py +3 -1
  263. nautobot/extras/datasources/git.py +33 -12
  264. nautobot/extras/datasources/utils.py +0 -1
  265. nautobot/extras/factory.py +20 -0
  266. nautobot/extras/filters/__init__.py +2 -3
  267. nautobot/extras/filters/customfields.py +0 -1
  268. nautobot/extras/filters/mixins.py +1 -1
  269. nautobot/extras/forms/__init__.py +3 -4
  270. nautobot/extras/forms/base.py +1 -1
  271. nautobot/extras/forms/forms.py +29 -11
  272. nautobot/extras/forms/mixins.py +1 -1
  273. nautobot/extras/graphql/types.py +2 -2
  274. nautobot/extras/health_checks.py +1 -1
  275. nautobot/extras/jobs.py +43 -25
  276. nautobot/extras/management/__init__.py +0 -1
  277. nautobot/extras/management/commands/refresh_dynamic_group_member_caches.py +1 -1
  278. nautobot/extras/management/commands/runjob.py +3 -3
  279. nautobot/extras/management/commands/webhook_receiver.py +1 -2
  280. nautobot/extras/migrations/0001_initial_part_1.py +2 -1
  281. nautobot/extras/migrations/0002_initial_part_2.py +2 -1
  282. nautobot/extras/migrations/0003_initial_part_3.py +1 -0
  283. nautobot/extras/migrations/0006_graphqlquery.py +2 -1
  284. nautobot/extras/migrations/0007_configcontextschema.py +3 -1
  285. nautobot/extras/migrations/0009_computedfield.py +3 -1
  286. nautobot/extras/migrations/0011_fileattachment_fileproxy.py +3 -1
  287. nautobot/extras/migrations/0012_healthchecktestmodel.py +2 -1
  288. nautobot/extras/migrations/0014_auto_slug.py +1 -0
  289. nautobot/extras/migrations/0015_scheduled_job.py +3 -1
  290. nautobot/extras/migrations/0016_secret.py +4 -2
  291. nautobot/extras/migrations/0017_joblogentry.py +2 -1
  292. nautobot/extras/migrations/0018_joblog_data_migration.py +2 -1
  293. nautobot/extras/migrations/0021_customfield_changelog_data.py +3 -2
  294. nautobot/extras/migrations/0022_objectchange_object_datav2.py +1 -0
  295. nautobot/extras/migrations/0023_job_model.py +4 -2
  296. nautobot/extras/migrations/0026_job_add_gitrepository_fk.py +1 -0
  297. nautobot/extras/migrations/0029_dynamicgroup.py +3 -1
  298. nautobot/extras/migrations/0031_tag_content_types.py +1 -0
  299. nautobot/extras/migrations/0032_tag_content_types_data_migration.py +1 -0
  300. nautobot/extras/migrations/0040_dynamicgroup__dynamicgroupmembership.py +2 -1
  301. nautobot/extras/migrations/0041_jobresult_job_kwargs.py +1 -0
  302. nautobot/extras/migrations/0043_note.py +3 -1
  303. nautobot/extras/migrations/0044_add_job_hook.py +3 -1
  304. nautobot/extras/migrations/0046_populate_custom_field_slug_label.py +1 -0
  305. nautobot/extras/migrations/0047_enforce_custom_field_slug.py +1 -0
  306. nautobot/extras/migrations/0051_add_job_task_queues.py +1 -0
  307. nautobot/extras/migrations/0055_configcontext_dynamic_groups.py +1 -0
  308. nautobot/extras/migrations/0057_jobbutton.py +3 -1
  309. nautobot/extras/migrations/0065_configcontext_data_migrations.py +1 -0
  310. nautobot/extras/migrations/0067_migrate_job_result_status.py +0 -1
  311. nautobot/extras/migrations/0068_jobresult__add_celery_fields.py +1 -0
  312. nautobot/extras/migrations/0071_replace_related_names.py +1 -0
  313. nautobot/extras/migrations/0077_migrate_custom_field_data.py +1 -0
  314. nautobot/extras/migrations/0078_remove_name_field_and_make_label_field_non_nullable.py +1 -0
  315. nautobot/extras/migrations/0080_tagsfield.py +1 -0
  316. nautobot/extras/migrations/0082_rename_relationship_name_to_label.py +1 -0
  317. nautobot/extras/migrations/0083_ensure_relationship_keys_are_unique.py +1 -0
  318. nautobot/extras/migrations/0090_joblogentry__log_level_data_migration.py +0 -1
  319. nautobot/extras/migrations/0095_ensure_note_timestamps_are_unique.py +4 -5
  320. nautobot/extras/migrations/0097_alter_job_result_remove_result.py +1 -0
  321. nautobot/extras/migrations/0100_fileproxy_job_result.py +1 -0
  322. nautobot/extras/migrations/0101_externalintegration.py +9 -1
  323. nautobot/extras/models/__init__.py +2 -3
  324. nautobot/extras/models/change_logging.py +0 -1
  325. nautobot/extras/models/customfields.py +13 -4
  326. nautobot/extras/models/datasources.py +2 -2
  327. nautobot/extras/models/groups.py +3 -4
  328. nautobot/extras/models/jobs.py +13 -7
  329. nautobot/extras/models/models.py +61 -24
  330. nautobot/extras/models/relationships.py +8 -4
  331. nautobot/extras/models/roles.py +1 -1
  332. nautobot/extras/models/secrets.py +1 -3
  333. nautobot/extras/models/tags.py +0 -1
  334. nautobot/extras/navigation.py +0 -1
  335. nautobot/extras/plugins/__init__.py +6 -7
  336. nautobot/extras/plugins/tables.py +1 -2
  337. nautobot/extras/plugins/utils.py +1 -1
  338. nautobot/extras/plugins/views.py +21 -21
  339. nautobot/extras/querysets.py +30 -13
  340. nautobot/extras/signals.py +6 -7
  341. nautobot/extras/tables.py +13 -5
  342. nautobot/extras/tasks.py +1 -2
  343. nautobot/extras/templates/extras/configcontext_edit.html +1 -1
  344. nautobot/extras/templates/extras/customfield_edit.html +7 -12
  345. nautobot/extras/templates/extras/dynamicgroup_edit.html +42 -47
  346. nautobot/extras/templates/extras/externalintegration_retrieve.html +12 -0
  347. nautobot/extras/templates/extras/externalintegration_update.html +28 -0
  348. nautobot/extras/templates/extras/gitrepository_result.html +2 -2
  349. nautobot/extras/templates/extras/graphqlquery.html +4 -2
  350. nautobot/extras/templates/extras/inc/jobresult_js.html +1 -1
  351. nautobot/extras/templates/extras/job_list.html +1 -1
  352. nautobot/extras/templates/extras/jobresult.html +2 -2
  353. nautobot/extras/templates/extras/secretsgroup_edit.html +40 -45
  354. nautobot/extras/templatetags/custom_links.py +2 -3
  355. nautobot/extras/templatetags/job_buttons.py +76 -83
  356. nautobot/extras/templatetags/log_levels.py +0 -1
  357. nautobot/extras/templatetags/plugins.py +1 -1
  358. nautobot/extras/test_jobs/api_test_job.py +1 -2
  359. nautobot/extras/test_jobs/atomic_transaction.py +1 -2
  360. nautobot/extras/test_jobs/dry_run.py +1 -2
  361. nautobot/extras/test_jobs/fail.py +1 -2
  362. nautobot/extras/test_jobs/field_order.py +1 -1
  363. nautobot/extras/test_jobs/file_upload_fail.py +1 -2
  364. nautobot/extras/test_jobs/file_upload_pass.py +1 -2
  365. nautobot/extras/test_jobs/has_sensitive_variables.py +1 -2
  366. nautobot/extras/test_jobs/ipaddress_vars.py +1 -4
  367. nautobot/extras/test_jobs/job_button_receiver.py +1 -2
  368. nautobot/extras/test_jobs/job_hook_receiver.py +1 -2
  369. nautobot/extras/test_jobs/job_variables.py +7 -2
  370. nautobot/extras/test_jobs/location_with_custom_field.py +1 -2
  371. nautobot/extras/test_jobs/log_redaction.py +1 -2
  372. nautobot/extras/test_jobs/log_skip_db_logging.py +1 -2
  373. nautobot/extras/test_jobs/modify_db.py +1 -2
  374. nautobot/extras/test_jobs/object_var_optional.py +1 -2
  375. nautobot/extras/test_jobs/object_var_required.py +1 -2
  376. nautobot/extras/test_jobs/object_vars.py +1 -2
  377. nautobot/extras/test_jobs/pass.py +1 -2
  378. nautobot/extras/test_jobs/profiling.py +1 -2
  379. nautobot/extras/tests/integration/__init__.py +1 -1
  380. nautobot/extras/tests/integration/test_computedfields.py +2 -2
  381. nautobot/extras/tests/integration/test_configcontextschema.py +5 -5
  382. nautobot/extras/tests/integration/test_plugins.py +5 -4
  383. nautobot/extras/tests/integration/test_tagfilter.py +1 -1
  384. nautobot/extras/tests/test_api.py +15 -9
  385. nautobot/extras/tests/test_changelog.py +3 -2
  386. nautobot/extras/tests/test_context_managers.py +6 -3
  387. nautobot/extras/tests/test_customfields.py +4 -4
  388. nautobot/extras/tests/test_datasources.py +1 -1
  389. nautobot/extras/tests/test_dynamicgroups.py +3 -3
  390. nautobot/extras/tests/test_filters.py +3 -2
  391. nautobot/extras/tests/test_forms.py +5 -6
  392. nautobot/extras/tests/test_git.py +1 -1
  393. nautobot/extras/tests/test_job_variables.py +20 -1
  394. nautobot/extras/tests/test_jobs.py +34 -5
  395. nautobot/extras/tests/test_models.py +156 -6
  396. nautobot/extras/tests/test_notes.py +0 -1
  397. nautobot/extras/tests/test_plugins.py +71 -9
  398. nautobot/extras/tests/test_relationships.py +3 -3
  399. nautobot/extras/tests/test_tags.py +1 -1
  400. nautobot/extras/tests/test_views.py +105 -25
  401. nautobot/extras/tests/test_webhooks.py +4 -5
  402. nautobot/extras/urls.py +0 -2
  403. nautobot/extras/utils.py +11 -9
  404. nautobot/extras/views.py +42 -44
  405. nautobot/generate_secret_key.py +10 -5
  406. nautobot/ipam/api/serializers.py +1 -2
  407. nautobot/ipam/api/urls.py +1 -1
  408. nautobot/ipam/api/views.py +1 -0
  409. nautobot/ipam/apps.py +2 -1
  410. nautobot/ipam/factory.py +6 -9
  411. nautobot/ipam/fields.py +1 -1
  412. nautobot/ipam/filters.py +42 -58
  413. nautobot/ipam/formfields.py +1 -2
  414. nautobot/ipam/forms.py +5 -4
  415. nautobot/ipam/graphql/types.py +1 -1
  416. nautobot/ipam/homepage.py +0 -1
  417. nautobot/ipam/lookups.py +2 -3
  418. nautobot/ipam/migrations/0002_initial_part_2.py +2 -1
  419. nautobot/ipam/migrations/0003_remove_max_length.py +1 -0
  420. nautobot/ipam/migrations/0004_fixup_p2p_broadcast.py +0 -1
  421. nautobot/ipam/migrations/0005_auto_slug.py +1 -0
  422. nautobot/ipam/migrations/0010_alter_ipam_role_add_new_role.py +1 -0
  423. nautobot/ipam/migrations/0011_migrate_ipam_role_data.py +1 -0
  424. nautobot/ipam/migrations/0020_related_name_changes.py +1 -0
  425. nautobot/ipam/migrations/0022_aggregate_to_prefix_data_migration.py +1 -2
  426. nautobot/ipam/migrations/0024_interface_to_ipaddress_m2m.py +2 -1
  427. nautobot/ipam/migrations/0025_interface_ipaddress_m2m_data_migration.py +15 -13
  428. nautobot/ipam/migrations/0028_tagsfield.py +1 -0
  429. nautobot/ipam/migrations/0030_ipam__namespaces.py +3 -1
  430. nautobot/ipam/migrations/0034_status_nonnullable.py +1 -0
  431. nautobot/ipam/migrations/0037_data_migration_vlan_group_name_uniqueness.py +0 -1
  432. nautobot/ipam/migrations/0039_alter_ipaddresstointerface_ip_address.py +20 -0
  433. nautobot/ipam/models.py +11 -8
  434. nautobot/ipam/navigation.py +0 -1
  435. nautobot/ipam/querysets.py +48 -49
  436. nautobot/ipam/tables.py +11 -2
  437. nautobot/ipam/templates/ipam/ipaddress.html +30 -6
  438. nautobot/ipam/templates/ipam/ipaddress_interfaces.html +3 -3
  439. nautobot/ipam/templates/ipam/ipaddress_vm_interfaces.html +32 -0
  440. nautobot/ipam/tests/test_api.py +2 -2
  441. nautobot/ipam/tests/test_filters.py +13 -17
  442. nautobot/ipam/tests/test_migrations.py +1 -2
  443. nautobot/ipam/tests/test_models.py +17 -2
  444. nautobot/ipam/tests/test_ordering.py +1 -1
  445. nautobot/ipam/tests/test_querysets.py +2 -2
  446. nautobot/ipam/tests/test_views.py +6 -6
  447. nautobot/ipam/urls.py +6 -0
  448. nautobot/ipam/utils/migrations.py +0 -1
  449. nautobot/ipam/views.py +26 -6
  450. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.css +142 -142
  451. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.css.map +1 -1
  452. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.min.css +1 -1
  453. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.min.css.map +1 -1
  454. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.css +307 -307
  455. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.css.map +1 -1
  456. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.min.css +1 -1
  457. nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.min.css.map +1 -1
  458. nautobot/project-static/css/base.css +59 -30
  459. nautobot/project-static/css/dark.css +38 -31
  460. nautobot/project-static/docs/404.html +17 -87
  461. nautobot/project-static/docs/apps/index.html +17 -87
  462. nautobot/project-static/docs/apps/nautobot-apps.html +17 -87
  463. nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +405 -475
  464. nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +28 -98
  465. nautobot/project-static/docs/code-reference/nautobot/apps/api.html +2334 -2396
  466. nautobot/project-static/docs/code-reference/nautobot/apps/change_logging.html +17 -87
  467. nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +132 -202
  468. nautobot/project-static/docs/code-reference/nautobot/apps/config.html +17 -87
  469. nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +155 -87
  470. nautobot/project-static/docs/code-reference/nautobot/apps/exceptions.html +17 -87
  471. nautobot/project-static/docs/code-reference/nautobot/apps/factory.html +17 -87
  472. nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +42 -112
  473. nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +1028 -1098
  474. nautobot/project-static/docs/code-reference/nautobot/apps/graphql.html +186 -256
  475. nautobot/project-static/docs/code-reference/nautobot/apps/jobs.html +1454 -1156
  476. nautobot/project-static/docs/code-reference/nautobot/apps/models.html +1443 -1507
  477. nautobot/project-static/docs/code-reference/nautobot/apps/querysets.html +157 -203
  478. nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +17 -87
  479. nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +32 -102
  480. nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +3822 -3888
  481. nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +990 -1060
  482. nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +65 -123
  483. nautobot/project-static/docs/code-reference/nautobot/apps/utils.html +1431 -1495
  484. nautobot/project-static/docs/code-reference/nautobot/apps/views.html +3618 -3640
  485. nautobot/project-static/docs/development/apps/api/configuration-view.html +17 -87
  486. nautobot/project-static/docs/development/apps/api/database-backend-config.html +19 -89
  487. nautobot/project-static/docs/development/apps/api/models/django-admin.html +17 -87
  488. nautobot/project-static/docs/development/apps/api/models/global-search.html +17 -87
  489. nautobot/project-static/docs/development/apps/api/models/graphql.html +17 -87
  490. nautobot/project-static/docs/development/apps/api/models/index.html +17 -87
  491. nautobot/project-static/docs/development/apps/api/nautobot-app-config.html +17 -87
  492. nautobot/project-static/docs/development/apps/api/platform-features/custom-validators.html +17 -87
  493. nautobot/project-static/docs/development/apps/api/platform-features/filter-extensions.html +19 -89
  494. nautobot/project-static/docs/development/apps/api/platform-features/git-repository-content.html +19 -89
  495. nautobot/project-static/docs/development/apps/api/platform-features/index.html +19 -89
  496. nautobot/project-static/docs/development/apps/api/platform-features/jinja2-filters.html +17 -87
  497. nautobot/project-static/docs/development/apps/api/platform-features/jobs.html +17 -87
  498. nautobot/project-static/docs/development/apps/api/platform-features/populating-extensibility-features.html +21 -87
  499. nautobot/project-static/docs/development/apps/api/platform-features/secrets-providers.html +17 -87
  500. nautobot/project-static/docs/development/apps/api/platform-features/uniquely-identify-objects.html +17 -87
  501. nautobot/project-static/docs/development/apps/api/prometheus.html +17 -87
  502. nautobot/project-static/docs/development/apps/api/setup.html +17 -87
  503. nautobot/project-static/docs/development/apps/api/testing.html +20 -90
  504. nautobot/project-static/docs/development/apps/api/ui-extensions/banners.html +17 -87
  505. nautobot/project-static/docs/development/apps/api/ui-extensions/home-page.html +17 -87
  506. nautobot/project-static/docs/development/apps/api/ui-extensions/index.html +17 -87
  507. nautobot/project-static/docs/development/apps/api/ui-extensions/navigation.html +19 -89
  508. nautobot/project-static/docs/development/apps/api/ui-extensions/object-detail-views.html +209 -140
  509. nautobot/project-static/docs/development/apps/api/ui-extensions/tabs.html +13 -5390
  510. nautobot/project-static/docs/development/apps/api/views/base-template.html +17 -87
  511. nautobot/project-static/docs/development/apps/api/views/core-view-overrides.html +22 -92
  512. nautobot/project-static/docs/development/apps/api/views/django-generic-views.html +17 -87
  513. nautobot/project-static/docs/development/apps/api/views/help-documentation.html +17 -87
  514. nautobot/project-static/docs/development/apps/api/views/index.html +17 -87
  515. nautobot/project-static/docs/development/apps/api/views/nautobot-generic-views.html +17 -87
  516. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewset.html +17 -87
  517. nautobot/project-static/docs/development/apps/api/views/nautobotuiviewsetrouter.html +17 -87
  518. nautobot/project-static/docs/development/apps/api/views/notes.html +19 -89
  519. nautobot/project-static/docs/development/apps/api/views/rest-api.html +17 -87
  520. nautobot/project-static/docs/development/apps/api/views/urls.html +17 -87
  521. nautobot/project-static/docs/development/apps/api/views/view-overrides.html +13 -5385
  522. nautobot/project-static/docs/development/apps/index.html +17 -87
  523. nautobot/project-static/docs/development/apps/migration/code-updates.html +17 -87
  524. nautobot/project-static/docs/development/apps/migration/dependency-updates.html +17 -87
  525. nautobot/project-static/docs/development/apps/migration/from-v1.html +17 -88
  526. nautobot/project-static/docs/development/apps/migration/model-updates/dcim.html +17 -87
  527. nautobot/project-static/docs/development/apps/migration/model-updates/extras.html +17 -87
  528. nautobot/project-static/docs/development/apps/migration/model-updates/global.html +17 -87
  529. nautobot/project-static/docs/development/apps/migration/model-updates/ipam.html +17 -87
  530. nautobot/project-static/docs/development/apps/porting-from-netbox.html +17 -87
  531. nautobot/project-static/docs/development/core/application-registry.html +20 -90
  532. nautobot/project-static/docs/development/core/best-practices.html +20 -90
  533. nautobot/project-static/docs/development/core/bootstrap-ui.html +5360 -0
  534. nautobot/project-static/docs/development/core/docker-compose-advanced-use-cases.html +17 -87
  535. nautobot/project-static/docs/development/core/extending-models.html +21 -87
  536. nautobot/project-static/docs/development/core/generic-views.html +17 -87
  537. nautobot/project-static/docs/development/core/getting-started.html +124 -301
  538. nautobot/project-static/docs/development/core/homepage.html +17 -87
  539. nautobot/project-static/docs/development/core/index.html +17 -87
  540. nautobot/project-static/docs/development/core/model-features.html +17 -87
  541. nautobot/project-static/docs/development/core/natural-keys.html +17 -87
  542. nautobot/project-static/docs/development/core/navigation-menu.html +17 -87
  543. nautobot/project-static/docs/development/core/react-ui.html +13 -5668
  544. nautobot/project-static/docs/development/core/release-checklist.html +20 -96
  545. nautobot/project-static/docs/development/core/role-internals.html +20 -90
  546. nautobot/project-static/docs/development/core/style-guide.html +77 -146
  547. nautobot/project-static/docs/development/core/templates.html +20 -90
  548. nautobot/project-static/docs/development/core/testing.html +17 -87
  549. nautobot/project-static/docs/development/core/user-preferences.html +17 -87
  550. nautobot/project-static/docs/development/index.html +17 -87
  551. nautobot/project-static/docs/development/jobs/index.html +424 -425
  552. nautobot/project-static/docs/development/jobs/migration/from-v1.html +75 -98
  553. nautobot/project-static/docs/development/react-ui.html +3 -3
  554. nautobot/project-static/docs/img/relationship_w_json_filter.png +0 -0
  555. nautobot/project-static/docs/index.html +90 -93
  556. nautobot/project-static/docs/media/admin_ui_run_permission.png +0 -0
  557. nautobot/project-static/docs/media/development/homepage_changelog_panel.png +0 -0
  558. nautobot/project-static/docs/media/development/homepage_dcim_panel.png +0 -0
  559. nautobot/project-static/docs/media/installation/nautobot_ui_admin.png +0 -0
  560. nautobot/project-static/docs/media/installation/nautobot_ui_login.png +0 -0
  561. nautobot/project-static/docs/media/models/dynamicgroup_filtering_01.png +0 -0
  562. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_1_01.png +0 -0
  563. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_1_02.png +0 -0
  564. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_1_03.png +0 -0
  565. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_1_04.png +0 -0
  566. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_1_05.png +0 -0
  567. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_01.png +0 -0
  568. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_02.png +0 -0
  569. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_03.png +0 -0
  570. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_04.png +0 -0
  571. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_05.png +0 -0
  572. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_06.png +0 -0
  573. nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_07.png +0 -0
  574. nautobot/project-static/docs/media/models/dynamicgroup_workflow_basic_01.png +0 -0
  575. nautobot/project-static/docs/media/models/dynamicgroup_workflow_basic_02.png +0 -0
  576. nautobot/project-static/docs/media/models/dynamicgroup_workflow_basic_03.png +0 -0
  577. nautobot/project-static/docs/media/models/jobbutton_form.png +0 -0
  578. nautobot/project-static/docs/media/models/site_jobbuttons.png +0 -0
  579. nautobot/project-static/docs/media/plugins/plugin_admin_config.png +0 -0
  580. nautobot/project-static/docs/media/plugins/plugin_admin_ui.png +0 -0
  581. nautobot/project-static/docs/media/ss_config_contexts.png +0 -0
  582. nautobot/project-static/docs/media/ss_graphiql.png +0 -0
  583. nautobot/project-static/docs/media/ss_main_page.png +0 -0
  584. nautobot/project-static/docs/media/ss_plugin_chatops.png +0 -0
  585. nautobot/project-static/docs/media/ss_plugin_golden_config.png +0 -0
  586. nautobot/project-static/docs/media/ss_prefix_hierarchy.png +0 -0
  587. nautobot/project-static/docs/objects.inv +0 -0
  588. nautobot/project-static/docs/release-notes/index.html +17 -87
  589. nautobot/project-static/docs/release-notes/version-1.0.html +17 -87
  590. nautobot/project-static/docs/release-notes/version-1.1.html +17 -87
  591. nautobot/project-static/docs/release-notes/version-1.2.html +17 -87
  592. nautobot/project-static/docs/release-notes/version-1.3.html +17 -87
  593. nautobot/project-static/docs/release-notes/version-1.4.html +18 -88
  594. nautobot/project-static/docs/release-notes/version-1.5.html +17 -87
  595. nautobot/project-static/docs/release-notes/version-1.6.html +17 -87
  596. nautobot/project-static/docs/release-notes/version-2.0.html +467 -336
  597. nautobot/project-static/docs/release-notes/version-2.1.html +470 -108
  598. nautobot/project-static/docs/search/search_index.json +1 -1
  599. nautobot/project-static/docs/sitemap.xml +240 -255
  600. nautobot/project-static/docs/sitemap.xml.gz +0 -0
  601. nautobot/project-static/docs/user-guide/administration/configuration/authentication/ldap.html +17 -87
  602. nautobot/project-static/docs/user-guide/administration/configuration/authentication/remote.html +20 -90
  603. nautobot/project-static/docs/user-guide/administration/configuration/authentication/sso.html +17 -87
  604. nautobot/project-static/docs/user-guide/administration/configuration/index.html +17 -87
  605. nautobot/project-static/docs/user-guide/administration/configuration/node-configuration.html +13 -5417
  606. nautobot/project-static/docs/user-guide/administration/configuration/optional-settings.html +47 -113
  607. nautobot/project-static/docs/user-guide/administration/configuration/required-settings.html +17 -87
  608. nautobot/project-static/docs/user-guide/administration/guides/caching.html +17 -87
  609. nautobot/project-static/docs/user-guide/administration/guides/celery-queues.html +17 -87
  610. nautobot/project-static/docs/user-guide/administration/guides/healthcheck.html +17 -87
  611. nautobot/project-static/docs/user-guide/administration/guides/permissions.html +17 -87
  612. nautobot/project-static/docs/user-guide/administration/guides/prometheus-metrics.html +17 -87
  613. nautobot/project-static/docs/user-guide/administration/guides/replicating-nautobot.html +17 -87
  614. nautobot/project-static/docs/user-guide/administration/guides/s3-django-storage.html +17 -87
  615. nautobot/project-static/docs/user-guide/administration/installation/app-install.html +17 -87
  616. nautobot/project-static/docs/user-guide/administration/installation/docker.html +17 -87
  617. nautobot/project-static/docs/user-guide/administration/installation/external-authentication.html +17 -87
  618. nautobot/project-static/docs/user-guide/administration/installation/http-server.html +17 -87
  619. nautobot/project-static/docs/user-guide/administration/installation/index.html +22 -109
  620. nautobot/project-static/docs/user-guide/administration/installation/install_system.html +18 -101
  621. nautobot/project-static/docs/user-guide/administration/installation/nautobot.html +23 -140
  622. nautobot/project-static/docs/user-guide/administration/installation/selinux-troubleshooting.html +17 -87
  623. nautobot/project-static/docs/user-guide/administration/installation/services.html +17 -87
  624. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-netbox.html +17 -87
  625. nautobot/project-static/docs/user-guide/administration/migration/migrating-from-postgresql.html +17 -87
  626. nautobot/project-static/docs/user-guide/administration/tools/nautobot-server.html +92 -181
  627. nautobot/project-static/docs/user-guide/administration/tools/nautobot-shell.html +17 -87
  628. nautobot/project-static/docs/user-guide/administration/upgrading/database-backup.html +17 -87
  629. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/after-you-upgrade.html +17 -87
  630. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/before-you-upgrade.html +17 -87
  631. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/for-developers.html +17 -87
  632. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/index.html +17 -87
  633. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/whats-changed.html +18 -88
  634. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/region-and-site-data-migration-guide.html +17 -87
  635. nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/upgrading-from-nautobot-v1.html +17 -87
  636. nautobot/project-static/docs/user-guide/administration/upgrading/upgrading.html +23 -89
  637. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuit.html +17 -87
  638. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittermination.html +17 -87
  639. nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittype.html +17 -87
  640. nautobot/project-static/docs/user-guide/core-data-model/circuits/provider.html +17 -87
  641. nautobot/project-static/docs/user-guide/core-data-model/circuits/providernetwork.html +17 -87
  642. nautobot/project-static/docs/user-guide/core-data-model/dcim/cable.html +17 -87
  643. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleport.html +17 -87
  644. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleporttemplate.html +17 -87
  645. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverport.html +17 -87
  646. nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverporttemplate.html +17 -87
  647. nautobot/project-static/docs/user-guide/core-data-model/dcim/device.html +17 -87
  648. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebay.html +17 -87
  649. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebaytemplate.html +17 -87
  650. nautobot/project-static/docs/user-guide/core-data-model/dcim/deviceredundancygroup.html +18 -88
  651. nautobot/project-static/docs/user-guide/core-data-model/dcim/devicetype.html +17 -87
  652. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontport.html +17 -87
  653. nautobot/project-static/docs/user-guide/core-data-model/dcim/frontporttemplate.html +17 -87
  654. nautobot/project-static/docs/user-guide/core-data-model/dcim/interface.html +17 -87
  655. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfaceredundancygroup.html +17 -87
  656. nautobot/project-static/docs/user-guide/core-data-model/dcim/interfacetemplate.html +17 -87
  657. nautobot/project-static/docs/user-guide/core-data-model/dcim/inventoryitem.html +17 -87
  658. nautobot/project-static/docs/user-guide/core-data-model/dcim/location.html +17 -87
  659. nautobot/project-static/docs/user-guide/core-data-model/dcim/locationtype.html +17 -87
  660. nautobot/project-static/docs/user-guide/core-data-model/dcim/manufacturer.html +17 -87
  661. nautobot/project-static/docs/user-guide/core-data-model/dcim/platform.html +17 -87
  662. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerfeed.html +17 -87
  663. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlet.html +17 -87
  664. nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlettemplate.html +17 -87
  665. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerpanel.html +17 -87
  666. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerport.html +17 -87
  667. nautobot/project-static/docs/user-guide/core-data-model/dcim/powerporttemplate.html +17 -87
  668. nautobot/project-static/docs/user-guide/core-data-model/dcim/rack.html +17 -87
  669. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackgroup.html +17 -87
  670. nautobot/project-static/docs/user-guide/core-data-model/dcim/rackreservation.html +17 -87
  671. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearport.html +17 -87
  672. nautobot/project-static/docs/user-guide/core-data-model/dcim/rearporttemplate.html +17 -87
  673. nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualchassis.html +17 -87
  674. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontext.html +17 -87
  675. nautobot/project-static/docs/user-guide/core-data-model/extras/configcontextschema.html +17 -87
  676. nautobot/project-static/docs/user-guide/core-data-model/ipam/ipaddress.html +17 -87
  677. nautobot/project-static/docs/user-guide/core-data-model/ipam/media/ipam_namespace_documentation.drawio +259 -1
  678. nautobot/project-static/docs/user-guide/core-data-model/ipam/media/ipam_namespace_documentation.drawio.png +0 -0
  679. nautobot/project-static/docs/user-guide/core-data-model/ipam/namespace.html +18 -88
  680. nautobot/project-static/docs/user-guide/core-data-model/ipam/prefix.html +17 -87
  681. nautobot/project-static/docs/user-guide/core-data-model/ipam/rir.html +17 -87
  682. nautobot/project-static/docs/user-guide/core-data-model/ipam/routetarget.html +17 -87
  683. nautobot/project-static/docs/user-guide/core-data-model/ipam/service.html +17 -87
  684. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlan.html +17 -87
  685. nautobot/project-static/docs/user-guide/core-data-model/ipam/vlangroup.html +17 -87
  686. nautobot/project-static/docs/user-guide/core-data-model/ipam/vrf.html +17 -87
  687. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenant.html +17 -87
  688. nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenantgroup.html +17 -87
  689. nautobot/project-static/docs/user-guide/core-data-model/virtualization/cluster.html +17 -87
  690. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustergroup.html +17 -87
  691. nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustertype.html +17 -87
  692. nautobot/project-static/docs/user-guide/core-data-model/virtualization/virtualmachine.html +17 -87
  693. nautobot/project-static/docs/user-guide/core-data-model/virtualization/vminterface.html +17 -87
  694. nautobot/project-static/docs/user-guide/feature-guides/custom-fields.html +17 -87
  695. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-devices.html +23 -93
  696. nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-location-types-and-locations.html +17 -87
  697. nautobot/project-static/docs/user-guide/feature-guides/getting-started/index.html +17 -87
  698. nautobot/project-static/docs/user-guide/feature-guides/getting-started/interfaces.html +26 -96
  699. nautobot/project-static/docs/user-guide/feature-guides/getting-started/ipam.html +35 -103
  700. nautobot/project-static/docs/user-guide/feature-guides/getting-started/platforms.html +19 -89
  701. nautobot/project-static/docs/user-guide/feature-guides/getting-started/search-bar.html +19 -91
  702. nautobot/project-static/docs/user-guide/feature-guides/getting-started/tenants.html +19 -89
  703. nautobot/project-static/docs/user-guide/feature-guides/getting-started/vlans-and-vlan-groups.html +24 -94
  704. nautobot/project-static/docs/user-guide/feature-guides/git-data-source.html +39 -258
  705. nautobot/project-static/docs/user-guide/feature-guides/graphql.html +45 -243
  706. nautobot/project-static/docs/user-guide/feature-guides/images/custom-fields/custom_field_choices.png +0 -0
  707. nautobot/project-static/docs/user-guide/feature-guides/images/custom-fields/custom_field_detail_grouped.png +0 -0
  708. nautobot/project-static/docs/user-guide/feature-guides/images/custom-fields/custom_field_detail_label.png +0 -0
  709. nautobot/project-static/docs/user-guide/feature-guides/images/custom-fields/custom_field_edit.png +0 -0
  710. nautobot/project-static/docs/user-guide/feature-guides/images/custom-fields/custom_field_select.png +0 -0
  711. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/1-create-location-type.png +0 -0
  712. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/10-add-platform.png +0 -0
  713. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/11-platforms-page.png +0 -0
  714. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/12-add-tenant.png +0 -0
  715. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/13-assign-tenant-to-device.png +0 -0
  716. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/14-assign-tenant-to-device-2.png +0 -0
  717. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/15-create-device-type.png +0 -0
  718. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/16-interface-templates.png +0 -0
  719. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/17-templated-interfaces.png +0 -0
  720. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/18-assign-device-type.png +0 -0
  721. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/19-edit-ints-for-lag.png +0 -0
  722. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/2-create-manufacturer.png +0 -0
  723. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/20-ints-int-lag.png +0 -0
  724. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/21-device-type.png +0 -0
  725. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/22-create-vlans.png +0 -0
  726. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/23-create-vlans-2.png +0 -0
  727. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/24-vlan-main-page.png +0 -0
  728. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/25-add-vlan-to-interface.png +0 -0
  729. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/26-add-vlan-to-interface-2.png +0 -0
  730. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/27-add-rir.png +0 -0
  731. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/3-create-role.png +0 -0
  732. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/30-add-prefix.png +0 -0
  733. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/32-add-ip-addr.png +0 -0
  734. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/33-assign-address.png +0 -0
  735. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/34-assign-address-2.png +0 -0
  736. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/35-assign-address-3.png +0 -0
  737. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/36-verify-address.png +0 -0
  738. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/37-verify-prefix.png +0 -0
  739. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/38-verify-prefix2.png +0 -0
  740. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/4-create-device-type.png +0 -0
  741. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/41-device-search-results.png +0 -0
  742. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/42-address-search-v2.png +0 -0
  743. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/43-get-to-device-main-page.png +0 -0
  744. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/44-add-platform.png +0 -0
  745. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/5-create-device.png +0 -0
  746. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/6-create-location.png +0 -0
  747. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/7-location-type-page.png +0 -0
  748. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/8-location-page.png +0 -0
  749. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/01-git-data-source.png +0 -0
  750. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/02-git-data-source.png +0 -0
  751. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/03-git-data-source.png +0 -0
  752. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/04-git-data-source.png +0 -0
  753. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/05-git-data-source.png +0 -0
  754. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/06-git-data-source.png +0 -0
  755. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/07-git-data-source.png +0 -0
  756. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/08-git-data-source.png +0 -0
  757. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/09-git-data-source.png +0 -0
  758. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/10-git-data-source.png +0 -0
  759. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/11-git-data-source.png +0 -0
  760. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/12-git-data-source.png +0 -0
  761. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/13-git-data-source.png +0 -0
  762. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/14-git-data-source.png +0 -0
  763. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/15-git-data-source.png +0 -0
  764. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/16-git-data-source.png +0 -0
  765. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/17-git-data-source.png +0 -0
  766. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/00-graphiql.png +0 -0
  767. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/01-graphiql-explorer.png +0 -0
  768. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/02-graphiql-explorer-device-query.png +0 -0
  769. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/03-graphiql-explorer-device-attributes.png +0 -0
  770. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/04-graphql-query-01.png +0 -0
  771. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/05-graphiql-autocomplete.png +0 -0
  772. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/06-graphql-query-02.png +0 -0
  773. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/07-graphql-query-03.png +0 -0
  774. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/08-graphql-query-04.png +0 -0
  775. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/09-graphql-query-05.png +0 -0
  776. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/10-graphql-swagger.png +0 -0
  777. nautobot/project-static/docs/user-guide/feature-guides/images/graphql/11-graphql-query-06.png +0 -0
  778. nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/ip_merge_button.png +0 -0
  779. nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/merge_button.png +0 -0
  780. nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/merge_view.png +0 -0
  781. nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/no_more_dup_ips.png +0 -0
  782. nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/skip_button.png +0 -0
  783. nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/unselect_ips.png +0 -0
  784. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/01-relationships.png +0 -0
  785. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/02-relationships.png +0 -0
  786. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/03-relationships.png +0 -0
  787. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/04-relationships.png +0 -0
  788. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/05-relationships.png +0 -0
  789. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/06-relationships.png +0 -0
  790. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/07-relationships.png +0 -0
  791. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/08-relationships.png +0 -0
  792. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/09-relationships.png +0 -0
  793. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/10-relationships.png +0 -0
  794. nautobot/project-static/docs/user-guide/feature-guides/images/relationships/11-relationships.png +0 -0
  795. nautobot/project-static/docs/user-guide/feature-guides/ip-address-merge-tool.html +20 -90
  796. nautobot/project-static/docs/user-guide/feature-guides/relationships.html +22 -92
  797. nautobot/project-static/docs/user-guide/index.html +17 -87
  798. nautobot/project-static/docs/user-guide/platform-functionality/change-logging.html +17 -87
  799. nautobot/project-static/docs/user-guide/platform-functionality/computedfield.html +17 -87
  800. nautobot/project-static/docs/user-guide/platform-functionality/customfield.html +17 -87
  801. nautobot/project-static/docs/user-guide/platform-functionality/customlink.html +17 -87
  802. nautobot/project-static/docs/user-guide/platform-functionality/dynamicgroup.html +22 -88
  803. nautobot/project-static/docs/user-guide/platform-functionality/exporttemplate.html +17 -87
  804. nautobot/project-static/docs/user-guide/platform-functionality/externalintegration.html +68 -87
  805. nautobot/project-static/docs/user-guide/platform-functionality/gitrepository.html +18 -88
  806. nautobot/project-static/docs/user-guide/platform-functionality/graphql.html +17 -87
  807. nautobot/project-static/docs/user-guide/platform-functionality/graphqlquery.html +17 -87
  808. nautobot/project-static/docs/user-guide/platform-functionality/imageattachment.html +17 -87
  809. nautobot/project-static/docs/user-guide/platform-functionality/jobs/index.html +17 -87
  810. nautobot/project-static/docs/user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html +17 -87
  811. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobbutton.html +22 -88
  812. nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobhook.html +17 -87
  813. nautobot/project-static/docs/user-guide/platform-functionality/jobs/models.html +17 -87
  814. nautobot/project-static/docs/user-guide/platform-functionality/napalm.html +17 -87
  815. nautobot/project-static/docs/user-guide/platform-functionality/note.html +17 -87
  816. nautobot/project-static/docs/user-guide/platform-functionality/relationship.html +18 -88
  817. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/authentication.html +17 -87
  818. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/filtering.html +17 -87
  819. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/overview.html +17 -87
  820. nautobot/project-static/docs/user-guide/platform-functionality/rest-api/ui-related-endpoints.html +17 -87
  821. nautobot/project-static/docs/user-guide/platform-functionality/role.html +17 -87
  822. nautobot/project-static/docs/user-guide/platform-functionality/secret.html +17 -87
  823. nautobot/project-static/docs/user-guide/platform-functionality/status.html +17 -87
  824. nautobot/project-static/docs/user-guide/platform-functionality/tag.html +17 -87
  825. nautobot/project-static/docs/user-guide/platform-functionality/template-filters.html +43 -91
  826. nautobot/project-static/docs/user-guide/platform-functionality/users/objectpermission.html +21 -87
  827. nautobot/project-static/docs/user-guide/platform-functionality/users/token.html +17 -87
  828. nautobot/project-static/docs/user-guide/platform-functionality/webhook.html +17 -87
  829. nautobot/project-static/js/homepage_layout.js +170 -0
  830. nautobot/project-static/js/theme.js +0 -5
  831. nautobot/tenancy/api/urls.py +1 -1
  832. nautobot/tenancy/api/views.py +1 -0
  833. nautobot/tenancy/factory.py +2 -2
  834. nautobot/tenancy/filters/__init__.py +1 -2
  835. nautobot/tenancy/forms.py +2 -2
  836. nautobot/tenancy/homepage.py +0 -1
  837. nautobot/tenancy/migrations/0001_initial.py +2 -1
  838. nautobot/tenancy/migrations/0002_auto_slug.py +1 -0
  839. nautobot/tenancy/migrations/0004_change_tree_manager_on_tree_models.py +1 -0
  840. nautobot/tenancy/migrations/0008_tagsfield.py +1 -0
  841. nautobot/tenancy/models.py +0 -1
  842. nautobot/tenancy/navigation.py +0 -1
  843. nautobot/tenancy/tables.py +1 -0
  844. nautobot/tenancy/templates/tenancy/tenantgroup.html +1 -1
  845. nautobot/tenancy/tests/test_filters.py +5 -5
  846. nautobot/tenancy/urls.py +1 -0
  847. nautobot/tenancy/views.py +2 -2
  848. nautobot/users/admin.py +1 -2
  849. nautobot/users/api/urls.py +1 -1
  850. nautobot/users/api/views.py +6 -4
  851. nautobot/users/factory.py +8 -24
  852. nautobot/users/filters.py +4 -4
  853. nautobot/users/forms.py +1 -0
  854. nautobot/users/migrations/0004_alter_user_managers.py +1 -0
  855. nautobot/users/migrations/0008_make_object_permission_a_changelogged_model.py +22 -0
  856. nautobot/users/models.py +2 -2
  857. nautobot/users/tests/test_api.py +7 -6
  858. nautobot/users/tests/test_filters.py +0 -1
  859. nautobot/users/tests/test_models.py +0 -1
  860. nautobot/users/tests/test_password_ui.py +1 -1
  861. nautobot/users/views.py +5 -4
  862. nautobot/virtualization/api/urls.py +1 -1
  863. nautobot/virtualization/api/views.py +2 -1
  864. nautobot/virtualization/apps.py +1 -1
  865. nautobot/virtualization/choices.py +0 -1
  866. nautobot/virtualization/factory.py +1 -1
  867. nautobot/virtualization/filters.py +1 -1
  868. nautobot/virtualization/forms.py +6 -6
  869. nautobot/virtualization/homepage.py +0 -1
  870. nautobot/virtualization/migrations/0003_vminterface_verbose_name.py +1 -0
  871. nautobot/virtualization/migrations/0004_auto_slug.py +1 -0
  872. nautobot/virtualization/migrations/0005_add_natural_indexing.py +1 -0
  873. nautobot/virtualization/migrations/0006_vminterface_status.py +1 -0
  874. nautobot/virtualization/migrations/0007_vminterface_status_data_migration.py +1 -0
  875. nautobot/virtualization/migrations/0011_alter_vminterface_mac_address.py +1 -0
  876. nautobot/virtualization/migrations/0012_alter_virtualmachine_role_add_new_role.py +1 -0
  877. nautobot/virtualization/migrations/0013_migrate_virtualmachine_role_data.py +1 -0
  878. nautobot/virtualization/migrations/0018_related_name_changes.py +1 -0
  879. nautobot/virtualization/migrations/0021_tagsfield_and_vminterface_to_primarymodel.py +1 -0
  880. nautobot/virtualization/migrations/0025_status_nonnullable.py +1 -0
  881. nautobot/virtualization/models.py +1 -2
  882. nautobot/virtualization/navigation.py +0 -1
  883. nautobot/virtualization/signals.py +0 -1
  884. nautobot/virtualization/tables.py +1 -0
  885. nautobot/virtualization/templates/virtualization/virtualmachine.html +2 -2
  886. nautobot/virtualization/tests/test_filters.py +3 -3
  887. nautobot/virtualization/tests/test_models.py +1 -1
  888. nautobot/virtualization/tests/test_views.py +2 -2
  889. nautobot/virtualization/urls.py +1 -0
  890. nautobot/virtualization/views.py +1 -1
  891. {nautobot-2.1.0b1.dist-info → nautobot-2.1.1.dist-info}/METADATA +10 -2
  892. {nautobot-2.1.0b1.dist-info → nautobot-2.1.1.dist-info}/RECORD +895 -993
  893. nautobot/core/management/commands/build_ui.py +0 -281
  894. nautobot/core/templates/base_react.html +0 -55
  895. nautobot/core/tests/test_cli.py +0 -25
  896. nautobot/project-static/docs/media/installation/nautobot_ui_guest.png +0 -0
  897. nautobot/project-static/docs/user-guide/core-data-model/ipam/media/ipam_namespace_documentation.drawio.svg +0 -4
  898. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/39-address-search.png +0 -0
  899. nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/40-addr-main-page.png +0 -0
  900. nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/18-git-data-source.png +0 -0
  901. nautobot/ui/.eslintignore +0 -3
  902. nautobot/ui/.gitignore +0 -7
  903. nautobot/ui/.prettierignore +0 -6
  904. nautobot/ui/.prettierrc +0 -4
  905. nautobot/ui/README.md +0 -27
  906. nautobot/ui/config/env.js +0 -102
  907. nautobot/ui/config/getHttpsConfig.js +0 -68
  908. nautobot/ui/config/jest/babelTransform.js +0 -14
  909. nautobot/ui/config/jest/cssTransform.js +0 -12
  910. nautobot/ui/config/jest/fileTransform.js +0 -38
  911. nautobot/ui/config/modules.js +0 -151
  912. nautobot/ui/config/paths.js +0 -67
  913. nautobot/ui/config/webpack/persistentCache/createEnvironmentHash.js +0 -8
  914. nautobot/ui/config/webpack.config.js +0 -674
  915. nautobot/ui/config/webpackDevServer.config.js +0 -127
  916. nautobot/ui/jest.config.js +0 -35
  917. nautobot/ui/jsconfig.json +0 -4
  918. nautobot/ui/package-lock.json +0 -22947
  919. nautobot/ui/package.json +0 -119
  920. nautobot/ui/public/index.html +0 -47
  921. nautobot/ui/public/logo192.png +0 -0
  922. nautobot/ui/public/logo512.png +0 -0
  923. nautobot/ui/public/manifest.json +0 -25
  924. nautobot/ui/public/nautobot_logo.svg +0 -131
  925. nautobot/ui/public/robots.txt +0 -3
  926. nautobot/ui/scripts/build.js +0 -224
  927. nautobot/ui/scripts/start.js +0 -140
  928. nautobot/ui/scripts/test.js +0 -40
  929. nautobot/ui/src/App.js +0 -79
  930. nautobot/ui/src/components/AppFullWidthComponents.js +0 -8
  931. nautobot/ui/src/components/AppTab.js +0 -40
  932. nautobot/ui/src/components/Apps.js +0 -60
  933. nautobot/ui/src/components/FeedbackModal.js +0 -123
  934. nautobot/ui/src/components/FiltersPanel.js +0 -693
  935. nautobot/ui/src/components/HomeChangelogPanel.js +0 -98
  936. nautobot/ui/src/components/HomePanel.js +0 -58
  937. nautobot/ui/src/components/JobHistoryTable.js +0 -78
  938. nautobot/ui/src/components/Layout.js +0 -76
  939. nautobot/ui/src/components/LoadingWidget.js +0 -14
  940. nautobot/ui/src/components/Navbar.js +0 -204
  941. nautobot/ui/src/components/NotificationPopover.js +0 -27
  942. nautobot/ui/src/components/ObjectTable/ObjectListTable.js +0 -300
  943. nautobot/ui/src/components/ObjectTable/ObjectTable.js +0 -96
  944. nautobot/ui/src/components/ObjectTable/ObjectTableItem.js +0 -70
  945. nautobot/ui/src/components/ObjectTable/index.js +0 -3
  946. nautobot/ui/src/components/Pagination/PageNumberForm.js +0 -228
  947. nautobot/ui/src/components/Pagination/PageSizeForm.js +0 -65
  948. nautobot/ui/src/components/Pagination/Pagination.js +0 -67
  949. nautobot/ui/src/components/Pagination/index.js +0 -3
  950. nautobot/ui/src/components/ReferenceDataTag.js +0 -35
  951. nautobot/ui/src/components/Retrieve/RenderChangeLogsTab.js +0 -58
  952. nautobot/ui/src/components/Retrieve/RenderColumn.js +0 -30
  953. nautobot/ui/src/components/Retrieve/RenderGroup.js +0 -24
  954. nautobot/ui/src/components/Retrieve/RenderHeader.js +0 -125
  955. nautobot/ui/src/components/Retrieve/RenderNotesTab.js +0 -60
  956. nautobot/ui/src/components/Retrieve/RenderTable.js +0 -33
  957. nautobot/ui/src/components/Retrieve/RenderTabs.js +0 -56
  958. nautobot/ui/src/components/Retrieve/index.js +0 -7
  959. nautobot/ui/src/components/RouterButton.js +0 -10
  960. nautobot/ui/src/components/RouterLink.js +0 -10
  961. nautobot/ui/src/components/SidebarNav.js +0 -156
  962. nautobot/ui/src/components/__tests__/AppFullWidthComponents.test.js +0 -16
  963. nautobot/ui/src/components/__tests__/AppTab.test.js +0 -21
  964. nautobot/ui/src/components/__tests__/Apps.test.js +0 -14
  965. nautobot/ui/src/components/__tests__/Layout.test.js +0 -33
  966. nautobot/ui/src/components/__tests__/PageSizeForm.test.js +0 -13
  967. nautobot/ui/src/components/__tests__/Pagination.test.js +0 -43
  968. nautobot/ui/src/components/__tests__/Table.test.js +0 -39
  969. nautobot/ui/src/components/__tests__/TableItem.test.js +0 -39
  970. nautobot/ui/src/components/index.js +0 -4
  971. nautobot/ui/src/constants/apiPath.js +0 -13
  972. nautobot/ui/src/constants/icons.js +0 -15
  973. nautobot/ui/src/constants/size.js +0 -15
  974. nautobot/ui/src/file_templates/app_imports.js.j2 +0 -7
  975. nautobot/ui/src/file_templates/jsconfig-base.json +0 -12
  976. nautobot/ui/src/index.js +0 -65
  977. nautobot/ui/src/reportWebVitals.js +0 -15
  978. nautobot/ui/src/router.js +0 -77
  979. nautobot/ui/src/utils/api.js +0 -160
  980. nautobot/ui/src/utils/app-import.js +0 -15
  981. nautobot/ui/src/utils/color.js +0 -15
  982. nautobot/ui/src/utils/date.js +0 -14
  983. nautobot/ui/src/utils/index.js +0 -15
  984. nautobot/ui/src/utils/navigation.js +0 -48
  985. nautobot/ui/src/utils/session.js +0 -64
  986. nautobot/ui/src/utils/store.js +0 -242
  987. nautobot/ui/src/utils/string.js +0 -6
  988. nautobot/ui/src/utils/url.js +0 -4
  989. nautobot/ui/src/views/Home.js +0 -142
  990. nautobot/ui/src/views/InstalledApps.js +0 -80
  991. nautobot/ui/src/views/Login.js +0 -48
  992. nautobot/ui/src/views/Logout.js +0 -20
  993. nautobot/ui/src/views/__tests__/BSCreateViewTemplate.test.js +0 -11
  994. nautobot/ui/src/views/__tests__/BSListViewTemplate.test.js +0 -107
  995. nautobot/ui/src/views/__tests__/Login.test.js +0 -15
  996. nautobot/ui/src/views/generic/GenericView.js +0 -191
  997. nautobot/ui/src/views/generic/ObjectCreate.js +0 -96
  998. nautobot/ui/src/views/generic/ObjectList.js +0 -137
  999. nautobot/ui/src/views/generic/ObjectRetrieve.js +0 -87
  1000. {nautobot-2.1.0b1.dist-info → nautobot-2.1.1.dist-info}/LICENSE.txt +0 -0
  1001. {nautobot-2.1.0b1.dist-info → nautobot-2.1.1.dist-info}/WHEEL +0 -0
  1002. {nautobot-2.1.0b1.dist-info → nautobot-2.1.1.dist-info}/entry_points.txt +0 -0
@@ -977,20 +977,6 @@
977
977
 
978
978
 
979
979
 
980
-
981
-
982
-
983
-
984
-
985
- <li class="md-nav__item">
986
- <a href="../user-guide/administration/configuration/node-configuration.html" class="md-nav__link">
987
- Node.js Configuration
988
- </a>
989
- </li>
990
-
991
-
992
-
993
-
994
980
  </ul>
995
981
  </nav>
996
982
  </li>
@@ -1439,34 +1425,6 @@
1439
1425
 
1440
1426
 
1441
1427
 
1442
- <li class="md-nav__item">
1443
- <a href="../user-guide/feature-guides/git-data-source.html" class="md-nav__link">
1444
- Git as a Data Source
1445
- </a>
1446
- </li>
1447
-
1448
-
1449
-
1450
-
1451
-
1452
-
1453
-
1454
-
1455
-
1456
- <li class="md-nav__item">
1457
- <a href="../user-guide/feature-guides/graphql.html" class="md-nav__link">
1458
- GraphQL
1459
- </a>
1460
- </li>
1461
-
1462
-
1463
-
1464
-
1465
-
1466
-
1467
-
1468
-
1469
-
1470
1428
  <li class="md-nav__item">
1471
1429
  <a href="../user-guide/feature-guides/relationships.html" class="md-nav__link">
1472
1430
  Relationships
@@ -3552,23 +3510,9 @@
3552
3510
 
3553
3511
 
3554
3512
 
3555
- <li class="md-nav__item">
3556
- <a href="../development/apps/api/views/view-overrides.html" class="md-nav__link">
3557
- View Overrides
3558
- </a>
3559
- </li>
3560
-
3561
-
3562
-
3563
-
3564
-
3565
-
3566
-
3567
-
3568
-
3569
3513
  <li class="md-nav__item">
3570
3514
  <a href="../development/apps/api/views/core-view-overrides.html" class="md-nav__link">
3571
- Legacy View Overrides
3515
+ View Overrides
3572
3516
  </a>
3573
3517
  </li>
3574
3518
 
@@ -3657,7 +3601,7 @@
3657
3601
 
3658
3602
  <li class="md-nav__item">
3659
3603
  <a href="../development/apps/api/platform-features/filter-extensions.html" class="md-nav__link">
3660
- Filter Extentions
3604
+ Filter Extensions
3661
3605
  </a>
3662
3606
  </li>
3663
3607
 
@@ -3865,21 +3809,7 @@
3865
3809
 
3866
3810
  <li class="md-nav__item">
3867
3811
  <a href="../development/apps/api/ui-extensions/object-detail-views.html" class="md-nav__link">
3868
- Object Detail Views
3869
- </a>
3870
- </li>
3871
-
3872
-
3873
-
3874
-
3875
-
3876
-
3877
-
3878
-
3879
-
3880
- <li class="md-nav__item">
3881
- <a href="../development/apps/api/ui-extensions/tabs.html" class="md-nav__link">
3882
- Tabs
3812
+ Object Detail Views and Tabs
3883
3813
  </a>
3884
3814
  </li>
3885
3815
 
@@ -4550,6 +4480,20 @@
4550
4480
 
4551
4481
 
4552
4482
 
4483
+ <li class="md-nav__item">
4484
+ <a href="../development/core/bootstrap-ui.html" class="md-nav__link">
4485
+ Bootstrap UI
4486
+ </a>
4487
+ </li>
4488
+
4489
+
4490
+
4491
+
4492
+
4493
+
4494
+
4495
+
4496
+
4553
4497
  <li class="md-nav__item">
4554
4498
  <a href="../development/core/best-practices.html" class="md-nav__link">
4555
4499
  Best Practices
@@ -4662,20 +4606,6 @@
4662
4606
 
4663
4607
 
4664
4608
 
4665
- <li class="md-nav__item">
4666
- <a href="../development/core/react-ui.html" class="md-nav__link">
4667
- React UI
4668
- </a>
4669
- </li>
4670
-
4671
-
4672
-
4673
-
4674
-
4675
-
4676
-
4677
-
4678
-
4679
4609
  <li class="md-nav__item">
4680
4610
  <a href="../development/core/role-internals.html" class="md-nav__link">
4681
4611
  Role Internals
@@ -4847,8 +4777,8 @@
4847
4777
  <ul class="md-nav__list">
4848
4778
 
4849
4779
  <li class="md-nav__item">
4850
- <a href="#job-file-outputs-3352-4820" class="md-nav__link">
4851
- Job File Outputs (#3352, #4820)
4780
+ <a href="#django-admin-log-entries-4646" class="md-nav__link">
4781
+ Django Admin Log Entries (#4646)
4852
4782
  </a>
4853
4783
 
4854
4784
  </li>
@@ -4858,6 +4788,34 @@
4858
4788
  External Integration Model (#4694)
4859
4789
  </a>
4860
4790
 
4791
+ </li>
4792
+
4793
+ <li class="md-nav__item">
4794
+ <a href="#home-page-panels-can-be-customized-2149" class="md-nav__link">
4795
+ Home Page Panels Can Be Customized (#2149)
4796
+ </a>
4797
+
4798
+ </li>
4799
+
4800
+ <li class="md-nav__item">
4801
+ <a href="#job-file-outputs-3352-4820" class="md-nav__link">
4802
+ Job File Outputs (#3352, #4820)
4803
+ </a>
4804
+
4805
+ </li>
4806
+
4807
+ <li class="md-nav__item">
4808
+ <a href="#job-jsonvar-inputs-4926" class="md-nav__link">
4809
+ Job JSONVar inputs (#4926)
4810
+ </a>
4811
+
4812
+ </li>
4813
+
4814
+ <li class="md-nav__item">
4815
+ <a href="#uiapi-isnull-filter-on-nullable-fields-1905" class="md-nav__link">
4816
+ UI/API isnull Filter on Nullable Fields (#1905)
4817
+ </a>
4818
+
4861
4819
  </li>
4862
4820
 
4863
4821
  </ul>
@@ -4900,9 +4858,16 @@
4900
4858
  <nav class="md-nav" aria-label="Removed">
4901
4859
  <ul class="md-nav__list">
4902
4860
 
4861
+ <li class="md-nav__item">
4862
+ <a href="#drop-support-for-legacy-postgresql-versions-4757" class="md-nav__link">
4863
+ Drop Support for Legacy PostgreSQL Versions (#4757)
4864
+ </a>
4865
+
4866
+ </li>
4867
+
4903
4868
  <li class="md-nav__item">
4904
4869
  <a href="#remove-hide_restricted_ui-toggle-4787" class="md-nav__link">
4905
- Remove HIDE_RESTRICTED_UI toggle (#4787)
4870
+ Remove HIDE_RESTRICTED_UI Toggle (#4787)
4906
4871
  </a>
4907
4872
 
4908
4873
  </li>
@@ -4918,11 +4883,11 @@
4918
4883
  </li>
4919
4884
 
4920
4885
  <li class="md-nav__item">
4921
- <a href="#v210-beta1-2023-11-30" class="md-nav__link">
4922
- v2.1.0-beta.1 (2023-11-30)
4886
+ <a href="#v211-2024-01-08" class="md-nav__link">
4887
+ v2.1.1 (2024-01-08)
4923
4888
  </a>
4924
4889
 
4925
- <nav class="md-nav" aria-label="v2.1.0-beta.1 (2023-11-30)">
4890
+ <nav class="md-nav" aria-label="v2.1.1 (2024-01-08)">
4926
4891
  <ul class="md-nav__list">
4927
4892
 
4928
4893
  <li class="md-nav__item">
@@ -4951,6 +4916,13 @@
4951
4916
  Fixed
4952
4917
  </a>
4953
4918
 
4919
+ </li>
4920
+
4921
+ <li class="md-nav__item">
4922
+ <a href="#documentation" class="md-nav__link">
4923
+ Documentation
4924
+ </a>
4925
+
4954
4926
  </li>
4955
4927
 
4956
4928
  <li class="md-nav__item">
@@ -4963,6 +4935,116 @@
4963
4935
  </ul>
4964
4936
  </nav>
4965
4937
 
4938
+ </li>
4939
+
4940
+ <li class="md-nav__item">
4941
+ <a href="#v210-2023-12-22" class="md-nav__link">
4942
+ v2.1.0 (2023-12-22)
4943
+ </a>
4944
+
4945
+ <nav class="md-nav" aria-label="v2.1.0 (2023-12-22)">
4946
+ <ul class="md-nav__list">
4947
+
4948
+ <li class="md-nav__item">
4949
+ <a href="#security" class="md-nav__link">
4950
+ Security
4951
+ </a>
4952
+
4953
+ </li>
4954
+
4955
+ <li class="md-nav__item">
4956
+ <a href="#added_2" class="md-nav__link">
4957
+ Added
4958
+ </a>
4959
+
4960
+ </li>
4961
+
4962
+ <li class="md-nav__item">
4963
+ <a href="#changed_2" class="md-nav__link">
4964
+ Changed
4965
+ </a>
4966
+
4967
+ </li>
4968
+
4969
+ <li class="md-nav__item">
4970
+ <a href="#removed_2" class="md-nav__link">
4971
+ Removed
4972
+ </a>
4973
+
4974
+ </li>
4975
+
4976
+ <li class="md-nav__item">
4977
+ <a href="#fixed_1" class="md-nav__link">
4978
+ Fixed
4979
+ </a>
4980
+
4981
+ </li>
4982
+
4983
+ <li class="md-nav__item">
4984
+ <a href="#documentation_1" class="md-nav__link">
4985
+ Documentation
4986
+ </a>
4987
+
4988
+ </li>
4989
+
4990
+ <li class="md-nav__item">
4991
+ <a href="#housekeeping_1" class="md-nav__link">
4992
+ Housekeeping
4993
+ </a>
4994
+
4995
+ </li>
4996
+
4997
+ </ul>
4998
+ </nav>
4999
+
5000
+ </li>
5001
+
5002
+ <li class="md-nav__item">
5003
+ <a href="#v210-beta1-2023-11-30" class="md-nav__link">
5004
+ v2.1.0-beta.1 (2023-11-30)
5005
+ </a>
5006
+
5007
+ <nav class="md-nav" aria-label="v2.1.0-beta.1 (2023-11-30)">
5008
+ <ul class="md-nav__list">
5009
+
5010
+ <li class="md-nav__item">
5011
+ <a href="#added_3" class="md-nav__link">
5012
+ Added
5013
+ </a>
5014
+
5015
+ </li>
5016
+
5017
+ <li class="md-nav__item">
5018
+ <a href="#changed_3" class="md-nav__link">
5019
+ Changed
5020
+ </a>
5021
+
5022
+ </li>
5023
+
5024
+ <li class="md-nav__item">
5025
+ <a href="#removed_3" class="md-nav__link">
5026
+ Removed
5027
+ </a>
5028
+
5029
+ </li>
5030
+
5031
+ <li class="md-nav__item">
5032
+ <a href="#fixed_2" class="md-nav__link">
5033
+ Fixed
5034
+ </a>
5035
+
5036
+ </li>
5037
+
5038
+ <li class="md-nav__item">
5039
+ <a href="#housekeeping_2" class="md-nav__link">
5040
+ Housekeeping
5041
+ </a>
5042
+
5043
+ </li>
5044
+
5045
+ </ul>
5046
+ </nav>
5047
+
4966
5048
  </li>
4967
5049
 
4968
5050
  </ul>
@@ -5365,8 +5447,8 @@
5365
5447
  <ul class="md-nav__list">
5366
5448
 
5367
5449
  <li class="md-nav__item">
5368
- <a href="#job-file-outputs-3352-4820" class="md-nav__link">
5369
- Job File Outputs (#3352, #4820)
5450
+ <a href="#django-admin-log-entries-4646" class="md-nav__link">
5451
+ Django Admin Log Entries (#4646)
5370
5452
  </a>
5371
5453
 
5372
5454
  </li>
@@ -5376,6 +5458,34 @@
5376
5458
  External Integration Model (#4694)
5377
5459
  </a>
5378
5460
 
5461
+ </li>
5462
+
5463
+ <li class="md-nav__item">
5464
+ <a href="#home-page-panels-can-be-customized-2149" class="md-nav__link">
5465
+ Home Page Panels Can Be Customized (#2149)
5466
+ </a>
5467
+
5468
+ </li>
5469
+
5470
+ <li class="md-nav__item">
5471
+ <a href="#job-file-outputs-3352-4820" class="md-nav__link">
5472
+ Job File Outputs (#3352, #4820)
5473
+ </a>
5474
+
5475
+ </li>
5476
+
5477
+ <li class="md-nav__item">
5478
+ <a href="#job-jsonvar-inputs-4926" class="md-nav__link">
5479
+ Job JSONVar inputs (#4926)
5480
+ </a>
5481
+
5482
+ </li>
5483
+
5484
+ <li class="md-nav__item">
5485
+ <a href="#uiapi-isnull-filter-on-nullable-fields-1905" class="md-nav__link">
5486
+ UI/API isnull Filter on Nullable Fields (#1905)
5487
+ </a>
5488
+
5379
5489
  </li>
5380
5490
 
5381
5491
  </ul>
@@ -5418,9 +5528,16 @@
5418
5528
  <nav class="md-nav" aria-label="Removed">
5419
5529
  <ul class="md-nav__list">
5420
5530
 
5531
+ <li class="md-nav__item">
5532
+ <a href="#drop-support-for-legacy-postgresql-versions-4757" class="md-nav__link">
5533
+ Drop Support for Legacy PostgreSQL Versions (#4757)
5534
+ </a>
5535
+
5536
+ </li>
5537
+
5421
5538
  <li class="md-nav__item">
5422
5539
  <a href="#remove-hide_restricted_ui-toggle-4787" class="md-nav__link">
5423
- Remove HIDE_RESTRICTED_UI toggle (#4787)
5540
+ Remove HIDE_RESTRICTED_UI Toggle (#4787)
5424
5541
  </a>
5425
5542
 
5426
5543
  </li>
@@ -5436,11 +5553,11 @@
5436
5553
  </li>
5437
5554
 
5438
5555
  <li class="md-nav__item">
5439
- <a href="#v210-beta1-2023-11-30" class="md-nav__link">
5440
- v2.1.0-beta.1 (2023-11-30)
5556
+ <a href="#v211-2024-01-08" class="md-nav__link">
5557
+ v2.1.1 (2024-01-08)
5441
5558
  </a>
5442
5559
 
5443
- <nav class="md-nav" aria-label="v2.1.0-beta.1 (2023-11-30)">
5560
+ <nav class="md-nav" aria-label="v2.1.1 (2024-01-08)">
5444
5561
  <ul class="md-nav__list">
5445
5562
 
5446
5563
  <li class="md-nav__item">
@@ -5469,6 +5586,13 @@
5469
5586
  Fixed
5470
5587
  </a>
5471
5588
 
5589
+ </li>
5590
+
5591
+ <li class="md-nav__item">
5592
+ <a href="#documentation" class="md-nav__link">
5593
+ Documentation
5594
+ </a>
5595
+
5472
5596
  </li>
5473
5597
 
5474
5598
  <li class="md-nav__item">
@@ -5481,6 +5605,116 @@
5481
5605
  </ul>
5482
5606
  </nav>
5483
5607
 
5608
+ </li>
5609
+
5610
+ <li class="md-nav__item">
5611
+ <a href="#v210-2023-12-22" class="md-nav__link">
5612
+ v2.1.0 (2023-12-22)
5613
+ </a>
5614
+
5615
+ <nav class="md-nav" aria-label="v2.1.0 (2023-12-22)">
5616
+ <ul class="md-nav__list">
5617
+
5618
+ <li class="md-nav__item">
5619
+ <a href="#security" class="md-nav__link">
5620
+ Security
5621
+ </a>
5622
+
5623
+ </li>
5624
+
5625
+ <li class="md-nav__item">
5626
+ <a href="#added_2" class="md-nav__link">
5627
+ Added
5628
+ </a>
5629
+
5630
+ </li>
5631
+
5632
+ <li class="md-nav__item">
5633
+ <a href="#changed_2" class="md-nav__link">
5634
+ Changed
5635
+ </a>
5636
+
5637
+ </li>
5638
+
5639
+ <li class="md-nav__item">
5640
+ <a href="#removed_2" class="md-nav__link">
5641
+ Removed
5642
+ </a>
5643
+
5644
+ </li>
5645
+
5646
+ <li class="md-nav__item">
5647
+ <a href="#fixed_1" class="md-nav__link">
5648
+ Fixed
5649
+ </a>
5650
+
5651
+ </li>
5652
+
5653
+ <li class="md-nav__item">
5654
+ <a href="#documentation_1" class="md-nav__link">
5655
+ Documentation
5656
+ </a>
5657
+
5658
+ </li>
5659
+
5660
+ <li class="md-nav__item">
5661
+ <a href="#housekeeping_1" class="md-nav__link">
5662
+ Housekeeping
5663
+ </a>
5664
+
5665
+ </li>
5666
+
5667
+ </ul>
5668
+ </nav>
5669
+
5670
+ </li>
5671
+
5672
+ <li class="md-nav__item">
5673
+ <a href="#v210-beta1-2023-11-30" class="md-nav__link">
5674
+ v2.1.0-beta.1 (2023-11-30)
5675
+ </a>
5676
+
5677
+ <nav class="md-nav" aria-label="v2.1.0-beta.1 (2023-11-30)">
5678
+ <ul class="md-nav__list">
5679
+
5680
+ <li class="md-nav__item">
5681
+ <a href="#added_3" class="md-nav__link">
5682
+ Added
5683
+ </a>
5684
+
5685
+ </li>
5686
+
5687
+ <li class="md-nav__item">
5688
+ <a href="#changed_3" class="md-nav__link">
5689
+ Changed
5690
+ </a>
5691
+
5692
+ </li>
5693
+
5694
+ <li class="md-nav__item">
5695
+ <a href="#removed_3" class="md-nav__link">
5696
+ Removed
5697
+ </a>
5698
+
5699
+ </li>
5700
+
5701
+ <li class="md-nav__item">
5702
+ <a href="#fixed_2" class="md-nav__link">
5703
+ Fixed
5704
+ </a>
5705
+
5706
+ </li>
5707
+
5708
+ <li class="md-nav__item">
5709
+ <a href="#housekeeping_2" class="md-nav__link">
5710
+ Housekeeping
5711
+ </a>
5712
+
5713
+ </li>
5714
+
5715
+ </ul>
5716
+ </nav>
5717
+
5484
5718
  </li>
5485
5719
 
5486
5720
  </ul>
@@ -5507,8 +5741,20 @@
5507
5741
  <p>This document describes all new features and changes in Nautobot 2.1.</p>
5508
5742
  <h2 id="release-overview">Release Overview<a class="headerlink" href="#release-overview" title="Permanent link">&para;</a></h2>
5509
5743
  <h3 id="added">Added<a class="headerlink" href="#added" title="Permanent link">&para;</a></h3>
5744
+ <h4 id="django-admin-log-entries-4646">Django Admin Log Entries (<a href="https://github.com/nautobot/nautobot/pull/4646">#4646</a>)<a class="headerlink" href="#django-admin-log-entries-4646" title="Permanent link">&para;</a></h4>
5745
+ <p>Django Admin Log Entries record administrative changes made under the "Admin" section of the user interface. Changes (add/delete/update) to Objects like Users, Group, Object Permissions, etc. in the "Admin" user interface are now displayed as "Log Entries" under the "Administration" section of the Admin UI.</p>
5746
+ <div class="admonition info">
5747
+ <p class="admonition-title">Info</p>
5748
+ <p>Django Admin Log Entries are automatically created when administrative changes happen and have always existed natively in Django Admin. This feature is simply providing a read-only UI view for admin/privileged users to access them with more ease.</p>
5749
+ </div>
5750
+ <p>See <a href="../user-guide/platform-functionality/change-logging.html#administrative-changes">Administrative Change-logging</a> for more details.</p>
5751
+ <h4 id="external-integration-model-4694">External Integration Model (<a href="https://github.com/nautobot/nautobot/issues/4694">#4694</a>)<a class="headerlink" href="#external-integration-model-4694" title="Permanent link">&para;</a></h4>
5752
+ <p>A new <a href="../user-guide/platform-functionality/externalintegration.html"><code>ExternalIntegration</code> model</a> has been added which provides a centralized store for data such as URLs and credentials that are used to access systems external to Nautobot. This information can then be used by jobs or apps to perform actions such as creating DNS records or updating configuration management tickets.</p>
5753
+ <h4 id="home-page-panels-can-be-customized-2149">Home Page Panels Can Be Customized (<a href="https://github.com/nautobot/nautobot/issues/2149">#2149</a>)<a class="headerlink" href="#home-page-panels-can-be-customized-2149" title="Permanent link">&para;</a></h4>
5754
+ <p>The panels displayed on the Nautobot home page have been modified to enable a more personalized user experience. Individual panels can now be collapsed, hiding the contents from view. Additionally, panels can be reordered by dragging and dropping the panels to the desired order.</p>
5510
5755
  <h4 id="job-file-outputs-3352-4820">Job File Outputs (<a href="https://github.com/nautobot/nautobot/issues/3352">#3352</a>, <a href="https://github.com/nautobot/nautobot/issues/4820">#4820</a>)<a class="headerlink" href="#job-file-outputs-3352-4820" title="Permanent link">&para;</a></h4>
5511
5756
  <p>The <code>Job</code> base class now includes a <a href="../development/jobs/index.html#file-output"><code>create_file(filename, content)</code></a> method which can be called by a Job to create a persistent file with the provided content when run. This file will be linked from the Job Result detail view for subsequent downloading by users, and can also be downloaded via the REST API (<code>/api/extras/file-proxies/&lt;id&gt;/download/</code>) as desired.</p>
5757
+ <p>The size of files Jobs can create via this method are constrained by the <a href="../user-guide/administration/configuration/optional-settings.html#job_create_file_max_size"><code>JOB_CREATE_FILE_MAX_SIZE</code></a> settings variable.</p>
5512
5758
  <div class="admonition info">
5513
5759
  <p class="admonition-title">Info</p>
5514
5760
  <p>The specific storage backend used to retain such files is controlled by the <a href="../user-guide/administration/configuration/optional-settings.html#job_file_io_storage"><code>JOB_FILE_IO_STORAGE</code></a> settings variable. The default value of this setting uses the Nautobot database to store output files, which should work in all deployments but is generally not optimal and better alternatives may exist in your specific deployment. Refer to the documentation link above for more details.</p>
@@ -5517,8 +5763,14 @@
5517
5763
  <p class="admonition-title">Tip</p>
5518
5764
  <p>Users must have permission to <code>view</code> the <code>extras &gt; file proxy</code> object type in order to list and download files from the REST API.</p>
5519
5765
  </div>
5520
- <h4 id="external-integration-model-4694">External Integration Model (<a href="https://github.com/nautobot/nautobot/issues/4694">#4694</a>)<a class="headerlink" href="#external-integration-model-4694" title="Permanent link">&para;</a></h4>
5521
- <p>A new <a href="../user-guide/platform-functionality/externalintegration.html"><code>ExternalIntegration</code> model</a> has been added which provides a centralized store for data such as URLs and credentials that are used to access systems external to Nautobot. This information can then be used by jobs or apps to perform actions such as creating DNS records or updating configuration management tickets.</p>
5766
+ <h4 id="job-jsonvar-inputs-4926">Job JSONVar inputs (<a href="https://github.com/nautobot/nautobot/issues/4926">#4926</a>)<a class="headerlink" href="#job-jsonvar-inputs-4926" title="Permanent link">&para;</a></h4>
5767
+ <p>Provides the ability to have native JSON data inputs for Jobs, this is provided by a multi-line text input on the Job form and the provided JSON data is serialized prior to passing to the <code>run()</code> method of the Job.</p>
5768
+ <h4 id="uiapi-isnull-filter-on-nullable-fields-1905">UI/API <code>isnull</code> Filter on Nullable Fields (<a href="https://github.com/nautobot/nautobot/issues/1905">#1905</a>)<a class="headerlink" href="#uiapi-isnull-filter-on-nullable-fields-1905" title="Permanent link">&para;</a></h4>
5769
+ <p>Models with nullable fields (i.e. model fields with <code>null=True</code>) can now be filtered in the UI and the API with <code>&lt;field&gt;__isnull=true/false</code> filters. These filters are automatically added to all appropriate fields.</p>
5770
+ <div class="admonition note">
5771
+ <p class="admonition-title">Note</p>
5772
+ <p>Model fields that have the value <code>""</code> (i.e. blank) will not match with <code>__isnull=True</code>. Instead, they will match with <code>__isnull=False</code>.</p>
5773
+ </div>
5522
5774
  <h3 id="changed">Changed<a class="headerlink" href="#changed" title="Permanent link">&para;</a></h3>
5523
5775
  <h4 id="data-exports-as-a-system-job-4745">Data Exports as a System Job (<a href="https://github.com/nautobot/nautobot/issues/4745">#4745</a>)<a class="headerlink" href="#data-exports-as-a-system-job-4745" title="Permanent link">&para;</a></h4>
5524
5776
  <p>The data export functionality in all object list views (allowing export of all or a filtered subset of objects to CSV, YAML, and/or as defined by an <code>ExportTemplate</code>) has been changed from a synchronous operation to an asynchronous background task, leveraging the new <code>ExportObjectList</code> system Job. As a result, exports of thousands of objects in a single operation will no longer fail due to browser timeout.</p>
@@ -5527,14 +5779,124 @@
5527
5779
  <p>Users now must have the <code>run</code> action permission for <code>extras &gt; job</code> (specifically the <code>nautobot.core.jobs.ExportObjectList</code> Job) in order to export objects, in addition to the normal <code>view</code> permissions for the objects being exported.</p>
5528
5780
  </div>
5529
5781
  <h4 id="nautobot-ui-reskin-4677-4765">Nautobot UI Reskin (<a href="https://github.com/nautobot/nautobot/issues/4677">#4677</a>, <a href="https://github.com/nautobot/nautobot/issues/4765">#4765</a>)<a class="headerlink" href="#nautobot-ui-reskin-4677-4765" title="Permanent link">&para;</a></h4>
5530
- <p>Nautobot UI is updated with customized Nautobot Bootstrap theme, giving it a brand new look. In addition, Nautobot's navigation bar is moved from the top to the left. Please checkout https://next.demo.nautobot.com/ for the updated UI.</p>
5782
+ <p>The Nautobot UI has been updated with a customized theme, giving it a brand new look. In addition, Nautobot's navigation bar has been moved from the top to the left.</p>
5531
5783
  <h3 id="removed">Removed<a class="headerlink" href="#removed" title="Permanent link">&para;</a></h3>
5532
- <h4 id="remove-hide_restricted_ui-toggle-4787">Remove HIDE_RESTRICTED_UI toggle (<a href="https://github.com/nautobot/nautobot/issues/4787">#4787</a>)<a class="headerlink" href="#remove-hide_restricted_ui-toggle-4787" title="Permanent link">&para;</a></h4>
5784
+ <h4 id="drop-support-for-legacy-postgresql-versions-4757">Drop Support for Legacy PostgreSQL Versions (<a href="https://github.com/nautobot/nautobot/issues/4757">#4757</a>)<a class="headerlink" href="#drop-support-for-legacy-postgresql-versions-4757" title="Permanent link">&para;</a></h4>
5785
+ <p>Support for versions of PostgreSQL prior to 12.0 has been removed as these versions are no longer maintained and contain bugs that prevent migrations from running in certain scenarios. The <code>nautobot-server migrate</code> or <code>nautobot-server post_upgrade</code> commands will now abort when detecting an unsupported PostgreSQL version.</p>
5786
+ <h4 id="remove-hide_restricted_ui-toggle-4787">Remove <code>HIDE_RESTRICTED_UI</code> Toggle (<a href="https://github.com/nautobot/nautobot/issues/4787">#4787</a>)<a class="headerlink" href="#remove-hide_restricted_ui-toggle-4787" title="Permanent link">&para;</a></h4>
5533
5787
  <p>Support for <code>HIDE_RESTRICTED_UI</code> has been removed. UI elements requiring specific permissions will now always be hidden from users lacking those permissions. Additionally, users not logged in will now be automatically redirected to the login page.</p>
5534
5788
  <!-- towncrier release notes start -->
5535
- <h2 id="v210-beta1-2023-11-30">v2.1.0-beta.1 (2023-11-30)<a class="headerlink" href="#v210-beta1-2023-11-30" title="Permanent link">&para;</a></h2>
5789
+ <h2 id="v211-2024-01-08">v2.1.1 (2024-01-08)<a class="headerlink" href="#v211-2024-01-08" title="Permanent link">&para;</a></h2>
5536
5790
  <h3 id="added_1">Added<a class="headerlink" href="#added_1" title="Permanent link">&para;</a></h3>
5537
5791
  <ul>
5792
+ <li><a href="https://github.com/nautobot/nautobot/issues/5046">#5046</a> - Updated the LocationType clone process to pre-populate the original object's parent, nestable and content type fields.</li>
5793
+ </ul>
5794
+ <h3 id="changed_1">Changed<a class="headerlink" href="#changed_1" title="Permanent link">&para;</a></h3>
5795
+ <ul>
5796
+ <li><a href="https://github.com/nautobot/nautobot/issues/4992">#4992</a> - Added change-logging (ObjectChange support) for the ObjectPermission model.</li>
5797
+ </ul>
5798
+ <h3 id="removed_1">Removed<a class="headerlink" href="#removed_1" title="Permanent link">&para;</a></h3>
5799
+ <ul>
5800
+ <li><a href="https://github.com/nautobot/nautobot/issues/5033">#5033</a> - Removed alpha UI from the main code base for now (it still exists in a prototype branch) to reduce the burden of maintaining its dependencies in the meantime.</li>
5801
+ <li><a href="https://github.com/nautobot/nautobot/issues/5035">#5035</a> - Removed nodesource apt repository from Dockerfile.</li>
5802
+ </ul>
5803
+ <h3 id="fixed">Fixed<a class="headerlink" href="#fixed" title="Permanent link">&para;</a></h3>
5804
+ <ul>
5805
+ <li><a href="https://github.com/nautobot/nautobot/issues/4606">#4606</a> - Fixed an error when attempting to "Save Changes" to an existing GraphQL saved query via the GraphiQL UI.</li>
5806
+ <li><a href="https://github.com/nautobot/nautobot/issues/4606">#4606</a> - Fixed incorrect positioning of the "Save Changes" button in the "Queries" menu in the GraphiQL UI.</li>
5807
+ <li><a href="https://github.com/nautobot/nautobot/issues/4606">#4606</a> - Fixed incorrect specification of the "variables" field in the GraphQL saved query REST API.</li>
5808
+ <li><a href="https://github.com/nautobot/nautobot/issues/4606">#4606</a> - Fixed a display glitch in the detail view for GraphQL saved queries.</li>
5809
+ <li><a href="https://github.com/nautobot/nautobot/issues/5005">#5005</a> - Fixed missing schema field in config context create/edit forms.</li>
5810
+ <li><a href="https://github.com/nautobot/nautobot/issues/5020">#5020</a> - Fixed display of secrets when editing a SecretsGroup.</li>
5811
+ </ul>
5812
+ <h3 id="documentation">Documentation<a class="headerlink" href="#documentation" title="Permanent link">&para;</a></h3>
5813
+ <ul>
5814
+ <li><a href="https://github.com/nautobot/nautobot/issues/5019">#5019</a> - Updated the documentation on the usage of the <code>nautobot-server runjob</code> management command.</li>
5815
+ <li><a href="https://github.com/nautobot/nautobot/issues/5023">#5023</a> - Fixed some typos in the 2.1.0 release notes.</li>
5816
+ <li><a href="https://github.com/nautobot/nautobot/issues/5027">#5027</a> - Fixed typo in Device Redundancy Group docs.</li>
5817
+ <li><a href="https://github.com/nautobot/nautobot/issues/5044">#5044</a> - Updated the documentation on <code>nautobot_database_ready</code> signal handlers with a warning.</li>
5818
+ </ul>
5819
+ <h3 id="housekeeping">Housekeeping<a class="headerlink" href="#housekeeping" title="Permanent link">&para;</a></h3>
5820
+ <ul>
5821
+ <li><a href="https://github.com/nautobot/nautobot/issues/5039">#5039</a> - Updated <code>ruff</code> development dependency to <code>~0.1.10</code>.</li>
5822
+ <li><a href="https://github.com/nautobot/nautobot/issues/5039">#5039</a> - Removed <code>black</code> and <code>flake8</code> as development dependencies as they're fully replaced by <code>ruff</code> now.</li>
5823
+ <li><a href="https://github.com/nautobot/nautobot/issues/5039">#5039</a> - Removed <code>black</code> and <code>flake8</code> steps from CI.</li>
5824
+ <li><a href="https://github.com/nautobot/nautobot/issues/5039">#5039</a> - Enabled <code>DJ</code> Ruff rules (<code>flake8-django</code>) and addressed all warnings raised.</li>
5825
+ <li><a href="https://github.com/nautobot/nautobot/issues/5039">#5039</a> - Enabled <code>PIE</code> Ruff rules except for <code>PIE808</code> (<code>flake8-pie</code>) and addressed all warnings raised.</li>
5826
+ <li><a href="https://github.com/nautobot/nautobot/issues/5039">#5039</a> - Enabled <code>RUF</code> Ruff rules except for <code>RUF012</code> and addressed all warnings raised.</li>
5827
+ <li><a href="https://github.com/nautobot/nautobot/issues/5039">#5039</a> - Enabled remaining <code>S</code> Ruff rules (<code>flake8-bandit</code>) and addressed all warnings raised.</li>
5828
+ <li><a href="https://github.com/nautobot/nautobot/issues/5049">#5049</a> - Fixed an intermittent timing-related failure in <code>DynamicGroupModelTest.test_member_caching_enabled</code> test case.</li>
5829
+ <li><a href="https://github.com/nautobot/nautobot/issues/5053">#5053</a> - Removed reference to develop-1.6 branch in CI workflow.</li>
5830
+ <li><a href="https://github.com/nautobot/nautobot/issues/5055">#5055</a> - Enabled <code>I</code> Ruff rules (<code>isort</code>) and addressed all warnings raised.</li>
5831
+ <li><a href="https://github.com/nautobot/nautobot/issues/5055">#5055</a> - Removed <code>isort</code> as a development dependency as it's fully replaced by <code>ruff</code> now.</li>
5832
+ </ul>
5833
+ <h2 id="v210-2023-12-22">v2.1.0 (2023-12-22)<a class="headerlink" href="#v210-2023-12-22" title="Permanent link">&para;</a></h2>
5834
+ <h3 id="security">Security<a class="headerlink" href="#security" title="Permanent link">&para;</a></h3>
5835
+ <ul>
5836
+ <li><a href="https://github.com/nautobot/nautobot/issues/4988">#4988</a> - Fixed missing object-level permissions enforcement when running a JobButton (<a href="https://github.com/nautobot/nautobot/security/advisories/GHSA-vf5m-xrhm-v999">GHSA-vf5m-xrhm-v999</a>).</li>
5837
+ <li><a href="https://github.com/nautobot/nautobot/issues/4988">#4988</a> - Removed the requirement for users to have both <code>extras.run_job</code> and <code>extras.run_jobbutton</code> permissions to run a Job via a Job Button. Only <code>extras.run_job</code> permission is now required.</li>
5838
+ <li><a href="https://github.com/nautobot/nautobot/issues/5002">#5002</a> - Updated <code>paramiko</code> to <code>3.4.0</code> due to CVE-2023-48795. As this is not a direct dependency of Nautobot, it will not auto-update when upgrading. Please be sure to upgrade your local environment.</li>
5839
+ </ul>
5840
+ <h3 id="added_2">Added<a class="headerlink" href="#added_2" title="Permanent link">&para;</a></h3>
5841
+ <ul>
5842
+ <li><a href="https://github.com/nautobot/nautobot/issues/2149">#2149</a> - Added customizable panels on the homepage.</li>
5843
+ <li><a href="https://github.com/nautobot/nautobot/issues/4708">#4708</a> - Added VRF to interface bulk edit form.</li>
5844
+ <li><a href="https://github.com/nautobot/nautobot/issues/4757">#4757</a> - Added system check for minimum PostgreSQL version.</li>
5845
+ <li><a href="https://github.com/nautobot/nautobot/issues/4893">#4893</a> - Added reverse capability from <code>IPAddress</code> to the custom through table <code>IPAddressToInterface</code>.</li>
5846
+ <li><a href="https://github.com/nautobot/nautobot/issues/4895">#4895</a> - Added <code>http_method</code>, <code>headers</code>, and <code>ca_file_path</code> fields, as well as <code>render_headers</code>, <code>render_extra_config</code>, and <code>render_remote_url</code> APIs, to the <code>ExternalIntegration</code> model.</li>
5847
+ <li><a href="https://github.com/nautobot/nautobot/issues/4926">#4926</a> - Added support for a JSONVar in Nautobot Jobs.</li>
5848
+ <li><a href="https://github.com/nautobot/nautobot/issues/4942">#4942</a> - Added DynamicRoute() to NautobotUIViewSet to support custom actions.</li>
5849
+ <li><a href="https://github.com/nautobot/nautobot/issues/4965">#4965</a> - Added MMF OM5 cable type to cable type choices.</li>
5850
+ <li><a href="https://github.com/nautobot/nautobot/issues/4973">#4973</a> - Created convenience methods to access Git with and without secrets.</li>
5851
+ <li><a href="https://github.com/nautobot/nautobot/issues/4984">#4984</a> - Added <code>JOB_CREATE_FILE_MAX_SIZE</code> setting.</li>
5852
+ <li><a href="https://github.com/nautobot/nautobot/issues/4989">#4989</a> - Added a link to the Advanced tab on detail views to easily open the object in the API browser.</li>
5853
+ </ul>
5854
+ <h3 id="changed_2">Changed<a class="headerlink" href="#changed_2" title="Permanent link">&para;</a></h3>
5855
+ <ul>
5856
+ <li><a href="https://github.com/nautobot/nautobot/issues/4884">#4884</a> - Added Bootstrap tooltips for all HTML elements with a <code>title</code> attribute.</li>
5857
+ <li><a href="https://github.com/nautobot/nautobot/issues/4888">#4888</a> - Moved username and user actions menu from the top of the nav bar to the bottom.</li>
5858
+ <li><a href="https://github.com/nautobot/nautobot/issues/4896">#4896</a> - Updated UI colors to match updated Nautobot branding guidelines.</li>
5859
+ <li><a href="https://github.com/nautobot/nautobot/issues/4897">#4897</a> - Changed screenshots in docs to reflect UI changes.</li>
5860
+ <li><a href="https://github.com/nautobot/nautobot/issues/4961">#4961</a> - Widened left navigation menu and made longer menus truncate instead of overflowing into the next line.</li>
5861
+ <li><a href="https://github.com/nautobot/nautobot/issues/4961">#4961</a> - Inserted a divider in between the standard navigation menus and the user menu at the bottom.</li>
5862
+ <li><a href="https://github.com/nautobot/nautobot/issues/4996">#4996</a> - Changed the order and help text of fields in the External Integration create and edit forms.</li>
5863
+ <li><a href="https://github.com/nautobot/nautobot/issues/5003">#5003</a> - Updated gifs to showcase new Nautobot 2.1 interface.</li>
5864
+ </ul>
5865
+ <h3 id="removed_2">Removed<a class="headerlink" href="#removed_2" title="Permanent link">&para;</a></h3>
5866
+ <ul>
5867
+ <li><a href="https://github.com/nautobot/nautobot/issues/4757">#4757</a> - Dropped support for PostgreSQL versions before 12.0.</li>
5868
+ <li><a href="https://github.com/nautobot/nautobot/issues/4988">#4988</a> - Removed redundant <code>/extras/job-button/&lt;uuid&gt;/run/</code> URL endpoint; Job Buttons now use <code>/extras/jobs/&lt;uuid&gt;/run/</code> endpoint like any other job.</li>
5869
+ </ul>
5870
+ <h3 id="fixed_1">Fixed<a class="headerlink" href="#fixed_1" title="Permanent link">&para;</a></h3>
5871
+ <ul>
5872
+ <li><a href="https://github.com/nautobot/nautobot/issues/4620">#4620</a> - Ensure UI build directory is created on init of nautobot-server.</li>
5873
+ <li><a href="https://github.com/nautobot/nautobot/issues/4627">#4627</a> - Fixed JSON custom field being returned as a <code>repr()</code> string when using GraphQL.</li>
5874
+ <li><a href="https://github.com/nautobot/nautobot/issues/4834">#4834</a> - Fixed display of custom field choices when editing a CustomField.</li>
5875
+ <li><a href="https://github.com/nautobot/nautobot/issues/4834">#4834</a> - Fixed display of child groups when editing a DynamicGroup.</li>
5876
+ <li><a href="https://github.com/nautobot/nautobot/issues/4835">#4835</a> - Fixed incorrect (too dark) color for disabled text fields in forms.</li>
5877
+ <li><a href="https://github.com/nautobot/nautobot/issues/4835">#4835</a> - Fixed incorrect (too low contrast) color for text fields and select menus in forms in dark theme.</li>
5878
+ <li><a href="https://github.com/nautobot/nautobot/issues/4917">#4917</a> - Improved performance of location hierarchy HTML template.</li>
5879
+ <li><a href="https://github.com/nautobot/nautobot/issues/4961">#4961</a> - Fixed bug in dark mode where the left navigation menu top level items would turn white when losing focus.</li>
5880
+ <li><a href="https://github.com/nautobot/nautobot/issues/4968">#4968</a> - Fixed some cases in which the <code>ipam.0025</code> data migration might throw an exception due to invalid data.</li>
5881
+ <li><a href="https://github.com/nautobot/nautobot/issues/4977">#4977</a> - Fixed early return conditional in <code>ensure_git_repository</code>.</li>
5882
+ </ul>
5883
+ <h3 id="documentation_1">Documentation<a class="headerlink" href="#documentation_1" title="Permanent link">&para;</a></h3>
5884
+ <ul>
5885
+ <li><a href="https://github.com/nautobot/nautobot/issues/4735">#4735</a> - Documented Django Admin Log Entries in v2.1 Release Overview.</li>
5886
+ <li><a href="https://github.com/nautobot/nautobot/issues/4736">#4736</a> - Documented <code>isnull</code> filter expression in v2.1 Release Overview.</li>
5887
+ <li><a href="https://github.com/nautobot/nautobot/issues/4766">#4766</a> - Updated documentation for registering tab views.</li>
5888
+ <li><a href="https://github.com/nautobot/nautobot/issues/4984">#4984</a> - Fixed up docstrings for a number of Job-related classes and methods.</li>
5889
+ </ul>
5890
+ <h3 id="housekeeping_1">Housekeeping<a class="headerlink" href="#housekeeping_1" title="Permanent link">&para;</a></h3>
5891
+ <ul>
5892
+ <li><a href="https://github.com/nautobot/nautobot/issues/4647">#4647</a> - Added DeviceFactory.</li>
5893
+ <li><a href="https://github.com/nautobot/nautobot/issues/4896">#4896</a> - Added <code>/theme-preview/</code> view (only when <code>settings.DEBUG</code> is enabled) to preview various UI elements and layouts.</li>
5894
+ <li><a href="https://github.com/nautobot/nautobot/issues/4942">#4942</a> - Added example of a custom action on a NautobotUIViewSet to the Example App.</li>
5895
+ <li><a href="https://github.com/nautobot/nautobot/issues/4988">#4988</a> - Fixed some bugs in <code>example_plugin.jobs.ExampleComplexJobButtonReceiver</code>.</li>
5896
+ </ul>
5897
+ <h2 id="v210-beta1-2023-11-30">v2.1.0-beta.1 (2023-11-30)<a class="headerlink" href="#v210-beta1-2023-11-30" title="Permanent link">&para;</a></h2>
5898
+ <h3 id="added_3">Added<a class="headerlink" href="#added_3" title="Permanent link">&para;</a></h3>
5899
+ <ul>
5538
5900
  <li><a href="https://github.com/nautobot/nautobot/issues/1905">#1905</a> - Added the ability to automatically apply <code>isnull</code> filters when model field is nullable.</li>
5539
5901
  <li><a href="https://github.com/nautobot/nautobot/issues/1905">#1905</a> - Enhanced <code>status</code> filters to support filtering by ID (UUID) as an alternative to filtering by <code>name</code>.</li>
5540
5902
  <li><a href="https://github.com/nautobot/nautobot/issues/3352">#3352</a> - Added <code>Job.create_file()</code> API and <code>JOB_FILE_IO_STORAGE</code> configuration setting.</li>
@@ -5553,7 +5915,7 @@
5553
5915
  <li><a href="https://github.com/nautobot/nautobot/issues/4820">#4820</a> - Added listing of related <code>files</code> to the <code>/api/extras/job-results/</code> REST API.</li>
5554
5916
  <li><a href="https://github.com/nautobot/nautobot/issues/4820">#4820</a> - Added read-only REST API for the FileProxy model (files generated by a Job run), including a <code>/download/</code> endpoint for downloading the file content.</li>
5555
5917
  </ul>
5556
- <h3 id="changed_1">Changed<a class="headerlink" href="#changed_1" title="Permanent link">&para;</a></h3>
5918
+ <h3 id="changed_3">Changed<a class="headerlink" href="#changed_3" title="Permanent link">&para;</a></h3>
5557
5919
  <ul>
5558
5920
  <li><a href="https://github.com/nautobot/nautobot/issues/4677">#4677</a> - Updated and customized nautobot UI bootstrap theme with LESS variables.</li>
5559
5921
  <li><a href="https://github.com/nautobot/nautobot/issues/4745">#4745</a> - Changed object export (CSV, YAML, export-template) to run as a background task, avoiding HTTP timeouts when exporting thousands of objects in a single operation.</li>
@@ -5562,12 +5924,12 @@
5562
5924
  <li><a href="https://github.com/nautobot/nautobot/issues/4786">#4786</a> - Lightened table row background color in dark mode.</li>
5563
5925
  <li><a href="https://github.com/nautobot/nautobot/issues/4808">#4808</a> - Make NavItem link text margin-right slightly larger.</li>
5564
5926
  </ul>
5565
- <h3 id="removed_1">Removed<a class="headerlink" href="#removed_1" title="Permanent link">&para;</a></h3>
5927
+ <h3 id="removed_3">Removed<a class="headerlink" href="#removed_3" title="Permanent link">&para;</a></h3>
5566
5928
  <ul>
5567
5929
  <li><a href="https://github.com/nautobot/nautobot/issues/4765">#4765</a> - Removed "Import" buttons from navbar dropdown menus.</li>
5568
5930
  <li><a href="https://github.com/nautobot/nautobot/issues/4787">#4787</a> - Removed support for <code>HIDE_RESTRICTED_UI</code>. UI elements requiring specific permissions will now always be hidden from users lacking those permissions. Additionally, users not logged in will now be automatically redirected to the login page.</li>
5569
5931
  </ul>
5570
- <h3 id="fixed">Fixed<a class="headerlink" href="#fixed" title="Permanent link">&para;</a></h3>
5932
+ <h3 id="fixed_2">Fixed<a class="headerlink" href="#fixed_2" title="Permanent link">&para;</a></h3>
5571
5933
  <ul>
5572
5934
  <li><a href="https://github.com/nautobot/nautobot/issues/4646">#4646</a> - Fixed a bug in <code>ObjectPermission</code> where <code>users.user</code> permissions could not be created.</li>
5573
5935
  <li><a href="https://github.com/nautobot/nautobot/issues/4786">#4786</a> - Fixed default button background color in dark mode.</li>
@@ -5575,7 +5937,7 @@
5575
5937
  <li><a href="https://github.com/nautobot/nautobot/issues/4862">#4862</a> - Fixes issues with uninstalled apps &amp; lingering contenttypes referenced in changelog.</li>
5576
5938
  <li><a href="https://github.com/nautobot/nautobot/issues/4882">#4882</a> - Fixed a regression in the rendering of the Jobs table view.</li>
5577
5939
  </ul>
5578
- <h3 id="housekeeping">Housekeeping<a class="headerlink" href="#housekeeping" title="Permanent link">&para;</a></h3>
5940
+ <h3 id="housekeeping_2">Housekeeping<a class="headerlink" href="#housekeeping_2" title="Permanent link">&para;</a></h3>
5579
5941
  <ul>
5580
5942
  <li><a href="https://github.com/nautobot/nautobot/issues/3352">#3352</a> - Added a shared <code>media_root</code> volume to developer Docker Compose environment.</li>
5581
5943
  <li><a href="https://github.com/nautobot/nautobot/issues/4781">#4781</a> - Added Gherkin writeups for "Locations" and "Prefixes" feature workflows.</li>