acex-devkit 2.11.0__tar.gz → 3.0.0__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 (116) hide show
  1. acex_devkit-3.0.0/PKG-INFO +28 -0
  2. acex_devkit-3.0.0/README.md +3 -0
  3. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/pyproject.toml +9 -1
  4. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/__init__.py +10 -6
  5. acex_devkit-3.0.0/src/acex_devkit/changelog.json +1901 -0
  6. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/configdiffer/configdiffer.py +124 -30
  7. acex_devkit-3.0.0/src/acex_devkit/configdiffer/diff.py +252 -0
  8. acex_devkit-3.0.0/src/acex_devkit/drivers/__init__.py +19 -0
  9. acex_devkit-3.0.0/src/acex_devkit/drivers/base.py +312 -0
  10. acex_devkit-3.0.0/src/acex_devkit/drivers/example_ned.py +115 -0
  11. acex_devkit-3.0.0/src/acex_devkit/drivers/mapper/__init__.py +61 -0
  12. acex_devkit-3.0.0/src/acex_devkit/drivers/mapper/context.py +38 -0
  13. acex_devkit-3.0.0/src/acex_devkit/drivers/mapper/mapper.py +498 -0
  14. acex_devkit-3.0.0/src/acex_devkit/drivers/mapper/patch.py +141 -0
  15. acex_devkit-3.0.0/src/acex_devkit/drivers/mapper/syntax.py +650 -0
  16. acex_devkit-3.0.0/src/acex_devkit/drivers/mapper/tokens.py +155 -0
  17. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/__init__.py +2 -2
  18. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/acl_model.py +1 -0
  19. acex_devkit-3.0.0/src/acex_devkit/models/actions.py +50 -0
  20. acex_devkit-3.0.0/src/acex_devkit/models/codec_result.py +43 -0
  21. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/collection_agent.py +9 -0
  22. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/composed_configuration.py +83 -14
  23. acex_devkit-3.0.0/src/acex_devkit/models/config_origin.py +27 -0
  24. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/config_snapshot.py +6 -0
  25. acex_devkit-3.0.0/src/acex_devkit/models/config_tree.py +99 -0
  26. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/credential.py +8 -0
  27. acex_devkit-3.0.0/src/acex_devkit/models/cve.py +74 -0
  28. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/job.py +10 -2
  29. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/logging.py +1 -0
  30. acex_devkit-3.0.0/src/acex_devkit/models/ned.py +59 -0
  31. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/node_response.py +5 -2
  32. acex_devkit-3.0.0/src/acex_devkit/models/operations.py +199 -0
  33. acex_devkit-3.0.0/src/acex_devkit/models/state.py +31 -0
  34. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/telemetry_agent.py +9 -0
  35. acex_devkit-3.0.0/src/acex_devkit/models/workflows.py +369 -0
  36. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/normalizer/__init__.py +2 -1
  37. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/normalizer/base.py +4 -0
  38. acex_devkit-3.0.0/src/acex_devkit/workflows/__init__.py +5 -0
  39. acex_devkit-3.0.0/src/acex_devkit/workflows/check.py +241 -0
  40. acex_devkit-3.0.0/src/acex_devkit/workflows/expressions.py +520 -0
  41. acex_devkit-2.11.0/PKG-INFO +0 -95
  42. acex_devkit-2.11.0/README.md +0 -71
  43. acex_devkit-2.11.0/src/acex_devkit/configdiffer/diff.py +0 -149
  44. acex_devkit-2.11.0/src/acex_devkit/drivers/__init__.py +0 -15
  45. acex_devkit-2.11.0/src/acex_devkit/drivers/base.py +0 -160
  46. acex_devkit-2.11.0/src/acex_devkit/drivers/base_driver.py +0 -61
  47. acex_devkit-2.11.0/src/acex_devkit/models/ned.py +0 -9
  48. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/configdiffer/__init__.py +0 -0
  49. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/configdiffer/command.py +0 -0
  50. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/configdiffer/old_configdiffer.py +0 -0
  51. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/configdiffer/old_diff.py +0 -0
  52. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/__init__.py +0 -0
  53. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/__init__.py +0 -0
  54. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/base.py +0 -0
  55. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst2950.py +0 -0
  56. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst2960.py +0 -0
  57. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst3500.py +0 -0
  58. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst3560.py +0 -0
  59. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst3650.py +0 -0
  60. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst3750.py +0 -0
  61. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst3850.py +0 -0
  62. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst4500.py +0 -0
  63. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst6500.py +0 -0
  64. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst6800.py +0 -0
  65. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst9200.py +0 -0
  66. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst9300.py +0 -0
  67. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst9400.py +0 -0
  68. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/catalyst9500.py +0 -0
  69. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/generic.py +0 -0
  70. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/industrial.py +0 -0
  71. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/modules.py +0 -0
  72. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/nexus9000.py +0 -0
  73. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/cisco/routers.py +0 -0
  74. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/fortinet/__init__.py +0 -0
  75. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/fortinet/base.py +0 -0
  76. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/fortinet/fortigate_f.py +0 -0
  77. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/juniper/__init__.py +0 -0
  78. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/juniper/base.py +0 -0
  79. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/juniper/ex2300.py +0 -0
  80. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/juniper/ex3400.py +0 -0
  81. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/juniper/ex4100.py +0 -0
  82. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/juniper/ex4400.py +0 -0
  83. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/juniper/ex4650.py +0 -0
  84. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/device_types/juniper/modules.py +0 -0
  85. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/exceptions/__init__.py +0 -0
  86. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/agent_manifest.py +0 -0
  87. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/ai_ops.py +0 -0
  88. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/asset.py +0 -0
  89. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/assignment.py +0 -0
  90. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/attribute_value.py +0 -0
  91. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/augment.py +0 -0
  92. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/auth_config.py +0 -0
  93. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/base.py +0 -0
  94. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/capability.py +0 -0
  95. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/compliance.py +0 -0
  96. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/config_components.py +0 -0
  97. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/contact.py +0 -0
  98. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/container_entry.py +0 -0
  99. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/device_type.py +0 -0
  100. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/external_value.py +0 -0
  101. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/lldp_neighbor.py +0 -0
  102. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/lldp_topology.py +0 -0
  103. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/logical_node.py +0 -0
  104. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/management_connection.py +0 -0
  105. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/os_version.py +0 -0
  106. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/pagination.py +0 -0
  107. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/platform.py +0 -0
  108. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/reference.py +0 -0
  109. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/region.py +0 -0
  110. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/site.py +0 -0
  111. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/spanning_tree.py +0 -0
  112. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/worker.py +0 -0
  113. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/models/ztp.py +0 -0
  114. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/normalizer/engine.py +0 -0
  115. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/os_versions.py +0 -0
  116. {acex_devkit-2.11.0 → acex_devkit-3.0.0}/src/acex_devkit/types/__init__.py +0 -0
