Commit Graph

95 Commits

Author SHA1 Message Date
nerwalt
30dcc88093 Adding ready_to_receive to Channel and Receiver
Adding ReceiveReadyFuture
2024-04-19 12:16:12 -06:00
Caio
86706bdc14 Add map method 2024-04-14 19:35:59 -03:00
Oliver Rockstedt
fa05256f05 embassy-sync: Add len, is_empty and is_full functions to Channel. 2024-04-08 00:40:42 +02:00
Alex Moon
c9acebf783 Fix FairSemaphore bugs
- `acquire` and `acquire_all` futures were `!Send`, even for `M: RawMutex + Send` due to the captured `Cell`.
- If multiple `acquire` tasks were queued, waking the first would not wake the second, even if there were permits remaining after the first `acquire` completed.
2024-04-03 19:13:57 -04:00
Alex Moon
f8a6007e1c Semaphore synchronization primitive
This provides both a "greedy" and "fair" async semaphore implementation.
2024-03-30 22:25:41 -04:00
Alexandru Radovici
a38cbbdc59
fix typo 2024-03-30 22:36:30 +02:00
Dario Nieuwenhuis
c2aa95016a
Merge pull request #2727 from de-vri-es/forward-std-feature-to-critical-section
Forward the "std" feature to the critical-section crate in embassy-sync.
2024-03-22 11:34:45 +00:00
Maarten de Vries
a85e9c6e68 Forward the "std" feature to the critical-section crate in embassy-sync.
Otherwise, using embassy-sync in unit tests will result in linker errors
when using the CriticalSectionRawMutex.
2024-03-22 12:29:01 +01:00
Ulf Lilleengen
3668ace35c
Merge pull request #2651 from peterkrull/once_lock
Add `OnceLock` sync primitive
2024-03-22 08:40:27 +00:00
Dario Nieuwenhuis
3d842dac85 fmt: disable "unused" warnings. 2024-03-20 14:53:19 +01:00
Noah Bliss
d06dbf332b
Doc update: signaled does not clear signal
signaled does not clear signal (doc update)
2024-03-20 03:19:01 +00:00
Ulf Lilleengen
c0d91600ea rustfmt 2024-03-12 15:37:53 +01:00
Ulf Lilleengen
8bb1fe1f65 Add conversion into dyn variants for channel futures 2024-03-12 15:27:52 +01:00
Dario Nieuwenhuis
60567b72fb
Merge pull request #2660 from embassy-rs/zerocopy-docs
docs: clarify capabilities of zerocopy channel
2024-03-04 17:52:03 +00:00
Ulf Lilleengen
2a25757377 docs: clarify capabilities of zerocopy channel 2024-03-04 18:36:34 +01:00
Peter Krull
245e7d3bc2 This one is for ci/rustfmt 2024-03-03 15:43:01 +01:00
Peter Krull
4bbcc2a7fb Add OnceLock sync primitive 2024-03-03 15:35:52 +01:00
Peter Krull
69d37503c2 Add constructor for dynamic channel 2024-03-02 13:13:26 +01:00
Stefan Gehr
b9d0069671
correct spelling of the word "receive" 2024-02-03 14:56:31 +01:00
Sam Lakerveld
15e9b60abb
sync/pipe: be able to be zero-initialized 2024-02-01 13:47:07 +01:00
Dario Nieuwenhuis
6a1c415a4c Complete cargo.tomls more. 2024-01-12 00:32:47 +01:00
Dario Nieuwenhuis
b452a6bcf6 Centralize license and MSRV boilerplate into the repo readme. 2024-01-11 18:18:35 +01:00
Dario Nieuwenhuis
fe0b21e21e Remove nightly autodetects. 2024-01-10 18:32:14 +01:00
Rasmus Melchior Jacobsen
13c107e815 Put waiting state back if any 2023-12-20 13:09:16 +01:00
Rasmus Melchior Jacobsen
f9d0daad80 feat(embassy-sync): Add try_take() to signal 2023-12-20 08:37:15 +01:00
Scott Mabin
a6f4538219 embassy-sync 0.5 2023-12-04 13:10:41 +00:00
Dario Nieuwenhuis
c6989dfbca Remove nightly and unstable-traits features in preparation for 1.75. 2023-11-29 17:26:33 +01:00
Dario Nieuwenhuis
4634316749 Update embedded-(hal,io,nal). 2023-11-29 17:01:36 +01:00
Scott Mabin
454828accb revert module changes, reexport heapless relevant items 2023-11-20 11:28:31 +00:00
Scott Mabin
5a60024af7 docs 2023-11-18 15:09:41 +00:00
Scott Mabin
f482a105b8 more clean up, refactor channel into module to share code 2023-11-18 15:01:12 +00:00
Scott Mabin
7589b5e13e reduce duplication further by sharing Dynamic sender/receiver 2023-11-18 14:56:29 +00:00
Scott Mabin
2efa73f431 docs and simple test for priority 2023-11-18 14:37:15 +00:00
Scott Mabin
270ec324b0 Reduce duplication, fix tests 2023-11-18 14:31:09 +00:00
Scott Mabin
ca0d02933b Priority channel using binary heap 2023-11-18 14:21:43 +00:00
Dario Nieuwenhuis
4647df14b1 Update heapless to v0.8, embedded-nal-async to v0.7 2023-11-10 16:43:53 +01:00
Dario Nieuwenhuis
1f51367eb9 Upgrade static-cell to v2.0 2023-11-02 21:52:07 +01:00
Dániel Buga
d941882066 Prepare embassy-net 0.2.1 and embassy-sync 0.4.0 2023-10-31 09:33:27 +01:00
Dániel Buga
ad07ea0290 Re-add impl_trait_projections 2023-10-30 19:10:45 +01:00
Dario Nieuwenhuis
0324cee0ca update embedded-io, embedded-nal-async. 2023-10-04 00:10:55 +02:00
Dario Nieuwenhuis
eb12114345 Remove impl_trait_projections. 2023-10-02 14:00:49 +02:00
Ulf Lilleengen
1b20ba27b1 feat: bump embassy-sync version to 0.3.0
Update changelog in preparation for release
2023-09-14 18:26:00 +02:00
Dario Nieuwenhuis
615882ebd6 Rename zero_copy -> zerocopy. 2023-09-04 22:16:28 +02:00
Ruben De Smet
6e38b07642 Add docs to zero-copy-channel 2023-09-04 22:13:27 +02:00
Ruben De Smet
1eb03dc41a Prefer receive over recv 2023-09-04 22:13:27 +02:00
Ruben De Smet
a2656f402b Move embassy-net-driver-channel::zerocopy_channel to embassy_sync::zero_copy_channel 2023-09-04 22:13:27 +02:00
Dario Nieuwenhuis
9baa3bafb0
Merge pull request #1854 from bugadani/str
embassy-{net, sync, time}: Use fmt::unwrap
2023-09-03 00:35:21 +02:00
Dániel Buga
0c66636d00 Use fmt::unwrap 2023-09-02 08:39:52 +02:00
Dario Nieuwenhuis
5e613d9abb Sync all fmt.rs files. 2023-08-30 01:37:18 +02:00
Dario Nieuwenhuis
6c165f8dc0 sync/pipe: impl BufRead. 2023-08-30 01:06:41 +02:00