From 87138b134f58ff94a694f90f0c9eb19cb3887c69 Mon Sep 17 00:00:00 2001 From: nezuo Date: Mon, 24 Jul 2023 10:47:01 -0700 Subject: [PATCH 01/10] Update gitignores --- assets/default-model-project/gitignore.txt | 8 ++++++-- assets/default-place-project/gitignore.txt | 9 +++++---- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/assets/default-model-project/gitignore.txt b/assets/default-model-project/gitignore.txt index 0dfcd8386..3aa63bb45 100644 --- a/assets/default-model-project/gitignore.txt +++ b/assets/default-model-project/gitignore.txt @@ -1,3 +1,7 @@ +# Model files +/*.rbxmx +/*.rbxm + # Roblox Studio lock files -/*.rbxlx.lock -/*.rbxl.lock \ No newline at end of file +*.rbxlx.lock +*.rbxl.lock diff --git a/assets/default-place-project/gitignore.txt b/assets/default-place-project/gitignore.txt index 41d6a8abf..724dbf255 100644 --- a/assets/default-place-project/gitignore.txt +++ b/assets/default-place-project/gitignore.txt @@ -1,6 +1,7 @@ -# Project place file -/{project_name}.rbxlx +# Place files +/*.rbxlx +/*.rbxl # Roblox Studio lock files -/*.rbxlx.lock -/*.rbxl.lock \ No newline at end of file +*.rbxlx.lock +*.rbxl.lock From 5edcd9383259e363cb83fbd33232d54414f4bb8c Mon Sep 17 00:00:00 2001 From: nezuo Date: Mon, 24 Jul 2023 10:50:32 -0700 Subject: [PATCH 02/10] Add a newline to the end of files --- assets/default-model-project/README.md | 2 +- assets/default-model-project/src-init.lua | 2 +- assets/default-place-project/README.md | 2 +- src/cli/init.rs | 6 +++--- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/assets/default-model-project/README.md b/assets/default-model-project/README.md index 1c1ad23c4..8376b63c0 100644 --- a/assets/default-model-project/README.md +++ b/assets/default-model-project/README.md @@ -8,4 +8,4 @@ To build this library, use: rojo build -o "{project_name}.rbxmx" ``` -For more help, check out [the Rojo documentation](https://rojo.space/docs). \ No newline at end of file +For more help, check out [the Rojo documentation](https://rojo.space/docs). diff --git a/assets/default-model-project/src-init.lua b/assets/default-model-project/src-init.lua index 41faf217c..aacfcce91 100644 --- a/assets/default-model-project/src-init.lua +++ b/assets/default-model-project/src-init.lua @@ -2,4 +2,4 @@ return { hello = function() print("Hello world, from {project_name}!") end, -} \ No newline at end of file +} diff --git a/assets/default-place-project/README.md b/assets/default-place-project/README.md index 7908cf597..8899b99af 100644 --- a/assets/default-place-project/README.md +++ b/assets/default-place-project/README.md @@ -14,4 +14,4 @@ Next, open `{project_name}.rbxlx` in Roblox Studio and start the Rojo server: rojo serve ``` -For more help, check out [the Rojo documentation](https://rojo.space/docs). \ No newline at end of file +For more help, check out [the Rojo documentation](https://rojo.space/docs). diff --git a/src/cli/init.rs b/src/cli/init.rs index 48d513b1e..7d09fa3be 100644 --- a/src/cli/init.rs +++ b/src/cli/init.rs @@ -117,17 +117,17 @@ fn init_place(base_path: &Path, project_params: ProjectParams) -> anyhow::Result write_if_not_exists( &src_shared.join("Hello.lua"), - "return function()\n\tprint(\"Hello, world!\")\nend", + "return function()\n\tprint(\"Hello, world!\")\nend\n", )?; write_if_not_exists( &src_server.join("init.server.lua"), - "print(\"Hello world, from server!\")", + "print(\"Hello world, from server!\")\n", )?; write_if_not_exists( &src_client.join("init.client.lua"), - "print(\"Hello world, from client!\")", + "print(\"Hello world, from client!\")\n", )?; let git_ignore = project_params.render_template(PLACE_GIT_IGNORE); From e84fc925303140eef80346c26216a01fd1c16d9a Mon Sep 17 00:00:00 2001 From: nezuo Date: Mon, 24 Jul 2023 10:51:07 -0700 Subject: [PATCH 03/10] Recommend binary format --- assets/default-model-project/README.md | 2 +- assets/default-place-project/README.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/assets/default-model-project/README.md b/assets/default-model-project/README.md index 8376b63c0..7f7ad709b 100644 --- a/assets/default-model-project/README.md +++ b/assets/default-model-project/README.md @@ -5,7 +5,7 @@ Generated by [Rojo](https://github.com/rojo-rbx/rojo) {rojo_version}. To build this library, use: ```bash -rojo build -o "{project_name}.rbxmx" +rojo build -o "{project_name}.rbxm" ``` For more help, check out [the Rojo documentation](https://rojo.space/docs). diff --git a/assets/default-place-project/README.md b/assets/default-place-project/README.md index 8899b99af..a6afab280 100644 --- a/assets/default-place-project/README.md +++ b/assets/default-place-project/README.md @@ -5,10 +5,10 @@ Generated by [Rojo](https://github.com/rojo-rbx/rojo) {rojo_version}. To build the place from scratch, use: ```bash -rojo build -o "{project_name}.rbxlx" +rojo build -o "{project_name}.rbxl" ``` -Next, open `{project_name}.rbxlx` in Roblox Studio and start the Rojo server: +Next, open `{project_name}.rbxl` in Roblox Studio and start the Rojo server: ```bash rojo serve From 2b1cceb08c7635103c4b01561fb868c1a20b753f Mon Sep 17 00:00:00 2001 From: nezuo Date: Mon, 24 Jul 2023 10:54:07 -0700 Subject: [PATCH 04/10] Run rojo fmt-project on place project file --- .../default.project.json | 62 +++++++++---------- 1 file changed, 29 insertions(+), 33 deletions(-) diff --git a/assets/default-place-project/default.project.json b/assets/default-place-project/default.project.json index b6e6410a4..057ae0b02 100644 --- a/assets/default-place-project/default.project.json +++ b/assets/default-place-project/default.project.json @@ -2,19 +2,34 @@ "name": "{project_name}", "tree": { "$className": "DataModel", - + "Lighting": { + "$properties": { + "Outlines": false, + "Ambient": [ + 0.0, + 0.0, + 0.0 + ], + "GlobalShadows": true, + "Brightness": 2.0, + "Technology": "Voxel" + } + }, "ReplicatedStorage": { "Shared": { "$path": "src/shared" } }, - "ServerScriptService": { "Server": { "$path": "src/server" } }, - + "SoundService": { + "$properties": { + "RespectFilteringEnabled": true + } + }, "StarterPlayer": { "StarterPlayerScripts": { "Client": { @@ -22,50 +37,31 @@ } } }, - "Workspace": { - "$properties": { - "FilteringEnabled": true - }, "Baseplate": { "$className": "Part", "$properties": { - "Anchored": true, "Color": [ 0.38823, 0.37254, 0.38823 ], - "Locked": true, "Position": [ - 0, - -10, - 0 + 0.0, + -10.0, + 0.0 ], "Size": [ - 512, - 20, - 512 - ] + 512.0, + 20.0, + 512.0 + ], + "Anchored": true, + "Locked": true } - } - }, - "Lighting": { - "$properties": { - "Ambient": [ - 0, - 0, - 0 - ], - "Brightness": 2, - "GlobalShadows": true, - "Outlines": false, - "Technology": "Voxel" - } - }, - "SoundService": { + }, "$properties": { - "RespectFilteringEnabled": true + "FilteringEnabled": true } } } From 2499aaf67b1cb523a1f258dbd9f1f4bbb25a8f01 Mon Sep 17 00:00:00 2001 From: nezuo Date: Mon, 24 Jul 2023 10:54:26 -0700 Subject: [PATCH 05/10] Remove FilteringEnabled property --- assets/default-place-project/default.project.json | 3 --- 1 file changed, 3 deletions(-) diff --git a/assets/default-place-project/default.project.json b/assets/default-place-project/default.project.json index 057ae0b02..a103b977c 100644 --- a/assets/default-place-project/default.project.json +++ b/assets/default-place-project/default.project.json @@ -59,9 +59,6 @@ "Anchored": true, "Locked": true } - }, - "$properties": { - "FilteringEnabled": true } } } From bde15503cf9f9e2f79adba5460eb3832ffd69a75 Mon Sep 17 00:00:00 2001 From: nezuo Date: Mon, 24 Jul 2023 11:00:19 -0700 Subject: [PATCH 06/10] Rename model template to library --- .../README.md | 0 .../default.project.json | 0 .../gitignore.txt | 0 .../src-init.lua | 0 src/cli/init.rs | 35 ++++++++++--------- 5 files changed, 18 insertions(+), 17 deletions(-) rename assets/{default-model-project => default-library-project}/README.md (100%) rename assets/{default-model-project => default-library-project}/default.project.json (100%) rename assets/{default-model-project => default-library-project}/gitignore.txt (100%) rename assets/{default-model-project => default-library-project}/src-init.lua (100%) diff --git a/assets/default-model-project/README.md b/assets/default-library-project/README.md similarity index 100% rename from assets/default-model-project/README.md rename to assets/default-library-project/README.md diff --git a/assets/default-model-project/default.project.json b/assets/default-library-project/default.project.json similarity index 100% rename from assets/default-model-project/default.project.json rename to assets/default-library-project/default.project.json diff --git a/assets/default-model-project/gitignore.txt b/assets/default-library-project/gitignore.txt similarity index 100% rename from assets/default-model-project/gitignore.txt rename to assets/default-library-project/gitignore.txt diff --git a/assets/default-model-project/src-init.lua b/assets/default-library-project/src-init.lua similarity index 100% rename from assets/default-model-project/src-init.lua rename to assets/default-library-project/src-init.lua diff --git a/src/cli/init.rs b/src/cli/init.rs index 7d09fa3be..9a3924aef 100644 --- a/src/cli/init.rs +++ b/src/cli/init.rs @@ -10,11 +10,12 @@ use fs_err::OpenOptions; use super::resolve_path; -static MODEL_PROJECT: &str = - include_str!("../../assets/default-model-project/default.project.json"); -static MODEL_README: &str = include_str!("../../assets/default-model-project/README.md"); -static MODEL_INIT: &str = include_str!("../../assets/default-model-project/src-init.lua"); -static MODEL_GIT_IGNORE: &str = include_str!("../../assets/default-model-project/gitignore.txt"); +static LIBRARY_PROJECT: &str = + include_str!("../../assets/default-library-project/default.project.json"); +static LIBRARY_README: &str = include_str!("../../assets/default-library-project/README.md"); +static LIBRARY_INIT: &str = include_str!("../../assets/default-library-project/src-init.lua"); +static LIBRARY_GIT_IGNORE: &str = + include_str!("../../assets/default-library-project/gitignore.txt"); static PLACE_PROJECT: &str = include_str!("../../assets/default-place-project/default.project.json"); @@ -33,7 +34,7 @@ pub struct InitCommand { #[clap(default_value = "")] pub path: PathBuf, - /// The kind of project to create, 'place', 'plugin', or 'model'. Defaults to place. + /// The kind of project to create, 'place', 'plugin', or 'library'. Defaults to place. #[clap(long, default_value = "place")] pub kind: InitKind, } @@ -55,7 +56,7 @@ impl InitCommand { match self.kind { InitKind::Place => init_place(&base_path, project_params)?, - InitKind::Model => init_model(&base_path, project_params)?, + InitKind::Library => init_library(&base_path, project_params)?, InitKind::Plugin => init_plugin(&base_path, project_params)?, } @@ -71,8 +72,8 @@ pub enum InitKind { /// A place that contains a baseplate. Place, - /// An empty model, suitable for a library. - Model, + /// An empty library. + Library, /// An empty plugin. Plugin, @@ -84,10 +85,10 @@ impl FromStr for InitKind { fn from_str(source: &str) -> Result { match source { "place" => Ok(InitKind::Place), - "model" => Ok(InitKind::Model), + "library" => Ok(InitKind::Library), "plugin" => Ok(InitKind::Plugin), _ => Err(format_err!( - "Invalid init kind '{}'. Valid kinds are: place, model, plugin", + "Invalid init kind '{}'. Valid kinds are: place, library, plugin", source )), } @@ -136,22 +137,22 @@ fn init_place(base_path: &Path, project_params: ProjectParams) -> anyhow::Result Ok(()) } -fn init_model(base_path: &Path, project_params: ProjectParams) -> anyhow::Result<()> { - println!("Creating new model project '{}'", project_params.name); +fn init_library(base_path: &Path, project_params: ProjectParams) -> anyhow::Result<()> { + println!("Creating new library project '{}'", project_params.name); - let project_file = project_params.render_template(MODEL_PROJECT); + let project_file = project_params.render_template(LIBRARY_PROJECT); try_create_project(base_path, &project_file)?; - let readme = project_params.render_template(MODEL_README); + let readme = project_params.render_template(LIBRARY_README); write_if_not_exists(&base_path.join("README.md"), &readme)?; let src = base_path.join("src"); fs::create_dir_all(&src)?; - let init = project_params.render_template(MODEL_INIT); + let init = project_params.render_template(LIBRARY_INIT); write_if_not_exists(&src.join("init.lua"), &init)?; - let git_ignore = project_params.render_template(MODEL_GIT_IGNORE); + let git_ignore = project_params.render_template(LIBRARY_GIT_IGNORE); try_git_init(base_path, &git_ignore)?; Ok(()) From b4489c82e9d720d59243a86eb1403aaf0d504b4f Mon Sep 17 00:00:00 2001 From: nezuo Date: Fri, 4 Aug 2023 14:55:51 -0700 Subject: [PATCH 07/10] Revert "Rename model template to library" This reverts commit bde15503cf9f9e2f79adba5460eb3832ffd69a75. --- .../README.md | 0 .../default.project.json | 0 .../gitignore.txt | 0 .../src-init.lua | 0 src/cli/init.rs | 35 +++++++++---------- 5 files changed, 17 insertions(+), 18 deletions(-) rename assets/{default-library-project => default-model-project}/README.md (100%) rename assets/{default-library-project => default-model-project}/default.project.json (100%) rename assets/{default-library-project => default-model-project}/gitignore.txt (100%) rename assets/{default-library-project => default-model-project}/src-init.lua (100%) diff --git a/assets/default-library-project/README.md b/assets/default-model-project/README.md similarity index 100% rename from assets/default-library-project/README.md rename to assets/default-model-project/README.md diff --git a/assets/default-library-project/default.project.json b/assets/default-model-project/default.project.json similarity index 100% rename from assets/default-library-project/default.project.json rename to assets/default-model-project/default.project.json diff --git a/assets/default-library-project/gitignore.txt b/assets/default-model-project/gitignore.txt similarity index 100% rename from assets/default-library-project/gitignore.txt rename to assets/default-model-project/gitignore.txt diff --git a/assets/default-library-project/src-init.lua b/assets/default-model-project/src-init.lua similarity index 100% rename from assets/default-library-project/src-init.lua rename to assets/default-model-project/src-init.lua diff --git a/src/cli/init.rs b/src/cli/init.rs index 9a3924aef..7d09fa3be 100644 --- a/src/cli/init.rs +++ b/src/cli/init.rs @@ -10,12 +10,11 @@ use fs_err::OpenOptions; use super::resolve_path; -static LIBRARY_PROJECT: &str = - include_str!("../../assets/default-library-project/default.project.json"); -static LIBRARY_README: &str = include_str!("../../assets/default-library-project/README.md"); -static LIBRARY_INIT: &str = include_str!("../../assets/default-library-project/src-init.lua"); -static LIBRARY_GIT_IGNORE: &str = - include_str!("../../assets/default-library-project/gitignore.txt"); +static MODEL_PROJECT: &str = + include_str!("../../assets/default-model-project/default.project.json"); +static MODEL_README: &str = include_str!("../../assets/default-model-project/README.md"); +static MODEL_INIT: &str = include_str!("../../assets/default-model-project/src-init.lua"); +static MODEL_GIT_IGNORE: &str = include_str!("../../assets/default-model-project/gitignore.txt"); static PLACE_PROJECT: &str = include_str!("../../assets/default-place-project/default.project.json"); @@ -34,7 +33,7 @@ pub struct InitCommand { #[clap(default_value = "")] pub path: PathBuf, - /// The kind of project to create, 'place', 'plugin', or 'library'. Defaults to place. + /// The kind of project to create, 'place', 'plugin', or 'model'. Defaults to place. #[clap(long, default_value = "place")] pub kind: InitKind, } @@ -56,7 +55,7 @@ impl InitCommand { match self.kind { InitKind::Place => init_place(&base_path, project_params)?, - InitKind::Library => init_library(&base_path, project_params)?, + InitKind::Model => init_model(&base_path, project_params)?, InitKind::Plugin => init_plugin(&base_path, project_params)?, } @@ -72,8 +71,8 @@ pub enum InitKind { /// A place that contains a baseplate. Place, - /// An empty library. - Library, + /// An empty model, suitable for a library. + Model, /// An empty plugin. Plugin, @@ -85,10 +84,10 @@ impl FromStr for InitKind { fn from_str(source: &str) -> Result { match source { "place" => Ok(InitKind::Place), - "library" => Ok(InitKind::Library), + "model" => Ok(InitKind::Model), "plugin" => Ok(InitKind::Plugin), _ => Err(format_err!( - "Invalid init kind '{}'. Valid kinds are: place, library, plugin", + "Invalid init kind '{}'. Valid kinds are: place, model, plugin", source )), } @@ -137,22 +136,22 @@ fn init_place(base_path: &Path, project_params: ProjectParams) -> anyhow::Result Ok(()) } -fn init_library(base_path: &Path, project_params: ProjectParams) -> anyhow::Result<()> { - println!("Creating new library project '{}'", project_params.name); +fn init_model(base_path: &Path, project_params: ProjectParams) -> anyhow::Result<()> { + println!("Creating new model project '{}'", project_params.name); - let project_file = project_params.render_template(LIBRARY_PROJECT); + let project_file = project_params.render_template(MODEL_PROJECT); try_create_project(base_path, &project_file)?; - let readme = project_params.render_template(LIBRARY_README); + let readme = project_params.render_template(MODEL_README); write_if_not_exists(&base_path.join("README.md"), &readme)?; let src = base_path.join("src"); fs::create_dir_all(&src)?; - let init = project_params.render_template(LIBRARY_INIT); + let init = project_params.render_template(MODEL_INIT); write_if_not_exists(&src.join("init.lua"), &init)?; - let git_ignore = project_params.render_template(LIBRARY_GIT_IGNORE); + let git_ignore = project_params.render_template(MODEL_GIT_IGNORE); try_git_init(base_path, &git_ignore)?; Ok(()) From 353e7b9ec9aa439637ba1bf0f48f91923a2505bf Mon Sep 17 00:00:00 2001 From: nezuo Date: Fri, 4 Aug 2023 15:05:56 -0700 Subject: [PATCH 08/10] Reword library to model in README --- assets/default-model-project/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/default-model-project/README.md b/assets/default-model-project/README.md index 7f7ad709b..275b17298 100644 --- a/assets/default-model-project/README.md +++ b/assets/default-model-project/README.md @@ -2,7 +2,7 @@ Generated by [Rojo](https://github.com/rojo-rbx/rojo) {rojo_version}. ## Getting Started -To build this library, use: +To build this model, use: ```bash rojo build -o "{project_name}.rbxm" From 641aac175c37b899d0c2b5b4fc510c7ef73af0c2 Mon Sep 17 00:00:00 2001 From: nezuo Date: Thu, 27 Mar 2025 10:02:29 -0700 Subject: [PATCH 09/10] Fix bad merge conflict resolve --- plugin/Packages/msgpack-luau | 1 + src/cli/init.rs | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) create mode 160000 plugin/Packages/msgpack-luau diff --git a/plugin/Packages/msgpack-luau b/plugin/Packages/msgpack-luau new file mode 160000 index 000000000..0754b1d5a --- /dev/null +++ b/plugin/Packages/msgpack-luau @@ -0,0 +1 @@ +Subproject commit 0754b1d5a6919392fe497979c69b90a38a060c71 diff --git a/src/cli/init.rs b/src/cli/init.rs index 40347a305..9affb6f00 100644 --- a/src/cli/init.rs +++ b/src/cli/init.rs @@ -116,18 +116,18 @@ fn init_place(base_path: &Path, project_params: ProjectParams) -> anyhow::Result fs::create_dir_all(src.join(&src_client))?; write_if_not_exists( - &src_shared.join("Hello.lua"), + &src_shared.join("Hello.luau"), "return function()\n\tprint(\"Hello, world!\")\nend\n", )?; write_if_not_exists( &src_server.join("init.server.luau"), - "print(\"Hello world, from server!\")", + "print(\"Hello world, from server!\")\n", )?; write_if_not_exists( &src_client.join("init.client.luau"), - "print(\"Hello world, from client!\")", + "print(\"Hello world, from client!\")\n", )?; let git_ignore = project_params.render_template(PLACE_GIT_IGNORE); From 333553c3b33ebd6a5fec741d82a694dcbb20aad6 Mon Sep 17 00:00:00 2001 From: nezuo Date: Thu, 27 Mar 2025 10:05:13 -0700 Subject: [PATCH 10/10] Remove msgpack... submodules :( --- plugin/Packages/msgpack-luau | 1 - 1 file changed, 1 deletion(-) delete mode 160000 plugin/Packages/msgpack-luau diff --git a/plugin/Packages/msgpack-luau b/plugin/Packages/msgpack-luau deleted file mode 160000 index 0754b1d5a..000000000 --- a/plugin/Packages/msgpack-luau +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 0754b1d5a6919392fe497979c69b90a38a060c71