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

Use embassy-executor instead of nostd_async #850

Merged
merged 4 commits into from
Sep 15, 2024

Conversation

jannic
Copy link
Member

@jannic jannic commented Sep 14, 2024

For the needs of our examples, a much simpler executor would suffice. But it doesn't hurt to use a full-blown executor, the code doesn't become more complicated that way.

@jannic jannic mentioned this pull request Sep 14, 2024
(We can also consider bumping our MSRV, I just didn't want to mix two
different matters in a single merge request.)
@thejpster
Copy link
Member

I'm happy with this but I'd like to see the use declarations kept in some kind of order. Probably:

  • core imports
  • Hal alias
  • Hal imports
  • imports from other crates

@jannic
Copy link
Member Author

jannic commented Sep 14, 2024

Yes, sorry, I didn't care about the placement but just left them where rust-analyzer put them.

@ithinuel
Copy link
Member

I'm still concerned about the confusion between rp2*-hal and embassy's own embassy-rp. We already regularly get questions from people trying to mix the two. I'm afraid this would only increase this issue.

@jamesmunns told me about https://mycelium.elizas.website/maitake/ a few months back and I think it'd be a good alternative candidate.
I haven't had the time to look into it though.

@jannic
Copy link
Member Author

jannic commented Sep 15, 2024

I'm still concerned about the confusion between rp2*-hal and embassy's own embassy-rp. We already regularly get questions from people trying to mix the two. I'm afraid this would only increase this issue.

rp2*-hal + embassy-executor looks like a very good combination, and I don't think we should discourage that because of possible confusion. We should however explain it in our documentation. Both that it's only one possible executor and there are others, and that rp2*-hal and embassy-rp are alternatives and should not be used at the same time.

@jannic
Copy link
Member Author

jannic commented Sep 15, 2024

@ithinuel, I had a quick look at maitake. It's definitely interesting, but it doesn't seem to provide a ready-made executor we could easily use in our examples. Therefore I'd still propose to go with embassy-executor, for now. That does not rule out a later switch to an alternative. Especially as the HAL itself doesn't depend on the executor at all. Only the examples need it.

@thejpster
Copy link
Member

I'm fine merging this and changing it later if we need to.

Another option is lilos but it currently doesn't support RISC-V.

@jannic
Copy link
Member Author

jannic commented Sep 15, 2024

Yes, let's not get paralyzed by too many choices. Merging this now, feel free to propose a better alternative any time.

@jannic jannic merged commit f23f877 into rp-rs:main Sep 15, 2024
49 checks passed
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.

3 participants