plexus-msgs-python 1.0.8__tar.gz → 1.0.10__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.
- {plexus_msgs_python-1.0.8/src/plexus_msgs_python.egg-info → plexus_msgs_python-1.0.10}/PKG-INFO +3 -3
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/pyproject.toml +4 -4
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/utils.py +7 -9
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10/src/plexus_msgs_python.egg-info}/PKG-INFO +3 -3
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/.gitignore +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/MANIFEST.in +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/VERSION +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/setup.cfg +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/setup.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/__init__.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/__main__.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/control/plexus_msgs_control_control_command_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/control/plexus_msgs_control_control_command_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/control/plexus_msgs_control_dbw_command_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/control/plexus_msgs_control_dbw_command_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/descriptor.pb +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/localization/plexus_msgs_localization_odometry_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/localization/plexus_msgs_localization_odometry_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/localization/plexus_msgs_localization_positioning_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/localization/plexus_msgs_localization_positioning_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/mapping/plexus_msgs_mapping_map_region_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/mapping/plexus_msgs_mapping_map_region_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/perception/plexus_msgs_perception_lane_detection_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/perception/plexus_msgs_perception_lane_detection_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/perception/plexus_msgs_perception_obstacle_detection_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/perception/plexus_msgs_perception_obstacle_detection_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/planning/plexus_msgs_planning_driving_trajectory_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/planning/plexus_msgs_planning_driving_trajectory_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/planning/plexus_msgs_planning_obstacle_threat_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/planning/plexus_msgs_planning_obstacle_threat_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_carto_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_carto_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_entity_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_entity_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_geom_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_geom_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_message_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_message_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/routing/plexus_msgs_routing_navigation_info_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/routing/plexus_msgs_routing_navigation_info_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/testing/plexus_msgs_testing_dummy_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/testing/plexus_msgs_testing_dummy_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/vehicle/plexus_msgs_vehicle_can_messages_pb2.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/vehicle/plexus_msgs_vehicle_can_messages_pb2.pyi +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus_msgs_python.egg-info/SOURCES.txt +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus_msgs_python.egg-info/dependency_links.txt +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus_msgs_python.egg-info/entry_points.txt +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus_msgs_python.egg-info/not-zip-safe +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus_msgs_python.egg-info/requires.txt +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus_msgs_python.egg-info/top_level.txt +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/test/plexus_test.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/test/plexus_tests/__init__.py +0 -0
- {plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/test/plexus_tests/msgs/utils_test.py +0 -0
{plexus_msgs_python-1.0.8/src/plexus_msgs_python.egg-info → plexus_msgs_python-1.0.10}/PKG-INFO
RENAMED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: plexus-msgs-python
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.10
|
|
4
4
|
Summary: Python APIs and utilities for Plexus ProtoBuf messages
|
|
5
5
|
Classifier: Programming Language :: Python :: 3
|
|
6
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
7
6
|
Classifier: Programming Language :: Python :: 3.12
|
|
8
7
|
Classifier: Programming Language :: Python :: 3.13
|
|
9
|
-
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
9
|
+
Requires-Python: <3.15,>=3.12
|
|
10
10
|
Requires-Dist: jinja2>=3.0
|
|
11
11
|
Requires-Dist: protobuf>=5.0
|
|
12
12
|
Requires-Dist: iker-python-common>=1.0
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
[build-system]
|
|
2
2
|
requires = [
|
|
3
|
-
"setuptools>=
|
|
4
|
-
"setuptools-scm>=
|
|
3
|
+
"setuptools>=80.0",
|
|
4
|
+
"setuptools-scm>=9.0",
|
|
5
5
|
"iker-python-setup>=1.0",
|
|
6
6
|
"plexus-python-protobuf-setup>=1.0",
|
|
7
7
|
]
|
|
@@ -25,12 +25,12 @@ test = [
|
|
|
25
25
|
name = "plexus-msgs-python"
|
|
26
26
|
description = "Python APIs and utilities for Plexus ProtoBuf messages"
|
|
27
27
|
dynamic = ["version"]
|
|
28
|
-
requires-python = ">=3.
|
|
28
|
+
requires-python = ">=3.12,<3.15"
|
|
29
29
|
classifiers = [
|
|
30
30
|
"Programming Language :: Python :: 3",
|
|
31
|
-
"Programming Language :: Python :: 3.11",
|
|
32
31
|
"Programming Language :: Python :: 3.12",
|
|
33
32
|
"Programming Language :: Python :: 3.13",
|
|
33
|
+
"Programming Language :: Python :: 3.14",
|
|
34
34
|
]
|
|
35
35
|
dependencies = [
|
|
36
36
|
"jinja2>=3.0",
|
|
@@ -6,7 +6,7 @@ import pkgutil
|
|
|
6
6
|
import textwrap
|
|
7
7
|
from collections.abc import Callable
|
|
8
8
|
from types import ModuleType
|
|
9
|
-
from typing import Any
|
|
9
|
+
from typing import Any
|
|
10
10
|
|
|
11
11
|
import jinja2
|
|
12
12
|
from google.protobuf import descriptor_pool, message_factory
|
|
@@ -42,8 +42,6 @@ __all__ = [
|
|
|
42
42
|
"copy_plexus_message_2",
|
|
43
43
|
]
|
|
44
44
|
|
|
45
|
-
MessageT = TypeVar("MessageT", bound=Message)
|
|
46
|
-
|
|
47
45
|
|
|
48
46
|
@singleton
|
|
49
47
|
def import_plexus_msgs():
|
|
@@ -60,7 +58,7 @@ def plexus_msgs_descriptor_path() -> str:
|
|
|
60
58
|
|
|
61
59
|
|
|
62
60
|
@memorized
|
|
63
|
-
def get_protobuf_class(name: str) -> Callable[..., MessageT]:
|
|
61
|
+
def get_protobuf_class[MessageT: Message](name: str) -> Callable[..., MessageT]:
|
|
64
62
|
"""Returns the protobuf class for a given name"""
|
|
65
63
|
import_plexus_msgs()
|
|
66
64
|
|
|
@@ -69,7 +67,7 @@ def get_protobuf_class(name: str) -> Callable[..., MessageT]:
|
|
|
69
67
|
return message_factory.GetMessageClass(desc)
|
|
70
68
|
|
|
71
69
|
|
|
72
|
-
def wrap_plexus_message(header: PlexusMessageHeaderProto, payload: MessageT) -> bytes:
|
|
70
|
+
def wrap_plexus_message[MessageT: Message](header: PlexusMessageHeaderProto, payload: MessageT) -> bytes:
|
|
73
71
|
"""Wraps a plexus message into a protobuf encoded string"""
|
|
74
72
|
if header.payload_type != payload.DESCRIPTOR.full_name:
|
|
75
73
|
raise ValueError(
|
|
@@ -83,7 +81,7 @@ def wrap_plexus_message(header: PlexusMessageHeaderProto, payload: MessageT) ->
|
|
|
83
81
|
return plexus_message_pb.SerializeToString()
|
|
84
82
|
|
|
85
83
|
|
|
86
|
-
def unwrap_plexus_message(data: bytes) -> tuple[PlexusMessageHeaderProto, MessageT]:
|
|
84
|
+
def unwrap_plexus_message[MessageT: Message](data: bytes) -> tuple[PlexusMessageHeaderProto, MessageT]:
|
|
87
85
|
"""Unwraps a plexus message from a protobuf encoded string"""
|
|
88
86
|
plexus_message_pb = PlexusMessageProto()
|
|
89
87
|
plexus_message_pb.ParseFromString(data)
|
|
@@ -501,7 +499,7 @@ def make_tailor_plexus_msg():
|
|
|
501
499
|
tailor_plexus_msg = make_tailor_plexus_msg()
|
|
502
500
|
|
|
503
501
|
|
|
504
|
-
def tailor_plexus_msg_2(message: MessageT):
|
|
502
|
+
def tailor_plexus_msg_2[MessageT: Message](message: MessageT):
|
|
505
503
|
qualified_name = "." + message.DESCRIPTOR.full_name
|
|
506
504
|
_, _, omitted_field_desc_map = plexus_msgs_omitted_fields().get(qualified_name, (None, None, {}))
|
|
507
505
|
if not omitted_field_desc_map:
|
|
@@ -520,11 +518,11 @@ def tailor_plexus_msg_2(message: MessageT):
|
|
|
520
518
|
return message
|
|
521
519
|
|
|
522
520
|
|
|
523
|
-
def copy_plexus_message(message: MessageT, *, tailored: bool = False):
|
|
521
|
+
def copy_plexus_message[MessageT: Message](message: MessageT, *, tailored: bool = False):
|
|
524
522
|
message_copy = copy.deepcopy(message)
|
|
525
523
|
return tailor_plexus_msg(message_copy) if tailored else message_copy
|
|
526
524
|
|
|
527
525
|
|
|
528
|
-
def copy_plexus_message_2(message: MessageT, *, tailored: bool = False) -> MessageT:
|
|
526
|
+
def copy_plexus_message_2[MessageT: Message](message: MessageT, *, tailored: bool = False) -> MessageT:
|
|
529
527
|
message_copy = copy.deepcopy(message)
|
|
530
528
|
return tailor_plexus_msg_2(message_copy) if tailored else message_copy
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10/src/plexus_msgs_python.egg-info}/PKG-INFO
RENAMED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: plexus-msgs-python
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.10
|
|
4
4
|
Summary: Python APIs and utilities for Plexus ProtoBuf messages
|
|
5
5
|
Classifier: Programming Language :: Python :: 3
|
|
6
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
7
6
|
Classifier: Programming Language :: Python :: 3.12
|
|
8
7
|
Classifier: Programming Language :: Python :: 3.13
|
|
9
|
-
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
9
|
+
Requires-Python: <3.15,>=3.12
|
|
10
10
|
Requires-Dist: jinja2>=3.0
|
|
11
11
|
Requires-Dist: protobuf>=5.0
|
|
12
12
|
Requires-Dist: iker-python-common>=1.0
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_carto_pb2.py
RENAMED
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_carto_pb2.pyi
RENAMED
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_entity_pb2.py
RENAMED
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_entity_pb2.pyi
RENAMED
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_geom_pb2.py
RENAMED
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_geom_pb2.pyi
RENAMED
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_message_pb2.py
RENAMED
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_message_pb2.pyi
RENAMED
|
File without changes
|
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus/msgs/plexus_common_pb2.pyi
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus_msgs_python.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus_msgs_python.egg-info/not-zip-safe
RENAMED
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus_msgs_python.egg-info/requires.txt
RENAMED
|
File without changes
|
{plexus_msgs_python-1.0.8 → plexus_msgs_python-1.0.10}/src/plexus_msgs_python.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|