Ctrl K
ComunidadGuías…

Cargo.toml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# : schema https://json.schemastore.org/cargo.json

[workspace]
resolver = "2"
members = ["crates/*"]

[workspace.package]
version = "1.0.5"
edition = "2024"
homepage = "https://memospot.github.io/"
license = "BlueOak-1.0.0"
publish = false
repository = "https://github.com/memospot/memospot"
rust-version = "1.88.0"
description = "Memospot is a desktop version of Memos, a beautiful, privacy-first, lightweight note-taking service."

# Features should be listed at package level.
[workspace.dependencies]
anyhow = { version = "1.0.104", default-features = false }
async_zip = { version = "0.0.18", features = ["tokio-fs", "zstd"] }
chrono = { version = "0.4.45", default-features = false }
encoding_rs = "0.8.35"
figment = { version = "0.10.19", default-features = false }
home = { version = "0.5.12", default-features = false }
humantime = "2.4.0"

# i18n
i18n-embed = { version = "0.16.0", default-features = false }
i18n-embed-fl = "0.10.1"
rust-embed = "8.12.0"

itertools = "0.15.0"
json-patch = "4.2.0"
log = { version = "0.4.33", default-features = false }
log4rs = { version = "1.4.0" }
# Newer versions of `native-dialog` were causing issues with some dialogues
# not displaying on KDE and other platforms, so the version is pinned.
native-dialog = { version = "0.6.4", default-features = false }
nix = { version = "0.31.3", default-features = false }
os_pipe = "1.2.3"
path-clean = "1.0.1"
rand = { version = "0.10.2", default-features = false }
sea-orm = { version = "2.0.1", default-features = false }
sea-orm-migration = { version = "2.0.1", default-features = false }
semver = "1.0.28"
serde = { version = "1.0.229", features = ["derive"] }
serde-saphyr = { version = "1.0.1", features = ["figment"] }
serde_json = "1.0.151"
shared_child = "1.1.1"
strum = "0.28.0"
strum_macros = "0.28.0"
sysinfo = "0.39.6"
tauri = { version = "2.12.1" }
tauri-build = { version = "2.7.1", default-features = false }
tauri-plugin-dialog = { version = "2.7.2" }
tauri-plugin-fs = { version = "2.5.1" }
tauri-plugin-http = { version = "2.5.9", features = ["gzip", "json", "rustls-tls"] }
tauri-plugin-opener = { version = "2.5.4" }
tauri-plugin-process = { version = "2.3.1" }
tauri-plugin-shell = { version = "2.3.5" }
tauri-plugin-single-instance = "2.4.3"
tauri-plugin-updater = { version = "2.10.1" }
tauri-utils = { version = "2.10.1" }
tempfile = { version = "3.27.0" }
thiserror = { version = "2.0.19" }
tokio = { version = "1.53.1" }
tokio-util = { version = "0.7", features = ["compat"] }
ts-rs = { version = "12.0.1" }
url = { version = "2.5.8", default-features = false }
uuid = { version = "1.24.0", default-features = false }
windows-sys = { version = "0.61.2", default-features = false }
winreg = "0.56.0"

[workspace.lints.clippy]
complexity = { level = "warn", priority = -1 }
dbg_macro = "deny"
disallowed_methods = "deny"
redundant_clone = "warn"
todo = "deny"
zombie_processes = "warn"
# unwrap_used = "deny"

[profile.dev]
# - 0, false, or "none": no debug info at all, default for release
#
# - "line-directives-only": line info directives only. For the nvptx* targets this enables profiling.
#   For other use cases, line-tables-only is the better, more compatible choice.
#
# - "line-tables-only": line tables only. Generates the minimal amount of debug info for backtraces with
#   filename/line number info, but not anything else, i.e. no variable or function parameter info.
#
# - 1 or "limited": debug info without type or variable-level information.
#   Generates more detailed module-level info than line-tables-only.
#
# - 2, true, or "full": full debug info, default for dev
debug = 0 # Disabling debug info speeds up builds.

[profile.dev.package]
serde.opt-level = 3 # Tests depending on serde runs faster with higher optimization level.

[profile.dev.build-override]
incremental = true

[profile.release]
panic = "abort"
incremental = true
codegen-units = 1

# - false: Performs “thin local LTO” which performs “thin” LTO on the local crate only across
#   its codegen units. No LTO is performed if codegen units is 1 or opt-level is 0.
#
# - true or "fat": Performs “fat” LTO which attempts to perform
#   optimizations across all crates within the dependency graph.
#
# - "thin": Performs “thin” LTO. This is similar to “fat”, but takes substantially
#   less time to run while still achieving performance gains similar to “fat”.
#
# - "off": Disables LTO.
lto = "thin"

# 0: no optimizations
# 1: basic optimizations
# 2: some optimizations
# 3: all optimizations
# "s": optimize for binary size
# "z": optimize for binary size, but also turn off loop vectorization.
opt-level = "s"

# - none: debuginfo and symbols (if they exist) are copied to the produced binary or
# separate files depending on the target (e.g. pdb files in case of MSVC).
#
# - debuginfo: debuginfo sections and debuginfo symbols from the symbol table section are
# stripped at link time and are not copied to the produced binary or separate files.
#
# - symbols(true): same as debuginfo, but the rest of the symbol table section is
# stripped as well if the linker supports it.
# strip = true
#
# https://github.com/tauri-apps/tauri/issues/14186
strip = true

[profile.test.build-override]
debug = 0

[profile.test]
debug = 0