Skip to content
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

Microservice versioning Proof of Concept #8065

Closed

Conversation

AmeliaEScott
Copy link

@AmeliaEScott AmeliaEScott commented Nov 22, 2019

Related:

This PR uses this common.xml, and this C library generated from it.

This is still a work in progress, because the exact API for microservice versioning has not been finalized. In addition, there is still work to be done on this code:

  • Clean up old code that is currently commented out
  • Determine how the mission microservice should act with systems that do not perform the microservice version handshake
  • Update comments in the Mission microservice to reflect the changes
  • Update MAVLink module to include new auto-generated constants for service IDs and new messages
  • Thorough testing

This is currently a minimum functioning prototype. Work is now being done in PX4 and MAVSDK to reach the same state, while the specifications are finalized and MAVLink is updated.

More context: https://docs.google.com/document/d/1zK_JcJbhtbRA3W0MgnXSNWMUxOcBu6vXocrjZVMXki4/

@hamishwillee
Copy link
Contributor

FWIW

Determine how the mission microservice should act with systems that do not perform the microservice version handshake

Exactly as it does before this change - ad hoc fallback.

Update MAVLink module to include new auto-generated constants for service IDs and new messages

Hmmm. The new messages need to be updated, and they can go in as WIP anytime. We hadn't actually discussed/considered generation of the services and version numbers via the toolchain. It makes sense though.

@AmeliaEScott
Copy link
Author

Yes, I think it is important to generate constants like MAVLINK_SERVICE_ID_MISSION and so on. I don't know how the service numbers should be generated as constants. Perhaps MAVLINK_SERVICE_MISSION_MAX_VERSION or something? But that is so far less important to me.

@AmeliaEScott AmeliaEScott changed the title WIP: Microservice versioning Microservice versioning Proof of Concept Feb 13, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants