Closed chemicstry closed 2 years ago
That sounds good. Thanks for contributing.
Why is canadensis_data_types pregenerated instead of using the canadensis_macro?
The main reason is that the macro is experimental and I'm not sure if it actually provides a better user experience.
With the macro, everyone has to compile the DSDL parser and everything, run it on all the DSDL files, and generate the code at build time. IDEs are also generally less helpful with macro-generated code.
Any reason for not using git submodules for public_regulated_data_types and similar?
I was not thinking about that earlier, but you're right that it makes sense in this situation.
The tests are failing because some of the examples have zero-sized containers. The new version of heapless does not allow that. I'll fix that later.
Just to check, should I merge this now or are you still planning to make the other change you mentioned?
I wasn't sure if I should make them. If you'd like I can rename the rest of the DSDLs in the upcoming days, but otherwise this is ready to merge.
Dsdl now uses
.dsdl
extension instead of.uavcan
: https://github.com/OpenCyphal/pydsdl/issues/78For compatibility purposes it is desirable to support both
.uavcan
and.dsdl
and I don't see any reasons not to.Also updated
public_regulated_data_types
to test generation. Should I update all other tests too and leave just one.uavcan
as compatibility test?Some related questions:
canadensis_data_types
pregenerated instead of using thecanadensis_macro
?public_regulated_data_types
and similar?