GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — fs: add recursive watch for linux by anonrig · Pull Request #45098 · nodejs/node

Conversation

@anonrig

@anonrig anonrig commented Oct 20, 2022 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

Fixes #36005

List

  • Add promises API
    • fs: add recursive watch for linux #45098 (review)
  • Add tests for promises API
  • Add URL as filename tests
  • Make a decision in making watcher initialization async or sync.
    • fs: add recursive watch for linux #45098 (comment)
  • Add symlink support

CC @nodejs/fs

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

bricss, rendaardy, metcoder95, tonivj5, marvinhagemeister, styfle, gameroman, and kingofDaniel reacted with thumbs up emoji bricss, mcollina, tonivj5, alii, gu-stav, gameroman, and kingofDaniel reacted with heart emoji
All reactions
  • 👍 8 reactions
  • ❤️ 7 reactions
@anonrig anonrig added fs Issues and PRs related to file-system APIs and the fs module. notable-change PRs with changes that should be highlighted in changelogs. labels Oct 20, 2022
@nodejs-github-bot nodejs-github-bot added the needs-ci PRs that need a full CI run. label Oct 20, 2022
kibertoad
kibertoad reviewed Oct 20, 2022
View reviewed changes
Comment thread lib/fs.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

aduh95
aduh95 reviewed Oct 20, 2022
View reviewed changes
Comment thread lib/internal/fs/linux_recursive_watcher.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

aduh95
aduh95 reviewed Oct 20, 2022
View reviewed changes
Comment thread lib/internal/fs/linux_recursive_watcher.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/internal/fs/linux_recursive_watcher.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/internal/fs/linux_recursive_watcher.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

bnoordhuis
bnoordhuis reviewed Oct 20, 2022
View reviewed changes
Comment thread lib/internal/fs/linux_recursive_watcher.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/internal/fs/linux_recursive_watcher.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

cjihrig
cjihrig reviewed Oct 20, 2022
View reviewed changes
Comment thread lib/internal/fs/linux_recursive_watcher.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

@anonrig
anonrig force-pushed the fs/add-recursive-watch branch from 0c106f0 to 45e8f37 Compare October 21, 2022 18:17
@anonrig
anonrig requested review from aduh95, bnoordhuis, cjihrig and kibertoad October 21, 2022 18:18
@anonrig
anonrig force-pushed the fs/add-recursive-watch branch 6 times, most recently from 7275124 to a7b310d Compare October 21, 2022 23:24
@anonrig
anonrig marked this pull request as ready for review October 21, 2022 23:30
@anonrig
anonrig force-pushed the fs/add-recursive-watch branch from a7b310d to fd0a954 Compare October 21, 2022 23:46
@anonrig
anonrig requested review from targos and removed request for kibertoad October 21, 2022 23:46
@anonrig anonrig added the request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. label Oct 21, 2022
@github-actions github-actions Bot removed the request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. label Oct 21, 2022
@nodejs-github-bot

This comment was marked as outdated.

Sign in to view
aduh95
aduh95 reviewed Oct 22, 2022
View reviewed changes
Comment thread lib/internal/fs/linux_watcher.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/internal/fs/linux_watcher.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread lib/internal/fs/linux_watcher.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

mcollina
mcollina requested changes Oct 22, 2022
View reviewed changes

@mcollina mcollina left a comment

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This module uses a mix of callbacks and promises. I would prefer if it only relied on callbacks as it would be a callback API. Maybe I'm a bit too concerned about the intertwining of our two sets of APIs.


This also needs support for the promises API.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
aduh95
aduh95 reviewed Oct 22, 2022
View reviewed changes
Comment thread lib/internal/fs/watch/linux.js Resolved

Uh oh!

There was an error while loading. Please reload this page.

@anonrig
anonrig force-pushed the fs/add-recursive-watch branch from d0f5179 to df1c187 Compare October 22, 2022 21:07
@anonrig anonrig mentioned this pull request Nov 1, 2022
fs: protect fs.watch from monkeypatches #45265
Merged
@RafaelGSS RafaelGSS mentioned this pull request Nov 1, 2022
v19.1.0 proposal #45269
Merged
@MoLow MoLow mentioned this pull request Nov 1, 2022
watch mode: use recursive fs.watch #45271
Closed
@danielleadams danielleadams mentioned this pull request Dec 30, 2022
v18.13.0 release proposal #46025
Merged
@danielleadams

danielleadams commented Dec 30, 2022

Copy link
Copy Markdown
Contributor

Hi @anonrig - this did not land cleanly on v18.x. When landing there were variables used that were not defined in v18.x-staging branch's version of the file. Could you open a backport PR? Thank you.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@anonrig

anonrig commented Jan 3, 2023

Copy link
Copy Markdown
Member Author

@danielleadams It seems this pull request is in the v18.x-staging branch: https://github.com/nodejs/node/blob/v18.13.0-proposal/lib/internal/fs/recursive_watch.js

aduh95 reacted with thumbs down emoji
All reactions
  • 👎 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@torchiaf torchiaf mentioned this pull request Jan 12, 2023
Contexts aren't added/deleted from the Tray menu on Linux platforms rancher-sandbox/rancher-desktop#3765
Closed
@juanarbol

juanarbol commented Jan 26, 2023

Copy link
Copy Markdown
Member

@danielleadams It seems this pull request is in the v18.x-staging branch: https://github.com/nodejs/node/blob/v18.13.0-proposal/lib/internal/fs/recursive_watch.js

That link is a 404; marking this is a "backport-requested-v18.x" again.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@anonrig

anonrig commented Jan 26, 2023

Copy link
Copy Markdown
Member Author

This pull request is already backported @juanarbol

Referencing: https://github.com/nodejs/node/blob/v18.x-staging/lib/internal/fs/recursive_watch.js

aduh95 reacted with thumbs down emoji
All reactions
  • 👎 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@aduh95

aduh95 commented Jan 27, 2023

Copy link
Copy Markdown
Contributor

That's not correct @anonrig, the pull request was not backported, it never showed on the v18.x changelog. The file you linked was added with c2f0377 (which is a backport for #45265), but all the other changes in this PR still need to be backported manually (docs and tests).

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@nascarsayan nascarsayan mentioned this pull request Mar 12, 2023
ERR_FEATURE_UNAVAILABLE_ON_PLATFORM Debdut/browser-extension#12
Closed
@schlichtanders schlichtanders mentioned this pull request Oct 9, 2023
Linux support? katjuncker/node-kubycat#4
Closed
@raphaelboukara

raphaelboukara commented Jan 15, 2024

Copy link
Copy Markdown

Hi :)
Does this fix will be backported to v18.x ?

liranelhaik reacted with thumbs up emoji liranelhaik reacted with eyes emoji
All reactions
  • 👍 1 reaction
  • 👀 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@mcollina

mcollina commented Jan 15, 2024 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

I don't expect this to be backported, because there are issues with this and Node.js v18 is in maintenance.

See #48437 for more details.

raphaelboukara and richardlau reacted with thumbs up emoji
All reactions
  • 👍 2 reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@arenekosreal arenekosreal mentioned this pull request Feb 18, 2024
[Bug]: Linux 下不支持 fs.watch 的 recursive: true 选项 xiyuesaves/lite-tools#115
Closed
@avivkeller avivkeller mentioned this pull request Oct 3, 2024
doc, test: update --watch for linux recursive watch #55256
Closed
@coderabbitai coderabbitai Bot mentioned this pull request Mar 20, 2026
feat: watch mode with config drift detection (#13) affaan-m/agentshield#34
Merged
3 tasks done
@coderabbitai coderabbitai Bot mentioned this pull request Mar 31, 2026
Core: Implement Git change detection storybookjs/storybook#34420
Merged
1 of 8 tasks
@coderabbitai coderabbitai Bot mentioned this pull request Apr 10, 2026
Refactor: fix security issues lopatnov/express-reverse-proxy#30
Merged
6 tasks
@coderabbitai coderabbitai Bot mentioned this pull request Apr 18, 2026
feat: filesystem connector — emits observations on file changes rohitg00/agentmemory#163
Merged
@coderabbitai coderabbitai Bot mentioned this pull request May 5, 2026
feat: auto-reload browser on dev plugin changes (PR3 of #1159) receptron/mulmoclaude#1174
Merged
2 of 4 tasks
@coderabbitai coderabbitai Bot mentioned this pull request May 12, 2026
feat: hot reload caplets serve config spiritledsoftware/caplets#18
Merged
This was referenced Jul 29, 2026
ONT-052: cli: studio watches the config tree without a recursive watch KimHyeongRae0/orangerail#72
Closed
ONT-052: cover the studio config tree without a recursive watch KimHyeongRae0/orangerail#73
Merged
@aqeelat aqeelat mentioned this pull request Jul 29, 2026
fix(fs-watcher): validate roots before watch() for Node 24/26 compat rohitg00/agentmemory#1126
Closed
@asapach asapach mentioned this pull request Sep 22, 2026
Watch mode watches every file under root before the first test, unlike vitest run vitest-dev/vitest#11327
Open
6 tasks done
@sponglord sponglord mentioned this pull request Sep 30, 2026
Chore/switch playground to vite Adyen/adyen-web#4216
Merged
1 of 8 tasks
@Unifex Unifex mentioned this pull request Oct 14, 2026
Docs: --watch-path *is* supported on linux #66743
Closed
@motokaneyuki motokaneyuki mentioned this pull request Oct 15, 2026
doc: remove outdated platform note for --watch-path #66749
Merged
@feng-yifan feng-yifan mentioned this pull request Oct 25, 2026
fix(library): Linux 恢复媒体库递归监听,不再无条件降级为定时轮询 Px-asen/Twilight_Echo#187
Merged
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@Trott Trott Trott approved these changes
@aduh95 aduh95 aduh95 approved these changes
@mcollina mcollina mcollina approved these changes
@jasnell jasnell jasnell approved these changes
@MoLow MoLow MoLow approved these changes
@bnoordhuis bnoordhuis Awaiting requested review from bnoordhuis
@cjihrig cjihrig Awaiting requested review from cjihrig
@richardlau richardlau Awaiting requested review from richardlau
+4 more reviewers
@kibertoad kibertoad kibertoad left review comments
@targos targos targos left review comments
@cagataycali cagataycali cagataycali left review comments
@V-for-Vasili V-for-Vasili V-for-Vasili left review comments
Reviewers whose approvals may not affect merge requirements

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

author ready PRs with CI started, the required approvals, and no outstanding review comments. commit-queue-squash PRs the Commit Queue should land as one squashed commit. fs Issues and PRs related to file-system APIs and the fs module. needs-ci PRs that need a full CI run. notable-change PRs with changes that should be highlighted in changelogs. semver-minor PRs that contain new features and should be released in the next minor version.

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Recursive fs.watch for linux

Uh oh!

There was an error while loading. Please reload this page.

17 participants

@anonrig @nodejs-github-bot @MoLow @danielleadams @juanarbol @aduh95 @raphaelboukara @mcollina @bnoordhuis @jasnell @Trott @kibertoad @targos @cjihrig @richardlau @cagataycali @V-for-Vasili
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.