You've already forked pages
forked from didirus/AstralRinth
* Make theseus capable of logging messages from the `log` crate * Move update checking entirely into JS and open a modal if an update is available * Fix formatjs on Windows and run formatjs * Add in the buttons and body * Fix lint * Show update size in modal * Fix update not being rechecked if the update modal was directly dismissed * Slight UI tweaks * Fix lint * Implement skipping the update * Implement the Update Now button * Implement updating at next exit * Turn download progress into an error bar on failure * Restore 5 minute update check instead of 30 seconds * Fix PendingUpdateData being seen as a unit struct * Fix lint * Make CI also lint updater code * feat: create AppearingProgressBar component * feat: polish update available modal * feat: add error handling * Open changelog with tauri-plugin-opener * Run intl:extract * Update completion toasts (#3978) * Use single LAUNCHER_USER_AGENT constant for all user agents * Fix build on Mac * Request the update size with HEAD instead of GET * UI tweaks * lint * Fix lint * fix: hide modal header & add "Hide update reminder" button w/ tooltip * Run intl:extract * fix: lint issues * fix: merge issues * notifications.js no longer exists * Add metered network checking * Add a timeout to macOS is_network_metered * Fix tauri.conf.json * vibe debugging * Set a dispatch queue * Have a popup that asks you if you'd like to disable automatic file downloads if you're on a metered network * Move UpdateModal to modal package * Fix lint * Add a toggle for automatic downloads * Fix type Co-authored-by: Alejandro González <7822554+AlexTMjugador@users.noreply.github.com> Signed-off-by: Josiah Glosson <soujournme@gmail.com> * Redo updating UI and experience * lint * fix unlistener issue * remove unneeded translation keys * Fix expose issue * temp disable cranelift, tweak some messages * change version back * Clean up App.vue * move toast to top right * update reload icon * Fixed the bug!!!!!!!!!!!! * improve messages * intl:extract * Add liquid glass icon file * not you! * use dependency injection * lint on apple icon * Fix imports, move download size to button * change update check back to 5 mins * lint + move to providers * intl:extract --------- Signed-off-by: Cal H. <hendersoncal117@gmail.com> Signed-off-by: Josiah Glosson <soujournme@gmail.com> Co-authored-by: Calum <calum@modrinth.com> Co-authored-by: Prospector <prospectordev@gmail.com> Co-authored-by: Cal H. <hendersoncal117@gmail.com> Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com> Co-authored-by: Alejandro González <7822554+AlexTMjugador@users.noreply.github.com>
243 lines
6.4 KiB
TOML
243 lines
6.4 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"apps/app",
|
|
"apps/app-playground",
|
|
"apps/daedalus_client",
|
|
"apps/labrinth",
|
|
"packages/app-lib",
|
|
"packages/ariadne",
|
|
"packages/daedalus",
|
|
]
|
|
|
|
[workspace.package]
|
|
edition = "2024"
|
|
|
|
[workspace.dependencies]
|
|
actix-cors = "0.7.1"
|
|
actix-files = "0.6.6"
|
|
actix-http = "3.11.0"
|
|
actix-multipart = "0.7.2"
|
|
actix-rt = "2.10.0"
|
|
actix-web = "4.11.0"
|
|
actix-web-prom = "0.10.0"
|
|
actix-ws = "0.3.0"
|
|
argon2 = { version = "0.5.3", features = ["std"] }
|
|
ariadne = { path = "packages/ariadne" }
|
|
async_zip = "0.0.17"
|
|
async-compression = { version = "0.4.27", default-features = false }
|
|
async-recursion = "1.1.1"
|
|
async-stripe = { version = "0.41.0", default-features = false, features = [
|
|
"runtime-tokio-hyper-rustls",
|
|
] }
|
|
async-trait = "0.1.88"
|
|
async-tungstenite = { version = "0.30.0", default-features = false, features = ["futures-03-sink"] }
|
|
async-walkdir = "2.1.0"
|
|
base64 = "0.22.1"
|
|
bitflags = "2.9.1"
|
|
bytemuck = "1.23.1"
|
|
bytes = "1.10.1"
|
|
censor = "0.3.0"
|
|
chardetng = "0.1.17"
|
|
chrono = "0.4.41"
|
|
cidre = { version = "0.11.2", default-features = false, features = ["macos_15_0"] }
|
|
clap = "4.5.43"
|
|
clickhouse = "0.13.3"
|
|
color-thief = "0.2.2"
|
|
console-subscriber = "0.4.1"
|
|
daedalus = { path = "packages/daedalus" }
|
|
dashmap = "6.1.0"
|
|
data-url = "0.3.1"
|
|
deadpool-redis = "0.22.0"
|
|
derive_more = "2.0.1"
|
|
dirs = "6.0.0"
|
|
discord-rich-presence = "0.2.5"
|
|
dotenv-build = "0.1.1"
|
|
dotenvy = "0.15.7"
|
|
dunce = "1.0.5"
|
|
either = "1.15.0"
|
|
encoding_rs = "0.8.35"
|
|
enumset = "1.1.7"
|
|
flate2 = "1.1.2"
|
|
fs4 = { version = "0.13.1", default-features = false }
|
|
futures = { version = "0.3.31", default-features = false }
|
|
futures-util = "0.3.31"
|
|
heck = "0.5.0"
|
|
hex = "0.4.3"
|
|
hickory-resolver = "0.25.2"
|
|
hmac = "0.12.1"
|
|
hyper = "1.6.0"
|
|
hyper-rustls = { version = "0.27.7", default-features = false, features = [
|
|
"http1",
|
|
"native-tokio",
|
|
"ring",
|
|
"tls12",
|
|
] }
|
|
hyper-util = "0.1.16"
|
|
iana-time-zone = "0.1.63"
|
|
image = { version = "0.25.6", default-features = false, features = ["rayon"] }
|
|
indexmap = "2.10.0"
|
|
indicatif = "0.18.0"
|
|
itertools = "0.14.0"
|
|
jemalloc_pprof = "0.8.1"
|
|
json-patch = { version = "4.0.0", default-features = false }
|
|
lettre = { version = "0.11.18", default-features = false, features = [
|
|
"builder",
|
|
"hostname",
|
|
"pool",
|
|
"ring",
|
|
"rustls",
|
|
"rustls-native-certs",
|
|
"tokio1-rustls",
|
|
"smtp-transport",
|
|
"tokio1",
|
|
] }
|
|
maxminddb = "0.26.0"
|
|
meilisearch-sdk = { version = "0.29.1", default-features = false }
|
|
murmur2 = "0.1.0"
|
|
native-dialog = "0.9.0"
|
|
notify = { version = "8.2.0", default-features = false }
|
|
notify-debouncer-mini = { version = "0.7.0", default-features = false }
|
|
p256 = "0.13.2"
|
|
paste = "1.0.15"
|
|
phf = { version = "0.12.1", features = ["macros"] }
|
|
png = "0.17.16"
|
|
prometheus = "0.14.0"
|
|
quartz_nbt = "0.2.9"
|
|
quick-xml = "0.38.1"
|
|
rand = "=0.8.5" # Locked on 0.8 until argon2 and p256 update to 0.9
|
|
rand_chacha = "=0.3.1" # Locked on 0.3 until we can update rand to 0.9
|
|
redis = "0.32.4"
|
|
regex = "1.11.1"
|
|
reqwest = { version = "0.12.22", default-features = false }
|
|
rgb = "0.8.52"
|
|
rust_decimal = { version = "1.37.2", features = ["serde-with-float", "serde-with-str"] }
|
|
rust_iso3166 = "0.1.14"
|
|
rust-s3 = { version = "0.35.1", default-features = false, features = [
|
|
"fail-on-err",
|
|
"tags",
|
|
"tokio-rustls-tls",
|
|
] }
|
|
rusty-money = "0.4.1"
|
|
sentry = { version = "0.42.0", default-features = false, features = [
|
|
"backtrace",
|
|
"contexts",
|
|
"debug-images",
|
|
"panic",
|
|
"reqwest",
|
|
"rustls",
|
|
] }
|
|
sentry-actix = "0.42.0"
|
|
serde = "1.0.219"
|
|
serde_bytes = "0.11.17"
|
|
serde_cbor = "0.11.2"
|
|
serde_ini = "0.2.0"
|
|
serde_json = "1.0.142"
|
|
serde_with = "3.14.0"
|
|
serde-xml-rs = "0.8.1" # Also an XML (de)serializer, consider dropping yaserde in favor of this
|
|
sha1 = "0.10.6"
|
|
sha1_smol = { version = "1.0.1", features = ["std"] }
|
|
sha2 = "0.10.9"
|
|
spdx = "0.10.9"
|
|
sqlx = { version = "0.8.6", default-features = false }
|
|
sysinfo = { version = "0.36.1", default-features = false }
|
|
tar = "0.4.44"
|
|
tauri = "2.7.0"
|
|
tauri-build = "2.3.1"
|
|
tauri-plugin-deep-link = "2.4.1"
|
|
tauri-plugin-dialog = "2.3.2"
|
|
tauri-plugin-http = "2.5.1"
|
|
tauri-plugin-opener = "2.4.0"
|
|
tauri-plugin-os = "2.3.0"
|
|
tauri-plugin-single-instance = "2.3.2"
|
|
tauri-plugin-updater = { version = "2.9.0", default-features = false, features = [
|
|
"rustls-tls",
|
|
"zip",
|
|
] }
|
|
tauri-plugin-window-state = "2.4.0"
|
|
tempfile = "3.20.0"
|
|
theseus = { path = "packages/app-lib" }
|
|
thiserror = "2.0.12"
|
|
tikv-jemalloc-ctl = "0.6.0"
|
|
tikv-jemallocator = "0.6.0"
|
|
tokio = "1.47.1"
|
|
tokio-stream = "0.1.17"
|
|
tokio-util = "0.7.16"
|
|
totp-rs = "5.7.0"
|
|
tracing = "0.1.41"
|
|
tracing-actix-web = "0.7.19"
|
|
tracing-error = "0.2.1"
|
|
tracing-subscriber = "0.3.19"
|
|
url = "2.5.4"
|
|
urlencoding = "2.1.3"
|
|
uuid = "1.17.0"
|
|
validator = "0.20.0"
|
|
webp = { version = "0.3.0", default-features = false }
|
|
whoami = "1.6.0"
|
|
windows = "0.61.3"
|
|
windows-core = "0.61.2"
|
|
winreg = "0.55.0"
|
|
woothee = "0.13.0"
|
|
yaserde = "0.12.0"
|
|
zbus = "5.9.0"
|
|
zip = { version = "4.3.0", default-features = false, features = [
|
|
"bzip2",
|
|
"deflate",
|
|
"deflate64",
|
|
"zstd",
|
|
] }
|
|
zxcvbn = "3.1.0"
|
|
|
|
[workspace.lints.clippy]
|
|
bool_to_int_with_if = "warn"
|
|
borrow_as_ptr = "warn"
|
|
cfg_not_test = "warn"
|
|
clear_with_drain = "warn"
|
|
cloned_instead_of_copied = "warn"
|
|
collection_is_never_read = "warn"
|
|
dbg_macro = "warn"
|
|
default_trait_access = "warn"
|
|
explicit_iter_loop = "warn"
|
|
filter_map_next = "warn"
|
|
flat_map_option = "warn"
|
|
format_push_string = "warn"
|
|
get_unwrap = "warn"
|
|
large_include_file = "warn"
|
|
large_stack_arrays = "warn"
|
|
manual_assert = "warn"
|
|
manual_instant_elapsed = "warn"
|
|
manual_is_variant_and = "warn"
|
|
manual_let_else = "warn"
|
|
map_unwrap_or = "warn"
|
|
match_bool = "warn"
|
|
needless_collect = "warn"
|
|
negative_feature_names = "warn"
|
|
non_std_lazy_statics = "warn"
|
|
pathbuf_init_then_push = "warn"
|
|
read_zero_byte_vec = "warn"
|
|
redundant_clone = "warn"
|
|
redundant_feature_names = "warn"
|
|
redundant_type_annotations = "warn"
|
|
todo = "warn"
|
|
unnested_or_patterns = "warn"
|
|
wildcard_dependencies = "warn"
|
|
|
|
[patch.crates-io]
|
|
wry = { git = "https://github.com/modrinth/wry", rev = "f2ce0b0" }
|
|
|
|
# Optimize for speed and reduce size on release builds
|
|
[profile.release]
|
|
opt-level = "s" # Optimize for binary size
|
|
strip = true # Remove debug symbols
|
|
lto = true # Enables link to optimizations
|
|
panic = "abort" # Strip expensive panic clean-up logic
|
|
codegen-units = 1 # Compile crates one after another so the compiler can optimize better
|
|
|
|
# Specific profile for labrinth production builds
|
|
[profile.release-labrinth]
|
|
inherits = "release"
|
|
panic = "unwind" # Don't exit the whole app on panic in production
|
|
|
|
[profile.dev.package.sqlx-macros]
|
|
opt-level = 3
|