netbox-validity 3.4.1__tar.gz → 3.4.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 (170) hide show
  1. {netbox_validity-3.4.1/netbox_validity.egg-info → netbox_validity-3.4.2}/PKG-INFO +2 -2
  2. {netbox_validity-3.4.1 → netbox_validity-3.4.2/netbox_validity.egg-info}/PKG-INFO +2 -2
  3. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/netbox_validity.egg-info/requires.txt +1 -1
  4. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/pyproject.toml +1 -1
  5. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/requirements/base.txt +1 -1
  6. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/__init__.py +1 -1
  7. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/graphql/filters.py +8 -8
  8. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/graphql/schema.py +2 -1
  9. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/netbox_changes/__init__.py +6 -0
  10. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/report.py +2 -2
  11. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/LICENSE +0 -0
  12. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/MANIFEST.in +0 -0
  13. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/README.md +0 -0
  14. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/netbox_validity.egg-info/SOURCES.txt +0 -0
  15. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/netbox_validity.egg-info/dependency_links.txt +0 -0
  16. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/netbox_validity.egg-info/top_level.txt +0 -0
  17. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/requirements/dev.txt +0 -0
  18. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/requirements/docs.txt +0 -0
  19. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/setup.cfg +0 -0
  20. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/admin.py +0 -0
  21. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/api/__init__.py +0 -0
  22. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/api/helpers.py +0 -0
  23. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/api/serializers.py +0 -0
  24. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/api/urls.py +0 -0
  25. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/api/views.py +0 -0
  26. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/choices.py +0 -0
  27. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/dynamic_pairs.py +0 -0
  28. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/eval/__init__.py +0 -0
  29. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/eval/default_nameset.py +0 -0
  30. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/eval/eval.py +0 -0
  31. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/eval/eval_defaults.py +0 -0
  32. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/exceptions.py +0 -0
  33. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/serialization/__init__.py +0 -0
  34. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/serialization/backend.py +0 -0
  35. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/serialization/common.py +0 -0
  36. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/serialization/routeros.py +0 -0
  37. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/serialization/serializable.py +0 -0
  38. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/serialization/textfsm.py +0 -0
  39. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/serialization/ttp.py +0 -0
  40. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/serialization/xml.py +0 -0
  41. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/serialization/yaml.py +0 -0
  42. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/compliance/state.py +0 -0
  43. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/custom_validators.py +0 -0
  44. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/data_backends.py +0 -0
  45. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/data_backup/__init__.py +0 -0
  46. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/data_backup/backend.py +0 -0
  47. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/data_backup/backupers.py +0 -0
  48. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/data_backup/entities.py +0 -0
  49. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/data_backup/parameters.py +0 -0
  50. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/dependencies.py +0 -0
  51. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/fields/__init__.py +0 -0
  52. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/fields/encrypted.py +0 -0
  53. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/filtersets.py +0 -0
  54. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/forms/__init__.py +0 -0
  55. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/forms/bulk_import.py +0 -0
  56. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/forms/fields.py +0 -0
  57. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/forms/filterset.py +0 -0
  58. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/forms/general.py +0 -0
  59. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/forms/mixins.py +0 -0
  60. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/forms/widgets.py +0 -0
  61. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/graphql/__init__.py +0 -0
  62. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/graphql/types.py +0 -0
  63. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/integrations/data_models.py +0 -0
  64. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/integrations/errors.py +0 -0
  65. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/integrations/git.py +0 -0
  66. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/integrations/s3.py +0 -0
  67. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/j2_env.py +0 -0
  68. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/managers.py +0 -0
  69. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/migrations/0010_squashed_initial.py +0 -0
  70. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/migrations/0011_delete_scripts.py +0 -0
  71. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/migrations/0012_backuppoint_devicerole.py +0 -0
  72. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/migrations/0013_compliancetest_enabled.py +0 -0
  73. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/migrations/__init__.py +0 -0
  74. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/model_validators.py +0 -0
  75. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/__init__.py +0 -0
  76. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/backup.py +0 -0
  77. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/base.py +0 -0
  78. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/data.py +0 -0
  79. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/device.py +0 -0
  80. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/nameset.py +0 -0
  81. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/polling.py +0 -0
  82. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/report.py +0 -0
  83. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/selector.py +0 -0
  84. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/serializer.py +0 -0
  85. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/test.py +0 -0
  86. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/models/test_result.py +0 -0
  87. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/navigation.py +0 -0
  88. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/netbox_changes/current.py +0 -0
  89. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/netbox_changes/old.py +0 -0
  90. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/netbox_changes/oldest.py +0 -0
  91. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/pollers/__init__.py +0 -0
  92. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/pollers/base.py +0 -0
  93. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/pollers/cli.py +0 -0
  94. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/pollers/default_credentials.py +0 -0
  95. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/pollers/exceptions.py +0 -0
  96. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/pollers/factory.py +0 -0
  97. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/pollers/http.py +0 -0
  98. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/pollers/netconf.py +0 -0
  99. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/pollers/result.py +0 -0
  100. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/__init__.py +0 -0
  101. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/backup.py +0 -0
  102. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/data_models.py +0 -0
  103. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/exceptions.py +0 -0
  104. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/keeper.py +0 -0
  105. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/launch.py +0 -0
  106. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/parent_jobs.py +0 -0
  107. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/runtests/__init__.py +0 -0
  108. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/runtests/apply.py +0 -0
  109. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/runtests/combine.py +0 -0
  110. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/scripts/runtests/split.py +0 -0
  111. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/search.py +0 -0
  112. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/settings.py +0 -0
  113. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/signals.py +0 -0
  114. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/static/validity/connection-type-select.js +0 -0
  115. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/static/validity/prism-dark.css +0 -0
  116. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/static/validity/prism-light.css +0 -0
  117. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/static/validity/prism.js +0 -0
  118. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/subforms.py +0 -0
  119. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/tables.py +0 -0
  120. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/template_content.py +0 -0
  121. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/aux_tab_table.html +0 -0
  122. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/backuppoint.html +0 -0
  123. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/command.html +0 -0
  124. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/compliance_results.html +0 -0
  125. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/compliancereport.html +0 -0
  126. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/complianceselector.html +0 -0
  127. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/compliancetest.html +0 -0
  128. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/compliancetestresult.html +0 -0
  129. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/device_state.html +0 -0
  130. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/inc/configcontext_format.html +0 -0
  131. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/inc/datasource_link.html +0 -0
  132. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/inc/parameters.html +0 -0
  133. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/inc/path_with_link.html +0 -0
  134. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/inc/prism.html +0 -0
  135. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/inc/related_objects.html +0 -0
  136. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/inc/report_stats_row.html +0 -0
  137. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/inc/search_form.html +0 -0
  138. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/inc/yaml_card.html +0 -0
  139. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/nameset.html +0 -0
  140. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/poller.html +0 -0
  141. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/poller_edit.html +0 -0
  142. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/report_devices.html +0 -0
  143. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/scripts/result.html +0 -0
  144. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/scripts/result_htmx.html +0 -0
  145. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/scripts/run.html +0 -0
  146. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templates/validity/serializer.html +0 -0
  147. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templatetags/__init__.py +0 -0
  148. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templatetags/dto.py +0 -0
  149. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/templatetags/validity.py +0 -0
  150. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/urls.py +0 -0
  151. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/utils/bulk.py +0 -0
  152. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/utils/json.py +0 -0
  153. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/utils/logger.py +0 -0
  154. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/utils/misc.py +0 -0
  155. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/utils/orm.py +0 -0
  156. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/utils/version.py +0 -0
  157. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/__init__.py +0 -0
  158. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/backup.py +0 -0
  159. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/base.py +0 -0
  160. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/bulk_import.py +0 -0
  161. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/command.py +0 -0
  162. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/data_source.py +0 -0
  163. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/device.py +0 -0
  164. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/nameset.py +0 -0
  165. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/poller.py +0 -0
  166. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/script.py +0 -0
  167. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/selector.py +0 -0
  168. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/serializer.py +0 -0
  169. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/test.py +0 -0
  170. {netbox_validity-3.4.1 → netbox_validity-3.4.2}/validity/views/test_result.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: netbox-validity
