这是indexloc提供的服务,不要输入任何密码
Skip to content

File watching fails due to file not found on Ubuntu 22.04 LTS #8800

@Byron

Description

@Byron

Verify canary release

  • I verified that the issue exists in the latest Turborepo canary release.

Link to code that reproduces this issue

Please see steps to reproduce

What package manager are you using / does the bug impact?

pnpm

What operating system are you using?

Linux

Which canary version will you have in your reproduction?

2.0.7-canary.1

Describe the Bug

In my case, the failure is due to turbo trying to access a file (apparently) that was changed but also was removed immediately. Thus, the file access failed which seems to stop file watching entirely. turbo daemon clean is needed afterwards to be able to start a build at all (GitButler in this case). But no matter what, even with CARGO_BUILD_JOBS=1 to 'slow it down', it fails with something like…

WARN turborepo_filewatch: encountered error watching filesystem enumerating recursive watch: IO error for operation on /home/parallels/dev-local/gitbutler/target/debug/build/glib-sys-0003c7493fe374fe/rmetauJ5mbn: No such file or directory (os error 2)
2024-07-21T06:32:22.001687Z ERROR turborepo_lib::daemon::server: package changes stream closed: channel closed

…as obtained by turbo daemon logs.

This was tested with v2.0.9 by the way.

Expected Behavior

It shouldn't crash if a file is removed before it can access it.

To Reproduce

Prerequisites for the GitButler project

sudo apt update
sudo apt install libwebkit2gtk-4.0-dev \
    build-essential \
    curl \
    wget \
    file \
    libssl-dev \
    libgtk-3-dev \
    libayatana-appindicator3-dev \
    librsvg2-dev
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh

Note that pnpm is also needed as runner.

git clone https://github.com/gitbutlerapp/gitbutler
cd gitbutler
pnpm install
pnpm tauri dev

The pnpm tauri dev call will try to launch turbo - the first time it straight up fails, the second time it runs for a while but fails later when Rust is compiling.

Additional context

Originally mentioned in #8006.

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind: bugSomething isn't workingneeds: triageNew issues get this label. Remove it after triage

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions