Skip to content

Commit 8b937a6

Browse files
committed
Vendor cmdr-fsevent-stream into the monorepo
- Move the fork from a git dependency (github.com/vdavid/cmdr-fsevent-stream) to `crates/fsevent-stream/`, added as a workspace member - Switch `Cargo.toml` dep from `git + rev` to `path` - Remove `allow-git` entry from `deny.toml` - Update indexing `CLAUDE.md` to reflect new location Also a change to fsevent-stream/src/stream.rs which got mixed into this: - Set channel capacity: 1,024 → 32,768 - Added Arc<AtomicBool> overflow flag to StreamContextInfo and EventStream - Callback sets overflow flag on try_send failure (logs once, then silent) - Exposed overflow_flag() on EventStream
1 parent f4c107a commit 8b937a6

13 files changed

Lines changed: 1483 additions & 12 deletions

File tree

Cargo.lock

Lines changed: 150 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
[workspace]
2-
members = ["apps/desktop/src-tauri"]
2+
members = ["apps/desktop/src-tauri", "crates/fsevent-stream"]
33
resolver = "2"

apps/desktop/src-tauri/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ objc2-app-kit = { version = "0.3", features = [
132132
block2 = "0.6"
133133
security-framework = "3.2"
134134
# Drive indexing: macOS FSEvents watcher with event IDs and sinceWhen replay
135-
cmdr-fsevent-stream = { git = "https://github.com/vdavid/cmdr-fsevent-stream", rev = "3a02f0d" }
135+
cmdr-fsevent-stream = { path = "../../../crates/fsevent-stream" }
136136

137137
# CrabNebula automation plugin for macOS E2E testing (optional, feature-gated)
138138
tauri-plugin-automation = { version = "0.1", optional = true }

apps/desktop/src-tauri/deny.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,10 @@ allow = [
3333
multiple-versions = "allow"
3434
wildcards = "deny"
3535
highlight = "all"
36-
allow-wildcard-paths = true # cmdr is private (BSL); git deps like cmdr-fsevent-stream are fine
36+
allow-wildcard-paths = true # cmdr is private (BSL)
3737

3838
[sources]
3939
unknown-registry = "deny"
4040
unknown-git = "deny"
4141
allow-registry = ["https://github.com/rust-lang/crates.io-index"]
42-
allow-git = ["https://github.com/vdavid/cmdr-fsevent-stream"]
42+
allow-git = []

crates/fsevent-stream/Cargo.toml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
[package]
2+
name = "cmdr-fsevent-stream"
3+
version = "0.3.0"
4+
authors = ["LightQuantum <self@lightquantum.me>", "David Veszelovszki <david@veszelovszki.com>"]
5+
edition = "2021"
6+
rust-version = "1.70"
7+
description = "Stream-based FSEvent API bindings. Fork of fsevent-stream, maintained for Cmdr."
8+
license = "MIT"
9+
keywords = ["filesystem", "events", "watch", "notify", "macos"]
10+
repository = "https://github.com/vdavid/cmdr-fsevent-stream"
11+
readme = "README.md"
12+
exclude = [
13+
".github/**/*",
14+
".gitignore",
15+
".mergify.yml",
16+
"Justfile"
17+
]
18+
19+
[features]
20+
default = ["tokio"]
21+
tokio = ["tokio1", "tokio-stream"]
22+
async-std = ["async-std1"]
23+
24+
[dependencies]
25+
async-std1 = { package = "async-std", version = "1.10", default-features = false, features = ["std"], optional = true }
26+
bitflags = "2.6"
27+
core-foundation = "0.10"
28+
futures-core = "0.3"
29+
futures-util = "0.3"
30+
log = "0.4"
31+
once_cell = "1.19"
32+
tokio-stream = { version = "0.1", optional = true }
33+
tokio1 = { package = "tokio", version = "1.14", features = ["sync"], optional = true }
34+
35+
[dev-dependencies]
36+
async-std1 = { package = "async-std", version = "1.10", features = ["attributes"] }
37+
libc = "0.2"
38+
pretty_env_logger = "0.5"
39+
tempfile = "3.12"
40+
tokio1 = { package = "tokio", version = "1.14", features = ["rt-multi-thread", "sync", "macros"] }

crates/fsevent-stream/LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2021 lightquantum
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

0 commit comments

Comments
 (0)