From 89a56ac7bf278ff3d5c11f98a9f94a622c38b146 Mon Sep 17 00:00:00 2001 From: Danny McGee Date: Tue, 14 Nov 2023 15:46:10 -0500 Subject: [PATCH] Bootstrap CLI app --- Cargo.lock | 121 ++++++++++++++++++++++++++++++++++++++++ Cargo.toml | 3 +- studio_cli/Cargo.toml | 12 ++++ studio_cli/project.json | 36 ++++++++++++ studio_cli/src/main.rs | 3 + 5 files changed, 174 insertions(+), 1 deletion(-) create mode 100644 studio_cli/Cargo.toml create mode 100644 studio_cli/project.json create mode 100644 studio_cli/src/main.rs diff --git a/Cargo.lock b/Cargo.lock index c8a666e..e3c4b73 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -174,6 +174,54 @@ dependencies = [ "libc", ] +[[package]] +name = "anstream" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" + +[[package]] +name = "anstyle-parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" +dependencies = [ + "windows-sys 0.48.0", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628" +dependencies = [ + "anstyle", + "windows-sys 0.48.0", +] + [[package]] name = "anyhow" version = "1.0.75" @@ -1471,6 +1519,46 @@ dependencies = [ "libloading 0.7.4", ] +[[package]] +name = "clap" +version = "4.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2275f18819641850fa26c89acc84d465c1bf91ce57bc2748b28c420473352f64" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07cdf1b148b25c1e1f7a42225e30a0d99a615cd4637eae7365548dd4529b95bc" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.37", +] + +[[package]] +name = "clap_lex" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" + [[package]] name = "clipboard-win" version = "4.5.0" @@ -1498,6 +1586,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" +[[package]] +name = "colorchoice" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" + [[package]] name = "com-rs" version = "0.2.1" @@ -2232,6 +2326,12 @@ dependencies = [ "winapi", ] +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + [[package]] name = "hexasphere" version = "9.1.0" @@ -3552,6 +3652,12 @@ version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0" +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + [[package]] name = "studio" version = "0.1.0" @@ -3573,6 +3679,15 @@ dependencies = [ "web-sys", ] +[[package]] +name = "studio_cli" +version = "0.1.0" +dependencies = [ + "bevy", + "clap", + "studio", +] + [[package]] name = "svg_fmt" version = "0.4.1" @@ -3868,6 +3983,12 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "utf8parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + [[package]] name = "uuid" version = "1.4.1" diff --git a/Cargo.toml b/Cargo.toml index 70f9ace..d8bdd85 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,7 +2,8 @@ resolver = "2" members = [ "./bevy_mod_outline", - "./studio" + "./studio", + "./studio_cli", ] [workspace.dependencies.bevy] diff --git a/studio_cli/Cargo.toml b/studio_cli/Cargo.toml new file mode 100644 index 0000000..8721b6f --- /dev/null +++ b/studio_cli/Cargo.toml @@ -0,0 +1,12 @@ +[package] +name = "studio_cli" +version = "0.1.0" +edition = "2021" + +[dependencies] +bevy = { workspace = true } +studio = { path = "../studio" } + +[dependencies.clap] +version = "4.4.8" +features = ["derive"] diff --git a/studio_cli/project.json b/studio_cli/project.json new file mode 100644 index 0000000..576bbf2 --- /dev/null +++ b/studio_cli/project.json @@ -0,0 +1,36 @@ +{ + "name": "studio_cli", + "$schema": "../node_modules/nx/schemas/project-schema.json", + "projectType": "application", + "sourceRoot": "./studio_cli/src", + "targets": { + "build": { + "executor": "@nxrs/cargo:build", + "options": { + "release": false + }, + "configurations": { + "production": { + "release": true + } + } + }, + "start": { + "executor": "@nxrs/cargo:run", + "options": {} + }, + "test": { + "executor": "@nxrs/cargo:test", + "options": {} + }, + "lint": { + "executor": "@nxrs/cargo:clippy", + "options": { + "fix": false, + "failOnWarnings": true, + "noDeps": true + } + } + }, + "tags": [] +} diff --git a/studio_cli/src/main.rs b/studio_cli/src/main.rs new file mode 100644 index 0000000..e7a11a9 --- /dev/null +++ b/studio_cli/src/main.rs @@ -0,0 +1,3 @@ +fn main() { + println!("Hello, world!"); +}