Skip to content

Re-export embassy_time, upgrade dependencies (WIP)#32

Merged
lulf merged 4 commits into
lulf:mainfrom
BartMassey-upstream:upgrade-20260103
Mar 2, 2026
Merged

Re-export embassy_time, upgrade dependencies (WIP)#32
lulf merged 4 commits into
lulf:mainfrom
BartMassey-upstream:upgrade-20260103

Conversation

@BartMassey
Copy link
Copy Markdown
Contributor

Re-exports the embassy_time crate to avoid resolver errors. Upgrades all dependencies and fix resulting breakage. Bumps the version to 0.5.0 because breaking changes.

This PR depends on embassy-rs/embassy#5160 and should wait until that is upstreamed.

@BartMassey
Copy link
Copy Markdown
Contributor Author

Sigh. Bumped nrf-hal dependency back to 0.9, since the upgrade there looks like a project. Now trying to fix all the examples to work in the upgraded world. Patience, please.

@BartMassey BartMassey changed the title Re-export embassy_time, upgrade dependencies (depends on nrf-hal 0.9.1) Re-export embassy_time, upgrade dependencies (WIP) Jan 3, 2026
@BartMassey
Copy link
Copy Markdown
Contributor Author

Ok, fixed all the examples with the help of Claude (hope that's OK). Everything looks like it will compile now.

Sadly, I needed to pin nrf-sdc and nrf-mpsl to Git rather than crates.io to get the trouBLE example to build, since the published versions are too stale. I will poke at that shortly.

…ibility

Removed explicit embassy-time dependencies from all examples in favor of using
the re-exported version from microbit-bsp. This ensures consistent versioning
across the codebase and reduces dependency duplication.

Also updated nrf-sdc and nrf-mpsl to git versions compatible with embassy-nrf
0.9, and fixed the Rng API usage in ble.rs to match the updated embassy-nrf API.
Fixed speaker example to use SimpleConfig parameter required by embassy-nrf 0.9.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@lulf
Copy link
Copy Markdown
Owner

lulf commented Jan 4, 2026

I would prefer to not re-export embassy-time, what's the error you're getting from the resolver?

@BartMassey
Copy link
Copy Markdown
Contributor Author

I couldn't find a version of embassy-time to explicitly depend on that worked with the current microbit-bsp and Embassy 9 (which I wanted for future-proofing). I didn't try too hard. https://github.com/pdx-cs-rust-embedded/hw-life-soln-embassy-bart

Curious about the preference. It's hard to keep dependencies in sync if you don't do it this way, I think? microbit-bsp already re-exports embassy-nrf as well as the HAL and PAC crates, so it seemed logical to re-export this too… (It's also just convenient to have only one dependent crate for a project.) Yes, this means that a breaking upstream change is also a breaking change for this crate, but not sure how big a deal that is.

Your call, obviously. I think it's worth updating versions either way: I (and the examples) can explicitly depend on embassy-time 9 and things should be OK.

@lulf
Copy link
Copy Markdown
Owner

lulf commented Jan 5, 2026

I'm not sure what the best path forward is. You're right that since we're already exporting embassy-nrf, might as well export embassy-time too 🤔 Maybe the sweet spot here is to re-export embassy stuff at least.

@BartMassey
Copy link
Copy Markdown
Contributor Author

Absolutely happy to rewrite the patches however you want. Let me know what you decide.

@BartMassey
Copy link
Copy Markdown
Contributor Author

Need some version of this soon. What shall I do? Thanks.

@lulf lulf merged commit c8bc668 into lulf:main Mar 2, 2026
1 check passed
Copy link
Copy Markdown
Owner

@lulf lulf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This got lost, thanks for the ping. Let's try it like this.

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.

2 participants