smpclient 4.1.2__tar.gz → 4.2.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 (26) hide show
  1. {smpclient-4.1.2 → smpclient-4.2.0}/PKG-INFO +4 -3
  2. {smpclient-4.1.2 → smpclient-4.2.0}/README.md +0 -1
  3. {smpclient-4.1.2 → smpclient-4.2.0}/pyproject.toml +6 -13
  4. smpclient-4.2.0/smpclient/requests/settings_management.py +30 -0
  5. smpclient-4.2.0/smpclient/requests/statistics_management.py +14 -0
  6. smpclient-4.2.0/smpclient/requests/zephyr_management.py +10 -0
  7. {smpclient-4.1.2 → smpclient-4.2.0}/LICENSE +0 -0
  8. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/__init__.py +0 -0
  9. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/exceptions.py +0 -0
  10. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/extensions/__init__.py +0 -0
  11. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/extensions/intercreate.py +0 -0
  12. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/generics.py +0 -0
  13. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/mcuboot.py +0 -0
  14. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/py.typed +0 -0
  15. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/requests/__init__.py +0 -0
  16. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/requests/file_management.py +0 -0
  17. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/requests/image_management.py +0 -0
  18. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/requests/os_management.py +0 -0
  19. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/requests/shell_management.py +0 -0
  20. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/requests/user/__init__.py +0 -0
  21. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/requests/user/intercreate.py +0 -0
  22. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/transport/__init__.py +0 -0
  23. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/transport/_udp_client.py +0 -0
  24. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/transport/ble.py +0 -0
  25. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/transport/serial.py +0 -0
  26. {smpclient-4.1.2 → smpclient-4.2.0}/smpclient/transport/udp.py +0 -0
@@ -1,7 +1,8 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: smpclient
3
- Version: 4.1.2
3
+ Version: 4.2.0
4
4
  Summary: Simple Management Protocol (SMP) Client for remotely managing MCU firmware
5
+ Home-page: https://github.com/intercreate/smpclient
5
6
  License: Apache-2.0
6
7
  Author: J.P. Hutchins
7
8
  Author-email: jphutchins@gmail.com
@@ -16,7 +17,8 @@ Requires-Dist: async-timeout (>=4.0.3,<5.0.0) ; python_version < "3.11"
16
17
  Requires-Dist: bleak (>=0.22.1,<0.23.0)
17
18
  Requires-Dist: intelhex (>=2.3.0,<3.0.0)
18
19
  Requires-Dist: pyserial (>=3.5,<4.0)
19
- Requires-Dist: smp (>=3.0.2,<4.0.0)
20
+ Requires-Dist: smp (>=3.1.1,<4.0.0)
21
+ Project-URL: Repository, https://github.com/intercreate/smpclient
20
22
  Description-Content-Type: text/markdown
21
23
 
22
24
  # Simple Management Protocol (SMP) Client
@@ -65,7 +67,6 @@ If you'd like an SMP CLI application instead of a library, then you should try
65
67
 
66
68
  ### Install Dependencies
67
69
 
68
- - python >=3.8, <3.13
69
70
  - poetry: https://python-poetry.org/docs/#installation
70
71
 
71
72
  ### Create the venv
@@ -44,7 +44,6 @@ If you'd like an SMP CLI application instead of a library, then you should try
44
44
 
45
45
  ### Install Dependencies
46
46
 
47
- - python >=3.8, <3.13
48
47
  - poetry: https://python-poetry.org/docs/#installation
49
48
 
50
49
  ### Create the venv
@@ -4,13 +4,12 @@ version = "0"
4
4
  description = "Simple Management Protocol (SMP) Client for remotely managing MCU firmware"
5
5
  authors = [
6
6
  "J.P. Hutchins <jphutchins@gmail.com>",
7
- "J.P. Hutchins <jp@intercreate.io"
7
+ "J.P. Hutchins <jp@intercreate.io",
8
8
  ]
9
+ repository = "https://github.com/intercreate/smpclient"
9
10
  readme = "README.md"
10
11
  license = "Apache-2.0"
11
- packages = [
12
- { include = "smpclient" },
13
- ]
12
+ packages = [{ include = "smpclient" }]
14
13
 
15
14
  [tool.poetry.scripts]
16
15
  mcuimg = "smpclient.mcuboot:mcuimg"
@@ -21,7 +20,7 @@ source = "git-tag"
21
20
  [tool.poetry.dependencies]
22
21
  python = ">=3.8.1, <3.13"
23
22
  pyserial = "^3.5"
24
- smp = "^3.0.2"
23
+ smp = "^3.1.1"
25
24
  intelhex = "^2.3.0"
26
25
  bleak = "^0.22.1"
27
26
  async-timeout = { version = "^4.0.3", python = "<3.11" }
@@ -47,11 +46,7 @@ extend-exclude = "dutfirmware|.venv|tests/fixtures|.tox"
47
46
  profile = "black"
48
47
  line_length = 100
49
48
  multi_line_output = 3
50
- skip = [
51
- ".venv",
52
- "dutfirmware",
53
- ".tox",
54
- ]
49
+ skip = [".venv", "dutfirmware", ".tox"]
55
50
 
56
51
  [tool.mypy]
57
52
  disallow_untyped_defs = true
@@ -59,9 +54,7 @@ exclude = ['.venv', 'dutfirmware', '.tox']
59
54
 
60
55
  [tool.pytest.ini_options]
61
56
  norecursedirs = "dutfirmware/*"
62
- filterwarnings = [
63
- "ignore:The --rsyncdir:DeprecationWarning",
64
- ]
57
+ filterwarnings = ["ignore:The --rsyncdir:DeprecationWarning"]
65
58
 
66
59
  [tool.tox]
67
60
  legacy_tox_ini = """
@@ -0,0 +1,30 @@
1
+ import smp.settings_management as smpset
2
+
3
+
4
+ class _GroupBase:
5
+ _ErrorV1 = smpset.SettingsManagementErrorV1
6
+ _ErrorV2 = smpset.SettingsManagementErrorV2
7
+
8
+
9
+ class ReadSetting(smpset.ReadSettingRequest, _GroupBase):
10
+ _Response = smpset.ReadSettingResponse
11
+
12
+
13
+ class WriteSetting(smpset.WriteSettingRequest, _GroupBase):
14
+ _Response = smpset.WriteSettingResponse
15
+
16
+
17
+ class DeleteSetting(smpset.DeleteSettingRequest, _GroupBase):
18
+ _Response = smpset.DeleteSettingResponse
19
+
20
+
21
+ class CommitSettings(smpset.CommitSettingsRequest, _GroupBase):
22
+ _Response = smpset.CommitSettingsResponse
23
+
24
+
25
+ class LoadSettings(smpset.LoadSettingsRequest, _GroupBase):
26
+ _Response = smpset.LoadSettingsResponse
27
+
28
+
29
+ class SaveSettings(smpset.SaveSettingsRequest, _GroupBase):
30
+ _Response = smpset.SaveSettingsResponse
@@ -0,0 +1,14 @@
1
+ import smp.statistics_management as smpstat
2
+
3
+
4
+ class _GroupBase:
5
+ _ErrorV1 = smpstat.StatisticsManagementErrorV1
6
+ _ErrorV2 = smpstat.StatisticsManagementErrorV2
7
+
8
+
9
+ class GroupData(smpstat.GroupDataRequest, _GroupBase):
10
+ _Response = smpstat.GroupDataResponse
11
+
12
+
13
+ class ListOfGroups(smpstat.ListOfGroupsRequest, _GroupBase):
14
+ _Response = smpstat.ListOfGroupsResponse
@@ -0,0 +1,10 @@
1
+ import smp.zephyr_management as smpz
2
+
3
+
4
+ class _GroupBase:
5
+ _ErrorV1 = smpz.ZephyrManagementErrorV1
6
+ _ErrorV2 = smpz.ZephyrManagementErrorV2
7
+
8
+
9
+ class EraseStorage(smpz.EraseStorageRequest, _GroupBase):
10
+ _Response = smpz.EraseStorageResponse
File without changes
File without changes