refactor(tvix): remove usage of async-recursion

Rust 1.77 supports async recursion as long as there is some form of
indirection (ie. `Box::pin`). This removes the need to use the
async-recursion crate.

Change-Id: Ic9613ab7f32016f0103032a861edff92e2fb8b41
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11596
Reviewed-by: flokli <flokli@flokli.de>
Autosubmit: Connor Brewster <cbrewster@hey.com>
Tested-by: BuildkiteCI
This commit is contained in:
Connor Brewster 2024-05-06 10:53:52 -05:00 committed by clbot
parent 01a4a2399c
commit da9bc274f3
8 changed files with 19 additions and 68 deletions

View file

@ -1,6 +1,5 @@
//! This module provides an implementation of EvalIO talking to tvix-store.
use async_recursion::async_recursion;
use bytes::Bytes;
use futures::{StreamExt, TryStreamExt};
use nix_compat::nixhash::NixHash;
@ -92,7 +91,6 @@ impl TvixStoreIO {
///
/// In case there is no PathInfo yet, this means we need to build it
/// (which currently is stubbed out still).
#[async_recursion(?Send)]
#[instrument(skip(self, store_path), fields(store_path=%store_path), ret(level = Level::TRACE), err)]
async fn store_path_to_node(
&self,