From 91fd9d92a90042bc3cb1ad16337a772ab26c7c74 Mon Sep 17 00:00:00 2001 From: Filip Tibell Date: Sun, 21 Apr 2024 13:41:11 +0200 Subject: [PATCH] Set up workspace manifest and move lune crate into crates dir --- Cargo.toml | 157 +++--------------- crates/lune/Cargo.toml | 139 ++++++++++++++++ .../lune/src}/cli/build/base_exe.rs | 0 {src => crates/lune/src}/cli/build/files.rs | 0 {src => crates/lune/src}/cli/build/mod.rs | 0 {src => crates/lune/src}/cli/build/result.rs | 0 {src => crates/lune/src}/cli/build/target.rs | 0 {src => crates/lune/src}/cli/list.rs | 0 {src => crates/lune/src}/cli/mod.rs | 0 {src => crates/lune/src}/cli/repl.rs | 0 {src => crates/lune/src}/cli/run.rs | 0 {src => crates/lune/src}/cli/setup.rs | 0 {src => crates/lune/src}/cli/utils/files.rs | 0 {src => crates/lune/src}/cli/utils/listing.rs | 0 {src => crates/lune/src}/cli/utils/mod.rs | 0 {src => crates/lune/src}/lib.rs | 0 .../lune/src}/lune/builtins/datetime/error.rs | 0 .../lune/src}/lune/builtins/datetime/mod.rs | 0 .../src}/lune/builtins/datetime/values.rs | 0 .../lune/src}/lune/builtins/fs/copy.rs | 0 .../lune/src}/lune/builtins/fs/metadata.rs | 0 .../lune/src}/lune/builtins/fs/mod.rs | 0 .../lune/src}/lune/builtins/fs/options.rs | 0 .../lune/src}/lune/builtins/luau/mod.rs | 0 .../lune/src}/lune/builtins/luau/options.rs | 0 {src => crates/lune/src}/lune/builtins/mod.rs | 0 .../lune/src}/lune/builtins/net/client.rs | 0 .../lune/src}/lune/builtins/net/config.rs | 0 .../lune/src}/lune/builtins/net/mod.rs | 0 .../src}/lune/builtins/net/server/keys.rs | 0 .../lune/src}/lune/builtins/net/server/mod.rs | 0 .../src}/lune/builtins/net/server/request.rs | 0 .../src}/lune/builtins/net/server/response.rs | 0 .../src}/lune/builtins/net/server/service.rs | 0 .../lune/src}/lune/builtins/net/util.rs | 0 .../lune/src}/lune/builtins/net/websocket.rs | 0 .../lune/src}/lune/builtins/process/mod.rs | 0 .../lune/builtins/process/options/kind.rs | 0 .../src}/lune/builtins/process/options/mod.rs | 0 .../lune/builtins/process/options/stdio.rs | 0 .../src}/lune/builtins/process/tee_writer.rs | 0 .../lune/builtins/process/wait_for_child.rs | 0 .../lune/src}/lune/builtins/regex/captures.rs | 0 .../lune/src}/lune/builtins/regex/matches.rs | 0 .../lune/src}/lune/builtins/regex/mod.rs | 0 .../lune/src}/lune/builtins/regex/regex.rs | 0 .../lune/src}/lune/builtins/roblox/mod.rs | 0 .../builtins/serde/compress_decompress.rs | 0 .../src}/lune/builtins/serde/encode_decode.rs | 0 .../lune/src}/lune/builtins/serde/mod.rs | 0 .../lune/src}/lune/builtins/stdio/mod.rs | 0 .../lune/src}/lune/builtins/stdio/prompt.rs | 0 .../lune/src}/lune/builtins/task/mod.rs | 0 {src => crates/lune/src}/lune/error.rs | 0 .../lune/src}/lune/globals/g_table.rs | 0 {src => crates/lune/src}/lune/globals/mod.rs | 0 .../lune/src}/lune/globals/print.rs | 0 .../lune/src}/lune/globals/require/alias.rs | 0 .../lune/src}/lune/globals/require/builtin.rs | 0 .../lune/src}/lune/globals/require/context.rs | 0 .../lune/src}/lune/globals/require/mod.rs | 0 .../lune/src}/lune/globals/require/path.rs | 0 .../lune/src}/lune/globals/version.rs | 0 {src => crates/lune/src}/lune/globals/warn.rs | 0 {src => crates/lune/src}/lune/mod.rs | 0 .../lune/src}/lune/util/formatting.rs | 0 {src => crates/lune/src}/lune/util/luaurc.rs | 0 {src => crates/lune/src}/lune/util/mod.rs | 0 {src => crates/lune/src}/lune/util/paths.rs | 0 .../lune/src}/lune/util/table_builder.rs | 0 {src => crates/lune/src}/lune/util/traits.rs | 0 {src => crates/lune/src}/main.rs | 0 .../lune/src}/roblox/datatypes/attributes.rs | 0 .../lune/src}/roblox/datatypes/conversion.rs | 0 .../lune/src}/roblox/datatypes/extension.rs | 0 .../lune/src}/roblox/datatypes/mod.rs | 0 .../lune/src}/roblox/datatypes/result.rs | 0 .../lune/src}/roblox/datatypes/types/axes.rs | 0 .../roblox/datatypes/types/brick_color.rs | 0 .../src}/roblox/datatypes/types/cframe.rs | 0 .../src}/roblox/datatypes/types/color3.rs | 0 .../roblox/datatypes/types/color_sequence.rs | 0 .../types/color_sequence_keypoint.rs | 0 .../lune/src}/roblox/datatypes/types/enum.rs | 0 .../src}/roblox/datatypes/types/enum_item.rs | 0 .../lune/src}/roblox/datatypes/types/enums.rs | 0 .../lune/src}/roblox/datatypes/types/faces.rs | 0 .../lune/src}/roblox/datatypes/types/font.rs | 0 .../lune/src}/roblox/datatypes/types/mod.rs | 0 .../roblox/datatypes/types/number_range.rs | 0 .../roblox/datatypes/types/number_sequence.rs | 0 .../types/number_sequence_keypoint.rs | 0 .../datatypes/types/physical_properties.rs | 0 .../lune/src}/roblox/datatypes/types/ray.rs | 0 .../lune/src}/roblox/datatypes/types/rect.rs | 0 .../src}/roblox/datatypes/types/region3.rs | 0 .../roblox/datatypes/types/region3int16.rs | 0 .../lune/src}/roblox/datatypes/types/udim.rs | 0 .../lune/src}/roblox/datatypes/types/udim2.rs | 0 .../src}/roblox/datatypes/types/vector2.rs | 0 .../roblox/datatypes/types/vector2int16.rs | 0 .../src}/roblox/datatypes/types/vector3.rs | 0 .../roblox/datatypes/types/vector3int16.rs | 0 .../lune/src}/roblox/datatypes/util.rs | 0 .../lune/src}/roblox/document/error.rs | 0 .../lune/src}/roblox/document/format.rs | 0 .../lune/src}/roblox/document/kind.rs | 0 .../lune/src}/roblox/document/mod.rs | 0 .../src}/roblox/document/postprocessing.rs | 0 {src => crates/lune/src}/roblox/exports.rs | 0 .../lune/src}/roblox/instance/base.rs | 0 .../lune/src}/roblox/instance/data_model.rs | 0 .../lune/src}/roblox/instance/mod.rs | 0 .../lune/src}/roblox/instance/registry.rs | 0 .../lune/src}/roblox/instance/terrain.rs | 0 .../lune/src}/roblox/instance/workspace.rs | 0 {src => crates/lune/src}/roblox/mod.rs | 0 .../lune/src}/roblox/reflection/class.rs | 0 .../lune/src}/roblox/reflection/enums.rs | 0 .../lune/src}/roblox/reflection/mod.rs | 0 .../lune/src}/roblox/reflection/property.rs | 0 .../lune/src}/roblox/reflection/utils.rs | 0 .../lune/src}/roblox/shared/classes.rs | 0 .../lune/src}/roblox/shared/instance.rs | 0 {src => crates/lune/src}/roblox/shared/mod.rs | 0 .../lune/src}/roblox/shared/userdata.rs | 0 .../lune/src}/standalone/metadata.rs | 0 {src => crates/lune/src}/standalone/mod.rs | 0 {src => crates/lune/src}/standalone/tracer.rs | 0 {src => crates/lune/src}/tests.rs | 0 130 files changed, 165 insertions(+), 131 deletions(-) create mode 100644 crates/lune/Cargo.toml rename {src => crates/lune/src}/cli/build/base_exe.rs (100%) rename {src => crates/lune/src}/cli/build/files.rs (100%) rename {src => crates/lune/src}/cli/build/mod.rs (100%) rename {src => crates/lune/src}/cli/build/result.rs (100%) rename {src => crates/lune/src}/cli/build/target.rs (100%) rename {src => crates/lune/src}/cli/list.rs (100%) rename {src => crates/lune/src}/cli/mod.rs (100%) rename {src => crates/lune/src}/cli/repl.rs (100%) rename {src => crates/lune/src}/cli/run.rs (100%) rename {src => crates/lune/src}/cli/setup.rs (100%) rename {src => crates/lune/src}/cli/utils/files.rs (100%) rename {src => crates/lune/src}/cli/utils/listing.rs (100%) rename {src => crates/lune/src}/cli/utils/mod.rs (100%) rename {src => crates/lune/src}/lib.rs (100%) rename {src => crates/lune/src}/lune/builtins/datetime/error.rs (100%) rename {src => crates/lune/src}/lune/builtins/datetime/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/datetime/values.rs (100%) rename {src => crates/lune/src}/lune/builtins/fs/copy.rs (100%) rename {src => crates/lune/src}/lune/builtins/fs/metadata.rs (100%) rename {src => crates/lune/src}/lune/builtins/fs/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/fs/options.rs (100%) rename {src => crates/lune/src}/lune/builtins/luau/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/luau/options.rs (100%) rename {src => crates/lune/src}/lune/builtins/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/net/client.rs (100%) rename {src => crates/lune/src}/lune/builtins/net/config.rs (100%) rename {src => crates/lune/src}/lune/builtins/net/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/net/server/keys.rs (100%) rename {src => crates/lune/src}/lune/builtins/net/server/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/net/server/request.rs (100%) rename {src => crates/lune/src}/lune/builtins/net/server/response.rs (100%) rename {src => crates/lune/src}/lune/builtins/net/server/service.rs (100%) rename {src => crates/lune/src}/lune/builtins/net/util.rs (100%) rename {src => crates/lune/src}/lune/builtins/net/websocket.rs (100%) rename {src => crates/lune/src}/lune/builtins/process/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/process/options/kind.rs (100%) rename {src => crates/lune/src}/lune/builtins/process/options/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/process/options/stdio.rs (100%) rename {src => crates/lune/src}/lune/builtins/process/tee_writer.rs (100%) rename {src => crates/lune/src}/lune/builtins/process/wait_for_child.rs (100%) rename {src => crates/lune/src}/lune/builtins/regex/captures.rs (100%) rename {src => crates/lune/src}/lune/builtins/regex/matches.rs (100%) rename {src => crates/lune/src}/lune/builtins/regex/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/regex/regex.rs (100%) rename {src => crates/lune/src}/lune/builtins/roblox/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/serde/compress_decompress.rs (100%) rename {src => crates/lune/src}/lune/builtins/serde/encode_decode.rs (100%) rename {src => crates/lune/src}/lune/builtins/serde/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/stdio/mod.rs (100%) rename {src => crates/lune/src}/lune/builtins/stdio/prompt.rs (100%) rename {src => crates/lune/src}/lune/builtins/task/mod.rs (100%) rename {src => crates/lune/src}/lune/error.rs (100%) rename {src => crates/lune/src}/lune/globals/g_table.rs (100%) rename {src => crates/lune/src}/lune/globals/mod.rs (100%) rename {src => crates/lune/src}/lune/globals/print.rs (100%) rename {src => crates/lune/src}/lune/globals/require/alias.rs (100%) rename {src => crates/lune/src}/lune/globals/require/builtin.rs (100%) rename {src => crates/lune/src}/lune/globals/require/context.rs (100%) rename {src => crates/lune/src}/lune/globals/require/mod.rs (100%) rename {src => crates/lune/src}/lune/globals/require/path.rs (100%) rename {src => crates/lune/src}/lune/globals/version.rs (100%) rename {src => crates/lune/src}/lune/globals/warn.rs (100%) rename {src => crates/lune/src}/lune/mod.rs (100%) rename {src => crates/lune/src}/lune/util/formatting.rs (100%) rename {src => crates/lune/src}/lune/util/luaurc.rs (100%) rename {src => crates/lune/src}/lune/util/mod.rs (100%) rename {src => crates/lune/src}/lune/util/paths.rs (100%) rename {src => crates/lune/src}/lune/util/table_builder.rs (100%) rename {src => crates/lune/src}/lune/util/traits.rs (100%) rename {src => crates/lune/src}/main.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/attributes.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/conversion.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/extension.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/mod.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/result.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/axes.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/brick_color.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/cframe.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/color3.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/color_sequence.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/color_sequence_keypoint.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/enum.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/enum_item.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/enums.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/faces.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/font.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/mod.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/number_range.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/number_sequence.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/number_sequence_keypoint.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/physical_properties.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/ray.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/rect.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/region3.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/region3int16.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/udim.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/udim2.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/vector2.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/vector2int16.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/vector3.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/types/vector3int16.rs (100%) rename {src => crates/lune/src}/roblox/datatypes/util.rs (100%) rename {src => crates/lune/src}/roblox/document/error.rs (100%) rename {src => crates/lune/src}/roblox/document/format.rs (100%) rename {src => crates/lune/src}/roblox/document/kind.rs (100%) rename {src => crates/lune/src}/roblox/document/mod.rs (100%) rename {src => crates/lune/src}/roblox/document/postprocessing.rs (100%) rename {src => crates/lune/src}/roblox/exports.rs (100%) rename {src => crates/lune/src}/roblox/instance/base.rs (100%) rename {src => crates/lune/src}/roblox/instance/data_model.rs (100%) rename {src => crates/lune/src}/roblox/instance/mod.rs (100%) rename {src => crates/lune/src}/roblox/instance/registry.rs (100%) rename {src => crates/lune/src}/roblox/instance/terrain.rs (100%) rename {src => crates/lune/src}/roblox/instance/workspace.rs (100%) rename {src => crates/lune/src}/roblox/mod.rs (100%) rename {src => crates/lune/src}/roblox/reflection/class.rs (100%) rename {src => crates/lune/src}/roblox/reflection/enums.rs (100%) rename {src => crates/lune/src}/roblox/reflection/mod.rs (100%) rename {src => crates/lune/src}/roblox/reflection/property.rs (100%) rename {src => crates/lune/src}/roblox/reflection/utils.rs (100%) rename {src => crates/lune/src}/roblox/shared/classes.rs (100%) rename {src => crates/lune/src}/roblox/shared/instance.rs (100%) rename {src => crates/lune/src}/roblox/shared/mod.rs (100%) rename {src => crates/lune/src}/roblox/shared/userdata.rs (100%) rename {src => crates/lune/src}/standalone/metadata.rs (100%) rename {src => crates/lune/src}/standalone/mod.rs (100%) rename {src => crates/lune/src}/standalone/tracer.rs (100%) rename {src => crates/lune/src}/tests.rs (100%) diff --git a/Cargo.toml b/Cargo.toml index 8199082..9d431bb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,42 +1,7 @@ -[package] -name = "lune" -version = "0.8.3" -edition = "2021" -license = "MPL-2.0" -repository = "https://github.com/lune-org/lune" -description = "A standalone Luau runtime" -readme = "README.md" -keywords = ["cli", "lua", "luau", "runtime"] -categories = ["command-line-interface"] - -[[bin]] -name = "lune" -path = "src/main.rs" - -[lib] -name = "lune" -path = "src/lib.rs" - -[features] -default = ["cli", "roblox"] -cli = [ - "dep:anyhow", - "dep:env_logger", - "dep:clap", - "dep:include_dir", - "dep:rustyline", - "dep:zip_next", -] -roblox = [ - "dep:glam", - "dep:rand", - "dep:rbx_cookie", - "dep:rbx_binary", - "dep:rbx_dom_weak", - "dep:rbx_reflection", - "dep:rbx_reflection_database", - "dep:rbx_xml", -] +[workspace] +resolver = "2" +default-members = ["crates/lune"] +members = ["crates/lune"] # Profile for building the release binary, with the following options set: # @@ -53,99 +18,29 @@ opt-level = "z" strip = true lto = true -# All of the dependencies for Lune. +# Lints for all crates in the workspace # -# Dependencies are categorized as following: -# -# 1. General dependencies with no specific features set -# 2. Large / core dependencies that have many different crates and / or features set -# 3. Dependencies for specific features of Lune, eg. the CLI or massive Roblox builtin library -# -[dependencies] -console = "0.15" -directories = "5.0" -futures-util = "0.3" -once_cell = "1.17" -thiserror = "1.0" -async-trait = "0.1" -dialoguer = "0.11" -dunce = "1.0" -lz4_flex = "0.11" -path-clean = "1.0" -pathdiff = "0.2" -pin-project = "1.0" -urlencoding = "2.1" -bstr = "1.9" -regex = "1.10" -self_cell = "1.0" +# 1. Error on all lints by default, then make cargo + clippy pedantic lints just warn +# 2. Selectively allow some lints that are _too_ pedantic, such as: +# - Casts between number types +# - Module naming conventions +# - Imports and multiple dependency versions +[workspace.lints.clippy] +all = { level = "deny", priority = -3 } +cargo = { level = "warn", priority = -2 } +pedantic = { level = "warn", priority = -1 } -### RUNTIME +cast_lossless = { level = "allow", priority = 1 } +cast_possible_truncation = { level = "allow", priority = 1 } +cast_possible_wrap = { level = "allow", priority = 1 } +cast_precision_loss = { level = "allow", priority = 1 } +cast_sign_loss = { level = "allow", priority = 1 } -blocking = "1.5" -tracing = "0.1" -tracing-subscriber = { version = "0.3", features = ["env-filter"] } -tokio = { version = "1.24", features = ["full", "tracing"] } -os_str_bytes = { version = "7.0", features = ["conversions"] } +unreadable_literal = { level = "allow", priority = 1 } +unnested_or_patterns = { level = "allow", priority = 1 } -mlua-luau-scheduler = { version = "0.0.2" } -mlua = { version = "0.9.7", features = [ - "luau", - "luau-jit", - "async", - "serialize", -] } - -### SERDE - -async-compression = { version = "0.4", features = [ - "tokio", - "brotli", - "deflate", - "gzip", - "zlib", -] } -serde = { version = "1.0", features = ["derive"] } -serde_json = { version = "1.0", features = ["preserve_order"] } -serde_yaml = "0.9" -toml = { version = "0.8", features = ["preserve_order"] } - -### NET - -hyper = { version = "1.1", features = ["full"] } -hyper-util = { version = "0.1", features = ["full"] } -http = "1.0" -http-body-util = { version = "0.1" } -hyper-tungstenite = { version = "0.13" } - -reqwest = { version = "0.11", default-features = false, features = [ - "rustls-tls", -] } - -tokio-tungstenite = { version = "0.21", features = ["rustls-tls-webpki-roots"] } - -### DATETIME -chrono = "=0.4.34" # NOTE: 0.4.35 does not compile with chrono_lc -chrono_lc = "0.1" - -### CLI - -anyhow = { optional = true, version = "1.0" } -env_logger = { optional = true, version = "0.11" } -itertools = "0.12" -clap = { optional = true, version = "4.1", features = ["derive"] } -include_dir = { optional = true, version = "0.7", features = ["glob"] } -rustyline = { optional = true, version = "14.0" } -zip_next = { optional = true, version = "1.1" } - -### ROBLOX - -glam = { optional = true, version = "0.27" } -rand = { optional = true, version = "0.8" } - -rbx_cookie = { optional = true, version = "0.1.4", default-features = false } - -rbx_binary = { optional = true, version = "0.7.3" } -rbx_dom_weak = { optional = true, version = "2.6.0" } -rbx_reflection = { optional = true, version = "4.4.0" } -rbx_reflection_database = { optional = true, version = "0.2.9" } -rbx_xml = { optional = true, version = "0.13.2" } +multiple_crate_versions = { level = "allow", priority = 1 } +module_inception = { level = "allow", priority = 1 } +module_name_repetitions = { level = "allow", priority = 1 } +needless_pass_by_value = { level = "allow", priority = 1 } +wildcard_imports = { level = "allow", priority = 1 } diff --git a/crates/lune/Cargo.toml b/crates/lune/Cargo.toml new file mode 100644 index 0000000..d8bf591 --- /dev/null +++ b/crates/lune/Cargo.toml @@ -0,0 +1,139 @@ +[package] +name = "lune" +version = "0.8.3" +edition = "2021" +license = "MPL-2.0" +repository = "https://github.com/lune-org/lune" +description = "A standalone Luau runtime" +readme = "README.md" +keywords = ["cli", "lua", "luau", "runtime"] +categories = ["command-line-interface"] + +[[bin]] +name = "lune" +path = "src/main.rs" + +[lib] +name = "lune" +path = "src/lib.rs" + +[features] +default = ["cli", "roblox"] +cli = [ + "dep:anyhow", + "dep:env_logger", + "dep:clap", + "dep:include_dir", + "dep:rustyline", + "dep:zip_next", +] +roblox = [ + "dep:glam", + "dep:rand", + "dep:rbx_cookie", + "dep:rbx_binary", + "dep:rbx_dom_weak", + "dep:rbx_reflection", + "dep:rbx_reflection_database", + "dep:rbx_xml", +] + +[lints] +workspace = true + +# All of the dependencies for Lune. +# +# Dependencies are categorized as following: +# +# 1. General dependencies with no specific features set +# 2. Large / core dependencies that have many different crates and / or features set +# 3. Dependencies for specific features of Lune, eg. the CLI or massive Roblox builtin library +# +[dependencies] +console = "0.15" +directories = "5.0" +futures-util = "0.3" +once_cell = "1.17" +thiserror = "1.0" +async-trait = "0.1" +dialoguer = "0.11" +dunce = "1.0" +lz4_flex = "0.11" +path-clean = "1.0" +pathdiff = "0.2" +pin-project = "1.0" +urlencoding = "2.1" +bstr = "1.9" +regex = "1.10" +self_cell = "1.0" + +### RUNTIME + +blocking = "1.5" +tracing = "0.1" +tracing-subscriber = { version = "0.3", features = ["env-filter"] } +tokio = { version = "1.24", features = ["full", "tracing"] } +os_str_bytes = { version = "7.0", features = ["conversions"] } + +mlua-luau-scheduler = { version = "0.0.2" } +mlua = { version = "0.9.7", features = [ + "luau", + "luau-jit", + "async", + "serialize", +] } + +### SERDE + +async-compression = { version = "0.4", features = [ + "tokio", + "brotli", + "deflate", + "gzip", + "zlib", +] } +serde = { version = "1.0", features = ["derive"] } +serde_json = { version = "1.0", features = ["preserve_order"] } +serde_yaml = "0.9" +toml = { version = "0.8", features = ["preserve_order"] } + +### NET + +hyper = { version = "1.1", features = ["full"] } +hyper-util = { version = "0.1", features = ["full"] } +http = "1.0" +http-body-util = { version = "0.1" } +hyper-tungstenite = { version = "0.13" } + +reqwest = { version = "0.11", default-features = false, features = [ + "rustls-tls", +] } + +tokio-tungstenite = { version = "0.21", features = ["rustls-tls-webpki-roots"] } + +### DATETIME +chrono = "=0.4.34" # NOTE: 0.4.35 does not compile with chrono_lc +chrono_lc = "0.1" + +### CLI + +anyhow = { optional = true, version = "1.0" } +env_logger = { optional = true, version = "0.11" } +itertools = "0.12" +clap = { optional = true, version = "4.1", features = ["derive"] } +include_dir = { optional = true, version = "0.7", features = ["glob"] } +rustyline = { optional = true, version = "14.0" } +zip_next = { optional = true, version = "1.1" } + +### ROBLOX + +glam = { optional = true, version = "0.27" } +rand = { optional = true, version = "0.8" } + +rbx_cookie = { optional = true, version = "0.1.4", default-features = false } + +rbx_binary = { optional = true, version = "0.7.3" } +rbx_dom_weak = { optional = true, version = "2.6.0" } +rbx_reflection = { optional = true, version = "4.4.0" } +rbx_reflection_database = { optional = true, version = "0.2.9" } +rbx_xml = { optional = true, version = "0.13.2" } diff --git a/src/cli/build/base_exe.rs b/crates/lune/src/cli/build/base_exe.rs similarity index 100% rename from src/cli/build/base_exe.rs rename to crates/lune/src/cli/build/base_exe.rs diff --git a/src/cli/build/files.rs b/crates/lune/src/cli/build/files.rs similarity index 100% rename from src/cli/build/files.rs rename to crates/lune/src/cli/build/files.rs diff --git a/src/cli/build/mod.rs b/crates/lune/src/cli/build/mod.rs similarity index 100% rename from src/cli/build/mod.rs rename to crates/lune/src/cli/build/mod.rs diff --git a/src/cli/build/result.rs b/crates/lune/src/cli/build/result.rs similarity index 100% rename from src/cli/build/result.rs rename to crates/lune/src/cli/build/result.rs diff --git a/src/cli/build/target.rs b/crates/lune/src/cli/build/target.rs similarity index 100% rename from src/cli/build/target.rs rename to crates/lune/src/cli/build/target.rs diff --git a/src/cli/list.rs b/crates/lune/src/cli/list.rs similarity index 100% rename from src/cli/list.rs rename to crates/lune/src/cli/list.rs diff --git a/src/cli/mod.rs b/crates/lune/src/cli/mod.rs similarity index 100% rename from src/cli/mod.rs rename to crates/lune/src/cli/mod.rs diff --git a/src/cli/repl.rs b/crates/lune/src/cli/repl.rs similarity index 100% rename from src/cli/repl.rs rename to crates/lune/src/cli/repl.rs diff --git a/src/cli/run.rs b/crates/lune/src/cli/run.rs similarity index 100% rename from src/cli/run.rs rename to crates/lune/src/cli/run.rs diff --git a/src/cli/setup.rs b/crates/lune/src/cli/setup.rs similarity index 100% rename from src/cli/setup.rs rename to crates/lune/src/cli/setup.rs diff --git a/src/cli/utils/files.rs b/crates/lune/src/cli/utils/files.rs similarity index 100% rename from src/cli/utils/files.rs rename to crates/lune/src/cli/utils/files.rs diff --git a/src/cli/utils/listing.rs b/crates/lune/src/cli/utils/listing.rs similarity index 100% rename from src/cli/utils/listing.rs rename to crates/lune/src/cli/utils/listing.rs diff --git a/src/cli/utils/mod.rs b/crates/lune/src/cli/utils/mod.rs similarity index 100% rename from src/cli/utils/mod.rs rename to crates/lune/src/cli/utils/mod.rs diff --git a/src/lib.rs b/crates/lune/src/lib.rs similarity index 100% rename from src/lib.rs rename to crates/lune/src/lib.rs diff --git a/src/lune/builtins/datetime/error.rs b/crates/lune/src/lune/builtins/datetime/error.rs similarity index 100% rename from src/lune/builtins/datetime/error.rs rename to crates/lune/src/lune/builtins/datetime/error.rs diff --git a/src/lune/builtins/datetime/mod.rs b/crates/lune/src/lune/builtins/datetime/mod.rs similarity index 100% rename from src/lune/builtins/datetime/mod.rs rename to crates/lune/src/lune/builtins/datetime/mod.rs diff --git a/src/lune/builtins/datetime/values.rs b/crates/lune/src/lune/builtins/datetime/values.rs similarity index 100% rename from src/lune/builtins/datetime/values.rs rename to crates/lune/src/lune/builtins/datetime/values.rs diff --git a/src/lune/builtins/fs/copy.rs b/crates/lune/src/lune/builtins/fs/copy.rs similarity index 100% rename from src/lune/builtins/fs/copy.rs rename to crates/lune/src/lune/builtins/fs/copy.rs diff --git a/src/lune/builtins/fs/metadata.rs b/crates/lune/src/lune/builtins/fs/metadata.rs similarity index 100% rename from src/lune/builtins/fs/metadata.rs rename to crates/lune/src/lune/builtins/fs/metadata.rs diff --git a/src/lune/builtins/fs/mod.rs b/crates/lune/src/lune/builtins/fs/mod.rs similarity index 100% rename from src/lune/builtins/fs/mod.rs rename to crates/lune/src/lune/builtins/fs/mod.rs diff --git a/src/lune/builtins/fs/options.rs b/crates/lune/src/lune/builtins/fs/options.rs similarity index 100% rename from src/lune/builtins/fs/options.rs rename to crates/lune/src/lune/builtins/fs/options.rs diff --git a/src/lune/builtins/luau/mod.rs b/crates/lune/src/lune/builtins/luau/mod.rs similarity index 100% rename from src/lune/builtins/luau/mod.rs rename to crates/lune/src/lune/builtins/luau/mod.rs diff --git a/src/lune/builtins/luau/options.rs b/crates/lune/src/lune/builtins/luau/options.rs similarity index 100% rename from src/lune/builtins/luau/options.rs rename to crates/lune/src/lune/builtins/luau/options.rs diff --git a/src/lune/builtins/mod.rs b/crates/lune/src/lune/builtins/mod.rs similarity index 100% rename from src/lune/builtins/mod.rs rename to crates/lune/src/lune/builtins/mod.rs diff --git a/src/lune/builtins/net/client.rs b/crates/lune/src/lune/builtins/net/client.rs similarity index 100% rename from src/lune/builtins/net/client.rs rename to crates/lune/src/lune/builtins/net/client.rs diff --git a/src/lune/builtins/net/config.rs b/crates/lune/src/lune/builtins/net/config.rs similarity index 100% rename from src/lune/builtins/net/config.rs rename to crates/lune/src/lune/builtins/net/config.rs diff --git a/src/lune/builtins/net/mod.rs b/crates/lune/src/lune/builtins/net/mod.rs similarity index 100% rename from src/lune/builtins/net/mod.rs rename to crates/lune/src/lune/builtins/net/mod.rs diff --git a/src/lune/builtins/net/server/keys.rs b/crates/lune/src/lune/builtins/net/server/keys.rs similarity index 100% rename from src/lune/builtins/net/server/keys.rs rename to crates/lune/src/lune/builtins/net/server/keys.rs diff --git a/src/lune/builtins/net/server/mod.rs b/crates/lune/src/lune/builtins/net/server/mod.rs similarity index 100% rename from src/lune/builtins/net/server/mod.rs rename to crates/lune/src/lune/builtins/net/server/mod.rs diff --git a/src/lune/builtins/net/server/request.rs b/crates/lune/src/lune/builtins/net/server/request.rs similarity index 100% rename from src/lune/builtins/net/server/request.rs rename to crates/lune/src/lune/builtins/net/server/request.rs diff --git a/src/lune/builtins/net/server/response.rs b/crates/lune/src/lune/builtins/net/server/response.rs similarity index 100% rename from src/lune/builtins/net/server/response.rs rename to crates/lune/src/lune/builtins/net/server/response.rs diff --git a/src/lune/builtins/net/server/service.rs b/crates/lune/src/lune/builtins/net/server/service.rs similarity index 100% rename from src/lune/builtins/net/server/service.rs rename to crates/lune/src/lune/builtins/net/server/service.rs diff --git a/src/lune/builtins/net/util.rs b/crates/lune/src/lune/builtins/net/util.rs similarity index 100% rename from src/lune/builtins/net/util.rs rename to crates/lune/src/lune/builtins/net/util.rs diff --git a/src/lune/builtins/net/websocket.rs b/crates/lune/src/lune/builtins/net/websocket.rs similarity index 100% rename from src/lune/builtins/net/websocket.rs rename to crates/lune/src/lune/builtins/net/websocket.rs diff --git a/src/lune/builtins/process/mod.rs b/crates/lune/src/lune/builtins/process/mod.rs similarity index 100% rename from src/lune/builtins/process/mod.rs rename to crates/lune/src/lune/builtins/process/mod.rs diff --git a/src/lune/builtins/process/options/kind.rs b/crates/lune/src/lune/builtins/process/options/kind.rs similarity index 100% rename from src/lune/builtins/process/options/kind.rs rename to crates/lune/src/lune/builtins/process/options/kind.rs diff --git a/src/lune/builtins/process/options/mod.rs b/crates/lune/src/lune/builtins/process/options/mod.rs similarity index 100% rename from src/lune/builtins/process/options/mod.rs rename to crates/lune/src/lune/builtins/process/options/mod.rs diff --git a/src/lune/builtins/process/options/stdio.rs b/crates/lune/src/lune/builtins/process/options/stdio.rs similarity index 100% rename from src/lune/builtins/process/options/stdio.rs rename to crates/lune/src/lune/builtins/process/options/stdio.rs diff --git a/src/lune/builtins/process/tee_writer.rs b/crates/lune/src/lune/builtins/process/tee_writer.rs similarity index 100% rename from src/lune/builtins/process/tee_writer.rs rename to crates/lune/src/lune/builtins/process/tee_writer.rs diff --git a/src/lune/builtins/process/wait_for_child.rs b/crates/lune/src/lune/builtins/process/wait_for_child.rs similarity index 100% rename from src/lune/builtins/process/wait_for_child.rs rename to crates/lune/src/lune/builtins/process/wait_for_child.rs diff --git a/src/lune/builtins/regex/captures.rs b/crates/lune/src/lune/builtins/regex/captures.rs similarity index 100% rename from src/lune/builtins/regex/captures.rs rename to crates/lune/src/lune/builtins/regex/captures.rs diff --git a/src/lune/builtins/regex/matches.rs b/crates/lune/src/lune/builtins/regex/matches.rs similarity index 100% rename from src/lune/builtins/regex/matches.rs rename to crates/lune/src/lune/builtins/regex/matches.rs diff --git a/src/lune/builtins/regex/mod.rs b/crates/lune/src/lune/builtins/regex/mod.rs similarity index 100% rename from src/lune/builtins/regex/mod.rs rename to crates/lune/src/lune/builtins/regex/mod.rs diff --git a/src/lune/builtins/regex/regex.rs b/crates/lune/src/lune/builtins/regex/regex.rs similarity index 100% rename from src/lune/builtins/regex/regex.rs rename to crates/lune/src/lune/builtins/regex/regex.rs diff --git a/src/lune/builtins/roblox/mod.rs b/crates/lune/src/lune/builtins/roblox/mod.rs similarity index 100% rename from src/lune/builtins/roblox/mod.rs rename to crates/lune/src/lune/builtins/roblox/mod.rs diff --git a/src/lune/builtins/serde/compress_decompress.rs b/crates/lune/src/lune/builtins/serde/compress_decompress.rs similarity index 100% rename from src/lune/builtins/serde/compress_decompress.rs rename to crates/lune/src/lune/builtins/serde/compress_decompress.rs diff --git a/src/lune/builtins/serde/encode_decode.rs b/crates/lune/src/lune/builtins/serde/encode_decode.rs similarity index 100% rename from src/lune/builtins/serde/encode_decode.rs rename to crates/lune/src/lune/builtins/serde/encode_decode.rs diff --git a/src/lune/builtins/serde/mod.rs b/crates/lune/src/lune/builtins/serde/mod.rs similarity index 100% rename from src/lune/builtins/serde/mod.rs rename to crates/lune/src/lune/builtins/serde/mod.rs diff --git a/src/lune/builtins/stdio/mod.rs b/crates/lune/src/lune/builtins/stdio/mod.rs similarity index 100% rename from src/lune/builtins/stdio/mod.rs rename to crates/lune/src/lune/builtins/stdio/mod.rs diff --git a/src/lune/builtins/stdio/prompt.rs b/crates/lune/src/lune/builtins/stdio/prompt.rs similarity index 100% rename from src/lune/builtins/stdio/prompt.rs rename to crates/lune/src/lune/builtins/stdio/prompt.rs diff --git a/src/lune/builtins/task/mod.rs b/crates/lune/src/lune/builtins/task/mod.rs similarity index 100% rename from src/lune/builtins/task/mod.rs rename to crates/lune/src/lune/builtins/task/mod.rs diff --git a/src/lune/error.rs b/crates/lune/src/lune/error.rs similarity index 100% rename from src/lune/error.rs rename to crates/lune/src/lune/error.rs diff --git a/src/lune/globals/g_table.rs b/crates/lune/src/lune/globals/g_table.rs similarity index 100% rename from src/lune/globals/g_table.rs rename to crates/lune/src/lune/globals/g_table.rs diff --git a/src/lune/globals/mod.rs b/crates/lune/src/lune/globals/mod.rs similarity index 100% rename from src/lune/globals/mod.rs rename to crates/lune/src/lune/globals/mod.rs diff --git a/src/lune/globals/print.rs b/crates/lune/src/lune/globals/print.rs similarity index 100% rename from src/lune/globals/print.rs rename to crates/lune/src/lune/globals/print.rs diff --git a/src/lune/globals/require/alias.rs b/crates/lune/src/lune/globals/require/alias.rs similarity index 100% rename from src/lune/globals/require/alias.rs rename to crates/lune/src/lune/globals/require/alias.rs diff --git a/src/lune/globals/require/builtin.rs b/crates/lune/src/lune/globals/require/builtin.rs similarity index 100% rename from src/lune/globals/require/builtin.rs rename to crates/lune/src/lune/globals/require/builtin.rs diff --git a/src/lune/globals/require/context.rs b/crates/lune/src/lune/globals/require/context.rs similarity index 100% rename from src/lune/globals/require/context.rs rename to crates/lune/src/lune/globals/require/context.rs diff --git a/src/lune/globals/require/mod.rs b/crates/lune/src/lune/globals/require/mod.rs similarity index 100% rename from src/lune/globals/require/mod.rs rename to crates/lune/src/lune/globals/require/mod.rs diff --git a/src/lune/globals/require/path.rs b/crates/lune/src/lune/globals/require/path.rs similarity index 100% rename from src/lune/globals/require/path.rs rename to crates/lune/src/lune/globals/require/path.rs diff --git a/src/lune/globals/version.rs b/crates/lune/src/lune/globals/version.rs similarity index 100% rename from src/lune/globals/version.rs rename to crates/lune/src/lune/globals/version.rs diff --git a/src/lune/globals/warn.rs b/crates/lune/src/lune/globals/warn.rs similarity index 100% rename from src/lune/globals/warn.rs rename to crates/lune/src/lune/globals/warn.rs diff --git a/src/lune/mod.rs b/crates/lune/src/lune/mod.rs similarity index 100% rename from src/lune/mod.rs rename to crates/lune/src/lune/mod.rs diff --git a/src/lune/util/formatting.rs b/crates/lune/src/lune/util/formatting.rs similarity index 100% rename from src/lune/util/formatting.rs rename to crates/lune/src/lune/util/formatting.rs diff --git a/src/lune/util/luaurc.rs b/crates/lune/src/lune/util/luaurc.rs similarity index 100% rename from src/lune/util/luaurc.rs rename to crates/lune/src/lune/util/luaurc.rs diff --git a/src/lune/util/mod.rs b/crates/lune/src/lune/util/mod.rs similarity index 100% rename from src/lune/util/mod.rs rename to crates/lune/src/lune/util/mod.rs diff --git a/src/lune/util/paths.rs b/crates/lune/src/lune/util/paths.rs similarity index 100% rename from src/lune/util/paths.rs rename to crates/lune/src/lune/util/paths.rs diff --git a/src/lune/util/table_builder.rs b/crates/lune/src/lune/util/table_builder.rs similarity index 100% rename from src/lune/util/table_builder.rs rename to crates/lune/src/lune/util/table_builder.rs diff --git a/src/lune/util/traits.rs b/crates/lune/src/lune/util/traits.rs similarity index 100% rename from src/lune/util/traits.rs rename to crates/lune/src/lune/util/traits.rs diff --git a/src/main.rs b/crates/lune/src/main.rs similarity index 100% rename from src/main.rs rename to crates/lune/src/main.rs diff --git a/src/roblox/datatypes/attributes.rs b/crates/lune/src/roblox/datatypes/attributes.rs similarity index 100% rename from src/roblox/datatypes/attributes.rs rename to crates/lune/src/roblox/datatypes/attributes.rs diff --git a/src/roblox/datatypes/conversion.rs b/crates/lune/src/roblox/datatypes/conversion.rs similarity index 100% rename from src/roblox/datatypes/conversion.rs rename to crates/lune/src/roblox/datatypes/conversion.rs diff --git a/src/roblox/datatypes/extension.rs b/crates/lune/src/roblox/datatypes/extension.rs similarity index 100% rename from src/roblox/datatypes/extension.rs rename to crates/lune/src/roblox/datatypes/extension.rs diff --git a/src/roblox/datatypes/mod.rs b/crates/lune/src/roblox/datatypes/mod.rs similarity index 100% rename from src/roblox/datatypes/mod.rs rename to crates/lune/src/roblox/datatypes/mod.rs diff --git a/src/roblox/datatypes/result.rs b/crates/lune/src/roblox/datatypes/result.rs similarity index 100% rename from src/roblox/datatypes/result.rs rename to crates/lune/src/roblox/datatypes/result.rs diff --git a/src/roblox/datatypes/types/axes.rs b/crates/lune/src/roblox/datatypes/types/axes.rs similarity index 100% rename from src/roblox/datatypes/types/axes.rs rename to crates/lune/src/roblox/datatypes/types/axes.rs diff --git a/src/roblox/datatypes/types/brick_color.rs b/crates/lune/src/roblox/datatypes/types/brick_color.rs similarity index 100% rename from src/roblox/datatypes/types/brick_color.rs rename to crates/lune/src/roblox/datatypes/types/brick_color.rs diff --git a/src/roblox/datatypes/types/cframe.rs b/crates/lune/src/roblox/datatypes/types/cframe.rs similarity index 100% rename from src/roblox/datatypes/types/cframe.rs rename to crates/lune/src/roblox/datatypes/types/cframe.rs diff --git a/src/roblox/datatypes/types/color3.rs b/crates/lune/src/roblox/datatypes/types/color3.rs similarity index 100% rename from src/roblox/datatypes/types/color3.rs rename to crates/lune/src/roblox/datatypes/types/color3.rs diff --git a/src/roblox/datatypes/types/color_sequence.rs b/crates/lune/src/roblox/datatypes/types/color_sequence.rs similarity index 100% rename from src/roblox/datatypes/types/color_sequence.rs rename to crates/lune/src/roblox/datatypes/types/color_sequence.rs diff --git a/src/roblox/datatypes/types/color_sequence_keypoint.rs b/crates/lune/src/roblox/datatypes/types/color_sequence_keypoint.rs similarity index 100% rename from src/roblox/datatypes/types/color_sequence_keypoint.rs rename to crates/lune/src/roblox/datatypes/types/color_sequence_keypoint.rs diff --git a/src/roblox/datatypes/types/enum.rs b/crates/lune/src/roblox/datatypes/types/enum.rs similarity index 100% rename from src/roblox/datatypes/types/enum.rs rename to crates/lune/src/roblox/datatypes/types/enum.rs diff --git a/src/roblox/datatypes/types/enum_item.rs b/crates/lune/src/roblox/datatypes/types/enum_item.rs similarity index 100% rename from src/roblox/datatypes/types/enum_item.rs rename to crates/lune/src/roblox/datatypes/types/enum_item.rs diff --git a/src/roblox/datatypes/types/enums.rs b/crates/lune/src/roblox/datatypes/types/enums.rs similarity index 100% rename from src/roblox/datatypes/types/enums.rs rename to crates/lune/src/roblox/datatypes/types/enums.rs diff --git a/src/roblox/datatypes/types/faces.rs b/crates/lune/src/roblox/datatypes/types/faces.rs similarity index 100% rename from src/roblox/datatypes/types/faces.rs rename to crates/lune/src/roblox/datatypes/types/faces.rs diff --git a/src/roblox/datatypes/types/font.rs b/crates/lune/src/roblox/datatypes/types/font.rs similarity index 100% rename from src/roblox/datatypes/types/font.rs rename to crates/lune/src/roblox/datatypes/types/font.rs diff --git a/src/roblox/datatypes/types/mod.rs b/crates/lune/src/roblox/datatypes/types/mod.rs similarity index 100% rename from src/roblox/datatypes/types/mod.rs rename to crates/lune/src/roblox/datatypes/types/mod.rs diff --git a/src/roblox/datatypes/types/number_range.rs b/crates/lune/src/roblox/datatypes/types/number_range.rs similarity index 100% rename from src/roblox/datatypes/types/number_range.rs rename to crates/lune/src/roblox/datatypes/types/number_range.rs diff --git a/src/roblox/datatypes/types/number_sequence.rs b/crates/lune/src/roblox/datatypes/types/number_sequence.rs similarity index 100% rename from src/roblox/datatypes/types/number_sequence.rs rename to crates/lune/src/roblox/datatypes/types/number_sequence.rs diff --git a/src/roblox/datatypes/types/number_sequence_keypoint.rs b/crates/lune/src/roblox/datatypes/types/number_sequence_keypoint.rs similarity index 100% rename from src/roblox/datatypes/types/number_sequence_keypoint.rs rename to crates/lune/src/roblox/datatypes/types/number_sequence_keypoint.rs diff --git a/src/roblox/datatypes/types/physical_properties.rs b/crates/lune/src/roblox/datatypes/types/physical_properties.rs similarity index 100% rename from src/roblox/datatypes/types/physical_properties.rs rename to crates/lune/src/roblox/datatypes/types/physical_properties.rs diff --git a/src/roblox/datatypes/types/ray.rs b/crates/lune/src/roblox/datatypes/types/ray.rs similarity index 100% rename from src/roblox/datatypes/types/ray.rs rename to crates/lune/src/roblox/datatypes/types/ray.rs diff --git a/src/roblox/datatypes/types/rect.rs b/crates/lune/src/roblox/datatypes/types/rect.rs similarity index 100% rename from src/roblox/datatypes/types/rect.rs rename to crates/lune/src/roblox/datatypes/types/rect.rs diff --git a/src/roblox/datatypes/types/region3.rs b/crates/lune/src/roblox/datatypes/types/region3.rs similarity index 100% rename from src/roblox/datatypes/types/region3.rs rename to crates/lune/src/roblox/datatypes/types/region3.rs diff --git a/src/roblox/datatypes/types/region3int16.rs b/crates/lune/src/roblox/datatypes/types/region3int16.rs similarity index 100% rename from src/roblox/datatypes/types/region3int16.rs rename to crates/lune/src/roblox/datatypes/types/region3int16.rs diff --git a/src/roblox/datatypes/types/udim.rs b/crates/lune/src/roblox/datatypes/types/udim.rs similarity index 100% rename from src/roblox/datatypes/types/udim.rs rename to crates/lune/src/roblox/datatypes/types/udim.rs diff --git a/src/roblox/datatypes/types/udim2.rs b/crates/lune/src/roblox/datatypes/types/udim2.rs similarity index 100% rename from src/roblox/datatypes/types/udim2.rs rename to crates/lune/src/roblox/datatypes/types/udim2.rs diff --git a/src/roblox/datatypes/types/vector2.rs b/crates/lune/src/roblox/datatypes/types/vector2.rs similarity index 100% rename from src/roblox/datatypes/types/vector2.rs rename to crates/lune/src/roblox/datatypes/types/vector2.rs diff --git a/src/roblox/datatypes/types/vector2int16.rs b/crates/lune/src/roblox/datatypes/types/vector2int16.rs similarity index 100% rename from src/roblox/datatypes/types/vector2int16.rs rename to crates/lune/src/roblox/datatypes/types/vector2int16.rs diff --git a/src/roblox/datatypes/types/vector3.rs b/crates/lune/src/roblox/datatypes/types/vector3.rs similarity index 100% rename from src/roblox/datatypes/types/vector3.rs rename to crates/lune/src/roblox/datatypes/types/vector3.rs diff --git a/src/roblox/datatypes/types/vector3int16.rs b/crates/lune/src/roblox/datatypes/types/vector3int16.rs similarity index 100% rename from src/roblox/datatypes/types/vector3int16.rs rename to crates/lune/src/roblox/datatypes/types/vector3int16.rs diff --git a/src/roblox/datatypes/util.rs b/crates/lune/src/roblox/datatypes/util.rs similarity index 100% rename from src/roblox/datatypes/util.rs rename to crates/lune/src/roblox/datatypes/util.rs diff --git a/src/roblox/document/error.rs b/crates/lune/src/roblox/document/error.rs similarity index 100% rename from src/roblox/document/error.rs rename to crates/lune/src/roblox/document/error.rs diff --git a/src/roblox/document/format.rs b/crates/lune/src/roblox/document/format.rs similarity index 100% rename from src/roblox/document/format.rs rename to crates/lune/src/roblox/document/format.rs diff --git a/src/roblox/document/kind.rs b/crates/lune/src/roblox/document/kind.rs similarity index 100% rename from src/roblox/document/kind.rs rename to crates/lune/src/roblox/document/kind.rs diff --git a/src/roblox/document/mod.rs b/crates/lune/src/roblox/document/mod.rs similarity index 100% rename from src/roblox/document/mod.rs rename to crates/lune/src/roblox/document/mod.rs diff --git a/src/roblox/document/postprocessing.rs b/crates/lune/src/roblox/document/postprocessing.rs similarity index 100% rename from src/roblox/document/postprocessing.rs rename to crates/lune/src/roblox/document/postprocessing.rs diff --git a/src/roblox/exports.rs b/crates/lune/src/roblox/exports.rs similarity index 100% rename from src/roblox/exports.rs rename to crates/lune/src/roblox/exports.rs diff --git a/src/roblox/instance/base.rs b/crates/lune/src/roblox/instance/base.rs similarity index 100% rename from src/roblox/instance/base.rs rename to crates/lune/src/roblox/instance/base.rs diff --git a/src/roblox/instance/data_model.rs b/crates/lune/src/roblox/instance/data_model.rs similarity index 100% rename from src/roblox/instance/data_model.rs rename to crates/lune/src/roblox/instance/data_model.rs diff --git a/src/roblox/instance/mod.rs b/crates/lune/src/roblox/instance/mod.rs similarity index 100% rename from src/roblox/instance/mod.rs rename to crates/lune/src/roblox/instance/mod.rs diff --git a/src/roblox/instance/registry.rs b/crates/lune/src/roblox/instance/registry.rs similarity index 100% rename from src/roblox/instance/registry.rs rename to crates/lune/src/roblox/instance/registry.rs diff --git a/src/roblox/instance/terrain.rs b/crates/lune/src/roblox/instance/terrain.rs similarity index 100% rename from src/roblox/instance/terrain.rs rename to crates/lune/src/roblox/instance/terrain.rs diff --git a/src/roblox/instance/workspace.rs b/crates/lune/src/roblox/instance/workspace.rs similarity index 100% rename from src/roblox/instance/workspace.rs rename to crates/lune/src/roblox/instance/workspace.rs diff --git a/src/roblox/mod.rs b/crates/lune/src/roblox/mod.rs similarity index 100% rename from src/roblox/mod.rs rename to crates/lune/src/roblox/mod.rs diff --git a/src/roblox/reflection/class.rs b/crates/lune/src/roblox/reflection/class.rs similarity index 100% rename from src/roblox/reflection/class.rs rename to crates/lune/src/roblox/reflection/class.rs diff --git a/src/roblox/reflection/enums.rs b/crates/lune/src/roblox/reflection/enums.rs similarity index 100% rename from src/roblox/reflection/enums.rs rename to crates/lune/src/roblox/reflection/enums.rs diff --git a/src/roblox/reflection/mod.rs b/crates/lune/src/roblox/reflection/mod.rs similarity index 100% rename from src/roblox/reflection/mod.rs rename to crates/lune/src/roblox/reflection/mod.rs diff --git a/src/roblox/reflection/property.rs b/crates/lune/src/roblox/reflection/property.rs similarity index 100% rename from src/roblox/reflection/property.rs rename to crates/lune/src/roblox/reflection/property.rs diff --git a/src/roblox/reflection/utils.rs b/crates/lune/src/roblox/reflection/utils.rs similarity index 100% rename from src/roblox/reflection/utils.rs rename to crates/lune/src/roblox/reflection/utils.rs diff --git a/src/roblox/shared/classes.rs b/crates/lune/src/roblox/shared/classes.rs similarity index 100% rename from src/roblox/shared/classes.rs rename to crates/lune/src/roblox/shared/classes.rs diff --git a/src/roblox/shared/instance.rs b/crates/lune/src/roblox/shared/instance.rs similarity index 100% rename from src/roblox/shared/instance.rs rename to crates/lune/src/roblox/shared/instance.rs diff --git a/src/roblox/shared/mod.rs b/crates/lune/src/roblox/shared/mod.rs similarity index 100% rename from src/roblox/shared/mod.rs rename to crates/lune/src/roblox/shared/mod.rs diff --git a/src/roblox/shared/userdata.rs b/crates/lune/src/roblox/shared/userdata.rs similarity index 100% rename from src/roblox/shared/userdata.rs rename to crates/lune/src/roblox/shared/userdata.rs diff --git a/src/standalone/metadata.rs b/crates/lune/src/standalone/metadata.rs similarity index 100% rename from src/standalone/metadata.rs rename to crates/lune/src/standalone/metadata.rs diff --git a/src/standalone/mod.rs b/crates/lune/src/standalone/mod.rs similarity index 100% rename from src/standalone/mod.rs rename to crates/lune/src/standalone/mod.rs diff --git a/src/standalone/tracer.rs b/crates/lune/src/standalone/tracer.rs similarity index 100% rename from src/standalone/tracer.rs rename to crates/lune/src/standalone/tracer.rs diff --git a/src/tests.rs b/crates/lune/src/tests.rs similarity index 100% rename from src/tests.rs rename to crates/lune/src/tests.rs