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

Work to get v2.0 out the door #2002

Closed
8 of 13 tasks
julianoes opened this issue Mar 15, 2023 · 13 comments
Closed
8 of 13 tasks

Work to get v2.0 out the door #2002

julianoes opened this issue Mar 15, 2023 · 13 comments
Assignees

Comments

@julianoes
Copy link
Collaborator

julianoes commented Mar 15, 2023

I have been working on various refactoring and changes towards the next major revision. For visibility, let me list the remaining work that I would like to get done before shipping v2:

Required:

Optional:

@Consti10
Copy link
Contributor

Let me recommend you spdlog for logging

@JonasVautherin
Copy link
Collaborator

Looking into them, I think that quite a few are not breaking the API, are they? I agree that those are nice improvements, but they could be done after the v2 release, as implementation details.

For instance:

  • Fix/disable failing CI tests
  • Try both: REQUEST_MESSAGE and older custom getters
  • Rename _parent to e.g. _system_impl everywhere

Or do you think they are really required before v2?

@julianoes
Copy link
Collaborator Author

@Consti10

Let me recommend you spdlog for logging

Or, alternatively, I was hoping we can go to C++20 soon and use std::format: https://en.cppreference.com/w/cpp/utility/format.

@julianoes
Copy link
Collaborator Author

Looking into them, I think that quite a few are not breaking the API, are they?

Yer, you're right. We can always tackle them later too.

@tlapik123
Copy link
Contributor

tlapik123 commented Jun 5, 2023

@Consti10

Let me recommend you spdlog for logging

Or, alternatively, I was hoping we can go to C++20 soon and use std::format: en.cppreference.com/w/cpp/utility/format.

I'll just add to this that the latest gcc/clang compiler will need to be used for format to work. (not sure if that's an issue, but it's good to know).
image
source

@julianoes
Copy link
Collaborator Author

@tlapik123 right, so maybe not yet. I usually would require the version that comes with the most recent Ubuntu LTS and latest MSVC installation. Sadly with Ubuntu 22.04 we're stuck with GCC 11.3 (or GCC 12 if installed) and Clang 14.

@Consti10
Copy link
Contributor

Consti10 commented Jun 7, 2023

you can easly compile fmt from sources drectly when using spdlog (it does so by default).
Then gcc fmt support is not needed.

@julianoes
Copy link
Collaborator Author

spdlog seems like the obvious choice then.

@HTRamsey
Copy link

HTRamsey commented Jul 29, 2023

Maybe an issue similar to this one specifically for Ardupilot compatibility changes needed would be useful. I have been busy on other projects, but soon I hope to work more on this so I will make note of what I notice needs to be done here for now.

  • [Follow Me] Config parameters for Ardupilot are different, so this plugin won't work until they are implemented. Capabilities also currently only implements POS. Need to also adjust follow mode detection.
  • [FTP] Returns Protocol Error when trying to grab parameters
  • [General] Don't repeatedly request unsupported messages
  • [Telemetry] Read MAVLINK_MSG_ID_EKF_STATUS_REPORT which must show ekf healthy before takeoff.
  • [Parameters] implement int8_t & int16_t for the plugin.

@julianoes @JonasVautherin do you have any reservations about having a port override in the shell plugin? I need to use a different serial port and it seems a waste to rewrite the implementation with passthrough just to change that param. Maybe have a config command to set SERIAL_CONTROL_FLAG & SERIAL_CONTROL_DEV or just have default params one can override?

@julianoes
Copy link
Collaborator Author

julianoes commented Aug 7, 2023

[FTP] Returns Protocol Error when trying to grab parameters

This is something we'll have to address. Have you tried with the #2060 PR? I'm reworking FTP there.
I wouldn't call it a blocker because v2 is more about interface changes than stability/fixes. Those can always come later.

@julianoes
Copy link
Collaborator Author

[General] Don't repeatedly request unsupported messages

Sure, let's work through those and fix them. Also not blocking v2.

@julianoes
Copy link
Collaborator Author

do you have any reservations about having a port override in the shell plugin?

I'm not sure what exactly you need and why. I suggest you open a new issue and describe further what you mean.

@julianoes
Copy link
Collaborator Author

Done and dusted: https://github.com/mavlink/MAVSDK/releases/tag/v2.0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants