pyxcp 0.22.29__cp39-cp39-win_amd64.whl → 0.22.31__cp39-cp39-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pyxcp might be problematic. Click here for more details.
- pyxcp/__init__.py +1 -1
- pyxcp/cpp_ext/cpp_ext.cp38-win_amd64.pyd +0 -0
- pyxcp/cpp_ext/cpp_ext.cp39-win_amd64.pyd +0 -0
- pyxcp/daq_stim/stim.cp38-win_amd64.pyd +0 -0
- pyxcp/daq_stim/stim.cp39-win_amd64.pyd +0 -0
- pyxcp/master/master.py +3 -3
- pyxcp/recorder/rekorder.cp38-win_amd64.pyd +0 -0
- pyxcp/recorder/rekorder.cp39-win_amd64.pyd +0 -0
- pyxcp/transport/base.py +1 -1
- pyxcp/transport/can.py +1 -3
- pyxcp/utils.py +25 -0
- {pyxcp-0.22.29.dist-info → pyxcp-0.22.31.dist-info}/METADATA +1 -1
- {pyxcp-0.22.29.dist-info → pyxcp-0.22.31.dist-info}/RECORD +16 -16
- {pyxcp-0.22.29.dist-info → pyxcp-0.22.31.dist-info}/LICENSE +0 -0
- {pyxcp-0.22.29.dist-info → pyxcp-0.22.31.dist-info}/WHEEL +0 -0
- {pyxcp-0.22.29.dist-info → pyxcp-0.22.31.dist-info}/entry_points.txt +0 -0
pyxcp/__init__.py
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
pyxcp/master/master.py
CHANGED
|
@@ -579,10 +579,10 @@ class Master:
|
|
|
579
579
|
result = []
|
|
580
580
|
for _ in chunks:
|
|
581
581
|
data = self.upload(chunk_size)
|
|
582
|
-
result.extend(data)
|
|
582
|
+
result.extend(data[:chunk_size])
|
|
583
583
|
if remaining:
|
|
584
584
|
data = self.upload(remaining)
|
|
585
|
-
result.extend(data)
|
|
585
|
+
result.extend(data[:remaining])
|
|
586
586
|
return bytes(result)
|
|
587
587
|
|
|
588
588
|
pull = fetch # fetch() may be completely replaced by pull() someday.
|
|
@@ -694,7 +694,7 @@ class Master:
|
|
|
694
694
|
callback_remaining = total_length
|
|
695
695
|
for _ in chunks:
|
|
696
696
|
block = data[offset : offset + max_payload]
|
|
697
|
-
dl_func(block, max_payload, last=
|
|
697
|
+
dl_func(block, max_payload, last=False)
|
|
698
698
|
offset += max_payload
|
|
699
699
|
callback_remaining -= chunk_size
|
|
700
700
|
if callback and callback_remaining <= total_length - (total_length / 100) * percent_complete:
|
|
Binary file
|
|
Binary file
|
pyxcp/transport/base.py
CHANGED
|
@@ -278,7 +278,7 @@ class BaseTransport(metaclass=abc.ABCMeta):
|
|
|
278
278
|
err = types.XcpError.parse(xcpPDU[1:])
|
|
279
279
|
raise types.XcpResponseError(err)
|
|
280
280
|
with self.command_lock:
|
|
281
|
-
if isinstance(
|
|
281
|
+
if isinstance(data, list):
|
|
282
282
|
data = data[0] # C++ interfacing.
|
|
283
283
|
frame = self._prepare_request(cmd, *data)
|
|
284
284
|
with self.policy_lock:
|
pyxcp/transport/can.py
CHANGED
|
@@ -351,13 +351,11 @@ class Can(BaseTransport):
|
|
|
351
351
|
result[n] = value
|
|
352
352
|
elif value is not None:
|
|
353
353
|
self.logger.warning(f"XCPonCAN - {self.interface_name!r} has no support for parameter {n!r}.")
|
|
354
|
-
|
|
355
354
|
# Parameter names that need to be mapped.
|
|
356
355
|
for base_name, name in can_interface_config_class.CAN_PARAM_MAP.items():
|
|
357
356
|
value = getattr(self.config, base_name)
|
|
358
|
-
if value is not None:
|
|
357
|
+
if name is not None and value is not None:
|
|
359
358
|
result[name] = value
|
|
360
|
-
|
|
361
359
|
# Interface specific parameters.
|
|
362
360
|
cxx = getattr(self.config, self.interface_name)
|
|
363
361
|
for name in can_interface_config_class.class_own_traits().keys():
|
pyxcp/utils.py
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env python
|
|
2
2
|
import datetime
|
|
3
|
+
from enum import IntEnum
|
|
3
4
|
import functools
|
|
4
5
|
import operator
|
|
5
6
|
import sys
|
|
@@ -100,3 +101,27 @@ class CurrentDatetime(TimestampInfo):
|
|
|
100
101
|
utc_offset={self.utc_offset},
|
|
101
102
|
dst_offset={self.dst_offset}
|
|
102
103
|
)"""
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
def enum_from_str(enum_class: IntEnum, enumerator: str) -> IntEnum:
|
|
107
|
+
"""Create an `IntEnum` instance from an enumerator `str`.
|
|
108
|
+
|
|
109
|
+
Parameters
|
|
110
|
+
----------
|
|
111
|
+
enum_class: IntEnum
|
|
112
|
+
|
|
113
|
+
enumerator: str
|
|
114
|
+
|
|
115
|
+
Example
|
|
116
|
+
-------
|
|
117
|
+
|
|
118
|
+
class Color(enum.IntEnum):
|
|
119
|
+
RED = 0
|
|
120
|
+
GREEN = 1
|
|
121
|
+
BLUE = 2
|
|
122
|
+
|
|
123
|
+
color: Color = enum_from_str(Color, "GREEN")
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
"""
|
|
127
|
+
return enum_class(enum_class.__members__.get(enumerator))
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
pyxcp/__init__.py,sha256=
|
|
1
|
+
pyxcp/__init__.py,sha256=SdJ01JZMvTsGjkdO-dPuwf3GP76AGn_l4rTR-K3DKSk,548
|
|
2
2
|
pyxcp/aml/EtasCANMonitoring.a2l,sha256=EJYwe3Z3H24vyWAa6lUgcdKnQY8pwFxjyCN6ZU1ST8w,1509
|
|
3
3
|
pyxcp/aml/EtasCANMonitoring.aml,sha256=xl0DdyeiIaLW0mmmJNAyJS0CQdOLSxt9dxfgrdSlU8Y,2405
|
|
4
4
|
pyxcp/aml/ifdata_CAN.a2l,sha256=NCUnCUEEgRbZYSLGtUGwL2e7zJ8hrp0SbmLHGv8uY58,612
|
|
@@ -24,8 +24,8 @@ pyxcp/constants.py,sha256=9yGfujC0ImTYQWfn41wyw8pluJTSrhMGWIVeIZTgsLg,1160
|
|
|
24
24
|
pyxcp/cpp_ext/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
25
|
pyxcp/cpp_ext/bin.hpp,sha256=PwJloZek21la-RBSda2Hc0u_6gID0sfTduPeplaAyR4,2561
|
|
26
26
|
pyxcp/cpp_ext/blockmem.hpp,sha256=ysaJwmTWGTfE54Outk3gJYOfAVFd_QaonBMtXLcXwCc,1242
|
|
27
|
-
pyxcp/cpp_ext/cpp_ext.cp38-win_amd64.pyd,sha256=
|
|
28
|
-
pyxcp/cpp_ext/cpp_ext.cp39-win_amd64.pyd,sha256=
|
|
27
|
+
pyxcp/cpp_ext/cpp_ext.cp38-win_amd64.pyd,sha256=SMn_FKLNvpUR-H0IRWXUwrgmCReNAbHSTjWSiFkmny4,288256
|
|
28
|
+
pyxcp/cpp_ext/cpp_ext.cp39-win_amd64.pyd,sha256=SNzRmJeFPIe8v4e8aAqiDGp81nsTay3zqO-6Ege2jIU,270336
|
|
29
29
|
pyxcp/cpp_ext/daqlist.hpp,sha256=g2hlxgoQorAGKHedZFZ0c2FQh1APMIA9sVB6M6hD_n8,7277
|
|
30
30
|
pyxcp/cpp_ext/event.hpp,sha256=Z-1yxsEKsr81NnLVEWJ2ANA8FV7YsM7EbNxaw-elheE,1200
|
|
31
31
|
pyxcp/cpp_ext/extension_wrapper.cpp,sha256=FXFjyruBjQYqjCYZZcajdYv6dvNnCggMAbWLqJmfuTM,4756
|
|
@@ -37,8 +37,8 @@ pyxcp/daq_stim/optimize/__init__.py,sha256=FUWK0GkNpNT-sUlhibp7xa2aSYpm6Flh5yA2w
|
|
|
37
37
|
pyxcp/daq_stim/optimize/binpacking.py,sha256=Iltho5diKlJG-ltbmx053U2vOFRlCISolXK61T14l_I,1257
|
|
38
38
|
pyxcp/daq_stim/scheduler.cpp,sha256=a7VK7kP2Hs8yMlcDAkXwJ0bH88lr_yz156sphcHS7Z4,715
|
|
39
39
|
pyxcp/daq_stim/scheduler.hpp,sha256=U_6tUbebmzX5vVZS0EFSgTaPsyxMg6yRXHG_aPWA0x4,1884
|
|
40
|
-
pyxcp/daq_stim/stim.cp38-win_amd64.pyd,sha256=
|
|
41
|
-
pyxcp/daq_stim/stim.cp39-win_amd64.pyd,sha256=
|
|
40
|
+
pyxcp/daq_stim/stim.cp38-win_amd64.pyd,sha256=MKvmDUc__VjdUJHv_MsUxWKxbNa_c7-gR0x9FLTAhpY,198656
|
|
41
|
+
pyxcp/daq_stim/stim.cp39-win_amd64.pyd,sha256=z6TUHHU89qAV0HiVCMrJRGMHL-dle-CC2IfZk6NYQXY,192512
|
|
42
42
|
pyxcp/daq_stim/stim.cpp,sha256=F2OG67W4KKwTTiUCxm-9egIv3TLFdOkRunX6xf7YOtc,177
|
|
43
43
|
pyxcp/daq_stim/stim.hpp,sha256=U-uInRrA6OCdMl1l1SWbQ_KEPpnNYrWut924IvbW6R0,18508
|
|
44
44
|
pyxcp/daq_stim/stim_wrapper.cpp,sha256=iT2yxJ3LRG7HoYC1bwhM3tCAxF9X_HHierBNsLRmTJg,1995
|
|
@@ -63,7 +63,7 @@ pyxcp/examples/xcphello.py,sha256=xbcWq8StRJyUZBLUvknsXv7VkEBD5SU0SJjlZTHsSzs,26
|
|
|
63
63
|
pyxcp/examples/xcphello_recorder.py,sha256=QHWJsq5h5CI9t5qEmMSorZyzirTpoXz4nzuKTMzbZCA,3409
|
|
64
64
|
pyxcp/master/__init__.py,sha256=QQbkUJM1WQ-5p2MiNFYxLAmHhNsCQLzDp-S4aoOFxoA,318
|
|
65
65
|
pyxcp/master/errorhandler.py,sha256=ulL6WiraZbVZnM2pfR8S9vlWAAP5UXwXqmbjjxH9rgc,15359
|
|
66
|
-
pyxcp/master/master.py,sha256=
|
|
66
|
+
pyxcp/master/master.py,sha256=D2WAvESt2pMnxWYbkcE8V1Uya_jpDKk3vInRfj4NsEY,78389
|
|
67
67
|
pyxcp/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
68
68
|
pyxcp/recorder/__init__.py,sha256=jeTmKvfjIenxHxt7zn6HMjnDpuPQU0d9SdnYK_t3gdE,2850
|
|
69
69
|
pyxcp/recorder/build_clang.cmd,sha256=JvFngSnb28XcBGXxC6MGrcOCGYfahOIvHpgRpqbA6HQ,175
|
|
@@ -80,8 +80,8 @@ pyxcp/recorder/mio.hpp,sha256=5ASJLKSEykH0deAQD5uak-_yAgd5p2n8t06315GSGrg,63346
|
|
|
80
80
|
pyxcp/recorder/reader.hpp,sha256=rr9XZ_ciL6eF2_xEqyt9XYNqTIze9ytAsnf8uYukO9U,5201
|
|
81
81
|
pyxcp/recorder/reco.py,sha256=6N6FIwfCEVMpi5dr3eUOQa1lowcg2LCnS_sy_-b-UiQ,8725
|
|
82
82
|
pyxcp/recorder/recorder.rst,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
83
|
-
pyxcp/recorder/rekorder.cp38-win_amd64.pyd,sha256=
|
|
84
|
-
pyxcp/recorder/rekorder.cp39-win_amd64.pyd,sha256=
|
|
83
|
+
pyxcp/recorder/rekorder.cp38-win_amd64.pyd,sha256=5RQe8zdjjepIyJyv0Cxq5USc7M8DBhzK4vkEE-t8gcc,386048
|
|
84
|
+
pyxcp/recorder/rekorder.cp39-win_amd64.pyd,sha256=_LUvcbiyRshoetYwUYggPstcooD-_xF2cdMS8PruihE,372736
|
|
85
85
|
pyxcp/recorder/rekorder.cpp,sha256=U0LMyk8pZXx9emgS_WPVthvn_9IpgE7JGrh4kg-8CX4,1900
|
|
86
86
|
pyxcp/recorder/rekorder.hpp,sha256=sWvRch9bVt6mmgrFHp5mwWhap7HoFG4geeb7UqEIzio,7638
|
|
87
87
|
pyxcp/recorder/setup.py,sha256=_99XFPQAd5V4LcJaSGJwdnbxgxJ7kl8DEXfHsnKO1Yg,998
|
|
@@ -109,19 +109,19 @@ pyxcp/tests/test_transport.py,sha256=Qn2VjNRfYCU6DH8olVSBUCqb0zdAM9GlTbVBM99YxFQ
|
|
|
109
109
|
pyxcp/tests/test_utils.py,sha256=SrURAFc_6jtHng3PSZ5gpqXzVBVuPoMPB0YNvOvaIE0,880
|
|
110
110
|
pyxcp/timing.py,sha256=zE6qPqOuidg6saNt7_zmbQgufxL9Id6akVYhAtpweQc,1705
|
|
111
111
|
pyxcp/transport/__init__.py,sha256=31PaQLj76n5pXr68aJRWcYfrxEYWWgYoe9f_w3jZxsc,438
|
|
112
|
-
pyxcp/transport/base.py,sha256=
|
|
112
|
+
pyxcp/transport/base.py,sha256=n_tCkebmpq3WXRZncOP5XWgUnSavaBBm3oGZhpeCF9U,16352
|
|
113
113
|
pyxcp/transport/base_transport.hpp,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
114
|
-
pyxcp/transport/can.py,sha256=
|
|
114
|
+
pyxcp/transport/can.py,sha256=pypHU1k5lZODrZpNLsC3IEJ5pPi58OZU_zryd9twr_M,14926
|
|
115
115
|
pyxcp/transport/eth.py,sha256=xPzN2oSALoPKJVvZpBljPSV1AxfpjRusOzymO-TD1Rw,8711
|
|
116
116
|
pyxcp/transport/sxi.py,sha256=vM8WZIKuu_dNuqkxZM_1n6iQkQCCzo4ykWpiG6ba8Fk,4695
|
|
117
117
|
pyxcp/transport/transport_wrapper.cpp,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
118
118
|
pyxcp/transport/usb_transport.py,sha256=JuYrwkWsUdibdVNA57LBEQT3a3ykOgWPdWcfqj96nDE,8343
|
|
119
119
|
pyxcp/types.py,sha256=mjp3FhsTTbS3D5VuC-dfdbMql0lJwEfbZjf8a2pHi1o,26158
|
|
120
|
-
pyxcp/utils.py,sha256=
|
|
120
|
+
pyxcp/utils.py,sha256=gVIhPSvZs-y4o6QB35iJQd0VK_Z9sa3UtCDI3dYQeyo,3457
|
|
121
121
|
pyxcp/vector/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
122
122
|
pyxcp/vector/map.py,sha256=7Gnhvr79geMeqqGVIJPxODXGwABdNDinnqzhpooN5TE,2306
|
|
123
|
-
pyxcp-0.22.
|
|
124
|
-
pyxcp-0.22.
|
|
125
|
-
pyxcp-0.22.
|
|
126
|
-
pyxcp-0.22.
|
|
127
|
-
pyxcp-0.22.
|
|
123
|
+
pyxcp-0.22.31.dist-info/entry_points.txt,sha256=LkHsEwubm30s4oiyCy0cKj6k97ALvQ6KjAVdyEcqu7g,358
|
|
124
|
+
pyxcp-0.22.31.dist-info/LICENSE,sha256=fTqV5eBpeAZO0_jit8j4Ref9ikBSlHJ8xwj5TLg7gFk,7817
|
|
125
|
+
pyxcp-0.22.31.dist-info/METADATA,sha256=_u-XbxKp6UK1eHiVONWuts2lNOVVW3oXPoVHBs3XkkA,4088
|
|
126
|
+
pyxcp-0.22.31.dist-info/WHEEL,sha256=Z7wHPPsHkhSEtHCXR5Nyy0-Patck1z5Qlvi5nPf-YDI,96
|
|
127
|
+
pyxcp-0.22.31.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|