nautobot 2.2.1__tar.gz → 2.2.2__tar.gz

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 (2017) hide show
  1. {nautobot-2.2.1 → nautobot-2.2.2}/PKG-INFO +1 -1
  2. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_views.py +2 -1
  3. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/views/generic.py +4 -4
  4. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/views/mixins.py +4 -3
  5. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/wsgi.py +9 -2
  6. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/forms.py +8 -3
  7. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/lldp_neighbors.html +2 -2
  8. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/devicefamily_retrieve.html +1 -1
  9. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_forms.py +49 -2
  10. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/context_managers.py +56 -0
  11. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/signals.py +82 -48
  12. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_context_managers.py +98 -1
  13. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/utils.py +37 -0
  14. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tables.py +1 -1
  15. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/__pycache__/macros.cpython-311.pyc +0 -0
  16. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/version-1.6.html +504 -201
  17. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/version-2.2.html +210 -43
  18. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/search/search_index.json +1 -1
  19. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/sitemap.xml +254 -254
  20. nautobot-2.2.2/nautobot/project-static/docs/sitemap.xml.gz +0 -0
  21. {nautobot-2.2.1 → nautobot-2.2.2}/pyproject.toml +1 -1
  22. nautobot-2.2.1/nautobot/project-static/docs/sitemap.xml.gz +0 -0
  23. {nautobot-2.2.1 → nautobot-2.2.2}/LICENSE.txt +0 -0
  24. {nautobot-2.2.1 → nautobot-2.2.2}/NOTICE +0 -0
  25. {nautobot-2.2.1 → nautobot-2.2.2}/README.md +0 -0
  26. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/__init__.py +0 -0
  27. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/__init__.py +0 -0
  28. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/admin.py +0 -0
  29. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/api.py +0 -0
  30. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/change_logging.py +0 -0
  31. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/choices.py +0 -0
  32. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/config.py +0 -0
  33. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/constants.py +0 -0
  34. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/datasources.py +0 -0
  35. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/exceptions.py +0 -0
  36. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/factory.py +0 -0
  37. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/filters.py +0 -0
  38. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/forms.py +0 -0
  39. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/graphql.py +0 -0
  40. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/jobs.py +0 -0
  41. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/models.py +0 -0
  42. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/querysets.py +0 -0
  43. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/secrets.py +0 -0
  44. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/tables.py +0 -0
  45. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/testing.py +0 -0
  46. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/ui.py +0 -0
  47. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/urls.py +0 -0
  48. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/utils.py +0 -0
  49. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/apps/views.py +0 -0
  50. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/__init__.py +0 -0
  51. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/api/__init__.py +0 -0
  52. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/api/serializers.py +0 -0
  53. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/api/urls.py +0 -0
  54. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/api/views.py +0 -0
  55. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/apps.py +0 -0
  56. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/choices.py +0 -0
  57. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/factory.py +0 -0
  58. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/filters.py +0 -0
  59. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/forms.py +0 -0
  60. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/graphql/__init__.py +0 -0
  61. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/graphql/types.py +0 -0
  62. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/homepage.py +0 -0
  63. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0001_initial_part_1.py +0 -0
  64. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0002_initial_part_2.py +0 -0
  65. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0003_auto_slug.py +0 -0
  66. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0004_increase_provider_account_length.py +0 -0
  67. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0005_providernetwork.py +0 -0
  68. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0006_cache_circuit_terminations.py +0 -0
  69. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0007_circuitterminations_primary_model.py +0 -0
  70. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0008_add_natural_indexing.py +0 -0
  71. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0009_circuittermination_location.py +0 -0
  72. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0010_rename_foreign_keys_and_related_names.py +0 -0
  73. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0011_remove_site_foreign_key_from_circuit_termination_class.py +0 -0
  74. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0012_created_datetime.py +0 -0
  75. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0013_alter_circuittermination__path.py +0 -0
  76. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0014_related_name_changes.py +0 -0
  77. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0015_remove_circuittype_provider_slug.py +0 -0
  78. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0016_tagsfield.py +0 -0
  79. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0017_fixup_null_statuses.py +0 -0
  80. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0018_status_nonnullable.py +0 -0
  81. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0019_remove_providernetwork_slug.py +0 -0
  82. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/0020_update_all_charfields_max_length_to_255.py +0 -0
  83. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/migrations/__init__.py +0 -0
  84. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/models.py +0 -0
  85. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/navigation.py +0 -0
  86. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/signals.py +0 -0
  87. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/tables.py +0 -0
  88. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuit.html +0 -0
  89. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuit_create.html +0 -0
  90. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuit_edit.html +0 -0
  91. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuit_retrieve.html +0 -0
  92. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuit_terminations_swap.html +0 -0
  93. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuit_update.html +0 -0
  94. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuittermination.html +0 -0
  95. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuittermination_create.html +0 -0
  96. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuittermination_edit.html +0 -0
  97. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuittermination_retrieve.html +0 -0
  98. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuittermination_update.html +0 -0
  99. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuittype.html +0 -0
  100. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/circuittype_retrieve.html +0 -0
  101. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/inc/circuit_termination.html +0 -0
  102. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/inc/speed_widget.html +0 -0
  103. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/provider.html +0 -0
  104. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/provider_create.html +0 -0
  105. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/provider_edit.html +0 -0
  106. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/provider_retrieve.html +0 -0
  107. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/provider_update.html +0 -0
  108. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/providernetwork.html +0 -0
  109. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/templates/circuits/providernetwork_retrieve.html +0 -0
  110. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/tests/__init__.py +0 -0
  111. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/tests/integration/__init__.py +0 -0
  112. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/tests/integration/test_relationships.py +0 -0
  113. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/tests/test_api.py +0 -0
  114. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/tests/test_filters.py +0 -0
  115. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/tests/test_models.py +0 -0
  116. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/tests/test_urls.py +0 -0
  117. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/tests/test_views.py +0 -0
  118. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/urls.py +0 -0
  119. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/circuits/views.py +0 -0
  120. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/__init__.py +0 -0
  121. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/admin.py +0 -0
  122. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/__init__.py +0 -0
  123. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/authentication.py +0 -0
  124. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/exceptions.py +0 -0
  125. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/fields.py +0 -0
  126. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/filter_backends.py +0 -0
  127. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/metadata.py +0 -0
  128. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/mixins.py +0 -0
  129. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/pagination.py +0 -0
  130. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/parsers.py +0 -0
  131. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/renderers.py +0 -0
  132. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/routers.py +0 -0
  133. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/schema.py +0 -0
  134. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/serializers.py +0 -0
  135. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/urls.py +0 -0
  136. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/utils.py +0 -0
  137. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/versioning.py +0 -0
  138. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/api/views.py +0 -0
  139. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/apps/__init__.py +0 -0
  140. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/authentication.py +0 -0
  141. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/celery/__init__.py +0 -0
  142. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/celery/backends.py +0 -0
  143. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/celery/control.py +0 -0
  144. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/celery/encoders.py +0 -0
  145. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/celery/log.py +0 -0
  146. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/celery/schedulers.py +0 -0
  147. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/celery/task.py +0 -0
  148. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/checks.py +0 -0
  149. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/choices.py +0 -0
  150. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/cli/__init__.py +0 -0
  151. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/cli/__main__.py +0 -0
  152. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/constants.py +0 -0
  153. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/context_processors.py +0 -0
  154. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/exceptions.py +0 -0
  155. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/factory.py +0 -0
  156. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/filters.py +0 -0
  157. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/fixtures/user-data.json +0 -0
  158. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/forms/__init__.py +0 -0
  159. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/forms/constants.py +0 -0
  160. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/forms/fields.py +0 -0
  161. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/forms/forms.py +0 -0
  162. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/forms/search.py +0 -0
  163. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/forms/utils.py +0 -0
  164. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/forms/widgets.py +0 -0
  165. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/graphql/__init__.py +0 -0
  166. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/graphql/generators.py +0 -0
  167. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/graphql/schema.py +0 -0
  168. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/graphql/schema_init.py +0 -0
  169. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/graphql/types.py +0 -0
  170. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/graphql/utils.py +0 -0
  171. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/jobs/__init__.py +0 -0
  172. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/__init__.py +0 -0
  173. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/__init__.py +0 -0
  174. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/audit_dynamic_groups.py +0 -0
  175. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/audit_graphql_queries.py +0 -0
  176. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/celery.py +0 -0
  177. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/generate_secret_key.py +0 -0
  178. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/generate_test_data.py +0 -0
  179. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/makemigrations.py +0 -0
  180. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/migrate.py +0 -0
  181. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/nbshell.py +0 -0
  182. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/post_upgrade.py +0 -0
  183. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/refresh_content_type_cache.py +0 -0
  184. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/send_installation_metrics.py +0 -0
  185. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/start.py +0 -0
  186. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/management/commands/validate_models.py +0 -0
  187. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/middleware.py +0 -0
  188. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/__init__.py +0 -0
  189. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/fields.py +0 -0
  190. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/generics.py +0 -0
  191. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/managers.py +0 -0
  192. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/name_color_content_types.py +0 -0
  193. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/ordering.py +0 -0
  194. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/query_functions.py +0 -0
  195. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/querysets.py +0 -0
  196. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/tree_queries.py +0 -0
  197. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/utils.py +0 -0
  198. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/models/validators.py +0 -0
  199. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/releases.py +0 -0
  200. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/settings.py +0 -0
  201. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/settings.yaml +0 -0
  202. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/settings_funcs.py +0 -0
  203. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/signals.py +0 -0
  204. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tables.py +0 -0
  205. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tasks.py +0 -0
  206. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/403.html +0 -0
  207. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/403_csrf_failure.html +0 -0
  208. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/404.html +0 -0
  209. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/40x.html +0 -0
  210. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/500.html +0 -0
  211. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/actions.html +0 -0
  212. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/app_index.html +0 -0
  213. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/base.html +0 -0
  214. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/base_site.html +0 -0
  215. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/bootstrapped_extra/app_name.html +0 -0
  216. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/change_form.html +0 -0
  217. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/change_list.html +0 -0
  218. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/change_list_results.html +0 -0
  219. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/config/config.html +0 -0
  220. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/delete_confirmation.html +0 -0
  221. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/edit_inline/stacked.html +0 -0
  222. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/edit_inline/tabular.html +0 -0
  223. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/includes/fieldset.html +0 -0
  224. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/index.html +0 -0
  225. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/login.html +0 -0
  226. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/prepopulated_fields_js.html +0 -0
  227. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/search_form.html +0 -0
  228. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/admin/submit_line.html +0 -0
  229. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/base.html +0 -0
  230. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/base_django.html +0 -0
  231. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/buttons/add.html +0 -0
  232. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/buttons/clone.html +0 -0
  233. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/buttons/delete.html +0 -0
  234. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/buttons/edit.html +0 -0
  235. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/buttons/export.html +0 -0
  236. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/buttons/import.html +0 -0
  237. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/buttons/job_import.html +0 -0
  238. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/exceptions/import_error.html +0 -0
  239. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/exceptions/permission_error.html +0 -0
  240. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/exceptions/programming_error.html +0 -0
  241. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_bulk_add_component.html +0 -0
  242. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_bulk_create.html +0 -0
  243. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_bulk_delete.html +0 -0
  244. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_bulk_destroy.html +0 -0
  245. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_bulk_edit.html +0 -0
  246. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_bulk_import.html +0 -0
  247. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_bulk_remove.html +0 -0
  248. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_bulk_rename.html +0 -0
  249. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_bulk_update.html +0 -0
  250. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_changelog.html +0 -0
  251. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_create.html +0 -0
  252. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_delete.html +0 -0
  253. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_destroy.html +0 -0
  254. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_detail.html +0 -0
  255. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_edit.html +0 -0
  256. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_import.html +0 -0
  257. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_list.html +0 -0
  258. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_notes.html +0 -0
  259. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_retrieve.html +0 -0
  260. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/generic/object_update.html +0 -0
  261. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/graphene/graphiql.html +0 -0
  262. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/home.html +0 -0
  263. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/import_success.html +0 -0
  264. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/ajax_loader.html +0 -0
  265. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/computed_fields/panel_data.html +0 -0
  266. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/created_updated.html +0 -0
  267. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/custom_fields/panel.html +0 -0
  268. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/custom_fields/panel_data.html +0 -0
  269. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/custom_fields_panel.html +0 -0
  270. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/dynamic_groups_panel.html +0 -0
  271. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/extras_features_edit_form_fields.html +0 -0
  272. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/footer.html +0 -0
  273. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/image_attachments.html +0 -0
  274. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/javascript.html +0 -0
  275. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/media.html +0 -0
  276. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/modal.html +0 -0
  277. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/nav_menu.html +0 -0
  278. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/object_details_advanced_panel.html +0 -0
  279. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/paginator.html +0 -0
  280. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/relationships/panel_override.html +0 -0
  281. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/relationships_panel.html +0 -0
  282. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/relationships_table_rows.html +0 -0
  283. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/search_panel.html +0 -0
  284. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/inc/table.html +0 -0
  285. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/login.html +0 -0
  286. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/media_failure.html +0 -0
  287. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/modals/modal_theme.html +0 -0
  288. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/nautobot_config.py.j2 +0 -0
  289. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/panel_table.html +0 -0
  290. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/responsive_table.html +0 -0
  291. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/rest_framework/api.html +0 -0
  292. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/search.html +0 -0
  293. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/search_form.html +0 -0
  294. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/swagger_ui.html +0 -0
  295. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/swagger_ui.js +0 -0
  296. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/system_jobs/import_objects.html +0 -0
  297. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/template.css +0 -0
  298. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/confirmation_form.html +0 -0
  299. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/obj_table.html +0 -0
  300. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/render_boolean.html +0 -0
  301. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/render_custom_fields.html +0 -0
  302. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/render_field.html +0 -0
  303. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/render_form.html +0 -0
  304. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/render_relationships.html +0 -0
  305. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/templatetags/badge.html +0 -0
  306. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/templatetags/filter_form_modal.html +0 -0
  307. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/templatetags/modal_form_as_dialog.html +0 -0
  308. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/templatetags/table_config_form.html +0 -0
  309. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/templatetags/tag.html +0 -0
  310. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/templatetags/utilization_graph.html +0 -0
  311. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/utilities/theme_preview.html +0 -0
  312. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/widgets/colorselect_option.html +0 -0
  313. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/widgets/select_contenttype.html +0 -0
  314. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/widgets/select_option_with_pk.html +0 -0
  315. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/widgets/selectwithdisabled_option.html +0 -0
  316. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templates/widgets/sluginput.html +0 -0
  317. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templatetags/__init__.py +0 -0
  318. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templatetags/bootstrapped_goodies_tags.py +0 -0
  319. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templatetags/buttons.py +0 -0
  320. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templatetags/form_helpers.py +0 -0
  321. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templatetags/helpers.py +0 -0
  322. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templatetags/netutils.py +0 -0
  323. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/templatetags/perms.py +0 -0
  324. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/__init__.py +0 -0
  325. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/api.py +0 -0
  326. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/filters.py +0 -0
  327. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/forms.py +0 -0
  328. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/integration.py +0 -0
  329. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/migrations.py +0 -0
  330. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/mixins.py +0 -0
  331. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/models.py +0 -0
  332. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/schema.py +0 -0
  333. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/utils.py +0 -0
  334. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/testing/views.py +0 -0
  335. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/__init__.py +0 -0
  336. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/integration/__init__.py +0 -0
  337. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/integration/test_app_home.py +0 -0
  338. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/integration/test_app_navbar.py +0 -0
  339. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/integration/test_filters.py +0 -0
  340. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/integration/test_home.py +0 -0
  341. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/integration/test_import_objects_ui.py +0 -0
  342. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/integration/test_navbar.py +0 -0
  343. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/integration/test_swagger.py +0 -0
  344. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/integration/test_theme.py +0 -0
  345. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/integration/test_view_authentication.py +0 -0
  346. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/nautobot_config.py +0 -0
  347. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/performance_baselines.yml +0 -0
  348. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/runner.py +0 -0
  349. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_api.py +0 -0
  350. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_authentication.py +0 -0
  351. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_celery.py +0 -0
  352. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_checks.py +0 -0
  353. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_choices.py +0 -0
  354. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_config.py +0 -0
  355. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_csv.py +0 -0
  356. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_factory.py +0 -0
  357. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_filters.py +0 -0
  358. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_forms.py +0 -0
  359. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_graphql.py +0 -0
  360. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_jinja_filters.py +0 -0
  361. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_jobs.py +0 -0
  362. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_logging.py +0 -0
  363. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_managers.py +0 -0
  364. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_models.py +0 -0
  365. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_nautobot_server.py +0 -0
  366. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_navigations.py +0 -0
  367. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_openapi.py +0 -0
  368. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_ordering.py +0 -0
  369. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_paginator.py +0 -0
  370. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_releases.py +0 -0
  371. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_settings_schema.py +0 -0
  372. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_tables.py +0 -0
  373. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_templatetags_helpers.py +0 -0
  374. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_templatetags_netutils.py +0 -0
  375. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_tree_queries.py +0 -0
  376. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_utils.py +0 -0
  377. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/tests/test_views_utils.py +0 -0
  378. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/urls.py +0 -0
  379. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/__init__.py +0 -0
  380. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/color.py +0 -0
  381. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/config.py +0 -0
  382. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/data.py +0 -0
  383. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/deprecation.py +0 -0
  384. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/filtering.py +0 -0
  385. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/git.py +0 -0
  386. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/logging.py +0 -0
  387. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/lookup.py +0 -0
  388. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/migrations.py +0 -0
  389. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/navigation.py +0 -0
  390. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/permissions.py +0 -0
  391. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/utils/requests.py +0 -0
  392. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/views/__init__.py +0 -0
  393. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/views/paginator.py +0 -0
  394. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/views/renderers.py +0 -0
  395. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/views/routers.py +0 -0
  396. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/views/utils.py +0 -0
  397. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/core/views/viewsets.py +0 -0
  398. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/__init__.py +0 -0
  399. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/api/__init__.py +0 -0
  400. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/api/exceptions.py +0 -0
  401. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/api/serializers.py +0 -0
  402. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/api/urls.py +0 -0
  403. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/api/views.py +0 -0
  404. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/apps.py +0 -0
  405. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/choices.py +0 -0
  406. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/constants.py +0 -0
  407. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/elevations.py +0 -0
  408. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/factory.py +0 -0
  409. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/fields.py +0 -0
  410. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/filter_mixins.py +0 -0
  411. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/filters/__init__.py +0 -0
  412. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/filters/mixins.py +0 -0
  413. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/form_mixins.py +0 -0
  414. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/graphql/__init__.py +0 -0
  415. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/graphql/mixins.py +0 -0
  416. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/graphql/types.py +0 -0
  417. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/homepage.py +0 -0
  418. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/lookups.py +0 -0
  419. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/management/__init__.py +0 -0
  420. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/management/commands/__init__.py +0 -0
  421. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/management/commands/migrate_location_contacts.py +0 -0
  422. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/management/commands/trace_paths.py +0 -0
  423. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0001_initial_part_1.py +0 -0
  424. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0002_initial_part_2.py +0 -0
  425. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0003_initial_part_3.py +0 -0
  426. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0004_initial_part_4.py +0 -0
  427. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0005_device_local_context_schema.py +0 -0
  428. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0006_auto_slug.py +0 -0
  429. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0007_device_secrets_group.py +0 -0
  430. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0008_increase_all_serial_lengths.py +0 -0
  431. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0009_add_natural_indexing.py +0 -0
  432. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0010_interface_status.py +0 -0
  433. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0011_interface_status_data_migration.py +0 -0
  434. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0012_interface_parent_bridge.py +0 -0
  435. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0013_location_location_type.py +0 -0
  436. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0014_location_status_data_migration.py +0 -0
  437. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0015_device_components__changeloggedmodel.py +0 -0
  438. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0016_device_components__timestamp_data_migration.py +0 -0
  439. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0017_locationtype_nestable.py +0 -0
  440. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0018_device_redundancy_group.py +0 -0
  441. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0019_device_redundancy_group_data_migration.py +0 -0
  442. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0020_increase_device_asset_tag_size_limit.py +0 -0
  443. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0021_platform_network_driver.py +0 -0
  444. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0022_interface_redundancy_group.py +0 -0
  445. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0023_interface_redundancy_group_data_migration.py +0 -0
  446. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0024_move_site_fields_to_location_model.py +0 -0
  447. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0025_mptt_to_tree_queries.py +0 -0
  448. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0026_interface_mac_address_data_migration.py +0 -0
  449. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0027_alter_interface_mac_address.py +0 -0
  450. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0028_alter_device_and_rack_role_add_new_role.py +0 -0
  451. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0029_device_and_rack_roles_data_migrations.py +0 -0
  452. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0030_rename_device_and_rack_role.py +0 -0
  453. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0031_remove_device_role_and_rack_role.py +0 -0
  454. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0032_rename_foreignkey_fields.py +0 -0
  455. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0033_add_tree_managers_and_foreign_keys_pre_data_migration.py +0 -0
  456. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0034_migrate_region_and_site_data_to_locations.py +0 -0
  457. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0035_rename_path_end_point_related_name.py +0 -0
  458. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0036_remove_site_foreign_key_from_dcim_models.py +0 -0
  459. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0037_created_datetime.py +0 -0
  460. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0038_fixup_fks_and_related_names.py +0 -0
  461. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0039_related_name_changes.py +0 -0
  462. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0040_remove_region_and_site.py +0 -0
  463. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0041_interface_ip_addresses_m2m.py +0 -0
  464. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0042_alter_location_managers.py +0 -0
  465. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0043_remove_slug.py +0 -0
  466. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0044_tagsfield.py +0 -0
  467. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0045_ipam__namespaces.py +0 -0
  468. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0046_fixup_null_statuses.py +0 -0
  469. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0047_status_nonnullable.py +0 -0
  470. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0048_ensure_virtual_chassis_names_are_unique_and_add_uniqueness_constraint.py +0 -0
  471. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0049_remove_slugs_and_change_device_primary_ip_fields.py +0 -0
  472. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0050_fix_interface_redundancy_group_association_created.py +0 -0
  473. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0051_interface_redundancy_group_nullable_status.py +0 -0
  474. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0052_fix_interface_redundancy_group_created.py +0 -0
  475. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0053_create_device_family_model.py +0 -0
  476. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0054_softwareimage_softwareversion.py +0 -0
  477. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0055_softwareimage_softwareversion_data_migration.py +0 -0
  478. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0056_update_all_charfields_max_length_to_255.py +0 -0
  479. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0057_controller_models.py +0 -0
  480. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/0058_controller_data_migration.py +0 -0
  481. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/migrations/__init__.py +0 -0
  482. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/models/__init__.py +0 -0
  483. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/models/cables.py +0 -0
  484. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/models/device_component_templates.py +0 -0
  485. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/models/device_components.py +0 -0
  486. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/models/devices.py +0 -0
  487. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/models/locations.py +0 -0
  488. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/models/power.py +0 -0
  489. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/models/racks.py +0 -0
  490. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/navigation.py +0 -0
  491. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/signals.py +0 -0
  492. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tables/__init__.py +0 -0
  493. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tables/cables.py +0 -0
  494. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tables/devices.py +0 -0
  495. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tables/devicetypes.py +0 -0
  496. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tables/locations.py +0 -0
  497. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tables/power.py +0 -0
  498. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tables/racks.py +0 -0
  499. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tables/template_code.py +0 -0
  500. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/bulk_disconnect.html +0 -0
  501. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/cable.html +0 -0
  502. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/cable_connect.html +0 -0
  503. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/cable_edit.html +0 -0
  504. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/cable_trace.html +0 -0
  505. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/console_port_connection_list.html +0 -0
  506. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/consoleport.html +0 -0
  507. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/consoleport_delete.html +0 -0
  508. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/consoleserverport.html +0 -0
  509. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/consoleserverport_delete.html +0 -0
  510. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/controller_create.html +0 -0
  511. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/controller_retrieve.html +0 -0
  512. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/controllermanageddevicegroup_create.html +0 -0
  513. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/controllermanageddevicegroup_retrieve.html +0 -0
  514. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/base.html +0 -0
  515. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/config.html +0 -0
  516. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/consoleports.html +0 -0
  517. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/consoleserverports.html +0 -0
  518. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/devicebays.html +0 -0
  519. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/frontports.html +0 -0
  520. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/interfaces.html +0 -0
  521. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/inventory.html +0 -0
  522. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/poweroutlets.html +0 -0
  523. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/powerports.html +0 -0
  524. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/rearports.html +0 -0
  525. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device/status.html +0 -0
  526. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device.html +0 -0
  527. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device_component.html +0 -0
  528. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device_component_add.html +0 -0
  529. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device_component_edit.html +0 -0
  530. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device_edit.html +0 -0
  531. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device_interface_delete.html +0 -0
  532. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/device_list.html +0 -0
  533. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/devicebay.html +0 -0
  534. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/devicebay_delete.html +0 -0
  535. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/devicebay_depopulate.html +0 -0
  536. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/devicebay_populate.html +0 -0
  537. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/deviceredundancygroup_create.html +0 -0
  538. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/deviceredundancygroup_retrieve.html +0 -0
  539. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/devicetype.html +0 -0
  540. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/devicetype_component_add.html +0 -0
  541. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/devicetype_edit.html +0 -0
  542. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/devicetype_list.html +0 -0
  543. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/frontport.html +0 -0
  544. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inc/cable_form.html +0 -0
  545. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inc/cable_termination.html +0 -0
  546. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inc/cable_toggle_buttons.html +0 -0
  547. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inc/detail_softwareversion_softwareimagefile_rows.html +0 -0
  548. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inc/device_napalm_tabs.html +0 -0
  549. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inc/devicetype_component_table.html +0 -0
  550. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inc/edit_form_softwareversion_js.html +0 -0
  551. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inc/homepage_connections.html +0 -0
  552. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inc/location_hierarchy.html +0 -0
  553. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inc/rack_elevation.html +0 -0
  554. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/interface.html +0 -0
  555. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/interface_bulk_delete.html +0 -0
  556. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/interface_connection_list.html +0 -0
  557. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/interface_delete.html +0 -0
  558. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/interface_edit.html +0 -0
  559. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/interfaceredundancygroup_retrieve.html +0 -0
  560. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/interfaceredundancygroupassociation_create.html +0 -0
  561. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inventoryitem.html +0 -0
  562. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inventoryitem_add.html +0 -0
  563. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inventoryitem_bulk_delete.html +0 -0
  564. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inventoryitem_delete.html +0 -0
  565. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/inventoryitem_edit.html +0 -0
  566. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/location.html +0 -0
  567. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/location_edit.html +0 -0
  568. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/locationtype.html +0 -0
  569. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/manufacturer.html +0 -0
  570. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/platform.html +0 -0
  571. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/platform_edit.html +0 -0
  572. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/power_port_connection_list.html +0 -0
  573. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/powerfeed.html +0 -0
  574. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/powerfeed_edit.html +0 -0
  575. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/poweroutlet.html +0 -0
  576. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/poweroutlet_delete.html +0 -0
  577. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/powerpanel.html +0 -0
  578. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/powerpanel_edit.html +0 -0
  579. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/powerport.html +0 -0
  580. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/powerport_delete.html +0 -0
  581. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/rack.html +0 -0
  582. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/rack_edit.html +0 -0
  583. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/rack_elevation_list.html +0 -0
  584. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/rackgroup.html +0 -0
  585. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/rackreservation.html +0 -0
  586. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/rackreservation_edit.html +0 -0
  587. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/rearport.html +0 -0
  588. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/softwareimagefile_retrieve.html +0 -0
  589. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/softwareversion_retrieve.html +0 -0
  590. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/trace/cable.html +0 -0
  591. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/trace/circuit.html +0 -0
  592. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/trace/device.html +0 -0
  593. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/trace/powerpanel.html +0 -0
  594. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/trace/termination.html +0 -0
  595. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/virtualchassis.html +0 -0
  596. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/virtualchassis_add.html +0 -0
  597. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/virtualchassis_add_member.html +0 -0
  598. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/virtualchassis_edit.html +0 -0
  599. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/templates/dcim/virtualchassis_remove_member.html +0 -0
  600. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/__init__.py +0 -0
  601. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/features/locations.feature +0 -0
  602. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/integration/__init__.py +0 -0
  603. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/integration/test_cable_connect_form.py +0 -0
  604. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_api.py +0 -0
  605. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_cablepaths.py +0 -0
  606. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_filters.py +0 -0
  607. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_graphql.py +0 -0
  608. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_migrations.py +0 -0
  609. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_models.py +0 -0
  610. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_natural_ordering.py +0 -0
  611. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_schema.py +0 -0
  612. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_signals.py +0 -0
  613. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/tests/test_views.py +0 -0
  614. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/urls.py +0 -0
  615. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/utils.py +0 -0
  616. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/dcim/views.py +0 -0
  617. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/__init__.py +0 -0
  618. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/admin.py +0 -0
  619. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/api/__init__.py +0 -0
  620. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/api/customfields.py +0 -0
  621. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/api/fields.py +0 -0
  622. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/api/mixins.py +0 -0
  623. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/api/relationships.py +0 -0
  624. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/api/serializers.py +0 -0
  625. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/api/urls.py +0 -0
  626. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/api/views.py +0 -0
  627. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/apps.py +0 -0
  628. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/choices.py +0 -0
  629. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/constants.py +0 -0
  630. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/datasources/__init__.py +0 -0
  631. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/datasources/git.py +0 -0
  632. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/datasources/registry.py +0 -0
  633. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/datasources/utils.py +0 -0
  634. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/factory.py +0 -0
  635. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/filters/__init__.py +0 -0
  636. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/filters/customfields.py +0 -0
  637. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/filters/mixins.py +0 -0
  638. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/forms/__init__.py +0 -0
  639. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/forms/base.py +0 -0
  640. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/forms/contacts.py +0 -0
  641. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/forms/forms.py +0 -0
  642. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/forms/mixins.py +0 -0
  643. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/graphql/__init__.py +0 -0
  644. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/graphql/types.py +0 -0
  645. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/health_checks.py +0 -0
  646. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/homepage.py +0 -0
  647. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/jobs.py +0 -0
  648. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/management/__init__.py +0 -0
  649. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/management/commands/__init__.py +0 -0
  650. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/management/commands/fix_custom_fields.py +0 -0
  651. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/management/commands/refresh_dynamic_group_member_caches.py +0 -0
  652. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/management/commands/remove_stale_scheduled_jobs.py +0 -0
  653. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/management/commands/renaturalize.py +0 -0
  654. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/management/commands/runjob.py +0 -0
  655. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/management/commands/webhook_receiver.py +0 -0
  656. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/managers.py +0 -0
  657. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0001_initial_part_1.py +0 -0
  658. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0002_initial_part_2.py +0 -0
  659. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0003_initial_part_3.py +0 -0
  660. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0004_populate_default_status_records.py +0 -0
  661. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0005_configcontext_device_types.py +0 -0
  662. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0006_graphqlquery.py +0 -0
  663. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0007_configcontextschema.py +0 -0
  664. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0008_jobresult__custom_field_data.py +0 -0
  665. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0009_computedfield.py +0 -0
  666. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0010_change_cf_validation_max_min_field_to_bigint.py +0 -0
  667. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0011_fileattachment_fileproxy.py +0 -0
  668. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0012_healthchecktestmodel.py +0 -0
  669. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0013_default_fallback_value_computedfield.py +0 -0
  670. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0014_auto_slug.py +0 -0
  671. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0015_scheduled_job.py +0 -0
  672. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0016_secret.py +0 -0
  673. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0017_joblogentry.py +0 -0
  674. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0018_joblog_data_migration.py +0 -0
  675. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0019_joblogentry__meta_options__related_name.py +0 -0
  676. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0020_customfield_changelog.py +0 -0
  677. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0021_customfield_changelog_data.py +0 -0
  678. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0022_objectchange_object_datav2.py +0 -0
  679. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0023_job_model.py +0 -0
  680. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0024_job_data_migration.py +0 -0
  681. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0025_add_advanced_ui_boolean_to_customfield_conputedfield_and_relationship.py +0 -0
  682. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0026_job_add_gitrepository_fk.py +0 -0
  683. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0027_job_gitrepository_data_migration.py +0 -0
  684. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0028_job_reduce_source.py +0 -0
  685. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0029_dynamicgroup.py +0 -0
  686. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0030_webhook_alter_unique_together.py +0 -0
  687. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0031_tag_content_types.py +0 -0
  688. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0032_tag_content_types_data_migration.py +0 -0
  689. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0033_add__optimized_indexing.py +0 -0
  690. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0034_alter_fileattachment_mimetype.py +0 -0
  691. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0035_scheduledjob_crontab.py +0 -0
  692. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0036_job_add_has_sensitive_variables.py +0 -0
  693. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0037_configcontextschema__remove_name_unique__create_constraint_unique_name_owner.py +0 -0
  694. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0038_configcontext_locations.py +0 -0
  695. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0039_objectchange__add_change_context.py +0 -0
  696. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0040_dynamicgroup__dynamicgroupmembership.py +0 -0
  697. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0041_jobresult_job_kwargs.py +0 -0
  698. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0042_job__add_is_job_hook_receiver.py +0 -0
  699. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0043_note.py +0 -0
  700. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0044_add_job_hook.py +0 -0
  701. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0045_add_custom_field_slug.py +0 -0
  702. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0046_populate_custom_field_slug_label.py +0 -0
  703. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0047_enforce_custom_field_slug.py +0 -0
  704. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0048_alter_objectchange_change_context_detail.py +0 -0
  705. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0049_alter_tag_slug.py +0 -0
  706. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0050_customfield_grouping.py +0 -0
  707. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0051_add_job_task_queues.py +0 -0
  708. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0052_configcontext_device_redundancy_groups.py +0 -0
  709. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0053_relationship_required_on.py +0 -0
  710. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0054_scheduledjob_kwargs_request_user_change.py +0 -0
  711. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0055_configcontext_dynamic_groups.py +0 -0
  712. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0056_objectchange_add_reverse_time_idx.py +0 -0
  713. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0057_jobbutton.py +0 -0
  714. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0058_jobresult_add_time_status_idxs.py +0 -0
  715. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0059_joblogentry_scheduledjob_webhook_data_migration.py +0 -0
  716. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0060_alter_joblogentry_scheduledjob_webhook_fields.py +0 -0
  717. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0061_role_and_alter_status.py +0 -0
  718. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0062_collect_roles_from_related_apps_roles.py +0 -0
  719. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0063_alter_role_options.py +0 -0
  720. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0064_alter_configcontext_and_add_new_role.py +0 -0
  721. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0065_configcontext_data_migrations.py +0 -0
  722. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0066_rename_configcontext_role.py +0 -0
  723. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0067_migrate_job_result_status.py +0 -0
  724. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0068_jobresult__add_celery_fields.py +0 -0
  725. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0069_created_datetime.py +0 -0
  726. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0070_remove_site_and_region_attributes_from_config_context.py +0 -0
  727. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0071_replace_related_names.py +0 -0
  728. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0072_rename_model_fields.py +0 -0
  729. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0073_job__unique_name_data_migration.py +0 -0
  730. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0074_job__unique_name.py +0 -0
  731. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0075_remove_gitrepository_fields.py +0 -0
  732. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0076_rename_slug_to_key_for_custom_field.py +0 -0
  733. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0077_migrate_custom_field_data.py +0 -0
  734. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0078_remove_name_field_and_make_label_field_non_nullable.py +0 -0
  735. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0079_remove_slug.py +0 -0
  736. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0080_tagsfield.py +0 -0
  737. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0081_rename_relationship_slug_to_key.py +0 -0
  738. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0082_rename_relationship_name_to_label.py +0 -0
  739. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0083_ensure_relationship_keys_are_unique.py +0 -0
  740. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0084_rename_computed_field_slug_to_key.py +0 -0
  741. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0085_taggeditem_cleanup.py +0 -0
  742. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0086_taggeditem_uniqueness.py +0 -0
  743. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0087_job__celery_task_fields__dryrun_support.py +0 -0
  744. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0088_job__commit_default_data_migration.py +0 -0
  745. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0089_joblogentry__log_level_default.py +0 -0
  746. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0090_joblogentry__log_level_data_migration.py +0 -0
  747. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0091_scheduledjob__data_migration.py +0 -0
  748. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0092_uniqueness_data_migration.py +0 -0
  749. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0093_uniqueness_fixup.py +0 -0
  750. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0094_alter_objectchange_unique_together.py +0 -0
  751. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0095_ensure_note_timestamps_are_unique.py +0 -0
  752. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0096_remove_slugs.py +0 -0
  753. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0097_alter_job_result_remove_result.py +0 -0
  754. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0098_rename_data_jobresult_result.py +0 -0
  755. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0099_remove_dangling_note_objects.py +0 -0
  756. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0100_fileproxy_job_result.py +0 -0
  757. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0101_externalintegration.py +0 -0
  758. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0102_set_null_objectchange_contenttype.py +0 -0
  759. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0103_add_db_indexes_to_object_change.py +0 -0
  760. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0104_contact_contactassociation_team.py +0 -0
  761. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0105_update_all_charfields_max_length_to_255.py +0 -0
  762. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/0106_populate_default_statuses_and_roles_for_contact_associations.py +0 -0
  763. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/migrations/__init__.py +0 -0
  764. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/__init__.py +0 -0
  765. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/change_logging.py +0 -0
  766. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/contacts.py +0 -0
  767. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/customfields.py +0 -0
  768. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/datasources.py +0 -0
  769. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/groups.py +0 -0
  770. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/jobs.py +0 -0
  771. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/mixins.py +0 -0
  772. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/models.py +0 -0
  773. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/relationships.py +0 -0
  774. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/roles.py +0 -0
  775. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/secrets.py +0 -0
  776. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/statuses.py +0 -0
  777. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/models/tags.py +0 -0
  778. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/navigation.py +0 -0
  779. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/plugins/__init__.py +0 -0
  780. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/plugins/exceptions.py +0 -0
  781. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/plugins/tables.py +0 -0
  782. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/plugins/urls.py +0 -0
  783. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/plugins/utils.py +0 -0
  784. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/plugins/validators.py +0 -0
  785. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/plugins/views.py +0 -0
  786. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/querysets.py +0 -0
  787. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/registry.py +0 -0
  788. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/secrets/__init__.py +0 -0
  789. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/secrets/exceptions.py +0 -0
  790. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/secrets/providers.py +0 -0
  791. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tables.py +0 -0
  792. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tasks.py +0 -0
  793. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/django_ajax_tables/ajax_wrapper.html +0 -0
  794. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/computedfield.html +0 -0
  795. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/computedfield_edit.html +0 -0
  796. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/configcontext.html +0 -0
  797. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/configcontext_edit.html +0 -0
  798. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/configcontextschema.html +0 -0
  799. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/configcontextschema_edit.html +0 -0
  800. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/configcontextschema_validation.html +0 -0
  801. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/contact_retrieve.html +0 -0
  802. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/customfield.html +0 -0
  803. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/customfield_edit.html +0 -0
  804. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/customlink.html +0 -0
  805. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/dynamicgroup.html +0 -0
  806. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/dynamicgroup_edit.html +0 -0
  807. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/exporttemplate.html +0 -0
  808. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/externalintegration_retrieve.html +0 -0
  809. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/externalintegration_update.html +0 -0
  810. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/gitrepository.html +0 -0
  811. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/gitrepository_list.html +0 -0
  812. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/gitrepository_object_edit.html +0 -0
  813. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/gitrepository_result.html +0 -0
  814. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/graphqlquery.html +0 -0
  815. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/bulk_edit_overridable_field.html +0 -0
  816. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/job_label.html +0 -0
  817. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/job_table.html +0 -0
  818. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/job_tiles.html +0 -0
  819. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/jobresult.html +0 -0
  820. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/jobresult_js.html +0 -0
  821. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/json_data.html +0 -0
  822. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/json_format.html +0 -0
  823. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/object_contact_header.html +0 -0
  824. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/overridable_field.html +0 -0
  825. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/panel_changelog.html +0 -0
  826. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/panel_jobhistory.html +0 -0
  827. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/secret_provider_parameters_form.html +0 -0
  828. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/inc/tags_panel.html +0 -0
  829. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/job.html +0 -0
  830. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/job_approval_confirmation.html +0 -0
  831. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/job_approval_request.html +0 -0
  832. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/job_bulk_edit.html +0 -0
  833. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/job_detail.html +0 -0
  834. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/job_edit.html +0 -0
  835. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/job_list.html +0 -0
  836. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/jobbutton_retrieve.html +0 -0
  837. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/jobhook.html +0 -0
  838. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/jobresult.html +0 -0
  839. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/note.html +0 -0
  840. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/object_assign_contact_or_team.html +0 -0
  841. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/object_changelog.html +0 -0
  842. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/object_configcontext.html +0 -0
  843. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/object_dynamicgroups.html +0 -0
  844. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/object_new_contact.html +0 -0
  845. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/object_new_team.html +0 -0
  846. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/object_notes.html +0 -0
  847. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/objectchange.html +0 -0
  848. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/objectchange_list.html +0 -0
  849. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/plugin_detail.html +0 -0
  850. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/plugins_list.html +0 -0
  851. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/relationship.html +0 -0
  852. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/relationship_edit.html +0 -0
  853. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/role_retrieve.html +0 -0
  854. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/scheduled_jobs_approval_queue_list.html +0 -0
  855. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/scheduledjob.html +0 -0
  856. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/secret.html +0 -0
  857. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/secret_edit.html +0 -0
  858. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/secretsgroup.html +0 -0
  859. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/secretsgroup_edit.html +0 -0
  860. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/status.html +0 -0
  861. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/tag.html +0 -0
  862. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/tag_edit.html +0 -0
  863. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/team_retrieve.html +0 -0
  864. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/templatetags/log_level.html +0 -0
  865. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/templatetags/plugin_banners.html +0 -0
  866. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/templatetags/plugin_object_detail_tabs.html +0 -0
  867. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templates/extras/webhook.html +0 -0
  868. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templatetags/__init__.py +0 -0
  869. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templatetags/computed_fields.py +0 -0
  870. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templatetags/custom_links.py +0 -0
  871. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templatetags/job_buttons.py +0 -0
  872. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templatetags/log_levels.py +0 -0
  873. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templatetags/plugins.py +0 -0
  874. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/templatetags/registry.py +0 -0
  875. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/__init__.py +0 -0
  876. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/api_test_job.py +0 -0
  877. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/atomic_transaction.py +0 -0
  878. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/dry_run.py +0 -0
  879. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/duplicate_name.py +0 -0
  880. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/duplicate_name2.py +0 -0
  881. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/fail.py +0 -0
  882. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/field_default.py +0 -0
  883. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/field_order.py +0 -0
  884. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/file_output.py +0 -0
  885. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/file_upload_fail.py +0 -0
  886. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/file_upload_pass.py +0 -0
  887. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/has_sensitive_variables.py +0 -0
  888. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/ipaddress_vars.py +0 -0
  889. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/job_button_receiver.py +0 -0
  890. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/job_hook_receiver.py +0 -0
  891. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/job_variables.py +0 -0
  892. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/location_with_custom_field.py +0 -0
  893. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/log_redaction.py +0 -0
  894. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/log_skip_db_logging.py +0 -0
  895. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/modify_db.py +0 -0
  896. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/no_field_order.py +0 -0
  897. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/object_var_optional.py +0 -0
  898. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/object_var_required.py +0 -0
  899. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/object_vars.py +0 -0
  900. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/pass.py +0 -0
  901. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/profiling.py +0 -0
  902. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/read_only_job.py +0 -0
  903. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/required_args.py +0 -0
  904. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/soft_time_limit_greater_than_time_limit.py +0 -0
  905. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/test_jobs/task_queues.py +0 -0
  906. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/__init__.py +0 -0
  907. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/constants.py +0 -0
  908. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/example_app_dependency/__init__.py +0 -0
  909. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/__init__.py +0 -0
  910. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/test_computedfields.py +0 -0
  911. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/test_configcontextschema.py +0 -0
  912. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/test_customfields.py +0 -0
  913. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/test_dynamicgroups.py +0 -0
  914. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/test_jobs.py +0 -0
  915. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/test_notes.py +0 -0
  916. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/test_plugin_banner.py +0 -0
  917. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/test_plugins.py +0 -0
  918. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/test_relationships.py +0 -0
  919. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/integration/test_tagfilter.py +0 -0
  920. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_api.py +0 -0
  921. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_changelog.py +0 -0
  922. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_customfields.py +0 -0
  923. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_datasources.py +0 -0
  924. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_dynamicgroups.py +0 -0
  925. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_filters.py +0 -0
  926. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_forms.py +0 -0
  927. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_git.py +0 -0
  928. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_job_variables.py +0 -0
  929. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_jobs.py +0 -0
  930. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_management.py +0 -0
  931. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_migrations.py +0 -0
  932. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_models.py +0 -0
  933. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_notes.py +0 -0
  934. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_plugins.py +0 -0
  935. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_registry.py +0 -0
  936. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_relationships.py +0 -0
  937. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_schema.py +0 -0
  938. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_tags.py +0 -0
  939. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_utils.py +0 -0
  940. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_views.py +0 -0
  941. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/tests/test_webhooks.py +0 -0
  942. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/urls.py +0 -0
  943. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/views.py +0 -0
  944. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/extras/webhooks.py +0 -0
  945. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/generate_secret_key.py +0 -0
  946. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/__init__.py +0 -0
  947. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/api/__init__.py +0 -0
  948. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/api/fields.py +0 -0
  949. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/api/serializers.py +0 -0
  950. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/api/urls.py +0 -0
  951. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/api/views.py +0 -0
  952. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/apps.py +0 -0
  953. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/choices.py +0 -0
  954. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/constants.py +0 -0
  955. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/factory.py +0 -0
  956. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/fields.py +0 -0
  957. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/filters.py +0 -0
  958. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/formfields.py +0 -0
  959. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/forms.py +0 -0
  960. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/graphql/__init__.py +0 -0
  961. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/graphql/types.py +0 -0
  962. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/homepage.py +0 -0
  963. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/lookups.py +0 -0
  964. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/management/__init__.py +0 -0
  965. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/management/commands/__init__.py +0 -0
  966. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/management/commands/fix_prefix_broadcast.py +0 -0
  967. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0001_initial_part_1.py +0 -0
  968. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0002_initial_part_2.py +0 -0
  969. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0003_remove_max_length.py +0 -0
  970. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0004_fixup_p2p_broadcast.py +0 -0
  971. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0005_auto_slug.py +0 -0
  972. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0006_ipaddress_nat_outside_list.py +0 -0
  973. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0007_add_natural_indexing.py +0 -0
  974. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0008_prefix_vlan_vlangroup_location.py +0 -0
  975. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0009_alter_vlan_name.py +0 -0
  976. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0010_alter_ipam_role_add_new_role.py +0 -0
  977. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0011_migrate_ipam_role_data.py +0 -0
  978. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0012_rename_ipam_roles.py +0 -0
  979. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0013_delete_role.py +0 -0
  980. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0014_rename_foreign_keys_and_related_names.py +0 -0
  981. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0015_prefix_add_type.py +0 -0
  982. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0016_prefix_type_data_migration.py +0 -0
  983. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0017_prefix_remove_is_pool.py +0 -0
  984. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0018_remove_site_foreign_key_from_ipam_models.py +0 -0
  985. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0019_created_datetime.py +0 -0
  986. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0020_related_name_changes.py +0 -0
  987. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0021_prefix_add_rir_and_date_allocated.py +0 -0
  988. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0022_aggregate_to_prefix_data_migration.py +0 -0
  989. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0023_delete_aggregate.py +0 -0
  990. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0024_interface_to_ipaddress_m2m.py +0 -0
  991. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0025_interface_ipaddress_m2m_data_migration.py +0 -0
  992. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0026_ipaddress_remove_assigned_object.py +0 -0
  993. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0027_remove_rir_slug.py +0 -0
  994. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0028_tagsfield.py +0 -0
  995. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0029_ip_address_to_interface_uniqueness_constraints.py +0 -0
  996. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0030_ipam__namespaces.py +0 -0
  997. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0031_ipam___data_migrations.py +0 -0
  998. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0032_ipam__namespaces_finish.py +0 -0
  999. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0033_fixup_null_statuses.py +0 -0
  1000. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0034_status_nonnullable.py +0 -0
  1001. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0035_ensure_all_services_fit_uniqueness_constraint.py +0 -0
  1002. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0036_add_uniqueness_constraints_to_service.py +0 -0
  1003. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0037_data_migration_vlan_group_name_uniqueness.py +0 -0
  1004. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0038_vlan_group_name_unique_remove_slug.py +0 -0
  1005. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0039_alter_ipaddresstointerface_ip_address.py +0 -0
  1006. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0040_vlan_prefix_locations.py +0 -0
  1007. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0041_vlan_prefix_locations_data_migration.py +0 -0
  1008. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0042_remove_location_from_vlan_and_prefix.py +0 -0
  1009. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0043_fixup_null_ip_version.py +0 -0
  1010. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0044_ip_version_nonnullable.py +0 -0
  1011. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0045_alter_vlangroup_options.py +0 -0
  1012. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/0046_update_all_charfields_max_length_to_255.py +0 -0
  1013. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/migrations/__init__.py +0 -0
  1014. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/models.py +0 -0
  1015. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/navigation.py +0 -0
  1016. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/querysets.py +0 -0
  1017. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/signals.py +0 -0
  1018. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/inc/ipadress_edit_header.html +0 -0
  1019. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/inc/service.html +0 -0
  1020. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/inc/toggle_available.html +0 -0
  1021. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/inc/vlangroup_header.html +0 -0
  1022. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/ipaddress.html +0 -0
  1023. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/ipaddress_assign.html +0 -0
  1024. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/ipaddress_bulk_add.html +0 -0
  1025. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/ipaddress_edit.html +0 -0
  1026. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/ipaddress_interfaces.html +0 -0
  1027. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/ipaddress_list.html +0 -0
  1028. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/ipaddress_merge.html +0 -0
  1029. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/ipaddress_vm_interfaces.html +0 -0
  1030. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/ipaddresstointerface_retrieve.html +0 -0
  1031. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/namespace_ipaddresses.html +0 -0
  1032. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/namespace_prefixes.html +0 -0
  1033. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/namespace_retrieve.html +0 -0
  1034. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/namespace_vrfs.html +0 -0
  1035. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/prefix.html +0 -0
  1036. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/prefix_delete.html +0 -0
  1037. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/prefix_edit.html +0 -0
  1038. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/prefix_ipaddresses.html +0 -0
  1039. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/prefix_list.html +0 -0
  1040. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/prefix_prefixes.html +0 -0
  1041. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/rir.html +0 -0
  1042. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/routetarget.html +0 -0
  1043. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/service.html +0 -0
  1044. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/service_edit.html +0 -0
  1045. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/vlan.html +0 -0
  1046. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/vlan_edit.html +0 -0
  1047. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/vlan_interfaces.html +0 -0
  1048. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/vlan_vminterfaces.html +0 -0
  1049. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/vlangroup.html +0 -0
  1050. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/vrf.html +0 -0
  1051. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/templates/ipam/vrf_edit.html +0 -0
  1052. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/__init__.py +0 -0
  1053. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/features/prefixes.feature +0 -0
  1054. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/integration/__init__.py +0 -0
  1055. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/integration/test_prefixes.py +0 -0
  1056. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/test_api.py +0 -0
  1057. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/test_filters.py +0 -0
  1058. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/test_forms.py +0 -0
  1059. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/test_graphql.py +0 -0
  1060. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/test_migrations.py +0 -0
  1061. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/test_models.py +0 -0
  1062. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/test_ordering.py +0 -0
  1063. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/test_querysets.py +0 -0
  1064. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/test_tables.py +0 -0
  1065. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/tests/test_views.py +0 -0
  1066. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/urls.py +0 -0
  1067. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/utils/__init__.py +0 -0
  1068. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/utils/migrations.py +0 -0
  1069. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/validators.py +0 -0
  1070. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/ipam/views.py +0 -0
  1071. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.css +0 -0
  1072. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.css.map +0 -0
  1073. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.min.css +0 -0
  1074. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap-theme.min.css.map +0 -0
  1075. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.css +0 -0
  1076. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.css.map +0 -0
  1077. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.min.css +0 -0
  1078. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/css/bootstrap.min.css.map +0 -0
  1079. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/fonts/glyphicons-halflings-regular.eot +0 -0
  1080. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/fonts/glyphicons-halflings-regular.svg +0 -0
  1081. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  1082. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/fonts/glyphicons-halflings-regular.woff +0 -0
  1083. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
  1084. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/js/bootstrap.js +0 -0
  1085. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/js/bootstrap.min.js +0 -0
  1086. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/bootstrap-3.4.1-dist/js/npm.js +0 -0
  1087. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/clipboard.js-2.0.9/clipboard.min.js +0 -0
  1088. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/css/base.css +0 -0
  1089. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/css/dark.css +0 -0
  1090. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/css/rack_elevation.css +0 -0
  1091. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/404.html +0 -0
  1092. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/additional-features/caching.html +0 -0
  1093. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/additional-features/change-logging.html +0 -0
  1094. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/additional-features/config-contexts.html +0 -0
  1095. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/additional-features/healthcheck.html +0 -0
  1096. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/additional-features/jobs.html +0 -0
  1097. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/additional-features/prometheus-metrics.html +0 -0
  1098. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/administration/celery-queues.html +0 -0
  1099. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/administration/nautobot-server.html +0 -0
  1100. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/administration/nautobot-shell.html +0 -0
  1101. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/administration/permissions.html +0 -0
  1102. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/administration/replicating-nautobot.html +0 -0
  1103. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/apps/index.html +0 -0
  1104. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/apps/migrating-jobs-from-nautobot-v1.html +0 -0
  1105. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/apps/nautobot-apps.html +0 -0
  1106. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/_mkdocstrings.css +0 -0
  1107. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/app-icons/icon-ChatOps.png +0 -0
  1108. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/app-icons/icon-DataValidationEngine.png +0 -0
  1109. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/app-icons/icon-DeviceLifecycle.png +0 -0
  1110. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/app-icons/icon-DeviceOnboarding.png +0 -0
  1111. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/app-icons/icon-FirewallModels.png +0 -0
  1112. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/app-icons/icon-GoldenConfiguration.png +0 -0
  1113. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/app-icons/icon-NautobotPluginNornir.png +0 -0
  1114. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/app-icons/icon-SSoT.png +0 -0
  1115. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/extra.css +0 -0
  1116. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/favicon.ico +0 -0
  1117. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/images/favicon.png +0 -0
  1118. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/bundle.bd41221c.min.js +0 -0
  1119. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/bundle.bd41221c.min.js.map +0 -0
  1120. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.ar.min.js +0 -0
  1121. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.da.min.js +0 -0
  1122. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.de.min.js +0 -0
  1123. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.du.min.js +0 -0
  1124. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.el.min.js +0 -0
  1125. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.es.min.js +0 -0
  1126. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.fi.min.js +0 -0
  1127. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.fr.min.js +0 -0
  1128. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.he.min.js +0 -0
  1129. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.hi.min.js +0 -0
  1130. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.hu.min.js +0 -0
  1131. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.hy.min.js +0 -0
  1132. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.it.min.js +0 -0
  1133. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.ja.min.js +0 -0
  1134. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.jp.min.js +0 -0
  1135. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.kn.min.js +0 -0
  1136. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.ko.min.js +0 -0
  1137. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.multi.min.js +0 -0
  1138. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.nl.min.js +0 -0
  1139. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.no.min.js +0 -0
  1140. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.pt.min.js +0 -0
  1141. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.ro.min.js +0 -0
  1142. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.ru.min.js +0 -0
  1143. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.sa.min.js +0 -0
  1144. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.stemmer.support.min.js +0 -0
  1145. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.sv.min.js +0 -0
  1146. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.ta.min.js +0 -0
  1147. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.te.min.js +0 -0
  1148. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.th.min.js +0 -0
  1149. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.tr.min.js +0 -0
  1150. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.vi.min.js +0 -0
  1151. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/min/lunr.zh.min.js +0 -0
  1152. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/tinyseg.js +0 -0
  1153. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/lunr/wordcut.js +0 -0
  1154. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/workers/search.b8dbb3d2.min.js +0 -0
  1155. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/javascripts/workers/search.b8dbb3d2.min.js.map +0 -0
  1156. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/nautobot_logo.png +0 -0
  1157. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/nautobot_logo.svg +0 -0
  1158. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/networktocode_bw.png +0 -0
  1159. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/overrides/partials/copyright.html +0 -0
  1160. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/stylesheets/main.bcfcd587.min.css +0 -0
  1161. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/stylesheets/main.bcfcd587.min.css.map +0 -0
  1162. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/stylesheets/palette.06af60db.min.css +0 -0
  1163. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/assets/stylesheets/palette.06af60db.min.css.map +0 -0
  1164. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +0 -0
  1165. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +0 -0
  1166. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/api.html +0 -0
  1167. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/change_logging.html +0 -0
  1168. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +0 -0
  1169. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/config.html +0 -0
  1170. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/constants.html +0 -0
  1171. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +0 -0
  1172. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/exceptions.html +0 -0
  1173. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/factory.html +0 -0
  1174. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +0 -0
  1175. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +0 -0
  1176. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/graphql.html +0 -0
  1177. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/jobs.html +0 -0
  1178. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/models.html +0 -0
  1179. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/querysets.html +0 -0
  1180. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +0 -0
  1181. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +0 -0
  1182. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +0 -0
  1183. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +0 -0
  1184. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +0 -0
  1185. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/utils.html +0 -0
  1186. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/code-reference/nautobot/apps/views.html +0 -0
  1187. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/configuration/authentication/ldap.html +0 -0
  1188. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/configuration/authentication/remote.html +0 -0
  1189. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/configuration/authentication/sso.html +0 -0
  1190. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/configuration/index.html +0 -0
  1191. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/configuration/optional-settings.html +0 -0
  1192. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/configuration/required-settings.html +0 -0
  1193. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/circuits.html +0 -0
  1194. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/device-types.html +0 -0
  1195. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/devices.html +0 -0
  1196. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/ipam.html +0 -0
  1197. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/power.html +0 -0
  1198. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/secrets.html +0 -0
  1199. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/services.html +0 -0
  1200. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/sites-and-racks.html +0 -0
  1201. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/tenancy.html +0 -0
  1202. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/virtualization.html +0 -0
  1203. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/core-functionality/vlans.html +0 -0
  1204. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/application-registry.html +0 -0
  1205. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/configuration-view.html +0 -0
  1206. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/database-backend-config.html +0 -0
  1207. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/models/django-admin.html +0 -0
  1208. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/models/global-search.html +0 -0
  1209. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/models/graphql.html +0 -0
  1210. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/models/index.html +0 -0
  1211. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/nautobot-app-config.html +0 -0
  1212. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/platform-features/custom-validators.html +0 -0
  1213. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/platform-features/filter-extensions.html +0 -0
  1214. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/platform-features/git-repository-content.html +0 -0
  1215. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/platform-features/index.html +0 -0
  1216. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/platform-features/jinja2-filters.html +0 -0
  1217. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/platform-features/jobs.html +0 -0
  1218. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/platform-features/populating-extensibility-features.html +0 -0
  1219. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/platform-features/secrets-providers.html +0 -0
  1220. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/platform-features/uniquely-identify-objects.html +0 -0
  1221. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/prometheus.html +0 -0
  1222. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/setup.html +0 -0
  1223. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/testing.html +0 -0
  1224. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/ui-extensions/banners.html +0 -0
  1225. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/ui-extensions/home-page.html +0 -0
  1226. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/ui-extensions/index.html +0 -0
  1227. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/ui-extensions/navigation.html +0 -0
  1228. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/ui-extensions/object-detail-views.html +0 -0
  1229. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/ui-extensions/object-views.html +0 -0
  1230. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/ui-extensions/tabs.html +0 -0
  1231. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/base-template.html +0 -0
  1232. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/core-view-overrides.html +0 -0
  1233. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/django-generic-views.html +0 -0
  1234. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/help-documentation.html +0 -0
  1235. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/index.html +0 -0
  1236. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/nautobot-generic-views.html +0 -0
  1237. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/nautobotuiviewset.html +0 -0
  1238. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/nautobotuiviewsetrouter.html +0 -0
  1239. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/notes.html +0 -0
  1240. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/rest-api.html +0 -0
  1241. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/urls.html +0 -0
  1242. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/api/views/view-overrides.html +0 -0
  1243. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/index.html +0 -0
  1244. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/migration/code-updates.html +0 -0
  1245. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/migration/dependency-updates.html +0 -0
  1246. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/migration/from-v1.html +0 -0
  1247. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/migration/model-updates/dcim.html +0 -0
  1248. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/migration/model-updates/extras.html +0 -0
  1249. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/migration/model-updates/global.html +0 -0
  1250. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/migration/model-updates/ipam.html +0 -0
  1251. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/apps/porting-from-netbox.html +0 -0
  1252. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/best-practices.html +0 -0
  1253. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/application-registry.html +0 -0
  1254. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/best-practices.html +0 -0
  1255. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/bootstrap-ui.html +0 -0
  1256. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/caching.html +0 -0
  1257. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/controllers.html +0 -0
  1258. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/docker-compose-advanced-use-cases.html +0 -0
  1259. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/extending-models.html +0 -0
  1260. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/generic-views.html +0 -0
  1261. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/getting-started.html +0 -0
  1262. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/homepage.html +0 -0
  1263. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/index.html +0 -0
  1264. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/model-checklist.html +0 -0
  1265. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/model-features.html +0 -0
  1266. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/natural-keys.html +0 -0
  1267. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/navigation-menu.html +0 -0
  1268. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/react-ui.html +0 -0
  1269. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/release-checklist.html +0 -0
  1270. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/role-internals.html +0 -0
  1271. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/settings.html +0 -0
  1272. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/style-guide.html +0 -0
  1273. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/templates.html +0 -0
  1274. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/testing.html +0 -0
  1275. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/core/user-preferences.html +0 -0
  1276. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/docker-compose-advanced-use-cases.html +0 -0
  1277. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/extending-models.html +0 -0
  1278. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/generic-views.html +0 -0
  1279. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/getting-started.html +0 -0
  1280. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/homepage.html +0 -0
  1281. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/index.html +0 -0
  1282. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/jobs/index.html +0 -0
  1283. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/jobs/migration/from-v1.html +0 -0
  1284. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/model-features.html +0 -0
  1285. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/natural-keys.html +0 -0
  1286. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/navigation-menu.html +0 -0
  1287. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/react-ui.html +0 -0
  1288. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/release-checklist.html +0 -0
  1289. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/role-internals.html +0 -0
  1290. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/style-guide.html +0 -0
  1291. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/templates.html +0 -0
  1292. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/testing.html +0 -0
  1293. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/development/user-preferences.html +0 -0
  1294. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/docker/index.html +0 -0
  1295. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/generate_code_reference_pages.py +0 -0
  1296. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/img/edge_dev_circuit_relationship.png +0 -0
  1297. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/img/leaf_dev_no_circuit_relationship.png +0 -0
  1298. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/img/relationship_w_json_filter.png +0 -0
  1299. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/index.html +0 -0
  1300. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/centos.html +0 -0
  1301. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/external-authentication.html +0 -0
  1302. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/http-server.html +0 -0
  1303. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/index.html +0 -0
  1304. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/migrating-from-netbox.html +0 -0
  1305. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/migrating-from-postgresql.html +0 -0
  1306. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/nautobot.html +0 -0
  1307. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/region-and-site-data-migration-guide.html +0 -0
  1308. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/selinux-troubleshooting.html +0 -0
  1309. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/services.html +0 -0
  1310. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/ubuntu.html +0 -0
  1311. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/upgrading-from-nautobot-v1.html +0 -0
  1312. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/installation/upgrading.html +0 -0
  1313. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/macros.py +0 -0
  1314. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/admin_ui_run_permission.png +0 -0
  1315. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/apps/app_admin_config.png +0 -0
  1316. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/apps/app_admin_ui.png +0 -0
  1317. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/apps/app_rest_api_endpoint.png +0 -0
  1318. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/development/homepage_changelog_panel.png +0 -0
  1319. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/development/homepage_dcim_panel.png +0 -0
  1320. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/development/index_bug_wf.jpg +0 -0
  1321. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/development/index_feature_request_wf.jpg +0 -0
  1322. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/development/index_release_cadence.drawio +0 -0
  1323. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/development/index_release_cadence.jpg +0 -0
  1324. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/installation/nautobot_ui_admin.png +0 -0
  1325. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/installation/nautobot_ui_login.png +0 -0
  1326. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dcim_cable_trace.png +0 -0
  1327. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dcim_cable_trace_circuit.png +0 -0
  1328. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_filtering_01.png +0 -0
  1329. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_1_01.png +0 -0
  1330. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_1_02.png +0 -0
  1331. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_1_03.png +0 -0
  1332. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_1_04.png +0 -0
  1333. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_1_05.png +0 -0
  1334. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_01.png +0 -0
  1335. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_02.png +0 -0
  1336. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_03.png +0 -0
  1337. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_04.png +0 -0
  1338. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_05.png +0 -0
  1339. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_06.png +0 -0
  1340. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_advanced_2_07.png +0 -0
  1341. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_basic_01.png +0 -0
  1342. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_basic_02.png +0 -0
  1343. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/dynamicgroup_workflow_basic_03.png +0 -0
  1344. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/jobbutton_form.png +0 -0
  1345. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/model_simple.drawio +0 -0
  1346. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/model_simple.png +0 -0
  1347. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/model_uml.erd +0 -0
  1348. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/model_uml.png +0 -0
  1349. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/models/site_jobbuttons.png +0 -0
  1350. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/nautobot_application_stack_high_level.drawio +0 -0
  1351. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/nautobot_application_stack_high_level.png +0 -0
  1352. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/nautobot_application_stack_low_level.png +0 -0
  1353. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/nautobot_application_stack_low_level.txt +0 -0
  1354. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/power_distribution.png +0 -0
  1355. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/ss_app_chatops.png +0 -0
  1356. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/ss_app_golden_config.png +0 -0
  1357. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/ss_config_contexts.png +0 -0
  1358. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/ss_graphiql.png +0 -0
  1359. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/ss_main_page.png +0 -0
  1360. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/ss_prefix_hierarchy.png +0 -0
  1361. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/user-guide/administration/guides/request-profiling/advanced-settings.png +0 -0
  1362. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/user-guide/administration/guides/request-profiling/silk-ui.png +0 -0
  1363. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/user-guide/administration/guides/s3-django-storage/user-guide-s3-1.png +0 -0
  1364. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/user-guide/administration/guides/s3-django-storage/user-guide-s3-2.png +0 -0
  1365. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/media/user-guide/administration/upgrading/from-v1/ipam/tenant-affinity.png +0 -0
  1366. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/circuits/circuit.html +0 -0
  1367. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/circuits/circuittermination.html +0 -0
  1368. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/circuits/circuittype.html +0 -0
  1369. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/circuits/provider.html +0 -0
  1370. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/circuits/providernetwork.html +0 -0
  1371. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/cable.html +0 -0
  1372. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/consoleport.html +0 -0
  1373. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/consoleporttemplate.html +0 -0
  1374. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/consoleserverport.html +0 -0
  1375. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/consoleserverporttemplate.html +0 -0
  1376. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/controller.html +0 -0
  1377. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/controllermanageddevicegroup.html +0 -0
  1378. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/device.html +0 -0
  1379. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/devicebay.html +0 -0
  1380. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/devicebaytemplate.html +0 -0
  1381. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/devicefamily.html +0 -0
  1382. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/deviceredundancygroup.html +0 -0
  1383. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/devicetype.html +0 -0
  1384. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/frontport.html +0 -0
  1385. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/frontporttemplate.html +0 -0
  1386. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/interface.html +0 -0
  1387. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/interfacetemplate.html +0 -0
  1388. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/inventoryitem.html +0 -0
  1389. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/location.html +0 -0
  1390. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/locationtype.html +0 -0
  1391. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/manufacturer.html +0 -0
  1392. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/platform.html +0 -0
  1393. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/powerfeed.html +0 -0
  1394. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/poweroutlet.html +0 -0
  1395. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/poweroutlettemplate.html +0 -0
  1396. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/powerpanel.html +0 -0
  1397. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/powerport.html +0 -0
  1398. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/powerporttemplate.html +0 -0
  1399. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/rack.html +0 -0
  1400. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/rackgroup.html +0 -0
  1401. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/rackreservation.html +0 -0
  1402. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/rearport.html +0 -0
  1403. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/rearporttemplate.html +0 -0
  1404. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/softwareimagefile.html +0 -0
  1405. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/softwareversion.html +0 -0
  1406. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/dcim/virtualchassis.html +0 -0
  1407. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/computedfield.html +0 -0
  1408. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/configcontext.html +0 -0
  1409. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/configcontextschema.html +0 -0
  1410. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/contact.html +0 -0
  1411. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/customfield.html +0 -0
  1412. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/customlink.html +0 -0
  1413. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/dynamicgroup.html +0 -0
  1414. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/exporttemplate.html +0 -0
  1415. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/gitrepository.html +0 -0
  1416. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/jobhook.html +0 -0
  1417. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/joblogentry.html +0 -0
  1418. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/jobresult.html +0 -0
  1419. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/secret.html +0 -0
  1420. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/secretsgroup.html +0 -0
  1421. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/extras/team.html +0 -0
  1422. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/ipam/ipaddress.html +0 -0
  1423. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/ipam/prefix.html +0 -0
  1424. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/ipam/rir.html +0 -0
  1425. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/ipam/routetarget.html +0 -0
  1426. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/ipam/service.html +0 -0
  1427. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/ipam/vlan.html +0 -0
  1428. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/ipam/vlangroup.html +0 -0
  1429. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/ipam/vrf.html +0 -0
  1430. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/tenancy/tenant.html +0 -0
  1431. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/tenancy/tenantgroup.html +0 -0
  1432. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/virtualization/cluster.html +0 -0
  1433. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/virtualization/clustergroup.html +0 -0
  1434. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/virtualization/clustertype.html +0 -0
  1435. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/virtualization/virtualmachine.html +0 -0
  1436. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/models/virtualization/vminterface.html +0 -0
  1437. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/nautobot_logo.png +0 -0
  1438. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/nautobot_logo.svg +0 -0
  1439. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/objects.inv +0 -0
  1440. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/plugins/development.html +0 -0
  1441. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/plugins/index.html +0 -0
  1442. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/plugins/porting-from-netbox.html +0 -0
  1443. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/index.html +0 -0
  1444. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/version-1.0.html +0 -0
  1445. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/version-1.1.html +0 -0
  1446. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/version-1.2.html +0 -0
  1447. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/version-1.3.html +0 -0
  1448. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/version-1.4.html +0 -0
  1449. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/version-1.5.html +0 -0
  1450. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/version-2.0.html +0 -0
  1451. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/release-notes/version-2.1.html +0 -0
  1452. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/requirements.txt +0 -0
  1453. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/rest-api/overview.html +0 -0
  1454. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/configuration/authentication/ldap.html +0 -0
  1455. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/configuration/authentication/remote.html +0 -0
  1456. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/configuration/authentication/sso.html +0 -0
  1457. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/configuration/index.html +0 -0
  1458. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/configuration/node-configuration.html +0 -0
  1459. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/configuration/optional-settings.html +0 -0
  1460. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/configuration/render-settings-fragment.j2 +0 -0
  1461. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/configuration/required-settings.html +0 -0
  1462. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/configuration/time-zones.html +0 -0
  1463. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/guides/caching.html +0 -0
  1464. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/guides/celery-queues.html +0 -0
  1465. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/guides/healthcheck.html +0 -0
  1466. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/guides/permissions.html +0 -0
  1467. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/guides/prometheus-metrics.html +0 -0
  1468. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/guides/replicating-nautobot.html +0 -0
  1469. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/guides/request-profiling.html +0 -0
  1470. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/guides/s3-django-storage.html +0 -0
  1471. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/installation/app-install.html +0 -0
  1472. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/installation/docker.html +0 -0
  1473. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/installation/external-authentication.html +0 -0
  1474. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/installation/health-checks.html +0 -0
  1475. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/installation/http-server.html +0 -0
  1476. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/installation/index.html +0 -0
  1477. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/installation/install_system.html +0 -0
  1478. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/installation/nautobot.html +0 -0
  1479. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/installation/selinux-troubleshooting.html +0 -0
  1480. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/installation/services.html +0 -0
  1481. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/migration/migrating-from-netbox.html +0 -0
  1482. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/migration/migrating-from-postgresql.html +0 -0
  1483. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/tools/nautobot-server.html +0 -0
  1484. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/tools/nautobot-shell.html +0 -0
  1485. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/database-backup.html +0 -0
  1486. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/after-you-upgrade.html +0 -0
  1487. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/before-you-upgrade.html +0 -0
  1488. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/for-developers.html +0 -0
  1489. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/index.html +0 -0
  1490. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/ipam/whats-changed.html +0 -0
  1491. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/region-and-site-data-migration-guide.html +0 -0
  1492. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-api-behavior-changes.yaml +0 -0
  1493. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-api-removed-fields.yaml +0 -0
  1494. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-api-renamed-fields.yaml +0 -0
  1495. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-code-location-changes.yaml +0 -0
  1496. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-code-nautobot-app-location.yaml +0 -0
  1497. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-code-removals.yaml +0 -0
  1498. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-code-renames.yaml +0 -0
  1499. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-database-behavior-changes.yaml +0 -0
  1500. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-database-removed-fields.yaml +0 -0
  1501. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-database-renamed-fields.yaml +0 -0
  1502. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-filters-corrected-fields.yaml +0 -0
  1503. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-filters-enhanced-fields.yaml +0 -0
  1504. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-filters-removed-fields.yaml +0 -0
  1505. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-filters-renamed-fields.yaml +0 -0
  1506. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/tables/v2-logging-renamed-loggers.yaml +0 -0
  1507. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/from-v1/upgrading-from-nautobot-v1.html +0 -0
  1508. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/administration/upgrading/upgrading.html +0 -0
  1509. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/circuits/circuit.html +0 -0
  1510. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittermination.html +0 -0
  1511. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/circuits/circuittype.html +0 -0
  1512. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/circuits/provider.html +0 -0
  1513. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/circuits/providernetwork.html +0 -0
  1514. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/cable.html +0 -0
  1515. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleport.html +0 -0
  1516. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleporttemplate.html +0 -0
  1517. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverport.html +0 -0
  1518. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/consoleserverporttemplate.html +0 -0
  1519. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/controller.html +0 -0
  1520. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/controllermanageddevicegroup.html +0 -0
  1521. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/device.html +0 -0
  1522. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebay.html +0 -0
  1523. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/devicebaytemplate.html +0 -0
  1524. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/devicefamily.html +0 -0
  1525. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/deviceredundancygroup.html +0 -0
  1526. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/devicetype.html +0 -0
  1527. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/frontport.html +0 -0
  1528. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/frontporttemplate.html +0 -0
  1529. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/interface.html +0 -0
  1530. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/interfaceredundancygroup.html +0 -0
  1531. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/interfacetemplate.html +0 -0
  1532. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/inventoryitem.html +0 -0
  1533. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/location.html +0 -0
  1534. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/locationtype.html +0 -0
  1535. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/manufacturer.html +0 -0
  1536. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/platform.html +0 -0
  1537. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/powerfeed.html +0 -0
  1538. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlet.html +0 -0
  1539. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/poweroutlettemplate.html +0 -0
  1540. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/powerpanel.html +0 -0
  1541. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/powerport.html +0 -0
  1542. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/powerporttemplate.html +0 -0
  1543. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/rack.html +0 -0
  1544. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/rackgroup.html +0 -0
  1545. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/rackreservation.html +0 -0
  1546. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/rearport.html +0 -0
  1547. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/rearporttemplate.html +0 -0
  1548. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareimagefile.html +0 -0
  1549. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/softwareversion.html +0 -0
  1550. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/dcim/virtualchassis.html +0 -0
  1551. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/extras/configcontext.html +0 -0
  1552. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/extras/configcontextschema.html +0 -0
  1553. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/extras/contact.html +0 -0
  1554. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/extras/team.html +0 -0
  1555. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/ipaddress.html +0 -0
  1556. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/media/ipam_namespace_documentation.drawio +0 -0
  1557. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/media/ipam_namespace_documentation.drawio.png +0 -0
  1558. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/namespace.html +0 -0
  1559. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/prefix.html +0 -0
  1560. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/rir.html +0 -0
  1561. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/routetarget.html +0 -0
  1562. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/service.html +0 -0
  1563. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/vlan.html +0 -0
  1564. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/vlangroup.html +0 -0
  1565. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/ipam/vrf.html +0 -0
  1566. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/overview/introduction.html +0 -0
  1567. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenant.html +0 -0
  1568. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/tenancy/tenantgroup.html +0 -0
  1569. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/virtualization/cluster.html +0 -0
  1570. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustergroup.html +0 -0
  1571. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/virtualization/clustertype.html +0 -0
  1572. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/virtualization/virtualmachine.html +0 -0
  1573. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/core-data-model/virtualization/vminterface.html +0 -0
  1574. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/contacts-and-teams.html +0 -0
  1575. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/custom-fields.html +0 -0
  1576. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-devices.html +0 -0
  1577. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/getting-started/creating-location-types-and-locations.html +0 -0
  1578. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/getting-started/index.html +0 -0
  1579. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/getting-started/interfaces.html +0 -0
  1580. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/getting-started/ipam.html +0 -0
  1581. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/getting-started/platforms.html +0 -0
  1582. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/getting-started/search-bar.html +0 -0
  1583. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/getting-started/tenants.html +0 -0
  1584. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/getting-started/vlans-and-vlan-groups.html +0 -0
  1585. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/git-data-source.html +0 -0
  1586. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/graphql.html +0 -0
  1587. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/circuit.png +0 -0
  1588. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/circuit_button.png +0 -0
  1589. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/contact_form_tabs.png +0 -0
  1590. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/contact_forms.png +0 -0
  1591. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/existing_contact_association.png +0 -0
  1592. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/existing_contact_form.png +0 -0
  1593. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/existing_contact_selected.png +0 -0
  1594. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/existing_contact_table.png +0 -0
  1595. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/new_contact_association_info.png +0 -0
  1596. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/new_contact_info.png +0 -0
  1597. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/contact-and-team/new_contact_table.png +0 -0
  1598. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/custom-fields/custom_field_choices.png +0 -0
  1599. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/custom-fields/custom_field_detail_grouped.png +0 -0
  1600. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/custom-fields/custom_field_detail_label.png +0 -0
  1601. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/custom-fields/custom_field_edit.png +0 -0
  1602. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/custom-fields/custom_field_select.png +0 -0
  1603. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/1-create-location-type.png +0 -0
  1604. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/10-add-platform.png +0 -0
  1605. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/11-platforms-page.png +0 -0
  1606. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/12-add-tenant.png +0 -0
  1607. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/13-assign-tenant-to-device.png +0 -0
  1608. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/14-assign-tenant-to-device-2.png +0 -0
  1609. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/15-create-device-type.png +0 -0
  1610. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/16-interface-templates.png +0 -0
  1611. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/17-templated-interfaces.png +0 -0
  1612. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/18-assign-device-type.png +0 -0
  1613. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/19-edit-ints-for-lag.png +0 -0
  1614. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/2-create-manufacturer.png +0 -0
  1615. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/20-ints-int-lag.png +0 -0
  1616. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/21-device-type.png +0 -0
  1617. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/22-create-vlans.png +0 -0
  1618. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/23-create-vlans-2.png +0 -0
  1619. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/24-vlan-main-page.png +0 -0
  1620. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/25-add-vlan-to-interface.png +0 -0
  1621. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/26-add-vlan-to-interface-2.png +0 -0
  1622. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/27-add-rir.png +0 -0
  1623. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/3-create-role.png +0 -0
  1624. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/30-add-prefix.png +0 -0
  1625. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/32-add-ip-addr.png +0 -0
  1626. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/33-assign-address.png +0 -0
  1627. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/34-assign-address-2.png +0 -0
  1628. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/35-assign-address-3.png +0 -0
  1629. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/36-verify-address.png +0 -0
  1630. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/37-verify-prefix.png +0 -0
  1631. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/38-verify-prefix2.png +0 -0
  1632. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/4-create-device-type.png +0 -0
  1633. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/41-device-search-results.png +0 -0
  1634. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/42-address-search-v2.png +0 -0
  1635. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/43-get-to-device-main-page.png +0 -0
  1636. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/44-add-platform.png +0 -0
  1637. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/5-create-device.png +0 -0
  1638. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/6-create-location.png +0 -0
  1639. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/7-location-type-page.png +0 -0
  1640. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/getting-started-nautobot-ui/8-location-page.png +0 -0
  1641. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/01-git-data-source.png +0 -0
  1642. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/02-git-data-source.png +0 -0
  1643. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/03-git-data-source.png +0 -0
  1644. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/04-git-data-source.png +0 -0
  1645. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/05-git-data-source.png +0 -0
  1646. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/06-git-data-source.png +0 -0
  1647. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/07-git-data-source.png +0 -0
  1648. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/08-git-data-source.png +0 -0
  1649. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/09-git-data-source.png +0 -0
  1650. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/10-git-data-source.png +0 -0
  1651. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/11-git-data-source.png +0 -0
  1652. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/12-git-data-source.png +0 -0
  1653. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/13-git-data-source.png +0 -0
  1654. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/14-git-data-source.png +0 -0
  1655. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/15-git-data-source.png +0 -0
  1656. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/16-git-data-source.png +0 -0
  1657. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/git-as-data-source/17-git-data-source.png +0 -0
  1658. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/00-graphiql.png +0 -0
  1659. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/01-graphiql-explorer.png +0 -0
  1660. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/02-graphiql-explorer-device-query.png +0 -0
  1661. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/03-graphiql-explorer-device-attributes.png +0 -0
  1662. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/04-graphql-query-01.png +0 -0
  1663. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/05-graphiql-autocomplete.png +0 -0
  1664. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/06-graphql-query-02.png +0 -0
  1665. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/07-graphql-query-03.png +0 -0
  1666. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/08-graphql-query-04.png +0 -0
  1667. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/09-graphql-query-05.png +0 -0
  1668. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/10-graphql-swagger.png +0 -0
  1669. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/graphql/11-graphql-query-06.png +0 -0
  1670. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/ip_merge_button.png +0 -0
  1671. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/merge_button.png +0 -0
  1672. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/merge_view.png +0 -0
  1673. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/no_more_dup_ips.png +0 -0
  1674. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/skip_button.png +0 -0
  1675. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/ip-address-merge-tool/unselect_ips.png +0 -0
  1676. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/01-relationships.png +0 -0
  1677. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/02-relationships.png +0 -0
  1678. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/03-relationships.png +0 -0
  1679. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/04-relationships.png +0 -0
  1680. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/05-relationships.png +0 -0
  1681. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/06-relationships.png +0 -0
  1682. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/07-relationships.png +0 -0
  1683. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/08-relationships.png +0 -0
  1684. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/09-relationships.png +0 -0
  1685. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/10-relationships.png +0 -0
  1686. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/relationships/11-relationships.png +0 -0
  1687. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/software-image-files-and-versions/assign-software-version-to-device.png +0 -0
  1688. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/software-image-files-and-versions/software-image-file-create.png +0 -0
  1689. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/images/software-image-files-and-versions/software-version-create.png +0 -0
  1690. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/ip-address-merge-tool.html +0 -0
  1691. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/relationships.html +0 -0
  1692. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/feature-guides/software-image-files-and-versions.html +0 -0
  1693. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/index.html +0 -0
  1694. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/change-logging.html +0 -0
  1695. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/computedfield.html +0 -0
  1696. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/customfield.html +0 -0
  1697. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/customlink.html +0 -0
  1698. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/dynamicgroup.html +0 -0
  1699. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/exporttemplate.html +0 -0
  1700. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/externalintegration.html +0 -0
  1701. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/gitrepository.html +0 -0
  1702. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/graphql.html +0 -0
  1703. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/graphqlquery.html +0 -0
  1704. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/imageattachment.html +0 -0
  1705. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/jobs/index.html +0 -0
  1706. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/jobs/job-scheduling-and-approvals.html +0 -0
  1707. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobbutton.html +0 -0
  1708. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/jobs/jobhook.html +0 -0
  1709. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/jobs/models.html +0 -0
  1710. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/napalm.html +0 -0
  1711. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/note.html +0 -0
  1712. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/relationship.html +0 -0
  1713. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/rest-api/authentication.html +0 -0
  1714. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/rest-api/filtering.html +0 -0
  1715. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/rest-api/overview.html +0 -0
  1716. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/rest-api/ui-related-endpoints.html +0 -0
  1717. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/role.html +0 -0
  1718. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/secret.html +0 -0
  1719. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/status.html +0 -0
  1720. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/tag.html +0 -0
  1721. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/template-filters.html +0 -0
  1722. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/users/objectpermission.html +0 -0
  1723. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/users/token.html +0 -0
  1724. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guide/platform-functionality/webhook.html +0 -0
  1725. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/custom-fields.html +0 -0
  1726. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/getting-started/creating-devices.html +0 -0
  1727. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/getting-started/index.html +0 -0
  1728. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/getting-started/interfaces.html +0 -0
  1729. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/getting-started/ipam.html +0 -0
  1730. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/getting-started/platforms.html +0 -0
  1731. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/getting-started/search-bar.html +0 -0
  1732. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/getting-started/tenants.html +0 -0
  1733. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/getting-started/vlans-and-vlan-groups.html +0 -0
  1734. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/git-data-source.html +0 -0
  1735. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/graphql.html +0 -0
  1736. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/ip-address-merge-tool.html +0 -0
  1737. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/relationships.html +0 -0
  1738. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/docs/user-guides/s3-django-storage.html +0 -0
  1739. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/flatpickr-4.6.9/flatpickr.min.js +0 -0
  1740. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/flatpickr-4.6.9/themes/light.min.css +0 -0
  1741. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/UFL.txt +0 -0
  1742. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/Ubuntu-Bold.woff2 +0 -0
  1743. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/Ubuntu-BoldItalic.woff2 +0 -0
  1744. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/Ubuntu-Italic.woff2 +0 -0
  1745. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/Ubuntu-Medium.woff2 +0 -0
  1746. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/Ubuntu-MediumItalic.woff2 +0 -0
  1747. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/Ubuntu-Regular.woff2 +0 -0
  1748. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/UbuntuMono-Bold.woff2 +0 -0
  1749. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/UbuntuMono-BoldItalic.woff2 +0 -0
  1750. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/UbuntuMono-Italic.woff2 +0 -0
  1751. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/fonts/UbuntuMono-Regular.woff2 +0 -0
  1752. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/graphiql-1.5.16/graphiql.min.css +0 -0
  1753. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/graphiql-1.5.16/graphiql.min.js +0 -0
  1754. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/highlight.js-11.9.0/github-dark.min.css +0 -0
  1755. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/highlight.js-11.9.0/github.min.css +0 -0
  1756. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/highlight.js-11.9.0/highlight.min.js +0 -0
  1757. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/ajax-loader.gif +0 -0
  1758. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/dark-theme.png +0 -0
  1759. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/favicon.ico +0 -0
  1760. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/light-theme.png +0 -0
  1761. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_chevron.svg +0 -0
  1762. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_chevron_header.svg +0 -0
  1763. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_icon.svg +0 -0
  1764. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_icon_16x16.png +0 -0
  1765. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_icon_180x180.png +0 -0
  1766. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_icon_192x192.png +0 -0
  1767. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_icon_270x270.png +0 -0
  1768. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_icon_32x32.png +0 -0
  1769. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_icon_384x384.png +0 -0
  1770. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_icon_monochrome.svg +0 -0
  1771. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_logo.png +0 -0
  1772. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/nautobot_logo.svg +0 -0
  1773. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/system-theme.png +0 -0
  1774. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/img/tint_20.png +0 -0
  1775. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery/jquery-3.7.1.min.js +0 -0
  1776. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery/jquery.formset.js +0 -0
  1777. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery-ui-1.13.2/images/ui-icons_444444_256x240.png +0 -0
  1778. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery-ui-1.13.2/images/ui-icons_555555_256x240.png +0 -0
  1779. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery-ui-1.13.2/images/ui-icons_777620_256x240.png +0 -0
  1780. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery-ui-1.13.2/images/ui-icons_777777_256x240.png +0 -0
  1781. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery-ui-1.13.2/images/ui-icons_cc0000_256x240.png +0 -0
  1782. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery-ui-1.13.2/images/ui-icons_ffffff_256x240.png +0 -0
  1783. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery-ui-1.13.2/jquery-ui.min.css +0 -0
  1784. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery-ui-1.13.2/jquery-ui.min.js +0 -0
  1785. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery-ui-1.13.2/jquery-ui.structure.min.css +0 -0
  1786. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/jquery-ui-1.13.2/jquery-ui.theme.min.css +0 -0
  1787. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/js/cabletrace.js +0 -0
  1788. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/js/connection_toggles.js +0 -0
  1789. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/js/forms.js +0 -0
  1790. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/js/homepage_layout.js +0 -0
  1791. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/js/interface_filtering.js +0 -0
  1792. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/js/job_result.js +0 -0
  1793. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/js/log_level_filtering.js +0 -0
  1794. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/js/rack_elevations.js +0 -0
  1795. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/js/tableconfig.js +0 -0
  1796. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/js/theme.js +0 -0
  1797. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/.github/ISSUE_TEMPLATE.md +0 -0
  1798. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/LICENSE +0 -0
  1799. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/README.md +0 -0
  1800. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/css/materialdesignicons.css +0 -0
  1801. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/css/materialdesignicons.css.map +0 -0
  1802. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/css/materialdesignicons.min.css +0 -0
  1803. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/css/materialdesignicons.min.css.map +0 -0
  1804. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/fonts/materialdesignicons-webfont.eot +0 -0
  1805. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/fonts/materialdesignicons-webfont.ttf +0 -0
  1806. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/fonts/materialdesignicons-webfont.woff +0 -0
  1807. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/fonts/materialdesignicons-webfont.woff2 +0 -0
  1808. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/package.json +0 -0
  1809. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/preview.html +0 -0
  1810. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/scss/_animated.scss +0 -0
  1811. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/scss/_core.scss +0 -0
  1812. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/scss/_extras.scss +0 -0
  1813. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/scss/_functions.scss +0 -0
  1814. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/scss/_icons.scss +0 -0
  1815. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/scss/_path.scss +0 -0
  1816. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/scss/_variables.scss +0 -0
  1817. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/materialdesignicons-6.5.95/scss/materialdesignicons.scss +0 -0
  1818. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/react-16.14.0/react.production.min.js +0 -0
  1819. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/react-dom-16.14.0/react-dom.production.min.js +0 -0
  1820. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/af.js +0 -0
  1821. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/ar.js +0 -0
  1822. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/az.js +0 -0
  1823. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/bg.js +0 -0
  1824. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/bn.js +0 -0
  1825. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/bs.js +0 -0
  1826. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/ca.js +0 -0
  1827. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/cs.js +0 -0
  1828. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/da.js +0 -0
  1829. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/de.js +0 -0
  1830. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/dsb.js +0 -0
  1831. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/el.js +0 -0
  1832. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/en.js +0 -0
  1833. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/es.js +0 -0
  1834. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/et.js +0 -0
  1835. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/eu.js +0 -0
  1836. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/fa.js +0 -0
  1837. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/fi.js +0 -0
  1838. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/fr.js +0 -0
  1839. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/gl.js +0 -0
  1840. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/he.js +0 -0
  1841. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/hi.js +0 -0
  1842. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/hr.js +0 -0
  1843. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/hsb.js +0 -0
  1844. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/hu.js +0 -0
  1845. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/hy.js +0 -0
  1846. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/id.js +0 -0
  1847. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/is.js +0 -0
  1848. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/it.js +0 -0
  1849. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/ja.js +0 -0
  1850. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/ka.js +0 -0
  1851. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/km.js +0 -0
  1852. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/ko.js +0 -0
  1853. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/lt.js +0 -0
  1854. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/lv.js +0 -0
  1855. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/mk.js +0 -0
  1856. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/ms.js +0 -0
  1857. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/nb.js +0 -0
  1858. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/ne.js +0 -0
  1859. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/nl.js +0 -0
  1860. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/pl.js +0 -0
  1861. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/ps.js +0 -0
  1862. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/pt-BR.js +0 -0
  1863. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/pt.js +0 -0
  1864. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/ro.js +0 -0
  1865. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/ru.js +0 -0
  1866. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/sk.js +0 -0
  1867. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/sl.js +0 -0
  1868. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/sq.js +0 -0
  1869. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/sr-Cyrl.js +0 -0
  1870. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/sr.js +0 -0
  1871. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/sv.js +0 -0
  1872. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/th.js +0 -0
  1873. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/tk.js +0 -0
  1874. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/tr.js +0 -0
  1875. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/uk.js +0 -0
  1876. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/vi.js +0 -0
  1877. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/zh-CN.js +0 -0
  1878. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/i18n/zh-TW.js +0 -0
  1879. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/select2.min.css +0 -0
  1880. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-4.0.13/select2.min.js +0 -0
  1881. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/select2-bootstrap-0.1.0-beta.10/select2-bootstrap.min.css +0 -0
  1882. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/subscriptions-transport-ws-0.9.18/client.min.js +0 -0
  1883. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/project-static/whatwg-fetch-3.6.2/fetch.umd.min.js +0 -0
  1884. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/__init__.py +0 -0
  1885. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/api/__init__.py +0 -0
  1886. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/api/serializers.py +0 -0
  1887. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/api/urls.py +0 -0
  1888. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/api/views.py +0 -0
  1889. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/apps.py +0 -0
  1890. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/factory.py +0 -0
  1891. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/filters/__init__.py +0 -0
  1892. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/filters/mixins.py +0 -0
  1893. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/forms.py +0 -0
  1894. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/homepage.py +0 -0
  1895. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/migrations/0001_initial.py +0 -0
  1896. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/migrations/0002_auto_slug.py +0 -0
  1897. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/migrations/0003_mptt_to_tree_queries.py +0 -0
  1898. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/migrations/0004_change_tree_manager_on_tree_models.py +0 -0
  1899. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/migrations/0005_rename_foreign_keys_and_related_names.py +0 -0
  1900. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/migrations/0006_created_datetime.py +0 -0
  1901. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/migrations/0007_remove_tenant_tenantgroup_slug.py +0 -0
  1902. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/migrations/0008_tagsfield.py +0 -0
  1903. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/migrations/0009_update_all_charfields_max_length_to_255.py +0 -0
  1904. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/migrations/__init__.py +0 -0
  1905. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/models.py +0 -0
  1906. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/navigation.py +0 -0
  1907. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/tables.py +0 -0
  1908. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/templates/tenancy/tenant.html +0 -0
  1909. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/templates/tenancy/tenant_edit.html +0 -0
  1910. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/templates/tenancy/tenantgroup.html +0 -0
  1911. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/tests/__init__.py +0 -0
  1912. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/tests/test_api.py +0 -0
  1913. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/tests/test_filters.py +0 -0
  1914. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/tests/test_views.py +0 -0
  1915. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/urls.py +0 -0
  1916. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/tenancy/views.py +0 -0
  1917. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/__init__.py +0 -0
  1918. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/admin.py +0 -0
  1919. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/api/__init__.py +0 -0
  1920. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/api/serializers.py +0 -0
  1921. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/api/urls.py +0 -0
  1922. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/api/views.py +0 -0
  1923. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/apps.py +0 -0
  1924. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/factory.py +0 -0
  1925. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/filters.py +0 -0
  1926. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/forms.py +0 -0
  1927. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/migrations/0001_initial.py +0 -0
  1928. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/migrations/0002_token_ordering_by_created.py +0 -0
  1929. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/migrations/0003_alter_user_options.py +0 -0
  1930. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/migrations/0004_alter_user_managers.py +0 -0
  1931. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/migrations/0005_ensure_object_permission_names_are_unique.py +0 -0
  1932. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/migrations/0006_make_object_permission_name_globally_unique.py +0 -0
  1933. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/migrations/0007_alter_objectpermission_object_types.py +0 -0
  1934. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/migrations/0008_make_object_permission_a_changelogged_model.py +0 -0
  1935. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/migrations/0009_update_all_charfields_max_length_to_255.py +0 -0
  1936. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/migrations/__init__.py +0 -0
  1937. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/models.py +0 -0
  1938. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/templates/users/advanced_settings_edit.html +0 -0
  1939. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/templates/users/api_tokens.html +0 -0
  1940. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/templates/users/base.html +0 -0
  1941. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/templates/users/change_password.html +0 -0
  1942. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/templates/users/preferences.html +0 -0
  1943. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/templates/users/profile.html +0 -0
  1944. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/templates/users/sessionkey_delete.html +0 -0
  1945. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/tests/__init__.py +0 -0
  1946. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/tests/test_api.py +0 -0
  1947. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/tests/test_filters.py +0 -0
  1948. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/tests/test_models.py +0 -0
  1949. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/tests/test_views.py +0 -0
  1950. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/urls.py +0 -0
  1951. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/users/views.py +0 -0
  1952. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/__init__.py +0 -0
  1953. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/api/__init__.py +0 -0
  1954. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/api/serializers.py +0 -0
  1955. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/api/urls.py +0 -0
  1956. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/api/views.py +0 -0
  1957. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/apps.py +0 -0
  1958. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/choices.py +0 -0
  1959. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/factory.py +0 -0
  1960. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/filters.py +0 -0
  1961. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/forms.py +0 -0
  1962. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/graphql/__init__.py +0 -0
  1963. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/graphql/types.py +0 -0
  1964. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/homepage.py +0 -0
  1965. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0001_initial.py +0 -0
  1966. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0002_virtualmachine_local_context_schema.py +0 -0
  1967. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0003_vminterface_verbose_name.py +0 -0
  1968. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0004_auto_slug.py +0 -0
  1969. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0005_add_natural_indexing.py +0 -0
  1970. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0006_vminterface_status.py +0 -0
  1971. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0007_vminterface_status_data_migration.py +0 -0
  1972. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0008_vminterface_parent.py +0 -0
  1973. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0009_cluster_location.py +0 -0
  1974. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0010_vminterface_mac_address_data_migration.py +0 -0
  1975. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0011_alter_vminterface_mac_address.py +0 -0
  1976. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0012_alter_virtualmachine_role_add_new_role.py +0 -0
  1977. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0013_migrate_virtualmachine_role_data.py +0 -0
  1978. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0014_rename_virtualmachine_roles.py +0 -0
  1979. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0015_rename_foreignkey_fields.py +0 -0
  1980. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0016_remove_site_foreign_key_from_cluster_class.py +0 -0
  1981. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0017_created_datetime.py +0 -0
  1982. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0018_related_name_changes.py +0 -0
  1983. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0019_vminterface_ip_addresses_m2m.py +0 -0
  1984. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0020_remove_clustergroup_clustertype_slug.py +0 -0
  1985. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0021_tagsfield_and_vminterface_to_primarymodel.py +0 -0
  1986. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0022_vminterface_timestamps_data_migration.py +0 -0
  1987. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0023_ipam__namespaces.py +0 -0
  1988. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0024_fixup_null_statuses.py +0 -0
  1989. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0025_status_nonnullable.py +0 -0
  1990. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0026_change_virtualmachine_primary_ip_fields.py +0 -0
  1991. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0027_virtualmachine_software_image.py +0 -0
  1992. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/0028_update_all_charfields_max_length_to_255.py +0 -0
  1993. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/migrations/__init__.py +0 -0
  1994. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/models.py +0 -0
  1995. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/navigation.py +0 -0
  1996. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/signals.py +0 -0
  1997. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/tables.py +0 -0
  1998. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/cluster.html +0 -0
  1999. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/cluster_add_devices.html +0 -0
  2000. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/cluster_edit.html +0 -0
  2001. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/clustergroup.html +0 -0
  2002. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/clustertype.html +0 -0
  2003. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/virtual_machine_vminterface_delete.html +0 -0
  2004. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/virtualmachine.html +0 -0
  2005. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/virtualmachine_component_add.html +0 -0
  2006. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/virtualmachine_edit.html +0 -0
  2007. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/virtualmachine_list.html +0 -0
  2008. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/vminterface.html +0 -0
  2009. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/vminterface_bulk_delete.html +0 -0
  2010. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/templates/virtualization/vminterface_edit.html +0 -0
  2011. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/tests/__init__.py +0 -0
  2012. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/tests/test_api.py +0 -0
  2013. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/tests/test_filters.py +0 -0
  2014. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/tests/test_models.py +0 -0
  2015. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/tests/test_views.py +0 -0
  2016. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/urls.py +0 -0
  2017. {nautobot-2.2.1 → nautobot-2.2.2}/nautobot/virtualization/views.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: nautobot
3
- Version: 2.2.1
3
+ Version: 2.2.2
4
4
  Summary: Source of truth and network automation platform.
5
5
  Home-page: https://nautobot.com
6
6
  License: Apache-2.0
@@ -90,7 +90,8 @@ class HomeViewTestCase(TestCase):
90
90
  difference = [model for model in existing_models if model not in global_searchable_models]
91
91
  if difference:
92
92
  self.fail(
93
- f'Existing model/models {",".join(difference)} are not included in the searchable_models attribute of the app config.\nIf you do not want the models to be searchable, please include them in the GLOBAL_SEARCH_EXCLUDE_LIST constant in nautobot.core.constants.'
93
+ f'Existing model/models {",".join(difference)} are not included in the searchable_models attribute of the app config.\n'
94
+ 'If you do not want the models to be searchable, please include them in the GLOBAL_SEARCH_EXCLUDE_LIST constant in nautobot.core.constants.'
94
95
  )
95
96
 
96
97
  def make_request(self):
@@ -54,9 +54,10 @@ from nautobot.core.views.utils import (
54
54
  import_csv_helper,
55
55
  prepare_cloned_fields,
56
56
  )
57
+ from nautobot.extras.context_managers import deferred_change_logging_for_bulk_operation
57
58
  from nautobot.extras.models import ContactAssociation, ExportTemplate
