Add rbx-dom submodule and update dependencies in Cargo files

- Introduced rbx-dom as a submodule, updating the .gitmodules file to include its path and repository URL.
- Modified Cargo.toml to reference rbx-dom dependencies using local paths instead of Git URLs, facilitating easier local development.
- Updated Cargo.lock to include new dependencies and versions, enhancing the project's dependency management.
- Added logic in meta_file.rs to skip None OptionalCFrame values during serialization, improving data handling.
This commit is contained in:
Joe 2026-01-21 15:58:13 -06:00
parent c64aec6132
commit 4ccef46540
3 changed files with 152 additions and 24 deletions

3
.gitmodules vendored
View file

@ -16,3 +16,6 @@
[submodule "plugin/Packages/Highlighter"]
path = plugin/Packages/Highlighter
url = https://github.com/boatbomber/highlighter.git
[submodule "rbx-dom"]
path = rbx-dom
url = git@github.com:UserGeneratedLLC/rbx-dom.git

153
Cargo.lock generated
View file

@ -39,6 +39,18 @@ dependencies = [
"memchr",
]
[[package]]
name = "anes"
version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
[[package]]
name = "anstyle"
version = "1.0.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78"
[[package]]
name = "anyhow"
version = "1.0.100"
@ -210,6 +222,33 @@ version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
[[package]]
name = "ciborium"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e"
dependencies = [
"ciborium-io",
"ciborium-ll",
"serde",
]
[[package]]
name = "ciborium-io"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757"
[[package]]
name = "ciborium-ll"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9"
dependencies = [
"ciborium-io",
"half 2.7.1",
]
[[package]]
name = "clap"
version = "2.34.0"
@ -230,7 +269,7 @@ dependencies = [
"atty",
"bitflags 1.3.2",
"clap_derive",
"clap_lex",
"clap_lex 0.2.4",
"indexmap 1.9.3",
"once_cell",
"strsim",
@ -238,6 +277,25 @@ dependencies = [
"textwrap 0.16.2",
]
[[package]]
name = "clap"
version = "4.5.54"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c6e6ff9dcd79cff5cd969a17a545d79e84ab086e444102a591e288a8aa3ce394"
dependencies = [
"clap_builder",
]
[[package]]
name = "clap_builder"
version = "4.5.54"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fa42cf4d2b7a41bc8f663a7cab4031ebafa1bf3875705bfaf8466dc60ab52c00"
dependencies = [
"anstyle",
"clap_lex 0.7.7",
]
[[package]]
name = "clap_derive"
version = "3.2.25"
@ -260,6 +318,12 @@ dependencies = [
"os_str_bytes",
]
[[package]]
name = "clap_lex"
version = "0.7.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3e64b0cc0439b12df2fa678eae89a1c56a529fd067a9115f7827f1fffd22b32"
[[package]]
name = "console"
version = "0.15.11"
@ -312,7 +376,7 @@ dependencies = [
"atty",
"cast",
"clap 2.34.0",
"criterion-plot",
"criterion-plot 0.4.5",
"csv",
"itertools",
"lazy_static",
@ -329,6 +393,32 @@ dependencies = [
"walkdir",
]
[[package]]
name = "criterion"
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f"
dependencies = [
"anes",
"cast",
"ciborium",
"clap 4.5.54",
"criterion-plot 0.5.0",
"is-terminal",
"itertools",
"num-traits",
"once_cell",
"oorandom",
"plotters",
"rayon",
"regex",
"serde",
"serde_derive",
"serde_json",
"tinytemplate",
"walkdir",
]
[[package]]
name = "criterion-plot"
version = "0.4.5"
@ -339,6 +429,16 @@ dependencies = [
"itertools",
]
[[package]]
name = "criterion-plot"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1"
dependencies = [
"cast",
"itertools",
]
[[package]]
name = "crossbeam-channel"
version = "0.5.15"
@ -373,6 +473,12 @@ version = "0.8.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
[[package]]
name = "crunchy"
version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5"
[[package]]
name = "crypto-common"
version = "0.1.7"
@ -820,6 +926,17 @@ version = "1.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1b43ede17f21864e81be2fa654110bf1e793774238d86ef8555c37e6519c0403"
[[package]]
name = "half"
version = "2.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b"
dependencies = [
"cfg-if 1.0.4",
"crunchy",
"zerocopy",
]
[[package]]
name = "hashbrown"
version = "0.12.3"
@ -1148,6 +1265,17 @@ version = "2.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130"
[[package]]
name = "is-terminal"
version = "0.4.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46"
dependencies = [
"hermit-abi 0.5.2",
"libc",
"windows-sys 0.61.2",
]
[[package]]
name = "itertools"
version = "0.10.5"
@ -1796,9 +1924,12 @@ dependencies = [
[[package]]
name = "rbx_binary"
version = "2.0.1"
source = "git+https://github.com/UserGeneratedLLC/rbx-dom#7ef7d448ba6d30c4cb217b228d5c22c6f5ac07f3"
dependencies = [
"ahash",
"criterion 0.5.1",
"env_logger",
"heck 0.4.1",
"insta",
"log",
"lz4_flex",
"profiling",
@ -1813,9 +1944,9 @@ dependencies = [
[[package]]
name = "rbx_dom_weak"
version = "4.1.0"
source = "git+https://github.com/UserGeneratedLLC/rbx-dom#7ef7d448ba6d30c4cb217b228d5c22c6f5ac07f3"
dependencies = [
"ahash",
"insta",
"rbx_types",
"serde",
"ustr",
@ -1824,7 +1955,6 @@ dependencies = [
[[package]]
name = "rbx_reflection"
version = "6.1.0"
source = "git+https://github.com/UserGeneratedLLC/rbx-dom#7ef7d448ba6d30c4cb217b228d5c22c6f5ac07f3"
dependencies = [
"rbx_types",
"serde",
@ -1834,7 +1964,6 @@ dependencies = [
[[package]]
name = "rbx_reflection_database"
version = "2.0.2+roblox-700"
source = "git+https://github.com/UserGeneratedLLC/rbx-dom#7ef7d448ba6d30c4cb217b228d5c22c6f5ac07f3"
dependencies = [
"dirs 5.0.1",
"log",
@ -1846,24 +1975,28 @@ dependencies = [
[[package]]
name = "rbx_types"
version = "3.1.0"
source = "git+https://github.com/UserGeneratedLLC/rbx-dom#7ef7d448ba6d30c4cb217b228d5c22c6f5ac07f3"
dependencies = [
"base64 0.13.1",
"bincode",
"bitflags 1.3.2",
"blake3",
"insta",
"lazy_static",
"rand",
"serde",
"serde_json",
"thiserror",
]
[[package]]
name = "rbx_xml"
version = "2.0.1"
source = "git+https://github.com/UserGeneratedLLC/rbx-dom#7ef7d448ba6d30c4cb217b228d5c22c6f5ac07f3"
dependencies = [
"ahash",
"base64 0.13.1",
"env_logger",
"heck 0.4.1",
"insta",
"log",
"rbx_dom_weak",
"rbx_reflection",
@ -2047,7 +2180,7 @@ dependencies = [
"bincode",
"blake3",
"clap 3.2.25",
"criterion",
"criterion 0.3.6",
"crossbeam-channel",
"csv",
"data-encoding",
@ -2230,7 +2363,7 @@ version = "0.11.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2bef2ebfde456fb76bbcf9f59315333decc4fda0b2b44b420243c11e0f5ec1f5"
dependencies = [
"half",
"half 1.8.3",
"serde",
]

View file

@ -48,12 +48,12 @@ harness = false
[dependencies]
memofs = { version = "0.3.1", path = "crates/memofs" }
# rbx-dom dependencies (from fork, use [patch] section at bottom for local dev)
rbx_binary = { git = "https://github.com/UserGeneratedLLC/rbx-dom", features = ["unstable_text_format"] }
rbx_dom_weak = { git = "https://github.com/UserGeneratedLLC/rbx-dom" }
rbx_reflection = { git = "https://github.com/UserGeneratedLLC/rbx-dom" }
rbx_reflection_database = { git = "https://github.com/UserGeneratedLLC/rbx-dom" }
rbx_xml = { git = "https://github.com/UserGeneratedLLC/rbx-dom" }
# 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.80"
backtrace = "0.3.69"
@ -120,11 +120,3 @@ pretty_assertions = "1.4.0"
serde_yaml = "0.8.26"
tempfile = "3.10.1"
walkdir = "2.5.0"
# Uncomment for local development with rbx-dom
# [patch.'https://github.com/UserGeneratedLLC/rbx-dom']
# rbx_binary = { path = "../rbx-dom/rbx_binary" }
# 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" }