summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | tor-memtrack: Docs fixesgabi-2502024-04-232-2/+2
| | |
| * | tor-memtrack: Add a let binding to clarifygabi-2502024-04-231-1/+1
| | |
| * | tor-memtrack: Fix docs typogabi-2502024-04-231-1/+1
| | |
| * | tor-memtrack: say how to get an `Account`gabi-2502024-04-231-0/+2
| | |
| * | tor-memtrack: Say how to get a `Participation`gabi-2502024-04-231-0/+3
| | |
| * | tor-memtrack: Fix docs typosgabi-2502024-04-232-2/+2
| | |
| * | tor-memtrack: Doc fixesgabi-2502024-04-232-5/+5
| | |
| * | tor-memtrack: Docs fixes/improvementsgabi-2502024-04-232-2/+2
| | |
| * | tor-memtrack: Fix various typosgabi-2502024-04-233-3/+3
| | |
| * | tor-memtrack: Clarify a doc commentgabi-2502024-04-231-1/+1
| | |
| * | tor-memtrack: Doc comment: Fix erroneous module referencegabi-2502024-04-231-1/+1
| | |
| * | tor-memtrack: Fix doc comment (and change capitalisation)gabi-2502024-04-231-1/+1
| | |
| * | tor-memtrack: Fix doc comment grammargabi-2502024-04-231-1/+1
| | |
| * | tor-memtrack: Clarify a doc commentgabi-2502024-04-231-2/+2
| | |
| * | tor-memtrack: Add a doctest example for mtrackerIan Jackson2024-04-231-0/+56
| | |
| * | tor-memtrack: Provide an error for callers to useIan Jackson2024-04-233-1/+52
| | |
| * | tor-memtrack: Comment out some false docs, with some TODOsIan Jackson2024-04-231-6/+8
| | |
| * | tor-memtrack: Remove dead code allowsIan Jackson2024-04-231-2/+0
| | |
| * | tor-memtrack: Remove low-level part from memory-limit.mdIan Jackson2024-04-231-176/+0
| | | | | | | | | | | | This part io now implemented.
| * | tor-memtrack: Provide comprehensive tests for the memory trackerIan Jackson2024-04-233-1/+681
| | |
| * | tor-memtrack: reclaim: Implement reclamationIan Jackson2024-04-231-1/+378
| | |
| * | tor-memtrack: reclaim: Provide helper deferred_drop moduleIan Jackson2024-04-232-0/+77
| | |
| * | tor-memtrack: implement MemoryQuotaTrackerIan Jackson2024-04-234-2/+1027
| | | | | | | | | | | | | | | | | | Includes the principal data structures and their impls. Reclamation will come in a moment.
| * | tor-memtrack: Provide helper bookkeeping moduleIan Jackson2024-04-232-0/+285
| | |
| * | tor-memtrack: Provide helper drop_reentrancy moduleIan Jackson2024-04-233-0/+150
| | |
| * | tor-memtrack: Provide helper refcounting moduleIan Jackson2024-04-233-0/+254
| | |
| * | tor-memtrack: Provide Error types for use by our implsIan Jackson2024-04-234-3/+104
| | |
| * | tor-memtrack: Introduce configurationIan Jackson2024-04-234-0/+124
| | | | | | | | | | | | Nothing uses this yet.
| * | tor-memtrack: Provide a couple of utilitiesIan Jackson2024-04-233-0/+71
| | | | | | | | | | | | | | | We'll use Qty for printing amounts of memory, and .take() for convenience in a lot of places.
| * | tor-memtrack: Add dependencies and imports we're going to useIan Jackson2024-04-234-0/+96
| | | | | | | | | | | | Establish the principal in-crate namespace.
| * | memtrack docs: Minor clarifications, and IsParticipantIan Jackson2024-04-231-9/+9
| | | | | | | | | | | | | | | | | | While writing the actual code, the distinction between Participation and `dyn Participant` and Participant (the abstract concept) was a bit confusing. Rename the trait, and clarify things a little.
| * | memtrack docs: Wrap (whitespace changes, manual)Ian Jackson2024-04-231-28/+74
| | | | | | | | | | | | | | | | | | Use semantic newlines, not hugely long one-line paragraphs. (I think this file must originally have been a pad or a gitlab comment.)
| * | memtrack docs: Move overview to lib.rsIan Jackson2024-04-232-91/+92
| | |
| * | tor-memtrack: Introduce new crate (empty)Ian Jackson2024-04-235-0/+81
| | | | | | | | | | | | | | | | | | | | | Put it just above tor-rpcbase, which maybe it would want to use for metrics export via RPC? For now we have some dead code `#[allow]`s.
| * | tor-error: Add ErrorKind::LocalResourceExhaustedIan Jackson2024-04-231-0/+6
|/ /
* | Merge branch 'figment-v2' into 'main'Nick Mathewson2024-04-228-146/+192
|\ \ | |/ |/| | | | | | | | | Port from config-rs to figment (v2) Closes #1267 and #1268 See merge request tpo/core/arti!2041
| * Switch to figment 1.0.18 and extract_lossyNick Mathewson2024-04-224-6/+6
| | | | | | | | | | | | | | The new (dubiously named) `Figment::extract_lossy` method can treat decode numbers from strings, and booleans from numbers or strings. This makes the behavior compatible with config-rs, and should (I hope) finally allow us to migrate.
| * Rename ConfigParseError => ConfigLoadErrorNick Mathewson2024-04-221-8/+15
| | | | | | | | | | Figment can give an error under more conditions than just a parsing failure, so we should report it a bit more vaguely.
| * Add an action field to Io error in tor-config.Nick Mathewson2024-04-222-15/+24
| |
| * Convert tor-config to use figment.Nick Mathewson2024-04-228-141/+171
|/ | | | | There are probably ways to make this a bit more elegant, but at least the tests still pass.
* Merge branch 'rpc_method_syntax_redux' into 'main'Nick Mathewson2024-04-227-397/+351
|\ | | | | | | | | | | | | RPC: Even more cleanup on invocable functions. Closes #838 See merge request tpo/core/arti!2084
| * rpc: add a comment from diziet to explain why we need same_declNick Mathewson2024-04-221-0/+6
| |
| * rpc: reformat macro slightly.Nick Mathewson2024-04-221-2/+5
| |
| * Rename Invoker trait to Invocable.Nick Mathewson2024-04-221-15/+15
| |
| * Fix rustdoc links.Nick Mathewson2024-04-221-2/+2
| |
| * Adjust an allow.Nick Mathewson2024-04-221-1/+1
| |
| * rpc:Sketch out the syntax of our remaining tricky macrosNick Mathewson2024-04-221-2/+8
| |
| * RPC: Remove installable_rpc_invoke_fnNick Mathewson2024-04-221-128/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that we've done more refactoring, it's no longer necessary to have this machinery, since: * We can support statically registering instantiated methods, if we know them ahead of time. * Writing an installer function is pretty simple, and the syntax is much nicer than the special-purpose junk we had before. I've added examples of both approaches. While we're at it, I've simplified the syntax for `invoker_ent!` a little, since the parentheses I had before aren't necessary.
| * RPC: Remove method and object type from macros.Nick Mathewson2024-04-223-24/+22
| | | | | | | | | | These are no longer needed, since they are inferred from the types of the functions.
| * rpc: Revise backend for dispatchable-object macro.Nick Mathewson2024-04-225-260/+261
| | | | | | | | | | | | | | | | | | The trick here is to provide an `Invoker` trait, with blanket implementations for appropriate `fn(_,_,_,_?) -> _`. With this trick, we no longer need to have a `decl_rpc_invoke_fn`. This lets us discard HasConstTypeId entirely, and will let us simplify some other syntax moving forward.