58
59
  from nautobot.extras.tables import AssociatedContactsTable
59
- from nautobot.extras.utils import remove_prefix_from_cf_key
60
+ from nautobot.extras.utils import bulk_delete_with_bulk_change_logging, remove_prefix_from_cf_key
60
61
 
61
62
 
62
63
  class GenericView(LoginRequiredMixin, View):
@@ -988,7 +989,7 @@ class BulkEditView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View):
988
989
  nullified_fields = request.POST.getlist("_nullify")
989
990
 
990
991
  try:
991
- with transaction.atomic():
992
+ with deferred_change_logging_for_bulk_operation():
992
993
  updated_objects = []
993
994
  for obj in self.queryset.filter(pk__in=form.cleaned_data["pk"]):
994
995
  obj = self.alter_obj(obj, request, [], kwargs)
@@ -1252,13 +1253,12 @@ class BulkDeleteView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View):
1252
1253
 
1253
1254
  self.perform_pre_delete(request, queryset)
1254
1255
  try:
1255
- _, deleted_info = queryset.delete()
1256
+ _, deleted_info = bulk_delete_with_bulk_change_logging(queryset)
1256
1257
  deleted_count = deleted_info[model._meta.label]
1257
1258
  except ProtectedError as e:
1258
1259
  logger.info("Caught ProtectedError while attempting to delete objects")
