refactor: move tauri crates to /core folder (#1444)

This commit is contained in:
Lucas Fernandes Nogueira 2021-04-08 13:22:20 -03:00 committed by GitHub
parent 0648bc4184
commit 8b36fe0c5d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
102 changed files with 92 additions and 50 deletions

View File

@ -170,25 +170,33 @@
] ]
}, },
"tauri-utils": { "tauri-utils": {
"path": "./tauri-utils", "path": "./core/tauri-utils",
"manager": "rust" "manager": "rust"
}, },
"tauri-api": { "tauri-api": {
"path": "./tauri-api", "path": "./core/tauri-api",
"manager": "rust", "manager": "rust",
"dependencies": ["tauri-utils"] "dependencies": ["tauri-utils"]
}, },
"tauri-macros": { "tauri-macros": {
"path": "./tauri-macros", "path": "./core/tauri-macros",
"manager": "rust", "manager": "rust",
"dependencies": ["tauri-utils"] "dependencies": ["tauri-utils"]
}, },
"tauri-updater": { "tauri-updater": {
"path": "./tauri-updater", "path": "./core/tauri-updater",
"manager": "rust"
},
"tauri-build": {
"path": "./core/tauri-build",
"manager": "rust"
},
"tauri-codegen": {
"path": "./core/tauri-codegen",
"manager": "rust" "manager": "rust"
}, },
"tauri": { "tauri": {
"path": "./tauri", "path": "./core/tauri",
"manager": "rust", "manager": "rust",
"dependencies": ["api", "tauri-api", "tauri-macros", "tauri-updater"] "dependencies": ["api", "tauri-api", "tauri-macros", "tauri-updater"]
} }

View File

@ -53,12 +53,12 @@ Some Tauri packages will be automatically built when running one of the examples
### Packages Overview ### Packages Overview
- The JS API (`/api`) contains JS bindings to the builtin Rust functions in the Rust API. - The JS API (`/api`) contains JS bindings to the builtin Rust functions in the Rust API.
- The Rust API (`/tauri-api`) contains the Rust functions used by the JS API. - The Rust API (`/core/tauri-api`) contains the Rust functions used by the JS API.
- Tauri.js (`/cli/tauri.js`) is the primary CLI for creating and developing Tauri apps. - Tauri.js (`/cli/tauri.js`) is the primary CLI for creating and developing Tauri apps.
- The Rust CLI (`/cli/core`) is a new version of the CLI that will replace Tauri.js, but now it only supports build and dev commands. Tauri.js will automatically use the Rust CLI for these commands. - The Rust CLI (`/cli/core`) is a new version of the CLI that will replace Tauri.js, but now it only supports build and dev commands. Tauri.js will automatically use the Rust CLI for these commands.
- Tauri Bundler (`/cli/tauri-bundler`) is used by the Rust CLI to package executables into installers. - Tauri Bundler (`/cli/tauri-bundler`) is used by the Rust CLI to package executables into installers.
- Tauri Core (`/tauri`) is the heart of Tauri. It contains the code that starts the app, configures communication between Rust and the Webview, and ties all the other packages together. - Tauri Core (`/core/tauri`) is the heart of Tauri. It contains the code that starts the app, configures communication between Rust and the Webview, and ties all the other packages together.
- The Macros (`/tauri-macros`) are used by Tauri Core for various functions. - The Macros (`/core/tauri-macros`) are used by Tauri Core for various functions.
### Developing The Node.js CLI (Tauri.js) ### Developing The Node.js CLI (Tauri.js)
@ -79,7 +79,7 @@ The code for the bundler is located in `[Tauri repo root]/cli/tauri-bundler`, an
### Developing Tauri Core and Related Components (Rust API, Macros, and Utils) ### Developing Tauri Core and Related Components (Rust API, Macros, and Utils)
The code for Tauri Core is located in `[Tauri repo root]/tauri`, and the Rust API, Macros, and Utils are in `[Tauri repo root]/tauri-(api/macros/utils)`. The easiest way to test your changes is to use the `[Tauri repo root]/examples/helloworld` app. It automatically rebuilds and uses your local copy of the Tauri core packages. Just run `yarn tauri build` or `yarn tauri dev` in the helloworld app directory after making changes to test them out. To use your local changes in another project, edit its `src-tauri/Cargo.toml` file so that the `tauri` key looks like `tauri = { path = "PATH", features = [ "api-all", "cli" ] }`, where `PATH` is the relative path to `[Tauri repo root]/tauri`. Then, your local copy of the Tauri core packages will be rebuilt and used whenever you build that project. The code for Tauri Core is located in `[Tauri repo root]/core/tauri`, and the Rust API, Macros, and Utils are in `[Tauri repo root]/core/tauri-(api/macros/utils)`. The easiest way to test your changes is to use the `[Tauri repo root]/examples/helloworld` app. It automatically rebuilds and uses your local copy of the Tauri core packages. Just run `yarn tauri build` or `yarn tauri dev` in the helloworld app directory after making changes to test them out. To use your local changes in another project, edit its `src-tauri/Cargo.toml` file so that the `tauri` key looks like `tauri = { path = "PATH", features = [ "api-all", "cli" ] }`, where `PATH` is the relative path to `[Tauri repo root]/core/tauri`. Then, your local copy of the Tauri core packages will be rebuilt and used whenever you build that project.
### Developing the JS API ### Developing the JS API

