Async++ concurrency framework for C++11
Generic Atomic<T> type for Rust
A fast and safe implementation of stackful coroutines in Rust
Amanieu/a-tale-of-binary-translation 38
Simple RISC-V emulator presented at Rust Nation 2023
Implementation of CStr and CString for no_std environments
A markov chain generator written in C.
aHash is a non-cryptographic hashing algorithm that uses the AES hardware instruction
A vector with a fixed capacity. (Rust)
Backtraces in Rust
Some benchmarks of different languages
PR opened rust-lang/rust
Attempt to re-land #109507 now that #110771 is fixed.
OOM is now reported as a panic but with a custom payload type (AllocErrorPanicPayload
) which holds the layout that was passed to handle_alloc_error
.
This should be reviewed one commit at a time:
- The first commit adds
AllocErrorPanicPayload
and changes allocation errors to always be reported as panics. - The second commit removes
#[alloc_error_handler]
and thealloc_error_hook
API.
ACP: https://github.com/rust-lang/libs-team/issues/192
Closes #51540 Closes #51245
pr created time in 4 hours
pull request commentrust-lang/rust
The FCP for it has already passed: https://github.com/rust-lang/stdarch/pull/1399
comment created time in 4 hours
issue commentAmanieu/thread_local-rs
Weird bucket size for 2nd bucket
I don't think I want this in my crate, it's a lot of complexity for a feature that is rarely needed. But feel free to keep your fork going or even publish it on crates.io if you feel it would be useful to others.
comment created time in 5 hours
pull request commentrust-lang/rust
Don't drain-on-drop in DrainFilter impls of various collections.
hashbrown 0.14 is now released, so this can move forward. Also a perf run would be nice since hashbrown has had performance improvements since 0.13.
@bors rollup=never
comment created time in 5 hours
issue closedAmanieu/parking_lot
Time for a new parking_lot_core release?
There have been quite a few changes since the Feb 1 0.9.7 release @Amanieu ....
Do you have an ETA for the next release?
Thanks!
closed time in 5 hours
jqnatividadissue commentAmanieu/parking_lot
Time for a new parking_lot_core release?
Done!
comment created time in 5 hours
issue commentAmanieu/thread_local-rs
Weird bucket size for 2nd bucket
Sure that sounds fine.
comment created time in 5 hours
created tagAmanieu/parking_lot
Compact and efficient synchronization primitives for Rust. Also provides an API for creating custom synchronization primitives.
created time in 5 hours
created tagAmanieu/parking_lot
Compact and efficient synchronization primitives for Rust. Also provides an API for creating custom synchronization primitives.
created time in 5 hours
push eventAmanieu/parking_lot
commit sha e9f9f40b860d7de8238a8c07aee3ae05992ab681
Release lock_api 0.4.10 and parking_lot_core 0.9.8
push time in 5 hours
push eventAmanieu/hashbrown
commit sha 32b125ea62680aac4ecc1107cf2d927b6f15232b
Update CHANGELOG.md Co-authored-by: nickelc <constantin.nickel@gmail.com>
push time in 6 hours
PR merged Amanieu/parking_lot
This was removed in #262 because there was a soundness issue when R: !Sync
, but the fix was a bit too radical.
pr closed time in 6 hours
push eventAmanieu/parking_lot
commit sha c5c8126f0a98614ed427d2a4aff8542269b652dc
Make `RwLock` guards `Sync` again
commit sha 6962d2ff5131db6201dd2a2c0068255d0298533e
Merge pull request #370 from a1phyr/rwlock_guard_sync
push time in 6 hours
pull request commentfaern/parking_lot
Initial review of parking_lot submodule
Rust's standard library now has optimized implementations of locks on several platforms (Windows & Linux notably). So there is much less benefit to including parking_lot now.
comment created time in 9 hours
push eventAmanieu/parking_lot
commit sha 3afcf68d0aa1e94c76b7332a22e3b07b7f178a07
Fix incorrect fairness claim in `RwLockReadGuard::unlocked` docs Fixes #381
push time in 9 hours
issue closedAmanieu/parking_lot
lock_api: `RwLockReadGuard::unlocked` incorrectly claims fairness
RwLockReadGuard::unlocked
:
https://github.com/Amanieu/parking_lot/blob/de2a4023a652833688788b797c6b332e2466e8f0/lock_api/src/rwlock.rs#L1248-L1265
RwLockReadGuard::unlocked_fair
:
https://github.com/Amanieu/parking_lot/blob/de2a4023a652833688788b797c6b332e2466e8f0/lock_api/src/rwlock.rs#L1290-L1307
Fix: just remove the line about being fair from RwLockReadGuard::unlocked
's documentation.
This mistake is not present on upgradable read guards, write guards, nor mutex guards.
closed time in 9 hours
CAD97issue commentAmanieu/thread_local-rs
Weird bucket size for 2nd bucket
It allows this line to work:
let bucket = usize::from(POINTER_WIDTH) - id.leading_zeros() as usize;
Though I'm open to other ideas for bucket allocation layout.
comment created time in 9 hours
issue commentAmanieu/thread_local-rs
Tests occasionally fail (Apple M2 Max)
I can't reproduce this and it's very difficult for me to figure out what is going on without being able to see it myself. It could even be something specific to macOS.
comment created time in 9 hours
PR merged Amanieu/parking_lot
RwLockUpgradableReadGuard::upgrade
takes the guard by value, so there is currently no way to turn an &mut
to an upgradable guard into an &mut
to the underlying data.
This PR remedies that with a closure-based API. RwLockUpgradableReadGuard::with_upgraded()
takes a mutable reference to an upgradable guard, and:
- Upgrades the lock
- Retrieves an
&mut
to the underlying data - Passes the
&mut
to a user-provided closure - Downgrades the lock back to an upgradable read
- Returns the result of the closure.
pr closed time in 11 hours
push eventAmanieu/parking_lot
commit sha 7f83d8dd8f7c2435d1cecc3e6b3a458c2836ffea
Add `with_upgraded` API to upgradeable read locks Allows getting an `&mut` to the data from an `&mut` to the guard.
commit sha 8d64a4a6119e38b61ffb341e5a8759d4a8606506
Merge pull request #386 from Jules-Bertholet/with-upgraded
push time in 11 hours
pull request commentrust-lang/rust
Improved std support for ps vita target
@bors r+
comment created time in 11 hours
issue commentrust-lang/libc
Breaking change in v0.2.145 for MUSL's open64
I agree with changing this to a use, I think this is the best way forward.
comment created time in 12 hours
Pull request review commentrust-lang/rust
Improved std support for ps vita target
impl FileAttr { currently", )) }++ #[cfg(target_os = "vita")]+ pub fn created(&self) -> io::Result<SystemTime> {+ Ok(SystemTime::new(self.stat.st_ctime as i64, 0))+ }
This seems incorrect: st_ctime
is the time the file metadata was last modified, not the creation time.
comment created time in 13 hours
Pull request review commentrust-lang/rust
Improved std support for ps vita target
impl Socket { Ok(passcred != 0) } - #[cfg(not(any(target_os = "solaris", target_os = "illumos")))]+ #[cfg(not(any(target_os = "solaris", target_os = "illumos", target_os = "vita")))] pub fn set_nonblocking(&self, nonblocking: bool) -> io::Result<()> { let mut nonblocking = nonblocking as libc::c_int; cvt(unsafe { libc::ioctl(self.as_raw_fd(), libc::FIONBIO, &mut nonblocking) }).map(drop) } + #[cfg(target_os = "vita")]+ pub fn set_nonblocking(&self, nonblocking: bool) -> io::Result<()> {+ let option = match nonblocking {+ true => 1,+ false => 0,+ };
This can just be as c_int
.
comment created time in 13 hours
issue commentrust-lang/rust
What is the behavior of `std::env::split_paths` when given an empty string?
We could just make the behavior platform-dependent and document it as such. The general understanding being that this work the same way OS path lookup does.
comment created time in 19 hours