12 个版本 (破坏性更新)

0.9.0 2024 年 6 月 18 日
0.8.0 2022 年 6 月 22 日
0.7.2 2022 年 3 月 22 日
0.7.1 2021 年 7 月 13 日
0.2.0 2019 年 11 月 23 日

168文件系统 中排名

Download history 11245/week @ 2024-05-01 11886/week @ 2024-05-08 12359/week @ 2024-05-15 9664/week @ 2024-05-22 11886/week @ 2024-05-29 12501/week @ 2024-06-05 13931/week @ 2024-06-12 15808/week @ 2024-06-19 13822/week @ 2024-06-26 9407/week @ 2024-07-03 10569/week @ 2024-07-10 11441/week @ 2024-07-17 11140/week @ 2024-07-24 12460/week @ 2024-07-31 10862/week @ 2024-08-07 12039/week @ 2024-08-14

48,566 每月下载量
用于 5 个 Crates (直接使用 4 个)

MIT 许可证

200KB
4.5K SLoC

此 crate 提供了到 watchman 文件监视服务的客户端。

Connector 结构体开始,使用它来连接并返回一个 Client 结构体,使用 Client::resolve_root 解析路径并启动监视,然后使用 Client::query 执行查询,或使用 Client::subscribe 订阅实时文件更改。

此示例演示了如何从当前工作目录连接并展开 glob

use watchman_client::prelude::*;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let mut client = Connector::new().connect().await?;
    let resolved = client
        .resolve_root(CanonicalPath::canonicalize(".")?)
        .await?;

    // Basic globs -> names
    let files = client.glob(&resolved, &["**/*.rs"]).await?;
    println!("files: {:#?}", files);
    Ok(())
}

依赖关系

~4–11MB
~110K SLoC