Refactor the tor-rtcompat API.
This branch provides a more uniform API for constructing and running Runtime instances that use Tokio or AsyncStd and NativeTls or Rustls.
It also makes the NativeTls runtime optional, and gets rid of a whole bunch of duplicated and/or boilerplate code.
I recommend reviewing one commit at a time.
Closes #300 (closed).
Closes #301 (closed).
Merge request reports
Activity
changed milestone to %Arti 0.1.0 release: Okay for experimental embedding
added API Break label
assigned to @nickm
requested review from @eta
- Resolved by Nick Mathewson
- Resolved by eta
- Resolved by eta
- Resolved by eta
- Resolved by eta
- Resolved by Nick Mathewson
Nice work; I think these changes make the crate a lot more ergonomic! One remaining question: can we test the full matrix of possible enabled features in CI somehow? (Perhaps running your newly-added script, or something?)
I think it's going to be easy to miss out testing one of the runtime/TLS-library versions while developing (not to mention time-consuming, given how long things take to compile...), which we probably want to avoid.
Opened #303 (closed) for the CI matrix issue, if that's okay?
added 1 commit
- c4321289 - Apply @eta's suggestions from review on !263 (merged)
added 1 commit
- 9f3ad85d - Document why {current,create}_runtime are type-erased
mentioned in issue #303 (closed)
enabled an automatic merge when the pipeline for 9f3ad85d succeeds