28d67e871c
Make elided lifetimes explicit
2025-08-18 12:51:08 +02:00
99bca9852c
Opt in to edition 2024 formatting
2025-05-13 15:57:30 +02:00
8ec32bdf16
Reorganise features
...
Now the features do not directly enable each other, which should silence
extraneous deprecation warnings while running tests. This can be cleaned
up in the next BC break when the old features are removed.
2025-04-10 20:58:45 +02:00
ccc4c98791
Rename dependencies to their crate names
...
Keep the old names but deprecate them so we can remove them in 0.4.
2025-04-10 20:58:45 +02:00
af366ca3af
Document new functionality
2025-03-10 19:32:24 +01:00
1ad0b2756e
Rework CI for experimental features
2025-03-10 18:31:47 +01:00
d1a6b93ea8
Add new reset_dependencies API
2025-03-01 13:25:20 +01:00
ebdb6a18fe
Restructure stdsync module
2025-03-01 12:39:55 +01:00
0f201989e0
Add missing functions to parking_lot API wrappers
2025-01-18 19:57:32 +01:00
7a943ebba6
Fix clippy issues
2025-01-18 12:11:26 +01:00
25ae542ade
Add support for LazyLock
2025-01-18 11:59:18 +01:00
40f835afd2
Fix clippy issues
2025-01-18 11:57:47 +01:00
c9083c8bc1
Clarify feature selection
2023-09-09 12:02:52 +02:00
a8e8af6351
Make dependency tracking a compile time setting
2023-09-09 11:21:22 +02:00
068303d81d
Show cycle backtraces when they happen
2023-09-09 11:21:22 +02:00
6be3e05cab
Capture backtraces of allocations for debugging
...
Largely based on https://github.com/bertptrs/tracing-mutex/pull/28 with
only minor modifications.
2023-08-27 16:44:02 +02:00
909e934572
Reuse dependency orderings in graph
...
This avoids a potential panic when adding new nodes to the graph, as
there is no feasible way to overflow IDs any more.
2023-08-27 15:48:57 +02:00
00420d6807
Implement wrapper for OnceLock
2023-08-26 00:58:54 +02:00
29c9daf53e
Replace dependency on lazy-static with OnceLock
2023-08-25 08:44:45 +02:00
2d2e03eede
Simplify lazy mutex ID drop
2022-08-29 08:26:12 +02:00
e9b577a0f5
Make stdsync wrappers const-constructible
2022-08-27 10:33:15 +02:00
56b0604448
Restructure parking_lot wrappers
2022-08-27 10:06:31 +02:00
6e5516eaa7
Restructure std::sync wrappers
2022-08-27 10:01:51 +02:00
33cb6014a3
Ensure BorrowedMutex is !Send
2022-06-23 21:54:25 +02:00
bors[bot]
c08addff7d
Merge #17
...
17: Fix typos r=bertptrs a=quisar
Co-authored-by: Benjamin Lerman <qsr@chromium.org >
2022-05-23 06:33:21 +00:00
312eaa8649
Add a wrapper for std::sync::Condvar
...
This wrapper does not do any tracing itself but supports the use of a
tracing mutex guard instead of an `std::sync` one.
2022-05-17 21:45:25 +02:00
Benjamin Lerman
8e3278fdd2
Fix typos
2022-05-10 10:30:20 +02:00
d1417e0b0c
Tag module docs with their required features
2022-05-07 17:52:32 +02:00
ea8e0208a0
Explicitly test for disallowed self-cycles
2022-05-07 16:43:31 +02:00
77676ea04d
Fix formatting
2022-05-07 16:43:31 +02:00
Benjamin Lerman
743cc83669
Add TracingRwLockUpgradableReadGuard wrapper for parking_lot
2022-05-03 10:16:27 +02:00
Benjamin Lerman
b78af9150d
Fix a number of issues in the lockapi wrappers.
2022-05-02 08:20:23 +02:00
Benjamin Lerman
b5a5ca16c3
Do not allow recursive locks.
2022-05-02 08:11:37 +02:00
Benjamin Lerman
6073c6c78d
Fix Target for Deref of stdsync::TracingMutexGuard
2022-05-01 16:53:26 +02:00
38b3b226cc
Move to edition 2021 altogether
2022-05-01 12:03:50 +02:00
3b9b908460
Correctly mark mutex reference as unused
2022-05-01 11:50:50 +02:00
ef421e20eb
Deal with IntoIter deprecation
2022-05-01 11:50:37 +02:00
680e335ccf
Document new modules
2021-07-10 17:25:42 +02:00
17761af5a8
Add type aliases for mapped mutex guards
2021-07-10 13:05:41 +02:00
4c70d999d6
Create type aliases for parking_lot::RwLock
2021-07-10 12:17:35 +02:00
618a11f940
Implement a wrapper for parking_lot::Once
2021-05-27 22:19:57 +02:00
77cd603363
Implement minimal mutexes for parking_lot.
2021-05-27 22:00:37 +02:00
73b4c8b1af
Minimal parking_lot support
2021-05-27 21:16:24 +02:00
b21a63e74b
Implement RwLock-based traits for lockapi worker.
2021-05-27 21:16:24 +02:00
6a3cb83d01
Implement Mutex behaviour for lock_api
2021-05-27 21:16:24 +02:00
e2db0eaca8
Fix a graph invariant violation on cycle detection
2021-05-27 20:31:00 +02:00
158e5353bb
Add missing guard type aliases
2021-05-24 20:28:49 +02:00
ebb8132cf8
Add a fuzz-test for the mutex ID's graph
2021-05-24 15:10:41 +02:00
d242ac5bc2
Use interior mutability for updating graph order
2021-05-24 14:49:48 +02:00
39b493a871
Merge hash maps in graph structures
...
This saves quite a few hash-map lookups which improves performance by
about 25%.
2021-05-24 14:49:48 +02:00