| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
|
| |
All other INFO log lines emitted when arti starts begin with an
uppercase character, so this line looks out of place if it begins with a
lowercase character.
|
| |\
| |
| |
| |
| | |
memquota: Fix account lifetime bugs, and arrange to test mq in shadow
See merge request tpo/core/arti!2560
|
| | |
| |
| |
| |
| | |
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2560#note_3097189
|
| | |
| |
| |
| |
| | |
This detects the bugs I have just fixed - in Shadow tests with the
feature enabled and a (large) limit set.
|
| | | |
|
| | | |
|
| |/ |
|
| | |
|
| |
|
|
|
| |
These are the call sites where using this fucntion is correct.
(Outside tor-rtmock, which we'll do separately.)
|
| |\
| |
| |
| |
| |
| |
| | |
memquota architecture documentation
Closes #1660
See merge request tpo/core/arti!2509
|
| | |
| |
| |
| | |
These can't be rustdoc links because they point up the crate hierarchy.
|
| |/ |
|
| | |
|
| |
|
|
| |
This will be useful in tests.
|
| | |
|
| |
|
|
|
| |
In these two places, underflow is statically impossible, but
demonstrating that to the compiler is probably too onerous.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Allow a `Config` to represent "this is supposed to be disabled".
This involves wrapping the actual built configuration in an IfEnabled.
We treat max = usize::MAX, or max being unspecified, as "disable".
We can now reporting an error during config building if max is set but
we're compiling the feature out. Conversely, we can now make
`MemoryQuotaTracker::new()` unconditional, since enabled
confiogurations are uninhabited when the feature is compiled out.
We change how we derive the setters, deriving them from the Builder.
I chose to abolish the use of derive_builder. See the new comment on
ConfigBuilder.
|
| | |
|
| |
|
|
|
|
|
| |
This will hopefully allow much caller code to be compiled out.
The users (IsParticipant impls) don't generally need to bother with
it - they can just ignore it.
|
| | |
|
| |
|
|
|
|
|
| |
Now if we run doctests without the feature enabled, we test that a
no-op MemoryQuotaTracker works.
Those tests aren't currently run in CI, but they will be after !2350.
|
| |
|
|
|
|
|
|
|
|
| |
Wrap up most of the structures in IfEnabled.
Sadly this diff is very noisy. I experimented with macros for the
little enabled check at the start of each function but they didn't
really help.
We don't test this yet. We'll do a smoke test of this later.
|
| | |
|
| |
|
|
|
|
|
|
| |
We're going to bind self_ to something more complicated, in each of
these functions, and that's what all these field references etc. will
need to refer to.
Do this mechanical change first for clarity.
|
| | |
|
| |
|
|
| |
This will make some later diffs easier to read.
|
| | |
|
| |
|
|
|
| |
We're going to want the one for Participation - it saves us an
annoying Option. Let's provide the one for WeakAccount too.
|
| |\
| |
| |
| |
| | |
tor-memquota: HasMemoryCost trait, and type-safe methods
See merge request tpo/core/arti!2282
|
| | | |
|
| | |
| |
| |
| |
| | |
Now the constructor is able to return other data to the caller,
passing it through the mtracker machinery.
|
| | |
| |
| |
| |
| | |
I just want this for a test right now, bui it seems like it would be
good to expose it publicly.
|
| | |
| |
| |
| |
| | |
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2281#note_3051105
|
| |/
|
|
| |
The stream wrapper is going to want this.
|
| |
|