ros2 / rosidl

Packages which provide the ROS IDL (.msg) definition and code generation.
Apache License 2.0
76 stars 125 forks source link

Switch to using fastjsonschema for schema validation. #809

Closed clalancette closed 4 months ago

clalancette commented 4 months ago

The main reason to do this is because jsonschema (what we currently use) depends on referencing, which depends on rpds-py, which has C libraries. That means that when using the python debug interpreter on Windows, we would have to build a custom pip package for it to work.

In contrast, fastjsonschema is pure python and has no dependencies. It is also available on all of our default platforms. So switch to using it here so things work on Windows debug.

Note that this depends on both https://github.com/ros2/ci/pull/782 and https://github.com/ros/rosdistro/pull/41538 to go in first.

clalancette commented 4 months ago

Rpr job is expected to fail until we actually merge this in and do a release.

clalancette commented 4 months ago

CI:

clalancette commented 4 months ago

@ros-pull-request-builder retest this please

clalancette commented 4 months ago

Here's new CI with the new changes in https://github.com/ros2/ci/pull/782 and https://github.com/ros-infrastructure/ros2-cookbooks/pull/71:

clalancette commented 4 months ago

All right, all dependent PRs are merged, and CI is green here. Going ahead and merging this one in, thanks for the reviews.