View File

@ -3,8 +3,8 @@ on:
pull_request: pull_request:
paths: paths:
- '.github/workflows/artifacts-updater.yml' - '.github/workflows/artifacts-updater.yml'
- 'tauri/**' - 'core/tauri/**'
- 'tauri-updater/**' - 'core/tauri-updater/**'
- 'cli/core/**' - 'cli/core/**'
- 'cli/tauri-bundler/**' - 'cli/tauri-bundler/**'
- 'examples/updater/**' - 'examples/updater/**'

View File

@ -6,11 +6,6 @@ on:
- '.github/workflows/core-lint-fmt.yml' - '.github/workflows/core-lint-fmt.yml'
- 'core/**' - 'core/**'
- 'examples/**' - 'examples/**'
- 'tauri/**'
- 'tauri-utils/**'
- 'tauri-api/**'
- 'tauri-macros/**'
- 'tauri-updater/**'
- 'cli/core/**' - 'cli/core/**'
jobs: jobs:
@ -78,5 +73,5 @@ jobs:
- uses: actions-rs/clippy-check@v1 - uses: actions-rs/clippy-check@v1
with: with:
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
args: --manifest-path ./tauri/Cargo.toml --all-targets --features ${{ matrix.feature }} -- -D warnings args: --manifest-path ./core/tauri/Cargo.toml --all-targets --features ${{ matrix.feature }} -- -D warnings
name: core name: core

View File

@ -68,7 +68,7 @@ jobs:
sudo apt-get update sudo apt-get update
sudo apt-get install -y webkit2gtk-4.0 sudo apt-get install -y webkit2gtk-4.0
- name: generate rust docs - name: generate rust docs
working-directory: tauri working-directory: core/tauri
run: cargo doc --no-deps run: cargo doc --no-deps
- name: run rustdocusaurus - name: run rustdocusaurus
uses: tauri-apps/rustdocusaurus/github-action@v1 uses: tauri-apps/rustdocusaurus/github-action@v1

View File

@ -6,11 +6,6 @@ on:
- '.github/workflows/test-core.yml' - '.github/workflows/test-core.yml'
- 'core/**' - 'core/**'
- 'examples/**' - 'examples/**'
- 'tauri/**'
- 'tauri-utils/**'
- 'tauri-api/**'
- 'tauri-macros/**'
- 'tauri-updater/**'
- 'cli/**' - 'cli/**'
env: env:
@ -36,10 +31,6 @@ jobs:
run: | run: |
sudo apt-get update sudo apt-get update
sudo apt-get install -y webkit2gtk-4.0 sudo apt-get install -y webkit2gtk-4.0
- name: build
run: |
cd ./tauri
cargo build
- name: test - name: test
run: | run: |
cargo test cargo test
@ -93,4 +84,3 @@ jobs:
timeout-minutes: 15 timeout-minutes: 15
working-directory: cli/tauri.js working-directory: cli/tauri.js
run: yarn build-release run: yarn build-release

View File

@ -5,11 +5,6 @@ on:
paths: paths:
- '.github/workflows/udeps.yml' - '.github/workflows/udeps.yml'
- 'core/**' - 'core/**'
- 'tauri/**'
- 'tauri-utils/**'
- 'tauri-api/**'
- 'tauri-macros/**'
- 'tauri-updater/**'
- 'cli/tauri-bundler/**' - 'cli/tauri-bundler/**'
- 'cli/core/**' - 'cli/core/**'

View File

@ -30,7 +30,7 @@ jobs:
sudo apt-get update sudo apt-get update
sudo apt-get install -y webkit2gtk-4.0 sudo apt-get install -y webkit2gtk-4.0
- name: generate rust docs - name: generate rust docs
working-directory: tauri working-directory: core/tauri
run: cargo doc --no-deps run: cargo doc --no-deps
- name: run rustdocusaurus - name: run rustdocusaurus
uses: tauri-apps/rustdocusaurus/github-action@v1 uses: tauri-apps/rustdocusaurus/github-action@v1

View File

@ -1,11 +1,10 @@
[workspace] [workspace]
members = [ members = [
"tauri",
"tauri-api",
"tauri-macros",
"tauri-utils",
# core # core
"core/tauri",
"core/tauri-api",
"core/tauri-macros",
"core/tauri-utils",
"core/tauri-build", "core/tauri-build",
"core/tauri-codegen", "core/tauri-codegen",

View File

@ -99,7 +99,7 @@ impl Init {
( (
format!( format!(
"{{ path = {:?} }}", "{{ path = {:?} }}",
resolve_tauri_path(&tauri_path, "tauri") resolve_tauri_path(&tauri_path, "core/tauri")
), ),
format!( format!(
"{{ path = {:?} }}", "{{ path = {:?} }}",
@ -108,7 +108,7 @@ impl Init {
) )
} else { } else {
let tauri_manifest: Manifest = let tauri_manifest: Manifest =
toml::from_str(include_str!("../../../tauri/Cargo.toml")).unwrap(); toml::from_str(include_str!("../../../core/tauri/Cargo.toml")).unwrap();
let tauri_build_manifest: Manifest = let tauri_build_manifest: Manifest =
toml::from_str(include_str!("../../../core/tauri-build/Cargo.toml")).unwrap(); toml::from_str(include_str!("../../../core/tauri-build/Cargo.toml")).unwrap();
( (

View File

@ -24,7 +24,7 @@ icon = [
serde_json = "1.0.64" serde_json = "1.0.64"
serde = "1.0" serde = "1.0"
serde_derive = "1.0" serde_derive = "1.0"
tauri = { path = "../../../../../../../tauri", features =["api-all"]} tauri = { path = "../../../../../../../core/tauri", features =["api-all"]}
[features] [features]
custom-protocol = [ "tauri/custom-protocol" ] custom-protocol = [ "tauri/custom-protocol" ]

View File

View File

@ -15,7 +15,7 @@ proc-macro2 = "1"
quote = "1" quote = "1"
serde = { version = "1", features = ["derive"] } serde = { version = "1", features = ["derive"] }
serde_json = "1" serde_json = "1"
tauri-api = { path = "../../tauri-api", features = ["build"] } tauri-api = { path = "../tauri-api", features = ["build"] }
thiserror = "1" thiserror = "1"
walkdir = "2" walkdir = "2"
zstd = "0.7" zstd = "0.7"

View File

@ -16,7 +16,7 @@ proc-macro = true
proc-macro2 = "1" proc-macro2 = "1"
quote = "1" quote = "1"
syn = { version = "1", features = [ "full" ] } syn = { version = "1", features = [ "full" ] }
tauri-codegen = { path = "../core/tauri-codegen" } tauri-codegen = { path = "../tauri-codegen" }
[features] [features]
custom-protocol = [] custom-protocol = []

View File

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

View File

@ -10,7 +10,7 @@ tauri-build = { path = "../../../core/tauri-build" }
[dependencies] [dependencies]
serde_json = "1.0" serde_json = "1.0"
serde = { version = "1.0", features = [ "derive" ] } serde = { version = "1.0", features = [ "derive" ] }
tauri = { path = "../../../tauri", features =["api-all", "cli"]} tauri = { path = "../../../core/tauri", features =["api-all", "cli"]}
[features] [features]
default = [ "custom-protocol" ] default = [ "custom-protocol" ]

View File

@ -10,7 +10,7 @@ tauri-build = { path = "../../../core/tauri-build", features = [ "codegen" ]}
[dependencies] [dependencies]
serde_json = "1.0" serde_json = "1.0"
serde = { version = "1.0", features = [ "derive" ] } serde = { version = "1.0", features = [ "derive" ] }
tauri = { path = "../../../tauri", features =["api-all"]} tauri = { path = "../../../core/tauri", features =["api-all"]}
[features] [features]
default = [ "custom-protocol" ] default = [ "custom-protocol" ]

View File

@ -8,7 +8,7 @@ edition = "2018"
tauri-build = { path = "../../../core/tauri-build" } tauri-build = { path = "../../../core/tauri-build" }
[dependencies] [dependencies]
tauri = { path = "../../../tauri", features =["api-all"]} tauri = { path = "../../../core/tauri", features =["api-all"]}
[features] [features]
default = [ "custom-protocol" ] default = [ "custom-protocol" ]

Some files were not shown because too many files have changed in this diff Show More