1259
1260
  handle_protectederror(queryset, request, e)
1260
1261
  return redirect(self.get_return_url(request))
1261
-
1262
1262
  msg = f"Deleted {deleted_count} {model._meta.verbose_name_plural}"
1263
1263
  logger.info(msg)
1264
1264
  messages.success(request, msg)
@@ -45,10 +45,11 @@ from nautobot.core.views.utils import (
45
45
  import_csv_helper,
46
46
  prepare_cloned_fields,
47
47
  )
48
+ from nautobot.extras.context_managers import deferred_change_logging_for_bulk_operation
48
49
  from nautobot.extras.forms import NoteForm
49
50
  from nautobot.extras.models import ExportTemplate
50
51
  from nautobot.extras.tables import NoteTable, ObjectChangeTable
51
- from nautobot.extras.utils import remove_prefix_from_cf_key
52
+ from nautobot.extras.utils import bulk_delete_with_bulk_change_logging, remove_prefix_from_cf_key
52
53
 
53
54
  PERMISSIONS_ACTION_MAP = {
54
55
  "list": "view",
@@ -846,7 +847,7 @@ class ObjectBulkDestroyViewMixin(NautobotViewSetMixin, BulkDestroyModelMixin):
846
847
 
847
848
  try:
848
849
  with transaction.atomic():
849
- deleted_count = queryset.delete()[1][model._meta.label]
850
+ deleted_count = bulk_delete_with_bulk_change_logging(queryset)[1][model._meta.label]
850
851
  msg = f"Deleted {deleted_count} {model._meta.verbose_name_plural}"
851
852
  self.logger.info(msg)
852
853
  self.success_url = self.get_return_url(request)
@@ -978,7 +979,7 @@ class ObjectBulkUpdateViewMixin(NautobotViewSetMixin, BulkUpdateModelMixin):
978
979
  if field not in form_custom_fields + form_relationships + ["pk"] + ["object_note"]
979
980
  ]
