Remove workspace Cargo.toml, add template

This commit is contained in:
Dario Nieuwenhuis 2021-03-29 21:46:51 +02:00
parent 02ae53e71b
commit 4371302da8
4 changed files with 78 additions and 62 deletions

View File

@ -81,10 +81,8 @@ jobs:
with:
path: target
key: ${{ runner.os }}-${{ matrix.target }}
- uses: actions-rs/cargo@v1
with:
command: check
args: --package ${{ matrix.package }} --features=${{ matrix.features }} --target=${{ matrix.target }}
- name: Check
run: cd ${{ matrix.package }} && cargo check --features=${{ matrix.features }} --target=${{ matrix.target }}
fmt:
runs-on: ubuntu-latest

1
.gitignore vendored
View File

@ -1,3 +1,4 @@
target
Cargo.lock
third_party
/Cargo.toml

75
Cargo.example.toml Normal file
View File

@ -0,0 +1,75 @@
# This file is a template for a Cargo workspace for developer convenience.
#
# Since Cargo resolves all features for all crates in the workspace together,
# it is not possible to have a workspace with all the crates together, since they
# enable incompatible features. For example, nrf crates enable embassy-macros/nrf
# and stm32 crates enable embassy-macros/stm32. embassy-macros doesn't support having
# both of these features on at the same time, because it makes no sense.
#
# Instead, we provide this template so you can enable only the crates you're going to
# work on. This makes eg rust-analyzer check-on-save and autocomplete work, but only
# in these crates, without any feature conflict.
#
# Copy this file to `Cargo.toml` and uncomment one group of crates below.
#
# `/Cargo.toml` is already in .gitignore, so you don't commit it accidentally.
[workspace]
members = [
"embassy",
"embassy-traits",
"embassy-macros",
"embassy-extras",
# Uncomment ONLY ONE of the groups below.
# nRF
#"embassy-nrf",
#"embassy-nrf-examples",
# stm32
#"embassy-stm32",
#"embassy-stm32f4",
#"embassy-stm32l0",
#"embassy-stm32f4-examples",
# rp2040
#"embassy-rp",
#"embassy-rp-examples",
# std
#"embassy-std",
#"embassy-std-examples",
]
[profile.dev]
codegen-units = 1
debug = 2
debug-assertions = true
incremental = false
opt-level = 3
overflow-checks = true
[profile.release]
codegen-units = 1
debug = 2
debug-assertions = false
incremental = false
lto = "fat"
opt-level = 's'
overflow-checks = false
# do not optimize proc-macro crates = faster builds from scratch
[profile.dev.build-override]
codegen-units = 8
debug = false
debug-assertions = false
opt-level = 0
overflow-checks = false
[profile.release.build-override]
codegen-units = 8
debug = false
debug-assertions = false
opt-level = 0
overflow-checks = false

View File

@ -1,58 +0,0 @@
[workspace]
members = [
"embassy",
"embassy-traits",
"embassy-nrf",
"embassy-stm32",
"embassy-stm32f4",
"embassy-stm32l0",
"embassy-nrf-examples",
"embassy-stm32f4-examples",
"embassy-macros",
"embassy-extras",
]
# embassy-std enables std-only features. Since Cargo resolves all features
# for all crates in the workspace together, including it would result in
# incompatible features enabled in embassy.
exclude = [
"embassy-std",
"embassy-std-examples",
"embassy-rp",
"embassy-rp-examples",
]
[profile.dev]
codegen-units = 1
debug = 2
debug-assertions = true
incremental = false
opt-level = 3
overflow-checks = true
[profile.release]
codegen-units = 1
debug = 2
debug-assertions = false
incremental = false
lto = "fat"
opt-level = 's'
overflow-checks = false
# do not optimize proc-macro crates = faster builds from scratch
[profile.dev.build-override]
codegen-units = 8
debug = false
debug-assertions = false
opt-level = 0
overflow-checks = false
[profile.release.build-override]
codegen-units = 8
debug = false
debug-assertions = false
opt-level = 0
overflow-checks = false
[patch.crates-io]