-
Notifications
You must be signed in to change notification settings - Fork 119
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
Always resolve package_id from metadata when finding bootloader and partition table #632
Always resolve package_id from metadata when finding bootloader and partition table #632
Conversation
8ee9bc3
to
4cc5bdb
Compare
Turns out that it's only things built by |
4cc5bdb
to
4ccd858
Compare
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.
Thanks for the contribution! Changes LGTM! Just left one nitpick suggestion (sorry). I was able to build both a std and a no_std
with your changes. Mind elaborating which further testing you did?
…artition table The package ID format was officially documented as an opaque identifier and the only thing we were allowed to do with them is look them up in the cargo metadata. Rust 1.77 switched the package ID field to use the publicly documented "Package ID Specification" format instead, which means that the old logic no longer works. Signed-off-by: Johannes Löthberg <johannes.loethberg@elokon.com>
4ccd858
to
612fdab
Compare
Compile-testing isn't enough because they build fine, but they silently fail to find the bootloader and partition table and silently fall back to the ones built into the binary. To test it properly the simplest way is to flash it and look that it's using the correct partition table when it boots. The bootloader is a bit trickier, though if one was found the other would've been found as well, but to explicitly test it the simplest way would be to add an extra log line to the bootloader and see that it's printed, I guess. Sadly there's no way to see from the |
IIRC, if you enable debug logs |
Not with |
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.
LGTM! Thanks
The package ID format was officially documented as an opaque identifier and the only thing we were allowed to do with them is look them up in the cargo metadata. Rust 1.77 switched the package ID field to use the publicly documented "Package ID Specification" format instead, which means that the old logic no longer works.