meta: move public crates to packages/

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I928162008cb1ba02e1aa0e7aa971e8326a6a6964
This commit is contained in:
raf 2026-03-23 02:32:37 +03:00
commit 00bab69598
Signed by: NotAShelf
GPG key ID: 29D95B64378DB4BF
308 changed files with 53890 additions and 53889 deletions

BIN
Cargo.lock generated

Binary file not shown.

View file

@ -1,5 +1,5 @@
[workspace] [workspace]
members = ["crates/*", "xtask"] members = ["crates/*", "packages/*", "xtask"]
exclude = ["crates/pinakes-core/tests/fixtures/test-plugin"] exclude = ["crates/pinakes-core/tests/fixtures/test-plugin"]
resolver = "3" resolver = "3"
@ -11,35 +11,44 @@ readme = true
rust-version = "1.95.0" # follows nightly Rust rust-version = "1.95.0" # follows nightly Rust
[workspace.dependencies] [workspace.dependencies]
# Crate components for Pinakes. # Crate components for Pinakes. Those are the internal dependencies that are built
# while building any package.
pinakes-core = { path = "./crates/pinakes-core" } pinakes-core = { path = "./crates/pinakes-core" }
pinakes-server = { path = "./crates/pinakes-server" }
pinakes-plugin-api = { path = "./crates/pinakes-plugin-api" } pinakes-plugin-api = { path = "./crates/pinakes-plugin-api" }
pinakes-ui = { path = "./crates/pinakes-ui" }
pinakes-tui = { path = "./crates/pinakes-tui" }
tokio = { version = "1.49.0", features = ["full"] } # Pinakes itself is a REST API server. UI and TUI are official visual components
# that connect to the server. Using the API documentation, the user can write
# their own clients, but we separate "crates" and "packages" to establish the
# distinction properly.
pinakes-server = { path = "./packages/pinakes-server" }
pinakes-ui = { path = "./packages/pinakes-ui" }
pinakes-tui = { path = "./packages/pinakes-tui" }
# Other dependencies. Declaring them in the virtual manifests lets use reuse the crates
# without having to track individual crate version across different types of crates. This
# also includes *dev* dependencies.
tokio = { version = "1.50.0", features = ["full"] }
tokio-util = { version = "0.7.18", features = ["rt"] } tokio-util = { version = "0.7.18", features = ["rt"] }
serde = { version = "1.0.228", features = ["derive"] } serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.149" serde_json = "1.0.149"
toml = "1.0.3" toml = "1.0.7"
clap = { version = "4.5.60", features = ["derive", "env"] } clap = { version = "4.6.0", features = ["derive", "env"] }
chrono = { version = "0.4.44", features = ["serde"] } chrono = { version = "0.4.44", features = ["serde"] }
uuid = { version = "1.21.0", features = ["v7", "serde"] } uuid = { version = "1.22.0", features = ["v7", "serde"] }
thiserror = "2.0.18" thiserror = "2.0.18"
anyhow = "1.0.102" anyhow = "1.0.102"
tracing = "0.1.44" tracing = "0.1.44"
tracing-subscriber = { version = "0.3.22", features = ["env-filter", "json"] } tracing-subscriber = { version = "0.3.23", features = ["env-filter", "json"] }
blake3 = "1.8.3" blake3 = "1.8.3"
rustc-hash = "2.1.1" rustc-hash = "2.1.1"
ed25519-dalek = { version = "2.1.1", features = ["std"] } ed25519-dalek = { version = "2.2.0", features = ["std"] }
lofty = "0.23.2" lofty = "0.23.3"
lopdf = "0.39.0" lopdf = "0.40.0"
epub = "2.1.5" epub = "2.1.5"
matroska = "0.30.0" matroska = "0.30.0"
gray_matter = "0.3.2" gray_matter = "0.3.2"
kamadak-exif = "0.6.1" kamadak-exif = "0.6.1"
rusqlite = { version = "=0.37.0", features = ["bundled", "column_decltype"] } rusqlite = { version = "0.37.0", features = ["bundled", "column_decltype"] }
tokio-postgres = { version = "0.7.16", features = [ tokio-postgres = { version = "0.7.16", features = [
"with-uuid-1", "with-uuid-1",
"with-chrono-0_4", "with-chrono-0_4",
@ -52,7 +61,7 @@ native-tls = "0.2.18"
refinery = { version = "0.9.0", features = ["rusqlite", "tokio-postgres"] } refinery = { version = "0.9.0", features = ["rusqlite", "tokio-postgres"] }
walkdir = "2.5.0" walkdir = "2.5.0"
notify = { version = "8.2.0", features = ["macos_fsevent"] } notify = { version = "8.2.0", features = ["macos_fsevent"] }
winnow = "0.7.14" winnow = "1.0.0"
axum = { version = "0.8.8", features = ["macros", "multipart"] } axum = { version = "0.8.8", features = ["macros", "multipart"] }
axum-server = { version = "0.8.0" } axum-server = { version = "0.8.0" }
tower = "0.5.3" tower = "0.5.3"
@ -67,7 +76,7 @@ dioxus = { version = "0.7.3", features = ["desktop", "router"] }
dioxus-core = { version = "0.7.3" } dioxus-core = { version = "0.7.3" }
async-trait = "0.1.89" async-trait = "0.1.89"
futures = "0.3.32" futures = "0.3.32"
image = { version = "0.25.9", default-features = false, features = [ image = { version = "0.25.10", default-features = false, features = [
"jpeg", "jpeg",
"png", "png",
"webp", "webp",
@ -75,7 +84,7 @@ image = { version = "0.25.9", default-features = false, features = [
"tiff", "tiff",
"bmp", "bmp",
] } ] }
pulldown-cmark = "0.13.1" pulldown-cmark = "0.13.3"
ammonia = "4.1.2" ammonia = "4.1.2"
argon2 = { version = "0.5.3", features = ["std"] } argon2 = { version = "0.5.3", features = ["std"] }
mime_guess = "2.0.5" mime_guess = "2.0.5"
@ -84,17 +93,18 @@ dioxus-free-icons = { version = "0.10.0", features = ["font-awesome-solid"] }
rfd = "0.17.2" rfd = "0.17.2"
gloo-timers = { version = "0.3.0", features = ["futures"] } gloo-timers = { version = "0.3.0", features = ["futures"] }
rand = "0.10.0" rand = "0.10.0"
moka = { version = "0.12.14", features = ["future"] } moka = { version = "0.12.15", features = ["future"] }
urlencoding = "2.1.3" urlencoding = "2.1.3"
image_hasher = "3.1.1" image_hasher = "3.1.1"
percent-encoding = "2.3.2" percent-encoding = "2.3.2"
http = "1.4.0" http = "1.4.0"
wasmtime = { version = "42.0.1", features = ["component-model"] } wasmtime = { version = "43.0.0", features = ["component-model"] }
wit-bindgen = "0.53.1" wit-bindgen = "0.54.0"
tempfile = "3.26.0" tempfile = "3.27.0"
utoipa = { version = "5.4.0", features = ["axum_extras", "uuid", "chrono"] } utoipa = { version = "5.4.0", features = ["axum_extras", "uuid", "chrono"] }
utoipa-axum = { version = "0.2.0" } utoipa-axum = { version = "0.2.0" }
utoipa-swagger-ui = { version = "9.0.2", features = ["axum"] } utoipa-swagger-ui = { version = "9.0.2", features = ["axum"] }
http-body-util = "0.1.3"
# See: # See:
# <https://doc.rust-lang.org/rustc/lints/listing/allowed-by-default.html> # <https://doc.rust-lang.org/rustc/lints/listing/allowed-by-default.html>

View file

@ -4,6 +4,9 @@ edition.workspace = true
version.workspace = true version.workspace = true
license.workspace = true license.workspace = true
[features]
ffmpeg-tests = []
[dependencies] [dependencies]
tokio = { workspace = true } tokio = { workspace = true }
serde = { workspace = true } serde = { workspace = true }
@ -43,18 +46,13 @@ moka = { workspace = true }
urlencoding = { workspace = true } urlencoding = { workspace = true }
image_hasher = { workspace = true } image_hasher = { workspace = true }
rustc-hash = { workspace = true } rustc-hash = { workspace = true }
pinakes-plugin-api = { workspace = true }
# Plugin system wasmtime = { workspace = true }
pinakes-plugin-api.workspace = true ed25519-dalek = { workspace = true }
wasmtime.workspace = true
ed25519-dalek.workspace = true
[features]
ffmpeg-tests = []
[lints]
workspace = true
[dev-dependencies] [dev-dependencies]
tempfile = { workspace = true } tempfile = { workspace = true }
rand = { workspace = true } rand = { workspace = true }
[lints]
workspace = true

View file

@ -4,32 +4,25 @@ version.workspace = true
edition.workspace = true edition.workspace = true
license.workspace = true license.workspace = true
[features]
default = []
wasm = ["wit-bindgen"]
[dependencies] [dependencies]
# Core dependencies
serde = { workspace = true } serde = { workspace = true }
serde_json = { workspace = true } serde_json = { workspace = true }
thiserror = { workspace = true } thiserror = { workspace = true }
async-trait = { workspace = true } async-trait = { workspace = true }
tracing = { workspace = true } tracing = { workspace = true }
# For plugin manifest parsing
toml = { workspace = true } toml = { workspace = true }
# For media types and identifiers
uuid = { workspace = true } uuid = { workspace = true }
chrono = { workspace = true } chrono = { workspace = true }
mime_guess = { workspace = true } mime_guess = { workspace = true }
rustc-hash = { workspace = true } rustc-hash = { workspace = true }
# WASM bridge types
wit-bindgen = { workspace = true, optional = true } wit-bindgen = { workspace = true, optional = true }
[lints]
workspace = true
[features]
default = []
wasm = ["wit-bindgen"]
[dev-dependencies] [dev-dependencies]
tokio = { workspace = true, features = ["rt", "rt-multi-thread", "macros"] } tokio = { workspace = true, features = ["rt", "rt-multi-thread", "macros"] }
[lints]
workspace = true

View file

@ -36,10 +36,10 @@ utoipa = { workspace = true }
utoipa-axum = { workspace = true } utoipa-axum = { workspace = true }
utoipa-swagger-ui = { workspace = true } utoipa-swagger-ui = { workspace = true }
[lints]
workspace = true
[dev-dependencies] [dev-dependencies]
http-body-util = "0.1.3" http-body-util = { workspace = true }
reqwest = { workspace = true } reqwest = { workspace = true }
tempfile = { workspace = true } tempfile = { workspace = true }
[lints]
workspace = true

Some files were not shown because too many files have changed in this diff Show more