From 389b445ef16065412759c4e4fc1e10835ebb8bdb Mon Sep 17 00:00:00 2001 From: Keavon Chambers Date: Wed, 12 Jan 2022 03:56:28 -0800 Subject: [PATCH] Remove Charcoal references from the code for now --- Cargo.lock | 4 ---- Cargo.toml | 1 - charcoal/Cargo.toml | 13 ------------- charcoal/src/lib.rs | 7 ------- docs/codebase/README.md | 9 +++------ docs/design/feature-goals.md | 4 ++-- docs/editor/1-overview.md | 1 - frontend/vue.config.js | 7 +------ 8 files changed, 6 insertions(+), 40 deletions(-) delete mode 100644 charcoal/Cargo.toml delete mode 100644 charcoal/src/lib.rs diff --git a/Cargo.lock b/Cargo.lock index fe12c6744..ee95cae7f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -84,10 +84,6 @@ dependencies = [ "serde", ] -[[package]] -name = "graphite-charcoal" -version = "0.0.0" - [[package]] name = "graphite-editor" version = "0.0.0" diff --git a/Cargo.toml b/Cargo.toml index f6bfac06a..92ad5f27f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,7 +2,6 @@ members = [ "editor", "graphene", - "charcoal", "proc-macros", "frontend/wasm", ] diff --git a/charcoal/Cargo.toml b/charcoal/Cargo.toml deleted file mode 100644 index 89bc4f341..000000000 --- a/charcoal/Cargo.toml +++ /dev/null @@ -1,13 +0,0 @@ -[package] -name = "graphite-charcoal" -publish = false -version = "0.0.0" -rust-version = "1.56.0" -authors = ["Graphite Authors "] -edition = "2021" -readme = "../README.md" -homepage = "https://www.graphite.design" -repository = "https://github.com/GraphiteEditor/Graphite" -license = "Apache-2.0" - -[dependencies] diff --git a/charcoal/src/lib.rs b/charcoal/src/lib.rs deleted file mode 100644 index 78b81e001..000000000 --- a/charcoal/src/lib.rs +++ /dev/null @@ -1,7 +0,0 @@ -#[cfg(test)] -mod tests { - // #[test] - // fn it_works() { - // assert_eq!(2 + 2, 4); - // } -} diff --git a/docs/codebase/README.md b/docs/codebase/README.md index ac54aabef..ed962cfdf 100644 --- a/docs/codebase/README.md +++ b/docs/codebase/README.md @@ -4,13 +4,12 @@ This is a great place to start learning about the Graphite codebase and its arch ## Core libraries -Graphite's core rust codebase is split into three reusable libraries: +Graphite's core rust codebase is split into two reusable libraries: - Editor - Graphene -- Charcoal -Each depends on its successor in the list. These are used internally but also intended for usage by third parties through Rust or linked by a project in C, C++, or another language. +The Editor depends on Graphene, but Graphene can also be used alone. These are used internally but also intended for usage by third parties through Rust or linked by a project in C, C++, or another language. ## Code structure @@ -25,6 +24,4 @@ The main modules of the project architecture are outlined below. Some parts desc - **Graphite Editor (Backend)**: `/editor/` Used by a frontend editor client to maintain GUI state and dispatch user events. The official Graphite editor is the primary user, but others software like game engines could embed their own customized editor implementations. Depends on Graphene. - **Graphene (Document Graph Engine)**: `/graphene/` - A stateless library for updating Graphite design document (GDD) files. The official Graphite CLI and editor client backend are the primary users, but this library is intended to be useful to any application that wants to link the library for the purpose of updating GDD files by sending edit operations. Optionally depends on Charcoal if rendering is required. -- **Charcoal (Asset Render Engine)**: `/charcoal/` - A stateless library (with the help of in-memory and/or on-disk caches for performance) for rendering Graphite's asset graph (GDA) files. The official Graphite CLI and Graphene are the primary users, but this library is intended to be useful to any application that wants to link the library for the purpose of rendering Graphite's asset graphs. For example, games can link the library and render procedural textures with customizable parametric input values. + A stateless library for updating Graphite design document (GDD) files. The official Graphite CLI and editor client backend are the primary users, but this library is intended to be useful to any application that wants to link the library for the purpose of updating GDD files by sending edit operations. This also serves as the 2D render engine and this is intended to be useful to any application that wants to link the Graphene library for the purpose of rendering Graphite graphs. For example, games can link the library and render procedural textures with customizable parametric input values. diff --git a/docs/design/feature-goals.md b/docs/design/feature-goals.md index 07822c8f2..20f574f69 100644 --- a/docs/design/feature-goals.md +++ b/docs/design/feature-goals.md @@ -57,7 +57,7 @@ Contributions welcome! If you think of something Graphite would be great for, su - Removing translucent watermarks that were applied in the same location to a batch of photos by finding their shared similarities and differences and using that as a subtraction diff ## Game development -- Design a GUI for the game and use Charcoal to render the in-game GUI textures at runtime at the desired resolution without scaling problems, or even render it live as data updates its state +- Design a GUI for the game and use Graphene to render the in-game GUI textures at runtime at the desired resolution without scaling problems, or even render it live as data updates its state - Authoring procedural noise-based textures and PBR materials ## Data visualization @@ -98,4 +98,4 @@ Contributions welcome! If you think of something Graphite would be great for, su - Generating a PDF invoice based on data in a pipeline in a server ## Industrial control -- Factory line is examining its fruit for defects. In order to verify the quality, they need to enhance the contrast, automatically orient the image and correct the lighting. They then pass the results into a machine learning algorithm to classify, and sometimes need to snoop on the stream of data to manually do quality control (ImageMagick or custom Python libraries are often used for this right now) \ No newline at end of file +- Factory line is examining its fruit for defects. In order to verify the quality, they need to enhance the contrast, automatically orient the image and correct the lighting. They then pass the results into a machine learning algorithm to classify, and sometimes need to snoop on the stream of data to manually do quality control (ImageMagick or custom Python libraries are often used for this right now) diff --git a/docs/editor/1-overview.md b/docs/editor/1-overview.md index 5f3060483..ffa8208fb 100644 --- a/docs/editor/1-overview.md +++ b/docs/editor/1-overview.md @@ -64,7 +64,6 @@ TODO: Add more to make a comprehensive list, finish writing definitions, separat - ## Graphite Editor (Frontend) - ## Graphite Editor (Backend) - ## Graphene (Document Graph Engine) -- ## Charcoal (Asset Render Engine) - ## Trace - ## Path - ## Shape diff --git a/frontend/vue.config.js b/frontend/vue.config.js index a3112eff4..3bd300a1e 100644 --- a/frontend/vue.config.js +++ b/frontend/vue.config.js @@ -57,12 +57,7 @@ module.exports = { crateDirectory: path.resolve(__dirname, "wasm"), // Remove when this issue is resolved: https://github.com/wasm-tool/wasm-pack-plugin/issues/93 outDir: path.resolve(__dirname, "wasm/pkg"), - watchDirectories: [ - path.resolve(__dirname, "../editor"), - path.resolve(__dirname, "../graphene"), - path.resolve(__dirname, "../charcoal"), - path.resolve(__dirname, "../proc-macros"), - ], + watchDirectories: ["../editor", "../graphene", "../proc-macros"].map((folder) => path.resolve(__dirname, folder)), }) ) .end();