-
-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Python codegen #306
Add Python codegen #306
Conversation
All tests pass with the following manual invocation: pytest --doctest-modules -sxv verification/python/suite -W ignore::DeprecationWarning The next step is to integrate this with tox and drop dependency on the outer test suite.
…octests in the support module
…es the same thing)
…'s own scaffolding, otherwise things get a bit complicated. It is currently not being tested due to the renaming, this will be fixed next.
I would like to pass the value of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not super-thrilled with all the jinja macros (I prefer writing as much code as possible in Python as filters, tests, or other objects) but the results are looking really good.
At some point we'll want to generate python<->c bindings. Do you foresee that being disruptive to the current design of your python?
eb62ef3
to
c65cabc
Compare
I fixed the ReadTheDocs build issue in the last commit: e6b7c25 The commit adds the RTD config file For now, I left it in this state as this is meant to be a quick fix; perhaps we can revisit this later. |
c65cabc
to
e6b7c25
Compare
c702b79
to
65b4532
Compare
Kudos, SonarCloud Quality Gate passed! |
Functionally this is complete and ready for review (sans possible minor CI issues), but the following will need to be completed before this is ready for merging:
verification/python/README.md
.The codegen templates do not need review as they have been transplanted as-is from PyCyphal. Same goes for the tests themselves.
This changeset also drops support for Python 3.6.
Fixes OpenCyphal/pycyphal#110
Required for OpenCyphal/pycyphal#277
Supersedes #234