980
981
  nullified_fields = request.POST.getlist("_nullify")
981
- with transaction.atomic():
982
+ with deferred_change_logging_for_bulk_operation():
982
983
  updated_objects = []
983
984
  for obj in queryset.filter(pk__in=form.cleaned_data["pk"]):
984
985
  self.obj = obj
@@ -1,11 +1,18 @@
1
1
  import logging
2
- import os
3
2
 
4
3
  from django.core import cache
5
4
  from django.core.wsgi import get_wsgi_application
6
5
  from django.db import connections
7
6
 
8
- os.environ["DJANGO_SETTINGS_MODULE"] = "nautobot_config"
7
+ import nautobot
8
+
9
+ # This is the Django default left here for visibility on how the Nautobot pattern
10
+ # differs.
11
+ # os.environ.setdefault("DJANGO_SETTINGS_MODULE", "nautobot.core.settings")
12
+
13
+ # Instead of just pointing to `DJANGO_SETTINGS_MODULE` and letting Django run with it,
14
+ # we're using the custom Nautobot loader code to read environment or config path for us.
15
+ nautobot.setup()
9
16
 
10
17
  # Use try/except because we might not be running uWSGI. If `settings.WEBSERVER_WARMUP` is `True`,
11
18
  # will first call `get_internal_wsgi_application` which does not have `uwsgi` module loaded
@@ -55,7 +55,7 @@ from nautobot.extras.forms import (
55
55
  )
56
56
  from nautobot.extras.models import ExternalIntegration, SecretsGroup, Status
57
57
  from nautobot.ipam.constants import BGP_ASN_MAX, BGP_ASN_MIN
58
- from nautobot.ipam.models import IPAddress, IPAddressToInterface, VLAN, VRF
58
+ from nautobot.ipam.models import IPAddress, IPAddressToInterface, VLAN, VLANLocationAssignment, VRF
59
59
  from nautobot.tenancy.forms import TenancyFilterForm, TenancyForm
60
60
  from nautobot.tenancy.models import Tenant, TenantGroup
61
61
  from nautobot.virtualization.models import Cluster, ClusterGroup, VirtualMachine
@@ -194,8 +194,13 @@ class InterfaceCommonForm(forms.Form):
194
194
  # TODO: after Location model replaced Site, which was not a hierarchical model, should we allow users to add a VLAN
195
195
  # belongs to the parent Location or the child location of the parent device to the `tagged_vlan` field of the interface?
196
196
  elif mode == InterfaceModeChoices.MODE_TAGGED:
197
- valid_locations = [None, self.cleaned_data[parent_field].location]
198
- invalid_vlans = [str(v) for v in tagged_vlans if v.location not in valid_locations]
197
+ valid_location = self.cleaned_data[parent_field].location
198
+ invalid_vlans = [
199
+ str(v)
200
+ for v in tagged_vlans
201
+ if v.locations.without_tree_fields().exists()
202
+ and not VLANLocationAssignment.objects.filter(location=valid_location, vlan=v).exists()
203
+ ]
199
204
 