@@ -0,0 +1,28 @@
1
+ Metadata-Version: 2.4
2
+ Name: acex-devkit
3
+ Version: 3.0.0
4
+ Summary: ACE-X DevKit - Development kit for building ACE-X drivers and plugins
5
+ License: AGPL-3.0
6
+ Keywords: automation,devkit,sdk,drivers,plugins
7
+ Author: Johan Lahti
8
+ Author-email: johan.lahti@acebit.se
9
+ Requires-Python: >=3.13,<4.0
10
+ Classifier: License :: OSI Approved :: GNU Affero General Public License v3
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: Programming Language :: Python :: 3.13
13
+ Classifier: Programming Language :: Python :: 3.14
14
+ Classifier: Programming Language :: Python :: 3.15
15
+ Requires-Dist: deepdiff (>=8.6.1)
16
+ Requires-Dist: google-re2 (>=1.1,<2.0)
17
+ Requires-Dist: ipaddress (>=1.0.23)
18
+ Requires-Dist: pydantic (>=2.12.5)
19
+ Requires-Dist: sqlmodel (>=0.0.27)
20
+ Requires-Dist: typing-extensions (>=4.0.0)
21
+ Project-URL: Homepage, https://github.com/acex-labs/acex
22
+ Project-URL: Repository, https://github.com/acex-labs/acex
23
+ Description-Content-Type: text/markdown
24
+
25
+ # ACE-X DevKit
26
+
27
+ Work in progress.
28
+
@@ -0,0 +1,3 @@
1
+ # ACE-X DevKit
2
+
3
+ Work in progress.
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "acex-devkit"
3
- version = "2.11.0"
3
+ version = "3.0.0"
4
4
  description = "ACE-X DevKit - Development kit for building ACE-X drivers and plugins"
5
5
  authors = ["Johan Lahti <johan.lahti@acebit.se>"]
6
6
  readme = "README.md"
@@ -19,11 +19,19 @@ typing-extensions = ">=4.0.0"
19
19
  deepdiff = ">=8.6.1"
20
20
  ipaddress = ">=1.0.23"
21
21
  sqlmodel = ">=0.0.27"
22
+ google-re2 = "^1.1"
22
23
 
23
24
  [tool.poetry.group.dev.dependencies]
24
25
  pytest = "^8.0.0"
25
26
  pytest-asyncio = "^0.23.0"
26
27
 
28
+ [tool.poetry.plugins."acex.changelog"]
29
+ acex-devkit = "acex_devkit"
30
+
31
+ # Shown as the component's name in Settings > What's new.
32
+ [tool.acex.changelog]
33
+ name = "ACEX devkit"
34
+
27
35
  [build-system]
28
36
  requires = ["poetry-core>=2.0.0,<3.0.0"]
29
37
  build-backend = "poetry.core.masonry.api"
@@ -5,17 +5,21 @@ import importlib.metadata
5
5
  __version__ = importlib.metadata.version("acex-devkit")
6
6
 
7
7
  from acex_devkit.drivers import (
8
+ Actions,
9
+ Codec,
8
10
  NetworkElementDriver,
9
- ParserBase,
10
- RendererBase,
11
- TransportBase,
11
+ Session,
12
+ State,
13
+ Transport,
12
14
  )
13
15
  from acex_devkit.normalizer import BaseNormalizer
14
16
 
15
17
  __all__ = [
16
18
  "NetworkElementDriver",
17
- "TransportBase",
18
- "RendererBase",
19
- "ParserBase",
19
+ "Session",
20
+ "Codec",
21
+ "Transport",
22
+ "State",
23
+ "Actions",
20
24
  "BaseNormalizer",
21
25
  ]