3
- Version: 3.4.1
3
+ Version: 3.4.2
4
4
  Summary: NetBox plugin for network devices validation
5
5
  Author-email: Anton Miasnikov <anton2008m@gmail.com>
6
6
  License: MIT License
@@ -50,7 +50,7 @@ Requires-Dist: jq<2,>=1.4.0
50
50
  Requires-Dist: netmiko<5,>=4.0.0
51
51
  Requires-Dist: pydantic<3,>=2.0.0
52
52
  Requires-Dist: scrapli_netconf==2026.1.12
53
- Requires-Dist: simpleeval==1.0.3
53
+ Requires-Dist: simpleeval==1.0.7
54
54
  Requires-Dist: textfsm<2,>=1.1.3
55
55
  Requires-Dist: ttp<1
56
56
  Requires-Dist: xmltodict<1
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: netbox-validity
3
- Version: 3.4.1
3
+ Version: 3.4.2
4
4
  Summary: NetBox plugin for network devices validation
5
5
  Author-email: Anton Miasnikov <anton2008m@gmail.com>
6
6
  License: MIT License
@@ -50,7 +50,7 @@ Requires-Dist: jq<2,>=1.4.0
50
50
  Requires-Dist: netmiko<5,>=4.0.0
51
51
  Requires-Dist: pydantic<3,>=2.0.0
