-
Notifications
You must be signed in to change notification settings - Fork 38.8k
Remove libevent as a dependency (HTTP / cli / torcontrol) #31194
Copy link
Open
Labels
Description
Next PRs for review:
- tests: Expand HTTP coverage to assert libevent behavior #32408
- rpc: use CScheduler for relocking wallet and remove RPCTimer #32862
- Introduce SockMan ("lite"): low-level socket handling for HTTP #32747
- Prepare string and net utils for future HTTP operations #34242
- Replace libevent with our own HTTP and socket-handling implementation #32061
- torcontrol: Remove libevent usage #34158
- cli: Replace libevent usage with simple http client #34342
There is also a proof-of-concept branch including the above work as well as total removal of libevent from the build system:
Immediate advantages
UNIX domain sockets for JSON-RPC
- Old feature request: Unix Domain Sockets #5029
- UNIX sockets have been added to ZMQ and Tor proxy already
- UNIX sockets with libevent doesn't work
Remove a dependency
- libevent hasn't had a release since 2020
- libevent is currently looking for new maintainers, a bit of a red flag
- The xz utils backdoor raised some concern among contributors in the 2024/04/18 IRC meeting
Current libevent usage in the project
See this report by @fjahr. A few of these have already been addressed, like #29904