mirror of
https://github.com/modrinth/code.git
synced 2026-08-25 00:55:25 +00:00
* feat: base of instances v2 * feat: use old profiles with compat layer * prototype: instances v2 * fix: install_from using profile * fix: skins migration fix * fix: frontend still using profile path * fix: add update proj multiselect guard * fix: cargo fmt * fix: content missing fields * feat: break up app-lib/api/instance.rs * fix: check_content_updates mismatch * fix: updater modal cleanup w/new structure * feat: better update all handling * fix: remove preview_update_all * fix: feedback on bulk update + lint * fix: rem transitions * fix: change to jsonb * feat: app db backup after update * fix: lint * fix: sqlx prepare + use sqlx macros * fix: lint * fix: bugs * feat: defuck the installing process up * fix: bug of hell * fix: shear * fix: fmt * fix: install progress spacing + change mc/content/overrides to bytes * fix: lint * fix: prepr * fix: navtabs anim not working in app * fix: worlds.vue improvements + browse page fixes * feat: optimise queries + adapter fns * fix: lint * fix: lint * feat: shared modrinth-content-management crate (#6469) * feat: disable warnings setting * feat: add instances shortcuts (#6329) * Add modrinth://launch deep link to start a profile Support external profile launching via modrinth://launch/{profile_path} for integrations such as Stream Deck. * Change route to /launch/profile/{id} for future extensibility * fix: ensure profile path is url decoded * fix: URL-decode profile path from deep link * fix: use urlencoding crate for URL decoding * feat: implement app instance shortcuts * feat: change windows shortcut creation to use windows api instead * feat: implement creating a shortcut launching world/server * format * fmt * fix multiline inline tables * pnpm prepr * feat: move create shortcut to last item * refactor: split up shortcuts.rs for individual platforms * refactor: turn profile launch url into url type * use string literal and add safety comment * pt2 * refactor: rename anything that's profile into instance * update mac shortcut --------- Co-authored-by: DJCheesusReal <134006619+DJCheesusReal@users.noreply.github.com> --------- Co-authored-by: Truman Gao <106889354+tdgao@users.noreply.github.com> Co-authored-by: DJCheesusReal <134006619+DJCheesusReal@users.noreply.github.com>
167 lines
4.8 KiB
TOML
167 lines
4.8 KiB
TOML
[package]
|
|
name = "labrinth"
|
|
version = "2.7.0"
|
|
edition.workspace = true
|
|
license = "AGPL-3.0-only"
|
|
|
|
# This seems redundant, but it's necessary for Docker to work
|
|
[[bin]]
|
|
name = "labrinth"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
actix-cors = { workspace = true }
|
|
actix-files = { workspace = true }
|
|
actix-http = { workspace = true }
|
|
actix-multipart = { workspace = true }
|
|
actix-rt = { workspace = true }
|
|
actix-web = { workspace = true }
|
|
actix-web-prom = { workspace = true, features = ["process"] }
|
|
actix-ws = { workspace = true }
|
|
arc-swap = { workspace = true }
|
|
argon2 = { workspace = true }
|
|
ariadne = { workspace = true }
|
|
async-minecraft-ping = { workspace = true, features = ["srv"] }
|
|
async-stripe = { workspace = true, features = [
|
|
"billing",
|
|
"checkout",
|
|
"connect",
|
|
"webhook-events"
|
|
] }
|
|
async-trait = { workspace = true }
|
|
aws-sdk-s3 = { workspace = true }
|
|
base64 = { workspace = true }
|
|
bitflags = { workspace = true }
|
|
bytes = { workspace = true }
|
|
censor = { workspace = true }
|
|
chrono = { workspace = true, features = ["serde"] }
|
|
clap = { workspace = true, features = ["derive"] }
|
|
clickhouse = { workspace = true, features = ["time", "uuid"] }
|
|
color-eyre = { workspace = true }
|
|
color-thief = { workspace = true }
|
|
const_format = { workspace = true }
|
|
dashmap = { workspace = true }
|
|
deadpool-redis.workspace = true
|
|
derive_more = { workspace = true, features = ["deref", "deref_mut"] }
|
|
dotenvy = { workspace = true }
|
|
either = { workspace = true }
|
|
eyre = { workspace = true }
|
|
futures = { workspace = true }
|
|
futures-util = { workspace = true }
|
|
heck = { workspace = true }
|
|
hex = { workspace = true }
|
|
hmac = { workspace = true }
|
|
hyper-rustls = { workspace = true }
|
|
hyper-util = { workspace = true }
|
|
image = { workspace = true, features = [
|
|
"avif",
|
|
"bmp",
|
|
"dds",
|
|
"exr",
|
|
"ff",
|
|
"gif",
|
|
"hdr",
|
|
"ico",
|
|
"jpeg",
|
|
"png",
|
|
"pnm",
|
|
"qoi",
|
|
"tga",
|
|
"tiff",
|
|
"webp",
|
|
] }
|
|
itertools = { workspace = true }
|
|
json-patch = { workspace = true }
|
|
lettre = { workspace = true }
|
|
meilisearch-sdk = { workspace = true, features = ["reqwest"] }
|
|
modrinth-content-management = { workspace = true }
|
|
modrinth-util = { workspace = true, features = ["decimal", "sentry", "utoipa"] }
|
|
muralpay = { workspace = true, features = ["client", "mock", "utoipa"] }
|
|
murmur2 = { workspace = true }
|
|
paste = { workspace = true }
|
|
path-util = { workspace = true }
|
|
prometheus = { workspace = true }
|
|
quick-xml = { workspace = true }
|
|
rand = { workspace = true }
|
|
rand_chacha = { workspace = true }
|
|
rdkafka = { workspace = true }
|
|
redis = { workspace = true, features = ["ahash", "r2d2", "tokio-comp"] }
|
|
regex = { workspace = true }
|
|
reqwest = { workspace = true, features = [
|
|
"http2",
|
|
"json",
|
|
"multipart",
|
|
"rustls-tls-webpki-roots"
|
|
] }
|
|
rust_decimal = { workspace = true, features = [
|
|
"serde-with-float",
|
|
"serde-with-str"
|
|
] }
|
|
rust_iso3166 = { workspace = true }
|
|
rustls.workspace = true
|
|
rusty-money = { workspace = true }
|
|
sentry = { workspace = true }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
serde_json = { workspace = true }
|
|
serde_with = { workspace = true }
|
|
sha1 = { workspace = true }
|
|
sha2 = { workspace = true }
|
|
spdx = { workspace = true, features = ["text"] }
|
|
sqlx = { workspace = true, features = [
|
|
"chrono",
|
|
"json",
|
|
"macros",
|
|
"migrate",
|
|
"postgres",
|
|
"runtime-tokio",
|
|
"rust_decimal",
|
|
"tls-rustls-aws-lc-rs",
|
|
] }
|
|
sqlx-tracing = { workspace = true, features = ["postgres"] }
|
|
strum = { workspace = true, features = ["derive"] }
|
|
thiserror = { workspace = true }
|
|
tokio = { workspace = true, features = ["rt-multi-thread", "sync"] }
|
|
tokio-stream = { workspace = true }
|
|
totp-rs = { workspace = true, features = ["gen_secret"] }
|
|
tracing = { workspace = true }
|
|
tracing-actix-web = { workspace = true }
|
|
url = { workspace = true }
|
|
urlencoding = { workspace = true }
|
|
utoipa = { workspace = true, features = ["url"] }
|
|
utoipa-actix-web = { workspace = true }
|
|
utoipa-scalar = { workspace = true, features = ["actix-web"] }
|
|
uuid = { workspace = true, features = ["fast-rng", "serde", "v4", "v7"] }
|
|
validator = { workspace = true, features = ["derive"] }
|
|
webauthn-rs = { workspace = true, features = [
|
|
"conditional-ui",
|
|
"danger-allow-state-serialisation"
|
|
] }
|
|
webauthn-rs-proto = { workspace = true }
|
|
webp = { workspace = true }
|
|
woothee = { workspace = true }
|
|
yaserde = { workspace = true, features = ["derive"] }
|
|
zip = { workspace = true }
|
|
zxcvbn = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
labrinth = { path = ".", features = ["test"] }
|
|
|
|
[build-dependencies]
|
|
chrono = { workspace = true }
|
|
dotenv-build = { workspace = true }
|
|
iana-time-zone = { workspace = true }
|
|
|
|
[target.'cfg(target_os = "linux")'.dependencies]
|
|
jemalloc_pprof = { workspace = true, features = ["flamegraph"] }
|
|
tikv-jemalloc-ctl = { workspace = true, features = ["stats"] }
|
|
tikv-jemallocator = { workspace = true, features = [
|
|
"profiling",
|
|
"unprefixed_malloc_on_supported_platforms",
|
|
] }
|
|
|
|
[features]
|
|
test = []
|
|
|
|
[lints]
|
|
workspace = true
|