mirror of
https://github.com/rojo-rbx/rojo.git
synced 2026-10-23 14:01:37 +00:00
Update TODO.txt and refine VFS watch logic in ServeSession
- Added a new entry in TODO.txt to follow up with Coelho on outstanding tasks. - Simplified VFS watch logic to ensure both files and directories are monitored, addressing potential conflicts on macOS and improving overall watch reliability.
This commit is contained in:
parent
372b605fb5
commit
c19b249657
2 changed files with 10 additions and 10 deletions
2
TODO.txt
2
TODO.txt
|
|
@ -107,3 +107,5 @@ and make luau-lsp actually use the 'atlas' cli...
|
||||||
[two way sync]
|
[two way sync]
|
||||||
so the plugin isnt respecting two-way sync for glob ignore
|
so the plugin isnt respecting two-way sync for glob ignore
|
||||||
basically if a new script is on studio that isn't in atlas but even though it's glob ignored, it still tries to two-way sync it over and say there has been a change
|
basically if a new script is on studio that isn't in atlas but even though it's glob ignored, it still tries to two-way sync it over and say there has been a change
|
||||||
|
|
||||||
|
[hit up coelho]
|
||||||
|
|
@ -402,18 +402,16 @@ impl ServeSession {
|
||||||
.filter_entry(&passes_ignore)
|
.filter_entry(&passes_ignore)
|
||||||
.flatten()
|
.flatten()
|
||||||
{
|
{
|
||||||
// On macOS kqueue, non-recursive directory watches only
|
// Watch both files and directories. On macOS kqueue,
|
||||||
// fire for structural changes (child added/removed), NOT
|
// file watches are required because directory watches
|
||||||
// for child file content modifications. Individual file
|
// only fire for structural changes. On Linux/Windows,
|
||||||
// watches are required to detect edits. On Linux/Windows,
|
// file watches prevent a debouncer race where read_raw's
|
||||||
// directory watches already cover child file events so
|
// auto-registered file watch conflicts with the directory
|
||||||
// file watches would be redundant.
|
// watch during rename-overwrite (atomic save pattern).
|
||||||
if entry.file_type().is_dir() || cfg!(target_os = "macos") {
|
|
||||||
let _ = vfs.watch(entry.path());
|
let _ = vfs.watch(entry.path());
|
||||||
watch_count += 1;
|
watch_count += 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
// Watch project folder non-recursively for project file edits.
|
// Watch project folder non-recursively for project file edits.
|
||||||
let _ = vfs.watch(&project_folder);
|
let _ = vfs.watch(&project_folder);
|
||||||
watch_count += 1;
|
watch_count += 1;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue