-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
79 lines (67 loc) · 2.87 KB
/
Copy pathCargo.toml
File metadata and controls
79 lines (67 loc) · 2.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
[workspace]
members = [
"atrium-core",
"atrium-org",
"atrium-inline",
"atrium-import",
"atrium-cli",
"atrium",
]
default-members = ["atrium"]
resolver = "2"
[workspace.package]
version = "0.76.0"
edition = "2024"
license = "MIT"
authors = ["Brandon LaRocque"]
repository = "https://github.com/VirInvictus/Atrium"
# Locked v0.1 dependency set (per spec.md and roadmap.md Phase 0).
# No third-party crate gets added without prior sign-off.
[workspace.dependencies]
# Async runtime
tokio = { version = "1", features = ["full"] }
# Storage
rusqlite = { version = "0.40", features = ["bundled", "chrono", "trace"] }
# Data + serialization
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
chrono = { version = "0.4", features = ["serde"] }
# Errors
anyhow = "1.0"
thiserror = "2.0"
# Diagnostics
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# UI (binary-only). libadwaita was dropped at Phase 22 C10; the app owns
# its stylesheet (atrium/src/ui/theme.rs) on plain GTK4.
gtk = { version = "0.11", package = "gtk4", features = ["v4_16"] }
# Phase 1: UUID v4 generation. Sign-off granted in Phase 1 design call.
# v5 (Phase 18, v0.12.0): deterministic name-based UUIDs from
# (project_name, content) so re-running the Todoist importer onto the
# same project produces stable IDs. Same crate, additive feature flag.
uuid = { version = "1", features = ["v4", "v5", "serde"] }
# Phase 15: RFC 5545 RRULE parser + iterator. Sign-off granted before
# Phase 15 implementation. Default features only — `serde` is opt-in and
# we store rules as strings, not serialised RRule structs.
rrule = "0.14"
# Phase 15.5: regular expression matcher for the Calibre-style
# `tag:~regex` modifier in the search expression language. Sign-off
# granted before Phase 15.5 implementation. Already transitively in
# the dep graph via tracing-subscriber, so the artifact ships either
# way; this entry promotes it to a direct dependency for atrium-core.
# Default features only — Unicode + the standard syntax.
regex = "1.12"
# Phase 17 (v0.10.0): cross-platform filesystem watcher for the
# vault → DB sync direction. The canonical Rust file-watching crate
# (used by watchexec / cargo-watch). Sign-off granted before Phase 17
# implementation. Default features only — uses inotify on Linux,
# which is what Atrium needs. Lives in `atrium-org` as a direct
# dependency; atrium-core never sees it.
notify = "8"
# Phase 20 (v0.47.0): gettext bindings for localisation. Sign-off
# pre-granted by the roadmap's Phase 20 localisation item, which names
# the crate. `gettext-system` links glibc's built-in gettext instead
# of building vendored GNU gettext from source (matters for CI and the
# Flatpak offline build). Lives in the `atrium` binary only — library
# crates and atrium-cli stay untranslated.
gettext-rs = { version = "0.7", features = ["gettext-system"] }