200
205
  if invalid_vlans:
201
206
  raise forms.ValidationError(
@@ -65,7 +65,7 @@ var ready = (callback) => {
65
65
  };
66
66
 
67
67
  function getAttribute(node, querySelector, attribute) {
68
- if (node === null or node.querySelector(querySelector) === null) {
68
+ if (node === null || node.querySelector(querySelector) === null) {
69
69
  return "";
70
70
  }
71
71
  return node.querySelector(querySelector).getAttribute(attribute) || "";
@@ -131,4 +131,4 @@ ready(() => {
131
131
  });
132
132
 
133
133
  </script>
134
- {% endblock %}
134
+ {% endblock %}
@@ -20,7 +20,7 @@
20
20
  </tr>
21
21
  <tr>
22
22
  <td>Total Devices</td>
23
- <td>{{ total_devices }}</td>
23
+ <td><a href="{% url 'dcim:device_list' %}?device_family={{ object.name }}">{{ total_devices }}</a></td>
24
24
  </tr>
25
25
  </table>
26
26
  </div>
@@ -1,8 +1,8 @@
1
1
  from django.test import TestCase
2
2
 
3
3
  from nautobot.core.testing.forms import FormTestCases
4
- from nautobot.dcim.choices import DeviceFaceChoices, InterfaceTypeChoices, RackWidthChoices
5
- from nautobot.dcim.forms import DeviceFilterForm, DeviceForm, InterfaceCreateForm, RackForm
4
+ from nautobot.dcim.choices import DeviceFaceChoices, InterfaceModeChoices, InterfaceTypeChoices, RackWidthChoices
5
+ from nautobot.dcim.forms import DeviceFilterForm, DeviceForm, InterfaceCreateForm, InterfaceForm, RackForm
6
6
  from nautobot.dcim.models import (
7
7
  Device,
8
8
  DeviceType,
@@ -14,6 +14,7 @@ from nautobot.dcim.models import (
14
14
  Rack,
15
15
  )
16
16
  from nautobot.extras.models import Role, SecretsGroup, Status
17
+ from nautobot.ipam.models import VLAN
17
18
  from nautobot.tenancy.models import Tenant
18
19
  from nautobot.virtualization.models import Cluster, ClusterGroup, ClusterType
19
20
 
@@ -263,3 +264,49 @@ class RackTestCase(TestCase):
263
264
  }
264
265
  form = RackForm(data=data, instance=racks[0])
265
266
  self.assertTrue(form.is_valid())
267
+
268
+
269
+ class InterfaceTestCase(TestCase):
270
+ @classmethod
271
+ def setUpTestData(cls):
272
+ cls.device = Device.objects.first()
273
+ status = Status.objects.get_for_model(Interface).first()
274
+ cls.interface = Interface.objects.create(
275
+ device=cls.device,
276
+ name="test interface form 0.0",
277
+ type=InterfaceTypeChoices.TYPE_2GFC_SFP,
278
+ status=status,
279
+ )
280
+ cls.vlan = VLAN.objects.first()
281
+ cls.data = {
282
+ "device": cls.device.pk,
283
+ "name": "test interface form 0.0",
284
+ "type": InterfaceTypeChoices.TYPE_2GFC_SFP,
285
+ "status": status.pk,
286
+ "mode": InterfaceModeChoices.MODE_TAGGED,
287
+ "tagged_vlans": [cls.vlan.pk],
288
+ }
289
+
290
+ def test_interface_form_clean_vlan_location_fail(self):
291
+ """Assert that form validation fails when no matching locations are associated to tagged VLAN"""
292
+ self.vlan.locations.set(list(Location.objects.exclude(pk=self.device.location.pk))[:2])
293
+ form = InterfaceForm(data=self.data, instance=self.interface)
294
+ self.assertFalse(form.is_valid())
295
+
296
+ def test_interface_vlan_location_clean_multiple_locations_pass(self):
297
+ """Assert that form validation passes when multiple locations are associated to tagged VLAN with one matching"""
298
+ self.vlan.locations.add(self.device.location)
299
+ form = InterfaceForm(data=self.data, instance=self.interface)
300
+ self.assertTrue(form.is_valid())
301
+
302
+ def test_interface_vlan_location_clean_single_location_pass(self):
303
+ """Assert that form validation passes when a single location is associated to tagged VLAN"""
304
+ self.vlan.locations.set([self.device.location])
305
+ form = InterfaceForm(data=self.data, instance=self.interface)
306
+ self.assertTrue(form.is_valid())
307
+
308
+ def test_interface_vlan_location_clean_no_locations_pass(self):
309
+ """Assert that form validation passes when no locations are associated to tagged VLAN"""
310
+ self.vlan.locations.clear()
311
+ form = InterfaceForm(data=self.data, instance=self.interface)
312
+ self.assertTrue(form.is_valid())
@@ -3,9 +3,11 @@ import uuid
3
3
 
4
4
  from django.contrib.auth import get_user_model
5
5
  from django.contrib.auth.models import AnonymousUser
6
+ from django.db import transaction
6
7
  from django.test.client import RequestFactory
7
8
 
8
9
  from nautobot.extras.choices import ObjectChangeEventContextChoices
10
+ from nautobot.extras.constants import CHANGELOG_MAX_CHANGE_CONTEXT_DETAIL
9
11
  from nautobot.extras.models import ObjectChange
10
12
  from nautobot.extras.signals import change_context_state, get_user_if_authenticated
11
13
  from nautobot.extras.webhooks import enqueue_webhooks
@@ -25,9 +27,12 @@ class ChangeContext:
25
27
  :param change_id: Optional uuid object to uniquely identify the transaction. One will be generated if not supplied
26
28
  """
27
29
 
30
+ defer_object_changes = False # advanced usage, for creating object changes in bulk
31
+
28
32
  def __init__(self, user=None, request=None, context=None, context_detail="", change_id=None):
29
33
  self.request = request
30
34
  self.user = user
35
+ self.reset_deferred_object_changes()
31
36
 
32
37
  if self.request is None and self.user is None:
33
38
  raise TypeError("Either user or request must be provided")
@@ -63,6 +68,36 @@ class ChangeContext:
63
68
  }
64
69
  return context
65
70
 
71
+ def _object_change_batch(self, n):
72
+ # Return first n keys from the self.deferred_object_changes dict
73
+ keys = []
74
+ for i, k in enumerate(self.deferred_object_changes.keys()):
75
+ if i >= n:
76
+ return keys
77
+ keys.append(k)
78
+ return keys
79
+
80
+ def reset_deferred_object_changes(self):
81
+ self.deferred_object_changes = {}
82
+
83
+ def flush_deferred_object_changes(self, batch_size=1000):
84
+ if self.defer_object_changes:
85
+ self.create_object_changes(batch_size=batch_size)
86
+
87
+ def create_object_changes(self, batch_size=1000):
88
+ while self.deferred_object_changes:
89
+ create_object_changes = []
90
+ for key in self._object_change_batch(batch_size):
91
+ for entry in self.deferred_object_changes[key]:
92
+ objectchange = entry["instance"].to_objectchange(entry["action"])
93
+ objectchange.user = entry["user"]
94
+ objectchange.request_id = self.change_id
95
+ objectchange.change_context = self.context
96
+ objectchange.change_context_detail = self.context_detail[:CHANGELOG_MAX_CHANGE_CONTEXT_DETAIL]
97
+ create_object_changes.append(objectchange)
98
+ self.deferred_object_changes.pop(key, None)
99
+ ObjectChange.objects.bulk_create(create_object_changes, batch_size=batch_size)
100
+
66
101
 
67
102
  class JobChangeContext(ChangeContext):
68
103
  """ChangeContext for changes made by jobs"""
@@ -163,3 +198,24 @@ def web_request_context(
163
198
  for object_change in ObjectChange.objects.filter(request_id=change_context.change_id).iterator():
164
199
  enqueue_job_hooks(object_change)
165
200
  enqueue_webhooks(object_change)
201
+
202
+
203
+ @contextmanager
204
+ def deferred_change_logging_for_bulk_operation():
205
+ """
206
+ Defers change logging until the end of the context manager to improve performance. For use with bulk edit views. This
207
+ context manager is wrapped in an atomic transaction.
208
+ """
209
+
210
+ change_context = change_context_state.get()
211
+ if change_context is None:
212
+ raise ValueError("Change logging must be enabled before using deferred_change_logging_for_bulk_operation")
213
+
214
+ with transaction.atomic():
215
+ try:
216
+ change_context.defer_object_changes = True
217
+ yield
218
+ change_context.flush_deferred_object_changes()
219
+ finally:
220
+ change_context.defer_object_changes = False
221
+ change_context.reset_deferred_object_changes()
@@ -103,7 +103,9 @@ def _handle_changed_object(sender, instance, raw=False, **kwargs):
103
103
  if raw:
104
104
  return
105
105
 
106
- if change_context_state.get() is None:
106
+ change_context = change_context_state.get()
107
+
108
+ if change_context is None:
107
109
  return
108
110
 
109
111
  # Determine the type of change being made
@@ -119,36 +121,49 @@ def _handle_changed_object(sender, instance, raw=False, **kwargs):
119
121
 
120
122
  # Record an ObjectChange if applicable
121
123
  if hasattr(instance, "to_objectchange"):
122
- user = change_context_state.get().get_user(instance)
124
+ user = change_context.get_user(instance)
123
125
  # save a copy of this instance's field cache so it can be restored after serialization
124
126
  # to prevent unexpected behavior when chaining multiple signal handlers
125
127
  original_cache = instance._state.fields_cache.copy()
126
128
 
129
+ changed_object_type = ContentType.objects.get_for_model(instance)
130
+ changed_object_id = instance.id
131
+
132
+ # Generate a unique identifier for this change to stash in the change context
133
+ # This is used for deferred change logging and for looking up related changes without querying the database
134
+ unique_object_change_id = f"{changed_object_type.pk}__{changed_object_id}__{user.pk}"
135
+
127
136
  # If a change already exists for this change_id, user, and object, update it instead of creating a new one.
128
137
  # If the object was deleted then recreated with the same pk (don't do this), change the action to update.
129
- related_changes = ObjectChange.objects.filter(
130
- changed_object_type=ContentType.objects.get_for_model(instance),
131
- changed_object_id=instance.pk,
132
- user=user,
133
- request_id=change_context_state.get().change_id,
134
- )
135
- objectchange = instance.to_objectchange(action)
136
- if related_changes.exists():
137
- most_recent_change = related_changes.order_by("-time").first()
138
- if most_recent_change.action == ObjectChangeActionChoices.ACTION_DELETE:
139
- most_recent_change.action = ObjectChangeActionChoices.ACTION_UPDATE
140
- most_recent_change.object_data = objectchange.object_data
141
- most_recent_change.object_data_v2 = objectchange.object_data_v2
142
- most_recent_change.save()
143
- objectchange = most_recent_change
138
+ if unique_object_change_id in change_context.deferred_object_changes:
139
+ related_changes = ObjectChange.objects.filter(
140
+ changed_object_type=changed_object_type,
141
+ changed_object_id=changed_object_id,
142
+ user=user,
143
+ request_id=change_context.change_id,
144
+ )
145
+
146
+ # Skip the database check when deferring object changes
147
+ if not change_context.defer_object_changes and related_changes.exists():
148
+ objectchange = instance.to_objectchange(action)
149
+ most_recent_change = related_changes.order_by("-time").first()
150
+ if most_recent_change.action == ObjectChangeActionChoices.ACTION_DELETE:
151
+ most_recent_change.action = ObjectChangeActionChoices.ACTION_UPDATE
152
+ most_recent_change.object_data = objectchange.object_data
153
+ most_recent_change.object_data_v2 = objectchange.object_data_v2
154
+ most_recent_change.save()
155
+
144
156
  else:
145
- objectchange.user = user
146
- objectchange.request_id = change_context_state.get().change_id
147
- objectchange.change_context = change_context_state.get().context
148
- objectchange.change_context_detail = change_context_state.get().context_detail[
149
- :CHANGELOG_MAX_CHANGE_CONTEXT_DETAIL
157
+ change_context.deferred_object_changes[unique_object_change_id] = [
158
+ {"action": action, "instance": instance, "user": user}
150
159
  ]
151
- objectchange.save()
160
+ if not change_context.defer_object_changes:
161
+ objectchange = instance.to_objectchange(action)
162
+ objectchange.user = user
163
+ objectchange.request_id = change_context.change_id
164
+ objectchange.change_context = change_context.context
165
+ objectchange.change_context_detail = change_context.context_detail[:CHANGELOG_MAX_CHANGE_CONTEXT_DETAIL]
166
+ objectchange.save()
152
167
 
153
168
  # restore field cache
154
169
  instance._state.fields_cache = original_cache
@@ -171,7 +186,9 @@ def _handle_deleted_object(sender, instance, **kwargs):
171
186
  """
172
187
  Fires when an object is deleted.
173
188
  """
174
- if change_context_state.get() is None:
189
+ change_context = change_context_state.get()
190
+
191
+ if change_context is None:
175
192
  return
176
193
 
177
194
  if isinstance(instance, BaseModel):
@@ -186,41 +203,58 @@ def _handle_deleted_object(sender, instance, **kwargs):
186
203
 
187
204
  # Record an ObjectChange if applicable
188
205
  if hasattr(instance, "to_objectchange"):
189
- user = change_context_state.get().get_user(instance)
206
+ user = change_context.get_user(instance)
190
207
 
191
208
  # save a copy of this instance's field cache so it can be restored after serialization
192
209
  # to prevent unexpected behavior when chaining multiple signal handlers
193
210
  original_cache = instance._state.fields_cache.copy()
194
211
 
212
+ changed_object_type = ContentType.objects.get_for_model(instance)
213
+ changed_object_id = instance.id
214
+
215
+ # Generate a unique identifier for this change to stash in the change context
216
+ # This is used for deferred change logging and for looking up related changes without querying the database
217
+ unique_object_change_id = f"{changed_object_type.pk}__{changed_object_id}__{user.pk}"
218
+ save_new_objectchange = True
219
+
195
220
  # if a change already exists for this change_id, user, and object, update it instead of creating a new one
196
221
  # except in the case that the object was created and deleted in the same change_id
197
222
  # we don't want to create a delete change for an object that never existed
198
- related_changes = ObjectChange.objects.filter(
199
- changed_object_type=ContentType.objects.get_for_model(instance),
200
- changed_object_id=instance.pk,
201
- user=user,
202
- request_id=change_context_state.get().change_id,
203
- )
204
- objectchange = instance.to_objectchange(ObjectChangeActionChoices.ACTION_DELETE)
205
- save_new_objectchange = True
206
- if related_changes.exists():
207
- most_recent_change = related_changes.order_by("-time").first()
208
- if most_recent_change.action != ObjectChangeActionChoices.ACTION_CREATE:
209
- most_recent_change.action = ObjectChangeActionChoices.ACTION_DELETE
210
- most_recent_change.object_data = objectchange.object_data
211
- most_recent_change.object_data_v2 = objectchange.object_data_v2
212
- most_recent_change.save()
213
- objectchange = most_recent_change
223
+ if unique_object_change_id in change_context.deferred_object_changes:
224
+ cached_related_change = change_context.deferred_object_changes[unique_object_change_id][-1]
225
+ if cached_related_change["action"] != ObjectChangeActionChoices.ACTION_CREATE:
226
+ cached_related_change["action"] = ObjectChangeActionChoices.ACTION_DELETE
214
227
  save_new_objectchange = False
215
228
 
229
+ related_changes = ObjectChange.objects.filter(
230
+ changed_object_type=changed_object_type,
231
+ changed_object_id=changed_object_id,
232
+ user=user,
233
+ request_id=change_context.change_id,
234
+ )
235
+
236
+ # Skip the database check when deferring object changes
237
+ if not change_context.defer_object_changes and related_changes.exists():
238
+ objectchange = instance.to_objectchange(ObjectChangeActionChoices.ACTION_DELETE)
239
+ most_recent_change = related_changes.order_by("-time").first()
240
+ if most_recent_change.action != ObjectChangeActionChoices.ACTION_CREATE:
241
+ most_recent_change.action = ObjectChangeActionChoices.ACTION_DELETE
242
+ most_recent_change.object_data = objectchange.object_data
243
+ most_recent_change.object_data_v2 = objectchange.object_data_v2
244
+ most_recent_change.save()
245
+ save_new_objectchange = False
246
+
216
247
  if save_new_objectchange:
217
- objectchange.user = user
218
- objectchange.request_id = change_context_state.get().change_id
219
- objectchange.change_context = change_context_state.get().context
220
- objectchange.change_context_detail = change_context_state.get().context_detail[
221
- :CHANGELOG_MAX_CHANGE_CONTEXT_DETAIL
222
- ]
223
- objectchange.save()
248
+ change_context.deferred_object_changes.setdefault(unique_object_change_id, []).append(
249
+ {"action": ObjectChangeActionChoices.ACTION_DELETE, "instance": instance, "user": user}
250
+ )
251
+ if not change_context.defer_object_changes:
252
+ objectchange = instance.to_objectchange(ObjectChangeActionChoices.ACTION_DELETE)
253
+ objectchange.user = user
254
+ objectchange.request_id = change_context.change_id
255
+ objectchange.change_context = change_context.context
256
+ objectchange.change_context_detail = change_context.context_detail[:CHANGELOG_MAX_CHANGE_CONTEXT_DETAIL]
257
+ objectchange.save()
224
258
 
225
259
  # restore field cache
226
260
  instance._state.fields_cache = original_cache
@@ -7,7 +7,10 @@ from nautobot.core.testing import TransactionTestCase
7
7
  from nautobot.core.utils.lookup import get_changes_for_model
8
8
  from nautobot.dcim.models import Location, LocationType
9
9
  from nautobot.extras.choices import ObjectChangeActionChoices, ObjectChangeEventContextChoices
10
- from nautobot.extras.context_managers import web_request_context
10
+ from nautobot.extras.context_managers import (
11
+ deferred_change_logging_for_bulk_operation,
12
+ web_request_context,
13
+ )
11
14
  from nautobot.extras.models import Status, Webhook
12
15
 
13
16
  # Use the proper swappable User model
@@ -193,3 +196,97 @@ class WebRequestContextTransactionTestCase(TransactionTestCase):
193
196
  Status.objects.create(name="Test Status 2")
194
197
 
195
198
  self.assertEqual(get_changes_for_model(Status).count(), 2)
199
+
200
+
201
+ class BulkEditDeleteChangeLogging(TestCase):
202
+ def setUp(self):
203
+ self.user = User.objects.create_user(
204
+ username="jacob",
205
+ email="jacob@example.com",
206
+ password="top_secret", # noqa: S106 # hardcoded-password-func-arg -- ok as this is test code only
207
+ )
208
+
209
+ def test_change_log_created(self):
210
+ location_type = LocationType.objects.get(name="Campus")
211
+ location_status = Status.objects.get_for_model(Location).first()
212
+ with web_request_context(self.user):
213
+ with deferred_change_logging_for_bulk_operation():
214
+ location = Location(name="Test Location 1", location_type=location_type, status=location_status)
215
+ location.save()
216
+
217
+ location = Location.objects.get(name="Test Location 1")
218
+ oc_list = get_changes_for_model(location).order_by("pk")
219
+ self.assertEqual(len(oc_list), 1)
220
+ self.assertEqual(oc_list[0].changed_object, location)
221
+ self.assertEqual(oc_list[0].action, ObjectChangeActionChoices.ACTION_CREATE)
222
+
223
+ def test_delete(self):
224
+ """Test that deletes raise an exception"""
225
+ location_type = LocationType.objects.get(name="Campus")
226
+ location_status = Status.objects.get_for_model(Location).first()
227
+ with self.assertRaises(ValueError):
228
+ with web_request_context(self.user):
229
+ with deferred_change_logging_for_bulk_operation():
230
+ location = Location(name="Test Location 1", location_type=location_type, status=location_status)
231
+ location.save()
232
+ location.delete()
233
+
234
+ def test_create_then_update(self):
235
+ """Test that a create followed by an update is logged as a single create"""
236
+ location_type = LocationType.objects.get(name="Campus")
237
+ location_status = Status.objects.get_for_model(Location).first()
238
+ with web_request_context(self.user):
239
+ with deferred_change_logging_for_bulk_operation():
240
+ location = Location(name="Test Location 1", location_type=location_type, status=location_status)
241
+ location.save()
242
+ location.description = "changed"
243
+ location.save()
244
+
245
+ oc_list = get_changes_for_model(location)
246
+ self.assertEqual(len(oc_list), 1)
247
+ self.assertEqual(oc_list[0].action, ObjectChangeActionChoices.ACTION_CREATE)
248
+ snapshots = oc_list[0].get_snapshots()
249
+ self.assertIsNone(snapshots["prechange"])
250
+ self.assertIsNotNone(snapshots["postchange"])
251
+ self.assertIsNone(snapshots["differences"]["removed"])
252
+ self.assertEqual(snapshots["differences"]["added"]["description"], "changed")
253
+
254
+ def test_bulk_edit(self):
255
+ """Test that edits to multiple objects are correctly logged"""
256
+ location_type = LocationType.objects.get(name="Campus")
257
+ location_status = Status.objects.get_for_model(Location).first()
258
+ locations = [
259
+ Location(name=f"Test Location {i}", location_type=location_type, status=location_status)
260
+ for i in range(1, 4)
261
+ ]
262
+ Location.objects.bulk_create(locations)
263
+ with web_request_context(self.user):
264
+ with deferred_change_logging_for_bulk_operation():
265
+ for location in locations:
266
+ location.description = "changed"
267
+ location.save()
268
+
269
+ oc_list = get_changes_for_model(Location)
270
+ self.assertEqual(len(oc_list), 3)
271
+ for oc in oc_list:
272
+ self.assertEqual(oc.action, ObjectChangeActionChoices.ACTION_UPDATE)
273
+ snapshots = oc.get_snapshots()
274
+ self.assertIsNone(snapshots["prechange"])
275
+ self.assertIsNotNone(snapshots["postchange"])
276
+ self.assertIsNone(snapshots["differences"]["removed"])
277
+ self.assertEqual(snapshots["differences"]["added"]["description"], "changed")
278
+
279
+ def test_change_log_context(self):
280
+ location_type = LocationType.objects.get(name="Campus")
281
+ location_status = Status.objects.get_for_model(Location).first()
282
+ with web_request_context(self.user, context_detail="test_change_log_context"):
283
+ with deferred_change_logging_for_bulk_operation():
284
+ location = Location(name="Test Location 1", location_type=location_type, status=location_status)
285
+ location.save()
286
+
287
+ location = Location.objects.get(name="Test Location 1")
288
+ oc_list = get_changes_for_model(location)
289
+ with self.subTest():
290
+ self.assertEqual(oc_list[0].change_context, ObjectChangeEventContextChoices.CONTEXT_ORM)
291
+ with self.subTest():
292
+ self.assertEqual(oc_list[0].change_context_detail, "test_change_log_context")
@@ -19,7 +19,9 @@ from nautobot.core.choices import ColorChoices
19
19
  from nautobot.core.constants import CHARFIELD_MAX_LENGTH
20
20
  from nautobot.core.models.managers import TagsManager
21
21
  from nautobot.core.models.utils import find_models_with_matching_fields
22
+ from nautobot.extras.choices import ObjectChangeActionChoices
22
23
  from nautobot.extras.constants import (
24
+ CHANGELOG_MAX_CHANGE_CONTEXT_DETAIL,
23
25
  EXTRAS_FEATURES,
24
26
  JOB_MAX_NAME_LENGTH,
25
27
  JOB_OVERRIDABLE_FIELDS,
@@ -610,3 +612,38 @@ def migrate_role_data(
610
612
  model_to_migrate._meta.label,
611
613
  to_role_field_name,
612
614
  )
615
+
616
+
617
+ def bulk_delete_with_bulk_change_logging(qs, batch_size=1000):
618
+ """
619
+ Deletes objects in the provided queryset and creates ObjectChange instances in bulk to improve performance.
620
+ For use with bulk delete views. This operation is wrapped in an atomic transaction.
621
+ """
622
+ from nautobot.extras.models import ObjectChange
623
+ from nautobot.extras.signals import change_context_state
624
+
625
+ change_context = change_context_state.get()
626
+ if change_context is None:
627
+ raise ValueError("Change logging must be enabled before using bulk_delete_with_bulk_change_logging")
628
+
629
+ with transaction.atomic():
630
+ try:
631
+ queued_object_changes = []
632
+ change_context.defer_object_changes = True
633
+ for obj in qs.iterator():
634
+ if not hasattr(obj, "to_objectchange"):
635
+ break
636
+ if len(queued_object_changes) >= batch_size:
637
+ ObjectChange.objects.bulk_create(queued_object_changes)
638
+ queued_object_changes = []
639
+ oc = obj.to_objectchange(ObjectChangeActionChoices.ACTION_DELETE)
640
+ oc.user = change_context.user
641
+ oc.request_id = change_context.change_id
642
+ oc.change_context = change_context.context
643
+ oc.change_context_detail = change_context.context_detail[:CHANGELOG_MAX_CHANGE_CONTEXT_DETAIL]
644
+ queued_object_changes.append(oc)
645
+ ObjectChange.objects.bulk_create(queued_object_changes)
646
+ return qs.delete()
647
+ finally:
648
+ change_context.defer_object_changes = False
649
+ change_context.reset_deferred_object_changes()