| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
This commit allows `#[allow(clippy::cognitive_complexity)]` in
`HttpServer::serve` and `HttpServer::handler_tx`. Allowing this might
be controversial but both functions, especially the latter one, are well
documented.
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
This commit uses `tor_error::Bug` for indicating thread poisoning.
|
| | |
|
| | |
|
| |
|
|
|
| |
This commit renames `cb` to `endpoint_fn` everywhere, including internal
implementations.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit refactors a large part of the HTTP module, namely it
refactors the `Callback` type to a new type called `EndpointFn` which
now works in a transaction based approach and no longer gives access to
the `StoreCache`. The type itself is also no longer a trait but a
concrete type using `fn`.
Another very notable change that became necessary during this commit was
to make large parts of the codebase synchronous instead of async, namely
because it is non-trivial to `Send` a `Transaction` created inside an
async context to a synchronous function. Besides, this change has been
deemed necessary for other reasons to.
The refactoring to more synchronous code has lead to some interesting
changes in `StoreCache` too, namely that in no longer uses async mutex,
but a synchronous mutex instead.
|
| | |
|
|
|
This commit implements the initial draft for the HTTP module.
It is fairly complicated but well documented within the source code,
please refer to that instead.
|