| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | * | mq docs: Move arti queues text to tor_proto::memquota | Ian Jackson | 2024-10-07 | 1 | -24/+0 | |
| | | | ||||||
| | * | mq docs: Uncomment docs about mq_queue, and remove the TODO | Ian Jackson | 2024-10-07 | 1 | -4/+4 | |
| | | | ||||||
| * | | tor-memquota: miri: disable tests that use coarsetime | Ian Jackson | 2024-10-08 | 3 | -3/+9 | |
| |/ | ||||||
| * | Merge branch 'mcost' into 'main' | Ian Jackson | 2024-10-02 | 5 | -5/+375 | |
| |\ | | | | | | | | | Implement tor_memquota:HasMemory cost for a lot of types See merge request tpo/core/arti!2459 | |||||
| | * | tor-memquota: Fix more hard tabs. | Ian Jackson | 2024-10-02 | 1 | -2/+2 | |
| | | | ||||||
| | * | tor-memquota: Replace MemoryCostStructuralCopy with assert_copy_static (fmt) | Ian Jackson | 2024-10-02 | 1 | -1/+1 | |
| | | | ||||||
| | * | tor-memquota: Replace MemoryCostStructuralCopy with assert_copy_static | Ian Jackson | 2024-10-02 | 2 | -23/+13 | |
| | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2459#note_3086841 | |||||
| | * | tor-memquota: Move and reword a comment | Ian Jackson | 2024-10-02 | 1 | -3/+5 | |
| | | | | | | | | | | | | | This comment is more applicable to the memory_cost_structural_copyx macro than the wrapper type, especially since the wrapper type is going away. | |||||
| | * | tor-memquota: Add an example for HasMemoryCost derive | Ian Jackson | 2024-10-02 | 2 | -0/+40 | |
| | | | ||||||
| | * | Abolish SIZE in favour of std::mem::size_of | Ian Jackson | 2024-10-02 | 2 | -22/+10 | |
| | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2459#note_3086837 | |||||
| | * | tor-memquota: Provide explicit "indirect size" feature in derive | Ian Jackson | 2024-10-02 | 1 | -0/+6 | |
| | | | ||||||
| | * | Use std::num::NonZeroFoo | Ian Jackson | 2024-10-02 | 1 | -4/+5 | |
| | | | | | | | | | | | | | | | Not the generic version which isn't supported in our MSRV. We may want to revert this in the future, so let's make it a separate commit. | |||||
| | * | tor-memquota: Export Account at the toplevel | Ian Jackson | 2024-10-02 | 1 | -1/+1 | |
| | | | | | | | | | | | It turns out we're mostly going to want to deal in Accounts, not Arc<MemoryQuotaaTracker>s. | |||||
| | * | tor-memquota: Provide facilities for deriving HasMemoryCost | Ian Jackson | 2024-10-02 | 4 | -1/+344 | |
| | | | ||||||
| | * | tor-memquota: Make EnabledToken constructors const | Ian Jackson | 2024-10-02 | 1 | -2/+2 | |
| | | | | | | | | | This will be convenient in some tests etc. | |||||
| * | | Merge branch 'misc' into 'main' | Ian Jackson | 2024-10-02 | 1 | -0/+5 | |
| |\ \ | |/ |/| | | | | | tor-proto: SometimesUnboundedSink: provide as_inner accessor See merge request tpo/core/arti!2483 | |||||
| | * | memquota: Note a TODO about overheads | Ian Jackson | 2024-10-02 | 1 | -0/+5 | |
| | | | ||||||
| * | | Merge branch 'close-channel-2' into 'main' | Nick Mathewson | 2024-10-02 | 1 | -1/+12 | |
| |\ \ | | | | | | | | | | | | | Provide and implement SinkCloseChannel See merge request tpo/core/arti!2485 | |||||
| | * | | tor-memquota: Implement SinkChannelClose for mq_queue | Ian Jackson | 2024-10-01 | 1 | -1/+12 | |
| | |/ | ||||||
| * | | tor-memquota: Test error handling paths in try_send impl | Ian Jackson | 2024-10-02 | 1 | -0/+54 | |
| | | | ||||||
| * | | tor-memquota: Prepare for SinkTrySend tests | Ian Jackson | 2024-10-02 | 1 | -3/+24 | |
| | | | | | | | | | | | | | Implement SinkTrySend for BustedSink. Implement SinkTrySendError for BustedError. Add an is_disconnected field (so we can test different error paths). | |||||
| * | | tor-memquota: Make BustedSink contain the BustedError to yield (fmt) | Ian Jackson | 2024-10-02 | 1 | -1/+3 | |
| | | | ||||||
| * | | tor-memquota: Make BustedSink contain the BustedError to yield | Ian Jackson | 2024-10-02 | 1 | -8/+14 | |
| |/ | | | | This will let us test different errors. | |||||
| * | tor-memquota: Implement SinkTrySend for mq_queue::Sender | Ian Jackson | 2024-10-01 | 2 | -1/+32 | |
| | | | | | Plumbing. | |||||
| * | tor-memquota: Provide TypedParticipation::try_claim_or_return | Ian Jackson | 2024-10-01 | 1 | -1/+24 | |
| | | | | | We're going to want this for try_send. | |||||
| * | Merge branch 'dyn-time' into 'main' | Ian Jackson | 2024-10-01 | 3 | -14/+36 | |
| |\ | | | | | | | | | Provide a type-erased SleepProvider + CoarseTimeProvider and use it for memquota queues See merge request tpo/core/arti!2460 | |||||
| | * | tor-memquota: mq_queue: Provide Sender::time_provider accessor | Ian Jackson | 2024-09-26 | 1 | -0/+14 | |
| | | | | | | | | | Nothing uses this yet, but we will do so. | |||||
| | * | tor-memquota: Erase the CoarseTimeProvider from mq_queue::Sender (fmt) | Ian Jackson | 2024-09-26 | 1 | -1/+6 | |
| | | | ||||||
| | * | tor-memquota: Erase the CoarseTimeProvider from mq_queue::Sender | Ian Jackson | 2024-09-26 | 3 | -14/+17 | |
| | | | | | | | | | | | | | | | | | | | | | Use tor_rtcompat::DynTimeProvider instead. Ultimately, we're going to want one of these in Channel etc. The CoarseTimeProvider generic argument then becomes pervasive. Instead, erase it. This will involve an indirect function call each time an item is inserted. I think that can't be helped. | |||||
| | * | tor-memquota: mq_queue: Take Account by reference | Ian Jackson | 2024-09-26 | 1 | -5/+5 | |
| | | | | | | | | | | | | | It doesn't need an owned value here. (clippy's note about this was defeated by this being a trait method.) | |||||
| * | | Merge branch 'misc' into 'main' | Ian Jackson | 2024-10-01 | 2 | -0/+38 | |
| |\ \ | | | | | | | | | | | | | Miscellaneous cleanups, mostly in tor-memquota See merge request tpo/core/arti!2461 | |||||
| | * | | tor-memquota: Clarify that mq isn't the accountholder | Ian Jackson | 2024-09-26 | 1 | -0/+4 | |
| | | | | ||||||
| | * | | tor-memquota: Provide Account::new_child | Ian Jackson | 2024-09-26 | 1 | -0/+15 | |
| | | | | ||||||
| | * | | tor-memquota: provide Account::new_noop | Ian Jackson | 2024-09-26 | 1 | -0/+7 | |
| | | | | | | | | | | | | | This will be useful in tests. | |||||
| | * | | tor-memquota: impl FusedStream for Receiver, where appropriate | Ian Jackson | 2024-09-26 | 1 | -0/+12 | |
| | | | | ||||||
| * | | | Bump arti- and tor- crates to 0.23.0 | Nick Mathewson | 2024-09-30 | 1 | -10/+10 | |
| | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | Per our policy, every one of these gets a minor bump. Generated with: ``` for crate in $(./maint/list_crates | grep '^\(tor\|arti\)-' ); do cargo set-version --bump minor -p $crate; done ``` (Note the use of `-` at the end end of the grep pattern to prevent matching the `arti` crate.) | |||||
| * | | Merge branch 'msrv-1.77-and-rusqlite-update' into 'main' | David Goulet | 2024-09-26 | 1 | -1/+1 | |
| |\ \ | | | | | | | | | | | | | Upgrade MSRV to 1.77 , and rusqlite to 0.32.1 See merge request tpo/core/arti!2451 | |||||
| | * | | Upgrade MSRV to 1.77 | Nick Mathewson | 2024-09-25 | 1 | -1/+1 | |
| | |/ | | | | | | | This will allow us to upgrade to the latest version of rusqlite. | |||||
| * / | Upgrade to derive_more version 1.0.0 | Nick Mathewson | 2024-09-25 | 5 | -7/+6 | |
| |/ | | | | | | The `derive_more` crate broke backward compatibility with this version, so this change involved quite a few manual fixups. With luck, they'll keep compatibility for some while in the future. | |||||
| * | Merge branch 'mq-tidy' into 'main' | David Goulet | 2024-09-17 | 7 | -5/+80 | |
| |\ | | | | | | | | | memquota: be more firm about avoiding panics, and tidy up docs See merge request tpo/core/arti!2404 | |||||
| | * | tor-memquota: queue plan: Add a cross-reference | Ian Jackson | 2024-09-10 | 1 | -0/+3 | |
| | | | ||||||
| | * | tor-memquota: queue plan: Clean up intent and make into a doc comment | Ian Jackson | 2024-09-10 | 1 | -32/+24 | |
| | | | | | | | | | Remove extraneous text, wrap it, and change to a more declarative style. | |||||
| | * | tor-memquota: queue plan: Copy from !1997 discussion | Ian Jackson | 2024-09-10 | 1 | -0/+32 | |
| | | | ||||||
| | * | tor-memquota: Worsify formatting to stop rustfmt making it even worse | Ian Jackson | 2024-09-10 | 1 | -1/+3 | |
| | | | ||||||
| | * | tor-memquota: Use clippy::arithmetic_side_effects, against panics | Ian Jackson | 2024-09-10 | 4 | -0/+12 | |
| | | | | | | | | | | | | | This detect possibly-panicking operations. Empirically this lint seems rather better now. | |||||
| | * | tor-memquota: Document that we're panic-free | Ian Jackson | 2024-09-10 | 1 | -0/+10 | |
| | | | ||||||
| | * | tor-memquota: Avoid a perhaps-impossible division-by-zero (fmt) | Ian Jackson | 2024-09-10 | 1 | -1/+5 | |
| | | | ||||||
| | * | tor-memquota: Avoid a perhaps-impossible division-by-zero | Ian Jackson | 2024-09-10 | 1 | -1/+3 | |
| | | | | | | | | | | | | | It is not locally obvious that n_particips can't be zero, here. Certainly if it *is* that would be state corruption, but I don't think I can quite rule it out in the presence of a bug somewhere else. | |||||
| | * | tor-memquota: Use a const to hoist a panic to compile-time | Ian Jackson | 2024-09-10 | 1 | -1/+3 | |
| | | | ||||||
| | * | tor-memquota: Use checked_sub .. expect in two places (fmt) | Ian Jackson | 2024-09-10 | 1 | -2/+6 | |
| | | | ||||||