52
52
  Requires-Dist: scrapli_netconf==2026.1.12
53
- Requires-Dist: simpleeval==1.0.3
53
+ Requires-Dist: simpleeval==1.0.7
54
54
  Requires-Dist: textfsm<2,>=1.1.3
55
55
  Requires-Dist: ttp<1
56
56
  Requires-Dist: xmltodict<1
@@ -7,7 +7,7 @@ jq<2,>=1.4.0
7
7
  netmiko<5,>=4.0.0
8
8
  pydantic<3,>=2.0.0
9
9
  scrapli_netconf==2026.1.12
10
- simpleeval==1.0.3
10
+ simpleeval==1.0.7
11
11
  textfsm<2,>=1.1.3
12
12
  ttp<1
13
13
  xmltodict<1
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "netbox-validity"
7
- version = "3.4.1"
7
+ version = "3.4.2"
8
8
  description = "NetBox plugin for network devices validation"
9
9
  authors = [
10
10
  {name = "Anton Miasnikov", email = "anton2008m@gmail.com"},
@@ -7,7 +7,7 @@ jq>=1.4.0,<2
7
7
  netmiko>=4.0.0,<5
8
8
  pydantic>=2.0.0,<3
9
9
  scrapli_netconf==2026.1.12
10
- simpleeval==1.0.3
10
+ simpleeval==1.0.7
11
11
  textfsm>=1.1.3,<2
12
12
  ttp<1
13
13
  xmltodict<1
@@ -16,7 +16,7 @@ class NetBoxValidityConfig(PluginConfig):
16
16
  description = "Write and run auto tests for network devices"
17
17
  author = "Anton Miasnikov"
18
18
  author_email = "anton2008m@gmail.com"
19
- version = "3.4.1"
19
+ version = "3.4.2"
20
20
  base_url = "validity"
21
21
  django_apps = ["django_bootstrap5"]
22
22
  min_version = "4.3.0"
@@ -10,7 +10,7 @@ from strawberry.scalars import ID
10
10
  from strawberry_django import FilterLookup
11
11
 
12
12
  from validity import models
13
- from validity.netbox_changes import BaseModelFilter, NetBoxModelFilter
13
+ from validity.netbox_changes import BaseModelFilter, NetBoxModelFilter, StrFilterLookup
14
14
 
15
15
 
16
16
  @strawberry_django.filter_type(Job, lookups=True)
@@ -20,13 +20,13 @@ class JobFilter(NetBoxModelFilter):
20
20
 
21
21
  @strawberry_django.filter_type(models.ComplianceSelector, lookups=True)
22
22
  class ComplianceSelectorFilter(NetBoxModelFilter):
23
- name: FilterLookup[str] | None = strawberry_django.filter_field()
23
+ name: StrFilterLookup | None = strawberry_django.filter_field()
24
24
 
25
25
 
26
26
  @strawberry_django.filter_type(models.ComplianceTest, lookups=True)
27
27
  class ComplianceTestFilter(NetBoxModelFilter):
28
28
  id: FilterLookup[ID] | None = strawberry_django.filter_field()
29
- name: FilterLookup[str] | None = strawberry_django.filter_field()
29
+ name: StrFilterLookup | None = strawberry_django.filter_field()
30
30
  selectors: Annotated["ComplianceSelectorFilter", strawberry.lazy("validity.graphql.filters")] | None = (
31
31
  strawberry_django.filter_field()
32
32
  )
@@ -53,12 +53,12 @@ class ComplianceTestResultFilter(BaseModelFilter):
53
53
 
54
54
  @strawberry_django.filter_type(models.Serializer, lookups=True)
55
55
  class SerializerFilter(NetBoxModelFilter):
56
- name: FilterLookup[str] | None = strawberry_django.filter_field()
56
+ name: StrFilterLookup | None = strawberry_django.filter_field()
57
57
 
58
58
 
59
59
  @strawberry_django.filter_type(models.NameSet, lookups=True)
60
60
  class NameSetFilter(NetBoxModelFilter):
61
- name: FilterLookup[str] | None = strawberry_django.filter_field()
61
+ name: StrFilterLookup | None = strawberry_django.filter_field()
62
62
  _global: Annotated["bool", strawberry.lazy("builtins")] | None = strawberry_django.filter_field(name="global")
63
63
 
64
64
 
@@ -69,12 +69,12 @@ class ComplianceReportFilter(BaseModelFilter):
69
69
 
70
70
  @strawberry_django.filter_type(models.Poller, lookups=True)
71
71
  class PollerFilter(NetBoxModelFilter):
72
- name: FilterLookup[str] | None = strawberry_django.filter_field()
72
+ name: StrFilterLookup | None = strawberry_django.filter_field()
73
73
 
74
74
 
75
75
  @strawberry_django.filter_type(models.Command, lookups=True)
76
76
  class CommandFilter(NetBoxModelFilter):
77
- name: FilterLookup[str] | None = strawberry_django.filter_field()
77
+ name: StrFilterLookup | None = strawberry_django.filter_field()
78
78
  serializer: Annotated["SerializerFilter", strawberry.lazy("validity.graphql.filters")] | None = (
79
79
  strawberry_django.filter_field()
80
80
  )
@@ -86,7 +86,7 @@ class CommandFilter(NetBoxModelFilter):
86
86
 
87
87
  @strawberry_django.filter_type(models.BackupPoint, lookups=True)
88
88
  class BackupPointFilter(NetBoxModelFilter):
89
- name: FilterLookup[str] | None = strawberry_django.filter_field()
89
+ name: StrFilterLookup | None = strawberry_django.filter_field()
90
90
  data_source: Annotated["DataSourceFilter", strawberry.lazy("core.graphql.filters")] | None = (
91
91
  strawberry_django.filter_field()
92
92
  )
@@ -2,6 +2,7 @@ from typing import Annotated
2
2
 
3
3
  import strawberry
4
4
  import strawberry_django
5
+ from strawberry.types import Info
5
6
 
6
7
  from validity import models
7
8
  from .filters import NameSetFilter
@@ -42,7 +43,7 @@ class Query:
42
43
  @strawberry.field
43
44
  def validity_nameset_list(
44
45
  self,
45
- info,
46
+ info: Info,
46
47
  filters: NameSetFilter | None = None,
47
48
  global_filter: Annotated[bool | None, strawberry.argument(name="global")] = None,
48
49
  ) -> list[NameSetType]:
@@ -3,9 +3,15 @@ This package contains all duct tape stuff which is required to support
3
3
  different versions of NetBox together
4
4
  """
5
5
 
6
+ from pydoc import locate
7
+
8
+ from strawberry_django import FilterLookup
9
+
6
10
  from validity import config
7
11
 
8
12
 
13
+ StrFilterLookup = locate("strawberry_django.StrFilterLookup") if config.netbox_version >= "4.5.5" else FilterLookup[str]
14
+
9
15
  if config.netbox_version >= "4.5.0":
10
16
  from .current import *
11
17
  elif config.netbox_version >= "4.4.0":
@@ -8,7 +8,7 @@ from django_tables2 import SingleTableMixin
8
8
  from netbox.views import generic
9
9
  from utilities.views import ViewTab, register_model_view
10
10
 
11
- from validity import filtersets, forms, models, tables
11
+ from validity import config, filtersets, forms, models, tables
12
12
  from validity.choices import DeviceGroupByChoices, SeverityChoices
13
13
  from .base import FilterViewWithForm, ObjectPermissionRequiredMixin, TestResultBaseView
14
14
 
@@ -103,7 +103,7 @@ class ReportDeviceView(ObjectPermissionRequiredMixin, SingleTableMixin, FilterVi
103
103
  return table
104
104
 
105
105
  def get_table_kwargs(self):
106
- return {"user": self.request.user}
106
+ return {"user": self.request.user} if config.netbox_version < "4.5.4" else {}
107
107
 
108
108
  def get_context_data(self, **kwargs: Any) -> dict[str, Any]:
109
109
  return super().get_context_data(**kwargs) | {
File without changes