mirror of
https://github.com/rojo-rbx/rojo.git
synced 2026-10-22 21:41:37 +00:00
Replace `git status --porcelain -uall` with `git diff-index` (6x faster for tracked changes) and `git ls-files --others` for untracked files. Add mtime-based caching keyed on .git/index mtime, HEAD SHA, and tree mutation cursor to make repeated calls near-instant (~14ms vs ~1000ms). Empty changesets are never cached to ensure external file edits are always detected on the next query. Falls back to git status for repos with no commits (empty repo edge case).
151 lines
3.5 KiB
TOML
151 lines
3.5 KiB
TOML
[package]
|
|
name = "atlas"
|
|
version = "8.5.7"
|
|
rust-version = "1.88"
|
|
authors = [
|
|
"Lucien Greathouse <me@lpghatguy.com>",
|
|
"Micah Reid <git@dekkonot.com>",
|
|
"Ken Loeffler <kenloef@gmail.com>",
|
|
]
|
|
description = "Enables professional-grade development tools for Roblox developers"
|
|
license = "MPL-2.0"
|
|
homepage = "https://rojo.space"
|
|
documentation = "https://rojo.space/docs"
|
|
repository = "https://github.com/UserGeneratedLLC/rojo"
|
|
readme = "README.md"
|
|
edition = "2021"
|
|
build = "build.rs"
|
|
|
|
exclude = ["/test-projects/**"]
|
|
|
|
[profile.dev]
|
|
panic = "abort"
|
|
|
|
[profile.release]
|
|
panic = "abort"
|
|
|
|
[features]
|
|
default = []
|
|
|
|
# Enable this feature to live-reload assets from the web UI.
|
|
dev_live_assets = []
|
|
|
|
# Run Rojo with this feature to open a Tracy session.
|
|
# Currently uses protocol v63, last supported in Tracy 0.9.1.
|
|
profile-with-tracy = ["profiling/profile-with-tracy"]
|
|
|
|
[workspace]
|
|
members = ["crates/*"]
|
|
|
|
[lib]
|
|
name = "librojo"
|
|
path = "src/lib.rs"
|
|
|
|
[[bench]]
|
|
name = "build"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "git_metadata"
|
|
harness = false
|
|
|
|
[dependencies]
|
|
memofs = { version = "0.3.1", path = "crates/memofs" }
|
|
|
|
# rbx-dom dependencies (local submodule)
|
|
rbx_binary = { path = "rbx-dom/rbx_binary", features = ["unstable_text_format"] }
|
|
rbx_dom_weak = { path = "rbx-dom/rbx_dom_weak" }
|
|
rbx_reflection = { path = "rbx-dom/rbx_reflection" }
|
|
rbx_reflection_database = { path = "rbx-dom/rbx_reflection_database" }
|
|
rbx_xml = { path = "rbx-dom/rbx_xml" }
|
|
|
|
anyhow = "1.0.102"
|
|
backtrace = "0.3.76"
|
|
bincode = { version = "2", features = ["serde"] }
|
|
crossbeam-channel = "0.5.15"
|
|
csv = "1.4.0"
|
|
flate2 = "1"
|
|
fs-err = "3"
|
|
futures = "0.3.32"
|
|
globset = "0.4.18"
|
|
humantime = "2.3.0"
|
|
hyper = { version = "1", features = ["server", "http1"] }
|
|
hyper-util = { version = "0.1", features = ["tokio"] }
|
|
http-body-util = "0.1"
|
|
bytes = "1"
|
|
hyper-tungstenite = "0.19"
|
|
jod-thread = "1.0.0"
|
|
log = "0.4.29"
|
|
num_cpus = "1.17.0"
|
|
opener = "0.8.4"
|
|
rayon = "1.11.0"
|
|
walkdir = "2.5.0"
|
|
rbx_cookie = "0.1.5"
|
|
reqwest = { version = "0.13", default-features = false, features = [
|
|
"blocking",
|
|
"json",
|
|
"multipart",
|
|
"rustls",
|
|
"gzip",
|
|
"brotli",
|
|
"deflate",
|
|
] }
|
|
tempfile = "3.26.0"
|
|
ritz = "0.1.0"
|
|
roblox_install = "1.0.0"
|
|
serde = { version = "1.0.228", features = ["derive", "rc"] }
|
|
schemars = "1"
|
|
serde_json = "1.0.149"
|
|
json5 = "1.3.1"
|
|
lexical-write-float = "1.0.6"
|
|
strum = { version = "0.27", features = ["derive"] }
|
|
toml = "0.9"
|
|
termcolor = "1.4.1"
|
|
time = "0.3"
|
|
thiserror = "2"
|
|
tokio = { version = "1.50.0", features = ["rt", "rt-multi-thread", "macros", "sync"] }
|
|
tracing = "0.1"
|
|
tracing-appender = "0.2"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt", "time"] }
|
|
uuid = { version = "1.22.0", features = ["v4", "serde"] }
|
|
clap = { version = "4", features = ["derive", "env"] }
|
|
clap_complete = "4"
|
|
profiling = "1.0.17"
|
|
yaml-rust2 = "0.11.0"
|
|
data-encoding = "2.10.0"
|
|
dirs = "6"
|
|
pathdiff = "0.2.3"
|
|
|
|
blake3 = "1.8.3"
|
|
rand = "0.10.0"
|
|
|
|
sha1 = "0.10"
|
|
indexmap = { version = "2.13.0", features = ["serde"] }
|
|
rmp-serde = "1.3.1"
|
|
serde_bytes = "0.11.19"
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
winreg = "0.55"
|
|
|
|
[build-dependencies]
|
|
memofs = { version = "0.3.0", path = "crates/memofs" }
|
|
|
|
embed-resource = "3.0.6"
|
|
anyhow = "1.0.102"
|
|
bincode = { version = "2", features = ["serde"] }
|
|
fs-err = "3"
|
|
maplit = "1.0.2"
|
|
semver = "1.0.27"
|
|
|
|
[dev-dependencies]
|
|
filetime = "0.2"
|
|
rojo-insta-ext = { path = "crates/rojo-insta-ext" }
|
|
|
|
criterion = "0.8"
|
|
insta = { version = "1.46.3", features = ["redactions", "yaml", "json"] }
|
|
paste = "1.0.15"
|
|
pretty_assertions = "1.4.1"
|
|
regex = "1"
|
|
serde_yaml = "0.9"
|
|
tempfile = "3"
|
|
walkdir = "2.5.0"
|