aws / aws/aws-lambda-rust-runtime
Remove tokio `rt-multi-thread` feature from `lambda_runtime` and `lambda_extension`, and possibly `rt` as well
- Vorherrschende Sprache
- Rust
- Sterne
- 3.6k
- Forks
- 396
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Currently the `lambda_runtime` crate has an unconditional dependency on tokio withe `rt-multi-thread` feature enabled:
- https://github.com/awslabs/aws-lambda-rust-runtime/blob/main/lambda-runtime/Cargo.toml#L53
- https://github.com/awslabs/aws-lambda-rust-runtime/blob/main/lambda-extension/Cargo.toml#L35
I'm struggling to see anywhere this dependency is actually used. Meanwhile, given that lambdas only receive one request at a time, it will frequently make sense for callers to only want to use the current thread runtime anyway (ref: #985 ).
I don't think we even need the `rt` (not multithreaded) feature for `lambda-runtime`, not seeing anywhere we are spawning or interacting with feature gated APIs. Though, for #983 we would need it, so probably ok to leave in?
Anyway, is there a reason we need to depend on the multithreaded runtime feature? Am I missing something?
Beitragsleitfaden
Rechercherichtung
Überprüfe die tokio-Abhängigkeitserklärungen in lambda-runtime/Cargo.toml und lambda-extension/Cargo.toml und suche anschließend in diesen Crates nach APIs, die durch die Features rt und rt-multi-thread aktiviert werden. Bestätige, ob eines der beiden Features erforderlich ist, und verifiziere, dass die Abhängigkeitskonfiguration weiterhin für die unterstützten Laufzeit-Anwendungsfälle gebaut wird; das Issue ist behoben, wenn unnötige Features entfernt oder ihre Notwendigkeit dokumentiert wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- rust
- Bereich
- backend
- Issue-Typ
- Refactoring
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100