vention-sim-grpc-py-sdk 0.1.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.
- vention_sim_grpc_py_sdk-0.1.0/.gitignore +3 -0
- vention_sim_grpc_py_sdk-0.1.0/PKG-INFO +118 -0
- vention_sim_grpc_py_sdk-0.1.0/README.md +99 -0
- vention_sim_grpc_py_sdk-0.1.0/hatch_build.py +26 -0
- vention_sim_grpc_py_sdk-0.1.0/pyproject.toml +41 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/__init__.py +8 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/_source.py +6 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/alert_pb2.py +40 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/alert_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/controlSignal_pb2.py +36 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/controlSignal_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/gripper_pb2.py +36 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/gripper_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/matrix4_pb2.py +36 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/matrix4_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/metrics_pb2.py +66 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/metrics_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/partConfig_pb2.py +38 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/partConfig_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/robot_pb2.py +38 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/robot_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/sensor_pb2.py +45 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/sensor_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/simulationDiagnosticReport_pb2.py +38 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/simulationDiagnosticReport_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/vector3_pb2.py +36 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/common/vector3_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v1/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v1/requests_pb2.py +58 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v1/requests_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v1/responses_pb2.py +49 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v1/responses_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v1/service_pb2.py +39 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v1/service_pb2_grpc.py +337 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v2/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v2/requests_pb2.py +61 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v2/requests_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v2/service_pb2.py +40 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v2/service_pb2_grpc.py +388 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v3/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v3/requests_pb2.py +47 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v3/requests_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v3/robot_pb2.py +37 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v3/robot_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v3/service_pb2.py +41 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/physics/v3/service_pb2_grpc.py +389 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_command_service_pb2.py +37 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_command_service_pb2_grpc.py +89 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_driver_commands_pb2.py +43 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_driver_commands_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_driver_common_pb2.py +36 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_driver_common_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_driver_events_pb2.py +52 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_driver_events_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_driver_process_data_pb2.py +45 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_driver_process_data_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_driver_service_pb2.py +38 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/motor/v1/motor_driver_service_pb2_grpc.py +142 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v1/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v1/sim_robot_driver_commands_pb2.py +39 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v1/sim_robot_driver_commands_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v1/sim_robot_driver_responses_pb2.py +47 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v1/sim_robot_driver_responses_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v1/sim_robot_driver_service_pb2.py +39 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v1/sim_robot_driver_service_pb2_grpc.py +380 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/io/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/io/io_driver_commands_pb2.py +49 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/io/io_driver_commands_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/io/io_driver_service_pb2.py +37 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/io/io_driver_service_pb2_grpc.py +214 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/robot/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/robot/robot_driver_commands_pb2.py +37 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/robot/robot_driver_commands_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/robot/robot_driver_service_pb2.py +40 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v2/robot/robot_driver_service_pb2_grpc.py +414 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/io/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/io/io_driver_commands_pb2.py +49 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/io/io_driver_commands_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/io/io_driver_service_pb2.py +37 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/io/io_driver_service_pb2_grpc.py +83 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/robot/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/robot/robot_driver_commands_pb2.py +37 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/robot/robot_driver_commands_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/robot/robot_driver_service_pb2.py +41 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v3/robot/robot_driver_service_pb2_grpc.py +371 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/robot/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/robot/robot_driver_commands_pb2.py +43 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/robot/robot_driver_commands_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/robot/robot_driver_service_pb2.py +41 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/robot/robot_driver_service_pb2_grpc.py +373 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/scene/__init__.py +0 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/scene/scene_commands_pb2.py +108 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/scene/scene_commands_pb2_grpc.py +4 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/scene/scene_management_service_pb2.py +37 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/scene/scene_management_service_pb2_grpc.py +474 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/scene/scene_objects_pb2.py +64 -0
- vention_sim_grpc_py_sdk-0.1.0/src/vention_sim/simulation/v4/scene/scene_objects_pb2_grpc.py +4 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
|
+
Name: vention-sim-grpc-py-sdk
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Generated Python gRPC clients for the Vention simulation protos
|
|
5
|
+
Project-URL: Homepage, https://github.com/VentionCo/simulation
|
|
6
|
+
Project-URL: Repository, https://github.com/VentionCo/simulation
|
|
7
|
+
Author: VentionCo
|
|
8
|
+
License: Proprietary
|
|
9
|
+
Keywords: client,grpc,protobuf,simulation,vention
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
+
Requires-Python: >=3.10
|
|
15
|
+
Requires-Dist: grpcio<2,>=1.74.0
|
|
16
|
+
Requires-Dist: protobuf<7,>=6.31.1
|
|
17
|
+
Requires-Dist: vention-grpc-py-sdk==0.0.68
|
|
18
|
+
Description-Content-Type: text/markdown
|
|
19
|
+
|
|
20
|
+
# vention-sim-grpc-py-sdk
|
|
21
|
+
|
|
22
|
+
Generated Python gRPC clients for the Vention simulation protos (`physics/**` and
|
|
23
|
+
`vention/simulation/**` under [`proto/`](../proto)), published from this repo.
|
|
24
|
+
|
|
25
|
+
## Install
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
pip install vention-sim-grpc-py-sdk
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
This also installs [`vention-grpc-py-sdk`](https://pypi.org/project/vention-grpc-py-sdk/),
|
|
32
|
+
which ships the `vention.robots`, `vention.io_modules`, `vention.machine_motion`,
|
|
33
|
+
`vention.motors`, `vention.vision`, and `google.type` messages the simulation protos embed.
|
|
34
|
+
|
|
35
|
+
## Use
|
|
36
|
+
|
|
37
|
+
```python
|
|
38
|
+
import grpc
|
|
39
|
+
|
|
40
|
+
from vention.robots.v1.joint_trajectory_point_pb2 import JointTrajectoryPoint
|
|
41
|
+
from vention_sim import SIMULATION_SHA, VENTION_PROTOS_SHA, __version__
|
|
42
|
+
from vention_sim.simulation.v1.sim_robot_driver_commands_pb2 import StartTrajectoryRequest
|
|
43
|
+
from vention_sim.simulation.v4.scene.scene_management_service_pb2_grpc import SceneManagementServiceStub
|
|
44
|
+
|
|
45
|
+
channel = grpc.insecure_channel("localhost:50055")
|
|
46
|
+
scene = SceneManagementServiceStub(channel)
|
|
47
|
+
request = StartTrajectoryRequest(points=[JointTrajectoryPoint()])
|
|
48
|
+
print(f"built from simulation@{SIMULATION_SHA} and vention-protos@{VENTION_PROTOS_SHA}")
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Import root
|
|
52
|
+
|
|
53
|
+
The modules live under `vention_sim`: a proto at `vention/simulation/v1/x.proto` is
|
|
54
|
+
`vention_sim.simulation.v1.x_pb2`, and one at `physics/v3/x.proto` is
|
|
55
|
+
`vention_sim.physics.v3.x_pb2`. Only the Python import path differs from protoc's default.
|
|
56
|
+
The proto packages (`vention.simulation.*`, `physics.*`), file names, gRPC method paths and
|
|
57
|
+
`Any` type URLs are unchanged, so a `vention-grpc-py-sdk` message drops straight into a
|
|
58
|
+
simulation request and reflection sees the same types as every other language.
|
|
59
|
+
|
|
60
|
+
protoc would otherwise place the stubs at `vention.simulation.*`, inside the `vention`
|
|
61
|
+
package that `vention-grpc-py-sdk` owns. Two distributions sharing a regular package only
|
|
62
|
+
work while both unpack into the same `site-packages`; editable installs and any layout with
|
|
63
|
+
more than one root on `sys.path` lose one of them. Giving this package its own import root
|
|
64
|
+
removes the shared directory, so it works in every layout and never depends on how
|
|
65
|
+
`vention-grpc-py-sdk` is laid out.
|
|
66
|
+
|
|
67
|
+
## One package per proto source
|
|
68
|
+
|
|
69
|
+
The simulation protos import `vention-protos` files, and both packages have to coexist in
|
|
70
|
+
one environment. Python leaves no good way to ship two copies of the same generated module:
|
|
71
|
+
two distributions writing the same path overwrite each other in `site-packages`, and protobuf
|
|
72
|
+
registers every message in a process-global pool that rejects duplicates. So this package
|
|
73
|
+
ships only the simulation-owned stubs and takes the shared ones from `vention-grpc-py-sdk`,
|
|
74
|
+
the same way `grpcio-status` takes `google.rpc` from `googleapis-common-protos`.
|
|
75
|
+
|
|
76
|
+
The dependency is an exact pin on the `vention-grpc-py-sdk` release generated from the
|
|
77
|
+
`vention-protos` commit pinned in [`proto/package.json`](../proto/package.json)
|
|
78
|
+
(`config.protos.tag`). That package only ever patch-bumps, so its version says nothing about
|
|
79
|
+
compatibility; the pin is what guarantees the two stub sets agree. Upgrading one means
|
|
80
|
+
upgrading the other, and `pip` refuses combinations that were never generated together.
|
|
81
|
+
|
|
82
|
+
## Versions
|
|
83
|
+
|
|
84
|
+
Releases publish on every push to `main` that touches `proto/**` or `python-sdk/**`, as the
|
|
85
|
+
next patch after the latest release on PyPI. Pull requests touching those paths, and manual runs
|
|
86
|
+
of the workflow on any other branch, publish a `X.Y.Z.dev<build id>` build (PRs get the install
|
|
87
|
+
command as a comment). Once a release exists, `pip` only installs a dev build when its version
|
|
88
|
+
is spelled out.
|
|
89
|
+
|
|
90
|
+
`vention_sim._source` records what a wheel was built from: `SIMULATION_SHA` (the PR head for
|
|
91
|
+
dev builds), `VENTION_PROTOS_SHA`, `VENTION_GRPC_PY_SDK_VERSION`, and `__version__`.
|
|
92
|
+
|
|
93
|
+
## Contributing
|
|
94
|
+
|
|
95
|
+
Nothing in `python-sdk/src` is committed; CI regenerates it from `proto/` before publishing.
|
|
96
|
+
To reproduce the CI build locally:
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
npm ci # buf comes from the proto workspace
|
|
100
|
+
python3 -m venv .venv && source .venv/bin/activate
|
|
101
|
+
python python-sdk/scripts/ci_python_package.py
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
The script exports the vendored `vention-protos` at the pinned commit (SSH access to
|
|
105
|
+
`VentionCo/vention-protos` required) and fails if that overwrote the sim-owned protos,
|
|
106
|
+
generates the stubs with [`buf.gen.yaml`](buf.gen.yaml), moves them under `vention_sim` and
|
|
107
|
+
rewrites their imports and module names to match, resolves the matching `vention-grpc-py-sdk`
|
|
108
|
+
release from PyPI, builds the wheel, installs it, and runs
|
|
109
|
+
[`check_installed_wheel.py`](scripts/check_installed_wheel.py): the wheel pins the SDK
|
|
110
|
+
release whose `PROTOS_SHA` equals the pin, every generated module imports, every generated
|
|
111
|
+
message class belongs to its `vention_sim` module and pickles, a sim message keeps its proto
|
|
112
|
+
package, file name, method path and `Any` type URL, and a `vention-grpc-py-sdk` message embeds
|
|
113
|
+
into a sim request. Both import orders are then tried in fresh interpreters.
|
|
114
|
+
|
|
115
|
+
`hatch_build.py` turns the resolved SDK release into the exact dependency pin at build time.
|
|
116
|
+
|
|
117
|
+
[`publish-python-sdk.yml`](../.github/workflows/publish-python-sdk.yml) runs the same script
|
|
118
|
+
and uploads with the org's PyPI token.
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
# vention-sim-grpc-py-sdk
|
|
2
|
+
|
|
3
|
+
Generated Python gRPC clients for the Vention simulation protos (`physics/**` and
|
|
4
|
+
`vention/simulation/**` under [`proto/`](../proto)), published from this repo.
|
|
5
|
+
|
|
6
|
+
## Install
|
|
7
|
+
|
|
8
|
+
```bash
|
|
9
|
+
pip install vention-sim-grpc-py-sdk
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
This also installs [`vention-grpc-py-sdk`](https://pypi.org/project/vention-grpc-py-sdk/),
|
|
13
|
+
which ships the `vention.robots`, `vention.io_modules`, `vention.machine_motion`,
|
|
14
|
+
`vention.motors`, `vention.vision`, and `google.type` messages the simulation protos embed.
|
|
15
|
+
|
|
16
|
+
## Use
|
|
17
|
+
|
|
18
|
+
```python
|
|
19
|
+
import grpc
|
|
20
|
+
|
|
21
|
+
from vention.robots.v1.joint_trajectory_point_pb2 import JointTrajectoryPoint
|
|
22
|
+
from vention_sim import SIMULATION_SHA, VENTION_PROTOS_SHA, __version__
|
|
23
|
+
from vention_sim.simulation.v1.sim_robot_driver_commands_pb2 import StartTrajectoryRequest
|
|
24
|
+
from vention_sim.simulation.v4.scene.scene_management_service_pb2_grpc import SceneManagementServiceStub
|
|
25
|
+
|
|
26
|
+
channel = grpc.insecure_channel("localhost:50055")
|
|
27
|
+
scene = SceneManagementServiceStub(channel)
|
|
28
|
+
request = StartTrajectoryRequest(points=[JointTrajectoryPoint()])
|
|
29
|
+
print(f"built from simulation@{SIMULATION_SHA} and vention-protos@{VENTION_PROTOS_SHA}")
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Import root
|
|
33
|
+
|
|
34
|
+
The modules live under `vention_sim`: a proto at `vention/simulation/v1/x.proto` is
|
|
35
|
+
`vention_sim.simulation.v1.x_pb2`, and one at `physics/v3/x.proto` is
|
|
36
|
+
`vention_sim.physics.v3.x_pb2`. Only the Python import path differs from protoc's default.
|
|
37
|
+
The proto packages (`vention.simulation.*`, `physics.*`), file names, gRPC method paths and
|
|
38
|
+
`Any` type URLs are unchanged, so a `vention-grpc-py-sdk` message drops straight into a
|
|
39
|
+
simulation request and reflection sees the same types as every other language.
|
|
40
|
+
|
|
41
|
+
protoc would otherwise place the stubs at `vention.simulation.*`, inside the `vention`
|
|
42
|
+
package that `vention-grpc-py-sdk` owns. Two distributions sharing a regular package only
|
|
43
|
+
work while both unpack into the same `site-packages`; editable installs and any layout with
|
|
44
|
+
more than one root on `sys.path` lose one of them. Giving this package its own import root
|
|
45
|
+
removes the shared directory, so it works in every layout and never depends on how
|
|
46
|
+
`vention-grpc-py-sdk` is laid out.
|
|
47
|
+
|
|
48
|
+
## One package per proto source
|
|
49
|
+
|
|
50
|
+
The simulation protos import `vention-protos` files, and both packages have to coexist in
|
|
51
|
+
one environment. Python leaves no good way to ship two copies of the same generated module:
|
|
52
|
+
two distributions writing the same path overwrite each other in `site-packages`, and protobuf
|
|
53
|
+
registers every message in a process-global pool that rejects duplicates. So this package
|
|
54
|
+
ships only the simulation-owned stubs and takes the shared ones from `vention-grpc-py-sdk`,
|
|
55
|
+
the same way `grpcio-status` takes `google.rpc` from `googleapis-common-protos`.
|
|
56
|
+
|
|
57
|
+
The dependency is an exact pin on the `vention-grpc-py-sdk` release generated from the
|
|
58
|
+
`vention-protos` commit pinned in [`proto/package.json`](../proto/package.json)
|
|
59
|
+
(`config.protos.tag`). That package only ever patch-bumps, so its version says nothing about
|
|
60
|
+
compatibility; the pin is what guarantees the two stub sets agree. Upgrading one means
|
|
61
|
+
upgrading the other, and `pip` refuses combinations that were never generated together.
|
|
62
|
+
|
|
63
|
+
## Versions
|
|
64
|
+
|
|
65
|
+
Releases publish on every push to `main` that touches `proto/**` or `python-sdk/**`, as the
|
|
66
|
+
next patch after the latest release on PyPI. Pull requests touching those paths, and manual runs
|
|
67
|
+
of the workflow on any other branch, publish a `X.Y.Z.dev<build id>` build (PRs get the install
|
|
68
|
+
command as a comment). Once a release exists, `pip` only installs a dev build when its version
|
|
69
|
+
is spelled out.
|
|
70
|
+
|
|
71
|
+
`vention_sim._source` records what a wheel was built from: `SIMULATION_SHA` (the PR head for
|
|
72
|
+
dev builds), `VENTION_PROTOS_SHA`, `VENTION_GRPC_PY_SDK_VERSION`, and `__version__`.
|
|
73
|
+
|
|
74
|
+
## Contributing
|
|
75
|
+
|
|
76
|
+
Nothing in `python-sdk/src` is committed; CI regenerates it from `proto/` before publishing.
|
|
77
|
+
To reproduce the CI build locally:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
npm ci # buf comes from the proto workspace
|
|
81
|
+
python3 -m venv .venv && source .venv/bin/activate
|
|
82
|
+
python python-sdk/scripts/ci_python_package.py
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
The script exports the vendored `vention-protos` at the pinned commit (SSH access to
|
|
86
|
+
`VentionCo/vention-protos` required) and fails if that overwrote the sim-owned protos,
|
|
87
|
+
generates the stubs with [`buf.gen.yaml`](buf.gen.yaml), moves them under `vention_sim` and
|
|
88
|
+
rewrites their imports and module names to match, resolves the matching `vention-grpc-py-sdk`
|
|
89
|
+
release from PyPI, builds the wheel, installs it, and runs
|
|
90
|
+
[`check_installed_wheel.py`](scripts/check_installed_wheel.py): the wheel pins the SDK
|
|
91
|
+
release whose `PROTOS_SHA` equals the pin, every generated module imports, every generated
|
|
92
|
+
message class belongs to its `vention_sim` module and pickles, a sim message keeps its proto
|
|
93
|
+
package, file name, method path and `Any` type URL, and a `vention-grpc-py-sdk` message embeds
|
|
94
|
+
into a sim request. Both import orders are then tried in fresh interpreters.
|
|
95
|
+
|
|
96
|
+
`hatch_build.py` turns the resolved SDK release into the exact dependency pin at build time.
|
|
97
|
+
|
|
98
|
+
[`publish-python-sdk.yml`](../.github/workflows/publish-python-sdk.yml) runs the same script
|
|
99
|
+
and uploads with the org's PyPI token.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"""Hatchling metadata hook: pin vention-grpc-py-sdk to the release scripts/generate.py resolved."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
import runpy
|
|
6
|
+
from pathlib import Path
|
|
7
|
+
|
|
8
|
+
from hatchling.metadata.plugin.interface import MetadataHookInterface
|
|
9
|
+
|
|
10
|
+
SOURCE_MODULE = Path(__file__).parent / "src" / "vention_sim" / "_source.py"
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class SdkPinMetadataHook(MetadataHookInterface):
|
|
14
|
+
def update(self, metadata: dict) -> None:
|
|
15
|
+
if not SOURCE_MODULE.is_file():
|
|
16
|
+
raise FileNotFoundError(f"{SOURCE_MODULE} is missing. Run scripts/generate.py before building.")
|
|
17
|
+
sdk_version = runpy.run_path(str(SOURCE_MODULE))["VENTION_GRPC_PY_SDK_VERSION"]
|
|
18
|
+
# The sim protos embed vention-protos messages, so the stubs only work with
|
|
19
|
+
# the vention-grpc-py-sdk release generated from the same vention-protos
|
|
20
|
+
# commit. That package only ever patch-bumps, so its version carries no
|
|
21
|
+
# compatibility signal and a range would accept breaking releases.
|
|
22
|
+
metadata["dependencies"] = [
|
|
23
|
+
f"vention-grpc-py-sdk=={sdk_version}",
|
|
24
|
+
"protobuf>=6.31.1,<7",
|
|
25
|
+
"grpcio>=1.74.0,<2",
|
|
26
|
+
]
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "vention-sim-grpc-py-sdk"
|
|
3
|
+
dynamic = ["version", "dependencies"]
|
|
4
|
+
description = "Generated Python gRPC clients for the Vention simulation protos"
|
|
5
|
+
authors = [{ name = "VentionCo" }]
|
|
6
|
+
license = { text = "Proprietary" }
|
|
7
|
+
readme = "README.md"
|
|
8
|
+
requires-python = ">=3.10"
|
|
9
|
+
keywords = ["vention", "simulation", "grpc", "protobuf", "client"]
|
|
10
|
+
classifiers = [
|
|
11
|
+
"Programming Language :: Python :: 3",
|
|
12
|
+
"Programming Language :: Python :: 3.10",
|
|
13
|
+
"Programming Language :: Python :: 3.11",
|
|
14
|
+
"Programming Language :: Python :: 3.12",
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
[project.urls]
|
|
18
|
+
Homepage = "https://github.com/VentionCo/simulation"
|
|
19
|
+
Repository = "https://github.com/VentionCo/simulation"
|
|
20
|
+
|
|
21
|
+
[build-system]
|
|
22
|
+
requires = ["hatchling"]
|
|
23
|
+
build-backend = "hatchling.build"
|
|
24
|
+
|
|
25
|
+
# scripts/generate.py writes _source.py: the version, and the vention-grpc-py-sdk
|
|
26
|
+
# release that hatch_build.py turns into the exact dependency pin.
|
|
27
|
+
[tool.hatch.version]
|
|
28
|
+
path = "src/vention_sim/_source.py"
|
|
29
|
+
|
|
30
|
+
[tool.hatch.metadata.hooks.custom]
|
|
31
|
+
path = "hatch_build.py"
|
|
32
|
+
|
|
33
|
+
# src/ is generated and gitignored; hatchling would otherwise drop it from the wheel.
|
|
34
|
+
[tool.hatch.build]
|
|
35
|
+
ignore-vcs = true
|
|
36
|
+
|
|
37
|
+
[tool.hatch.build.targets.wheel]
|
|
38
|
+
packages = ["src/vention_sim"]
|
|
39
|
+
|
|
40
|
+
[tool.hatch.build.targets.sdist]
|
|
41
|
+
include = ["src/vention_sim", "README.md", "hatch_build.py"]
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: physics/common/alert.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'physics/common/alert.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1aphysics/common/alert.proto\x12\x0ephysics.common\"P\n\x05\x41lert\x12-\n\x04type\x18\x01 \x01(\x0e\x32\x19.physics.common.AlertTypeR\x04type\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message\">\n\rAlertsMessage\x12-\n\x06\x61lerts\x18\x01 \x03(\x0b\x32\x15.physics.common.AlertR\x06\x61lerts*Q\n\tAlertType\x12\x11\n\rGENERIC_ERROR\x10\x00\x12\x17\n\x13UNSTABLE_SIMULATION\x10\x01\x12\x18\n\x14REACHED_MEMORY_LIMIT\x10\x02\x62\x06proto3')
|
|
28
|
+
|
|
29
|
+
_globals = globals()
|
|
30
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
31
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'vention_sim.physics.common.alert_pb2', _globals)
|
|
32
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
33
|
+
DESCRIPTOR._loaded_options = None
|
|
34
|
+
_globals['_ALERTTYPE']._serialized_start=192
|
|
35
|
+
_globals['_ALERTTYPE']._serialized_end=273
|
|
36
|
+
_globals['_ALERT']._serialized_start=46
|
|
37
|
+
_globals['_ALERT']._serialized_end=126
|
|
38
|
+
_globals['_ALERTSMESSAGE']._serialized_start=128
|
|
39
|
+
_globals['_ALERTSMESSAGE']._serialized_end=190
|
|
40
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: physics/common/controlSignal.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'physics/common/controlSignal.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"physics/common/controlSignal.proto\x12\x0ephysics.common\"\'\n\rControlSignal\x12\x16\n\x06values\x18\x01 \x03(\x01R\x06valuesb\x06proto3')
|
|
28
|
+
|
|
29
|
+
_globals = globals()
|
|
30
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
31
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'vention_sim.physics.common.controlSignal_pb2', _globals)
|
|
32
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
33
|
+
DESCRIPTOR._loaded_options = None
|
|
34
|
+
_globals['_CONTROLSIGNAL']._serialized_start=54
|
|
35
|
+
_globals['_CONTROLSIGNAL']._serialized_end=93
|
|
36
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: physics/common/gripper.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'physics/common/gripper.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1cphysics/common/gripper.proto\x12\x0ephysics.common\"`\n\rAttachGripper\x12%\n\x0esimulation_vid\x18\x01 \x01(\x05R\rsimulationVid\x12(\n\x10max_normal_force\x18\x02 \x01(\x01R\x0emaxNormalForceb\x06proto3')
|
|
28
|
+
|
|
29
|
+
_globals = globals()
|
|
30
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
31
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'vention_sim.physics.common.gripper_pb2', _globals)
|
|
32
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
33
|
+
DESCRIPTOR._loaded_options = None
|
|
34
|
+
_globals['_ATTACHGRIPPER']._serialized_start=48
|
|
35
|
+
_globals['_ATTACHGRIPPER']._serialized_end=144
|
|
36
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: physics/common/matrix4.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'physics/common/matrix4.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1cphysics/common/matrix4.proto\x12\x0ephysics.common\"%\n\x07Matrix4\x12\x1a\n\x08\x65lements\x18\x01 \x03(\x01R\x08\x65lementsb\x06proto3')
|
|
28
|
+
|
|
29
|
+
_globals = globals()
|
|
30
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
31
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'vention_sim.physics.common.matrix4_pb2', _globals)
|
|
32
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
33
|
+
DESCRIPTOR._loaded_options = None
|
|
34
|
+
_globals['_MATRIX4']._serialized_start=48
|
|
35
|
+
_globals['_MATRIX4']._serialized_end=85
|
|
36
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: physics/common/metrics.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'physics/common/metrics.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1cphysics/common/metrics.proto\x12\x0ephysics.common\"\xa1\x03\n\rTimingMetrics\x12]\n\x10\x66unction_timings\x18\x01 \x03(\x0b\x32\x32.physics.common.TimingMetrics.FunctionTimingsEntryR\x0f\x66unctionTimings\x12\x63\n\x12\x66unction_durations\x18\x02 \x03(\x0b\x32\x34.physics.common.TimingMetrics.FunctionDurationsEntryR\x11\x66unctionDurations\x1a\x63\n\x14\x46unctionTimingsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32\x1f.physics.common.FunctionTimingsR\x05value:\x02\x38\x01\x1ag\n\x16\x46unctionDurationsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x37\n\x05value\x18\x02 \x01(\x0b\x32!.physics.common.FunctionDurationsR\x05value:\x02\x38\x01\"\x96\x02\n\x0f\x46unctionTimings\x12\x38\n\x06timing\x18\x01 \x01(\x0b\x32 .physics.common.TimingStatisticsR\x06timing\x12\x62\n\x11\x63\x61llstack_timings\x18\x02 \x03(\x0b\x32\x35.physics.common.FunctionTimings.CallstackTimingsEntryR\x10\x63\x61llstackTimings\x1a\x65\n\x15\x43\x61llstackTimingsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x36\n\x05value\x18\x02 \x01(\x0b\x32 .physics.common.TimingStatisticsR\x05value:\x02\x38\x01\"\xe2\x01\n\x11\x46unctionDurations\x12\x1a\n\x08\x64uration\x18\x01 \x01(\x01R\x08\x64uration\x12j\n\x13\x63\x61llstack_durations\x18\x02 \x03(\x0b\x32\x39.physics.common.FunctionDurations.CallstackDurationsEntryR\x12\x63\x61llstackDurations\x1a\x45\n\x17\x43\x61llstackDurationsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\x01R\x05value:\x02\x38\x01\"}\n\x0e\x43ontactMetrics\x12%\n\x0etotal_contacts\x18\x01 \x01(\x05R\rtotalContacts\x12!\n\x0c\x61vg_contacts\x18\x02 \x01(\x01R\x0b\x61vgContacts\x12!\n\x0cmax_contacts\x18\x03 \x01(\x05R\x0bmaxContacts\"\xc6\x01\n\x13PhysicsModelMetrics\x12\x1b\n\tdof_count\x18\x01 \x01(\x05R\x08\x64ofCount\x12%\n\x0egeometry_count\x18\x02 \x01(\x05R\rgeometryCount\x12%\n\x0e\x61\x63tuator_count\x18\x03 \x01(\x05R\ractuatorCount\x12%\n\x0e\x65quality_count\x18\x04 \x01(\x05R\requalityCount\x12\x1d\n\nbody_count\x18\x05 \x01(\x05R\tbodyCount\"\xb1\x01\n\rResourceUsage\x12\"\n\ravg_cpu_usage\x18\x01 \x01(\x01R\x0b\x61vgCpuUsage\x12(\n\x10\x61vg_memory_usage\x18\x02 \x01(\x01R\x0e\x61vgMemoryUsage\x12(\n\x10min_memory_usage\x18\x03 \x01(\x01R\x0eminMemoryUsage\x12(\n\x10max_memory_usage\x18\x04 \x01(\x01R\x0emaxMemoryUsage\"x\n\x10TimingStatistics\x12\x10\n\x03min\x18\x01 \x01(\x01R\x03min\x12\x10\n\x03max\x18\x02 \x01(\x01R\x03max\x12\x18\n\x07\x61verage\x18\x03 \x01(\x01R\x07\x61verage\x12\x10\n\x03p95\x18\x04 \x01(\x01R\x03p95\x12\x14\n\x05\x63ount\x18\x05 \x01(\x05R\x05\x63ount\"\xe7\x02\n\x11PhysicsRunMetrics\x12%\n\x0etotal_duration\x18\x01 \x01(\x01R\rtotalDuration\x12\x39\n\x05model\x18\x03 \x01(\x0b\x32#.physics.common.PhysicsModelMetricsR\x05model\x12\x38\n\x07\x63ontact\x18\x04 \x01(\x0b\x32\x1e.physics.common.ContactMetricsR\x07\x63ontact\x12\x44\n\x0eresource_usage\x18\x05 \x01(\x0b\x32\x1d.physics.common.ResourceUsageR\rresourceUsage\x12\x35\n\x06timing\x18\x08 \x01(\x0b\x32\x1d.physics.common.TimingMetricsR\x06timingJ\x04\x08\x02\x10\x03J\x04\x08\x06\x10\x07J\x04\x08\x07\x10\x08R\x0bstep_timingR\x0finternalMetricsR\tstep_loopb\x06proto3')
|
|
28
|
+
|
|
29
|
+
_globals = globals()
|
|
30
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
31
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'vention_sim.physics.common.metrics_pb2', _globals)
|
|
32
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
33
|
+
DESCRIPTOR._loaded_options = None
|
|
34
|
+
_globals['_TIMINGMETRICS_FUNCTIONTIMINGSENTRY']._loaded_options = None
|
|
35
|
+
_globals['_TIMINGMETRICS_FUNCTIONTIMINGSENTRY']._serialized_options = b'8\001'
|
|
36
|
+
_globals['_TIMINGMETRICS_FUNCTIONDURATIONSENTRY']._loaded_options = None
|
|
37
|
+
_globals['_TIMINGMETRICS_FUNCTIONDURATIONSENTRY']._serialized_options = b'8\001'
|
|
38
|
+
_globals['_FUNCTIONTIMINGS_CALLSTACKTIMINGSENTRY']._loaded_options = None
|
|
39
|
+
_globals['_FUNCTIONTIMINGS_CALLSTACKTIMINGSENTRY']._serialized_options = b'8\001'
|
|
40
|
+
_globals['_FUNCTIONDURATIONS_CALLSTACKDURATIONSENTRY']._loaded_options = None
|
|
41
|
+
_globals['_FUNCTIONDURATIONS_CALLSTACKDURATIONSENTRY']._serialized_options = b'8\001'
|
|
42
|
+
_globals['_TIMINGMETRICS']._serialized_start=49
|
|
43
|
+
_globals['_TIMINGMETRICS']._serialized_end=466
|
|
44
|
+
_globals['_TIMINGMETRICS_FUNCTIONTIMINGSENTRY']._serialized_start=262
|
|
45
|
+
_globals['_TIMINGMETRICS_FUNCTIONTIMINGSENTRY']._serialized_end=361
|
|
46
|
+
_globals['_TIMINGMETRICS_FUNCTIONDURATIONSENTRY']._serialized_start=363
|
|
47
|
+
_globals['_TIMINGMETRICS_FUNCTIONDURATIONSENTRY']._serialized_end=466
|
|
48
|
+
_globals['_FUNCTIONTIMINGS']._serialized_start=469
|
|
49
|
+
_globals['_FUNCTIONTIMINGS']._serialized_end=747
|
|
50
|
+
_globals['_FUNCTIONTIMINGS_CALLSTACKTIMINGSENTRY']._serialized_start=646
|
|
51
|
+
_globals['_FUNCTIONTIMINGS_CALLSTACKTIMINGSENTRY']._serialized_end=747
|
|
52
|
+
_globals['_FUNCTIONDURATIONS']._serialized_start=750
|
|
53
|
+
_globals['_FUNCTIONDURATIONS']._serialized_end=976
|
|
54
|
+
_globals['_FUNCTIONDURATIONS_CALLSTACKDURATIONSENTRY']._serialized_start=907
|
|
55
|
+
_globals['_FUNCTIONDURATIONS_CALLSTACKDURATIONSENTRY']._serialized_end=976
|
|
56
|
+
_globals['_CONTACTMETRICS']._serialized_start=978
|
|
57
|
+
_globals['_CONTACTMETRICS']._serialized_end=1103
|
|
58
|
+
_globals['_PHYSICSMODELMETRICS']._serialized_start=1106
|
|
59
|
+
_globals['_PHYSICSMODELMETRICS']._serialized_end=1304
|
|
60
|
+
_globals['_RESOURCEUSAGE']._serialized_start=1307
|
|
61
|
+
_globals['_RESOURCEUSAGE']._serialized_end=1484
|
|
62
|
+
_globals['_TIMINGSTATISTICS']._serialized_start=1486
|
|
63
|
+
_globals['_TIMINGSTATISTICS']._serialized_end=1606
|
|
64
|
+
_globals['_PHYSICSRUNMETRICS']._serialized_start=1609
|
|
65
|
+
_globals['_PHYSICSRUNMETRICS']._serialized_end=1968
|
|
66
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: physics/common/partConfig.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'physics/common/partConfig.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
from vention_sim.physics.common import gripper_pb2 as physics_dot_common_dot_gripper__pb2
|
|
26
|
+
from vention_sim.physics.common import sensor_pb2 as physics_dot_common_dot_sensor__pb2
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fphysics/common/partConfig.proto\x12\x0ephysics.common\x1a\x1cphysics/common/gripper.proto\x1a\x1bphysics/common/sensor.proto\"\x86\x01\n\nPartConfig\x12\x30\n\x07sensors\x18\x01 \x03(\x0b\x32\x16.physics.common.SensorR\x07sensors\x12\x46\n\x0f\x61ttach_grippers\x18\x02 \x03(\x0b\x32\x1d.physics.common.AttachGripperR\x0e\x61ttachGrippersb\x06proto3')
|
|
30
|
+
|
|
31
|
+
_globals = globals()
|
|
32
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
33
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'vention_sim.physics.common.partConfig_pb2', _globals)
|
|
34
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
35
|
+
DESCRIPTOR._loaded_options = None
|
|
36
|
+
_globals['_PARTCONFIG']._serialized_start=111
|
|
37
|
+
_globals['_PARTCONFIG']._serialized_end=245
|
|
38
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: physics/common/robot.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'physics/common/robot.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1aphysics/common/robot.proto\x12\x0ephysics.common\"\x8d\x01\n\tRobotSpec\x12\x19\n\x08robot_id\x18\x01 \x01(\tR\x07robotId\x12\x32\n\x06joints\x18\x02 \x03(\x0b\x32\x1a.physics.common.RobotJointR\x06joints\x12\x31\n\x15\x65nd_effector_link_vid\x18\x03 \x01(\x05R\x12\x65ndEffectorLinkVid\"O\n\nRobotJoint\x12\x1b\n\tjoint_eid\x18\x02 \x01(\x05R\x08jointEid\x12\x14\n\x05index\x18\x03 \x01(\x05R\x05indexJ\x04\x08\x01\x10\x02R\x08positionb\x06proto3')
|
|
28
|
+
|
|
29
|
+
_globals = globals()
|
|
30
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
31
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'vention_sim.physics.common.robot_pb2', _globals)
|
|
32
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
33
|
+
DESCRIPTOR._loaded_options = None
|
|
34
|
+
_globals['_ROBOTSPEC']._serialized_start=47
|
|
35
|
+
_globals['_ROBOTSPEC']._serialized_end=188
|
|
36
|
+
_globals['_ROBOTJOINT']._serialized_start=190
|
|
37
|
+
_globals['_ROBOTJOINT']._serialized_end=269
|
|
38
|
+
# @@protoc_insertion_point(module_scope)
|