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 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						b3212ae383 
					 
					
						
						
							
							Merge pull request  #1763  from rubdos/sender-receiver-with-ctx  
						
						... 
						
						
						
						Refactor Channel/Sender/Receiver poll methods 
						
						
					 
					
						2023-08-22 21:25:29 +00:00 
						 
				 
			
				
					
						
							
							
								Ruben De Smet 
							
						 
					 
					
						
						
							
						
						c39671266e 
					 
					
						
						
							
							Deprecate *recv* in favor of *receive*  
						
						
						
						
					 
					
						2023-08-22 16:58:31 +02:00 
						 
				 
			
				
					
						
							
							
								Dániel Buga 
							
						 
					 
					
						
						
							
						
						8655ba110c 
					 
					
						
						
							
							Fix typo  
						
						
						
						
					 
					
						2023-08-15 19:13:36 +02:00 
						 
				 
			
				
					
						
							
							
								Ruben De Smet 
							
						 
					 
					
						
						
							
						
						b1ec460b9a 
					 
					
						
						
							
							Implement Channel::poll_receive(..) -> Poll<T>  
						
						
						
						
					 
					
						2023-08-11 13:22:56 +02:00 
						 
				 
			
				
					
						
							
							
								Ruben De Smet 
							
						 
					 
					
						
						
							
						
						f9d251cd5c 
					 
					
						
						
							
							Channel poll methods return Poll instead of bool  
						
						
						
						
					 
					
						2023-08-11 12:13:46 +02:00 
						 
				 
			
				
					
						
							
							
								Ruben De Smet 
							
						 
					 
					
						
						
							
						
						b658f10db9 
					 
					
						
						
							
							Expose poll_ready_to_{send,receive} in Sender/Receiver  
						
						
						
						
					 
					
						2023-08-11 12:13:42 +02:00 
						 
				 
			
				
					
						
							
							
								Sam Lakerveld 
							
						 
					 
					
						
						
							
						
						2ab9a07b64 
					 
					
						
						
							
							embassy-sync: manual Copy impls for channel and pipe  
						
						
						
						
					 
					
						2023-08-08 11:22:01 +02:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						5d5cd23715 
					 
					
						
						
							
							Update to embedded-io 0.5 ( #1752 )  
						
						
						
						
					 
					
						2023-08-07 13:43:09 +02:00 
						 
				 
			
				
					
						
							
							
								xoviat 
							
						 
					 
					
						
						
							
						
						890d113b85 
					 
					
						
						
							
							wpan: fully implement initial draft concept  
						
						
						
						
					 
					
						2023-07-18 18:28:12 -05:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						f5ca687e9b 
					 
					
						
						
							
							sync/pipe: fix doc typos.  
						
						
						
						
					 
					
						2023-06-27 23:49:12 +02:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						3465452a93 
					 
					
						
						
							
							fmt: remove unused defmt::timestamp!  
						
						
						
						
					 
					
						2023-06-09 03:33:39 +02:00 
						 
				 
			
				
					
						
							
							
								ZhangYong 
							
						 
					 
					
						
						
							
						
						24c4ea71b1 
					 
					
						
						
							
							sync/pipe: write all user data to pipe  
						
						... 
						
						
						
						sync/pipe: add write_all function 
						
						
					 
					
						2023-06-04 22:29:59 +08:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						1d8321b821 
					 
					
						
						
							
							Use make_static! from static-cell v1.1  
						
						
						
						
					 
					
						2023-06-01 01:42:34 +02:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						3081ecf301 
					 
					
						
						
							
							sync: do will_wake check in MultiWakerRegistration.  
						
						
						
						
					 
					
						2023-05-26 13:17:39 +02:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						9f7392474b 
					 
					
						
						
							
							Update Rust nightly.  
						
						
						
						
					 
					
						2023-05-19 17:12:39 +02:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						577f060d24 
					 
					
						
						
							
							Release embassy-sync v0.2.0  
						
						
						
						
					 
					
						2023-04-13 23:40:49 +02:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						80972f1e0e 
					 
					
						
						
							
							executor,sync: add support for turbo-wakers.  
						
						... 
						
						
						
						This is a `core` patch to make wakers 1 word (the task pointer) instead of 2 (task pointer + vtable). It allows having the "waker optimization" we had a while back on `WakerRegistration/AtomicWaker`, but EVERYWHERE, without patching all crates.
Advantages:
- Less memory usage.
- Faster.
- `AtomicWaker` can actually use atomics to load/store the waker, No critical section needed.
- No `dyn` call, which means `cargo-call-stack` can now see through wakes.
Disadvantages:
- You have to patch `core`...
- Breaks all executors and other things that create wakers, unless they opt in to using the new `from_ptr` API.
How to use:
- Run this shell script to patch `core`. https://gist.github.com/Dirbaio/c67da7cf318515181539122c9d32b395 
- Enable `build-std`
- Enable `build-std-features = core/turbowakers`
- Enable feature `turbowakers` in `embassy-executor`, `embassy-sync`.
- Make sure you have no other crate creating wakers other than `embassy-executor`. These will panic at runtime.
Note that the patched `core` is equivalent to the unpached one when the `turbowakers` feature is not enabled, so it should be fine to leave it there. 
						
						
					 
					
						2023-03-30 17:55:55 +02:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						2c45b5c519 
					 
					
						
						
							
							sync/pipe: update to clarify docs that it is byte-oriented.  
						
						... 
						
						
						
						There was some language copypasted from Channel talking about "messages"
or "values", that is not really accurate with Pipe. 
						
						
					 
					
						2023-03-26 23:32:12 +02:00 
						 
				 
			
				
					
						
							
							
								Rasmus Melchior Jacobsen 
							
						 
					 
					
						
						
							
						
						ce7bd6955f 
					 
					
						
						
							
							perf(pubsub): Skip clone on last message  
						
						
						
						
					 
					
						2023-03-21 13:25:49 +01:00 
						 
				 
			
				
					
						
							
							
								Rasmus Melchior Jacobsen 
							
						 
					 
					
						
						
							
						
						472df3fad6 
					 
					
						
						
							
							fix(pubsub): Pop messages which count is 0 after unsubscribe  
						
						
						
						
					 
					
						2023-03-15 16:45:18 +01:00 
						 
				 
			
				
					
						
							
							
								Grant Miller 
							
						 
					 
					
						
						
							
						
						7be4337de9 
					 
					
						
						
							
							Add #[must_use] to all futures  
						
						
						
						
					 
					
						2023-02-24 13:01:41 -06:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						10c9cc31b1 
					 
					
						
						
							
							Remove unnecessary use of atomic-polyfill.  
						
						... 
						
						
						
						Only use it when CAS is actually needed. 
						
						
					 
					
						2022-12-23 20:46:49 +01:00 
						 
				 
			
				
					
						
							
							
								Gabriel Smith 
							
						 
					 
					
						
						
							
						
						d438d1b685 
					 
					
						
						
							
							sync: Fix nightly feature compilation after upgrade to embedded-io 0.4.0  
						
						
						
						
					 
					
						2022-11-27 16:24:20 -05:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						1e2fb0459d 
					 
					
						
						
							
							Switch to async-fn-in-trait  
						
						
						
						
					 
					
						2022-11-25 21:02:06 +01:00 
						 
				 
			
				
					
						
							
							
								Matt Johnston 
							
						 
					 
					
						
						
							
						
						536b6a2de5 
					 
					
						
						
							
							sync/signal: Implement Default for Signal  
						
						
						
						
					 
					
						2022-11-22 21:55:42 +08:00 
						 
				 
			
				
					
						
							
							
								Matt Johnston 
							
						 
					 
					
						
						
							
						
						14a2d15240 
					 
					
						
						
							
							Derive Default for WakerRegistration  
						
						... 
						
						
						
						This simplifies creating arrays of WakerRegistrations 
						
						
					 
					
						2022-11-06 11:33:38 +08:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						d2246ae693 
					 
					
						
						
							
							Release embassy-sync, embassy-time v0.1.0  
						
						
						
						
					 
					
						2022-10-26 22:13:27 +02:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						eeb072d9cb 
					 
					
						
						
							
							Update Rust nightly.  
						
						
						
						
					 
					
						2022-10-26 16:47:29 +02:00 
						 
				 
			
				
					
						
							
							
								Dion Dokter 
							
						 
					 
					
						
						
							
						
						530182d668 
					 
					
						
						
							
							Forgot to add space function to immediate publisher  
						
						
						
						
					 
					
						2022-10-05 15:15:03 +02:00 
						 
				 
			
				
					
						
							
							
								Ulf Lilleengen 
							
						 
					 
					
						
						
							
						
						59765590e0 
					 
					
						
						
							
							Add required info to embassy-sync package  
						
						... 
						
						
						
						Updates the README.md based on embassy-futures structure. 
						
						
					 
					
						2022-10-04 16:38:11 +02:00 
						 
				 
			
				
					
						
							
							
								Dion Dokter 
							
						 
					 
					
						
						
							
						
						874384826d 
					 
					
						
						
							
							Went back to named futures but now with must_use  
						
						
						
						
					 
					
						2022-09-29 15:15:10 +02:00 
						 
				 
			
				
					
						
							
							
								Dion Dokter 
							
						 
					 
					
						
						
							
						
						f4ebc36b63 
					 
					
						
						
							
							Futures in pub & sub are now awaited instead of returned for better user compiler diagnostics.  
						
						... 
						
						
						
						Added functions for reading how many messages are available 
						
						
					 
					
						2022-09-29 14:24:42 +02:00 
						 
				 
			
				
					
						
							
							
								ivmarkov 
							
						 
					 
					
						
						
							
						
						c5ce02b30e 
					 
					
						
						
							
							Remove default, reorder generic params  
						
						
						
						
					 
					
						2022-09-25 09:40:36 +03:00 
						 
				 
			
				
					
						
							
							
								ivmarkov 
							
						 
					 
					
						
						
							
						
						8536666148 
					 
					
						
						
							
							Remove default, reorder generic params  
						
						
						
						
					 
					
						2022-09-24 20:27:27 +03:00 
						 
				 
			
				
					
						
							
							
								ivmarkov 
							
						 
					 
					
						
						
							
						
						ca92302d03 
					 
					
						
						
							
							Parameterize Signal with RawMutex  
						
						
						
						
					 
					
						2022-09-24 20:26:51 +03:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						a0487380da 
					 
					
						
						
							
							Replace futures::future::poll_fn -> core::future::poll_fn.  
						
						
						
						
					 
					
						2022-09-22 16:42:49 +02:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						897b72c872 
					 
					
						
						
							
							Update Rust nightly.  
						
						... 
						
						
						
						Removes feature(generic_associated_types) 
						
						
					 
					
						2022-09-22 16:38:14 +02:00 
						 
				 
			
				
					
						
							
							
								Joakim Hulthe 
							
						 
					 
					
						
						
							
						
						79654510b7 
					 
					
						
						
							
							Make rustfmt happy  
						
						
						
						
					 
					
						2022-09-16 10:45:01 +02:00 
						 
				 
			
				
					
						
							
							
								Joakim Hulthe 
							
						 
					 
					
						
						
							
						
						70a3b85acc 
					 
					
						
						
							
							Add .into_inner() and .get_mut() to Mutex  
						
						
						
						
					 
					
						2022-09-16 10:32:43 +02:00 
						 
				 
			
				
					
						
							
							
								Dario Nieuwenhuis 
							
						 
					 
					
						
						
							
						
						ea5f2c71e0 
					 
					
						
						
							
							sync/signal: wake old waker on overflow instead of panicking.  
						
						... 
						
						
						
						This makes behavior consistent with `WakerRegistration`. It allows canceling `wait`
in one task and then calling `wait` in another. If two tasks are `wait`ing
concurrently the signal will be received by only one of them, randomly. 
						
						
					 
					
						2022-09-12 12:05:58 +02:00 
						 
				 
			
				
					
						
							
							
								Ulf Lilleengen 
							
						 
					 
					
						
						
							
						
						782751dfb9 
					 
					
						
						
							
							Add missing std feature for embassy-sync  
						
						... 
						
						
						
						Fixes  #930  
					
						2022-08-29 10:28:01 +02:00 
						 
				 
			
				
					
						
							
							
								Ulf Lilleengen 
							
						 
					 
					
						
						
							
						
						06011f67b2 
					 
					
						
						
							
							Add README for embassy-sync  
						
						
						
						
					 
					
						2022-08-23 13:54:40 +02:00