Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ env:
CARGO_LLVM_COV_VERSION: "0.6.21"
CARGO_MUTANTS_VERSION: "25.3.1"
CARGO_RDME_VERSION: "1.5.0"
CARGO_SORT_VERSION: "2.0.2"
CARGO_UDEPS_VERSION: "0.1.60"
CARGO_WORKSPACES_VERSION: "0.4.1"
SCCACHE_VERSION: "v0.12.0"
Expand Down Expand Up @@ -115,7 +116,7 @@ jobs:
- name: Install Cargo Tools
uses: taiki-e/install-action@v2.62.62
with:
tool: cargo-audit@${{ env.CARGO_AUDIT_VERSION }}, cargo-rdme@${{ env.CARGO_RDME_VERSION }}, cargo-workspaces@${{ env.CARGO_WORKSPACES_VERSION }}, cargo-ensure-no-default-features@${{ env.CARGO_ENSURE_NO_DEFAULT_FEATURES_VERSION }}, cargo-ensure-no-cyclic-deps@${{ env.CARGO_ENSURE_NO_CYCLIC_DEPS_VERSION }}, cargo-deny@${{ env.CARGO_DENY_VERSION }}
tool: cargo-audit@${{ env.CARGO_AUDIT_VERSION }}, cargo-rdme@${{ env.CARGO_RDME_VERSION }}, cargo-workspaces@${{ env.CARGO_WORKSPACES_VERSION }}, cargo-ensure-no-default-features@${{ env.CARGO_ENSURE_NO_DEFAULT_FEATURES_VERSION }}, cargo-ensure-no-cyclic-deps@${{ env.CARGO_ENSURE_NO_CYCLIC_DEPS_VERSION }}, cargo-deny@${{ env.CARGO_DENY_VERSION }}, cargo-sort@${{ env.CARGO_SORT_VERSION }}

# execute
- name: Clippy
Expand All @@ -124,6 +125,8 @@ jobs:
run: cargo audit
- name: Format
run: cargo fmt -- --check
- name: Cargo.toml Format
run: cargo sort --check --grouped --workspace
- name: Docs
run: cargo doc --no-deps --workspace --all-features
- name: Rdme
Expand Down
13 changes: 7 additions & 6 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ thread_aware_macros_impl = { path = "crates/thread_aware_macros_impl", default-f

# external dependencies
alloc_tracker = { version = "0.5.9", default-features = false }
anyhow = { version = "1.0.100", default-features = false }
anyhow = { version = "1.0.100", default-features = false }
bytes = { version = "1.11.0", default-features = false }
criterion = { version = "0.7.0", default-features = false }
derive_more = { version = "2.0.1", default-features = false }
Expand All @@ -54,23 +54,23 @@ mutants = { version = "0.0.3", default-features = false }
new_zealand = { version = "1.0.1", default-features = false }
nm = { version = "0.1.21", default-features = false }
once_cell = { version = "1.21.3", default-features = false }
pretty_assertions = { version = "1.4.1", default-features = false }
prettyplease = { version = "0.2.37", default-features = false }
pretty_assertions = { version = "1.4.1", default-features = false }
proc-macro2 = { version = "1.0.103", default-features = false }
quote = { version = "1.0.42", default-features = false }
rand = { version = "0.9.2", default-features = false }
regex = { version = "1.12.2", default-features = false }
regex = { version = "1.12.2", default-features = false }
serde = { version = "1.0.228", default-features = false }
serde_json = { version = "1.0.145", default-features = false }
smallvec = { version = "1.15.1", default-features = false }
static_assertions = { version = "1.1.0", default-features = false }
syn = { version = "2.0.111", default-features = false }
thiserror = { version = "2.0.17", default-features = false }
thiserror = { version = "2.0.17", default-features = false }
tokio = { version = "1.48.0", default-features = false }
tracing = { version = "0.1.41", default-features = false }
tracing-subscriber = { version = "0.3.20", default-features = false }
typeid = { version = "1.0.3", default-features = false }
trybuild = { version = "1.0.114", default-features = false }
typeid = { version = "1.0.3", default-features = false }
xxhash-rust = { version = "0.8.15", default-features = false }

[workspace.lints.rust]
Expand Down Expand Up @@ -120,8 +120,9 @@ unnecessary_safety_doc = "warn"
unneeded_field_pattern = "warn"
unused_result_ok = "warn"
unwrap_used = "warn"

#
# Below are undesirable lint rules that are enabled by the categories above but are not useful.
#

# This lint in many cases produces less readable code and is not worth the trouble.
option_if_let_else = "allow"
Expand Down
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,10 @@ We strive to deliver high-quality code and as such, we've put in place a number

- **Source Formatting**. We ensure the source code complies with the Rust standard format.

- **Dependency Auditing**. We use [`cargo-audit`](https://aka.ms/crates.io/crates/cargo-audit) to be alerted of
- **Cargo.toml Formatting**. We use [`cargo-sort`](https://crates.io/crates/cargo-sort) to keep Cargo.toml
files in a consistent format and layout.

- **Dependency Auditing**. We use [`cargo-audit`](https://crates.io/crates/cargo-audit) to be alerted of
any security vulnerabilities in our dependencies.

- **Unsafe Verification**. We use Miri to verify that our unsafe code doesn't induce undefined behaviors.
Expand Down
24 changes: 12 additions & 12 deletions crates/bytesbuf/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,18 @@ license-file.workspace = true
homepage.workspace = true
repository.workspace = true

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"bytes::bytes::Bytes",
"bytes::buf::buf_impl::Buf",
"bytes::buf::uninit_slice::UninitSlice",
"bytes::buf::buf_mut::BufMut",
]

[features]
default = []
fakes = []

[dependencies]
bytes = { workspace = true, features = ["std"] }
infinity_pool.workspace = true
Expand All @@ -34,10 +46,6 @@ testing_aids.workspace = true
[lints]
workspace = true

[features]
default = []
fakes = []

[[bench]]
name = "buf"
harness = false
Expand All @@ -49,11 +57,3 @@ harness = false
[[bench]]
name = "view"
harness = false

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"bytes::bytes::Bytes",
"bytes::buf::buf_impl::Buf",
"bytes::buf::uninit_slice::UninitSlice",
"bytes::buf::buf_mut::BufMut",
]
36 changes: 18 additions & 18 deletions crates/data_privacy/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,38 +17,38 @@ license-file.workspace = true
homepage.workspace = true
repository.workspace = true

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"serde::*",
"serde_core::de::*",
"serde_core::ser::*",
"data_privacy_macros::*",
]

[features]
default = ["serde"]
serde = ["dep:serde"]
xxh3 = ["dep:xxhash-rust"]

[dependencies]
data_privacy_macros.workspace = true
serde = { workspace = true, optional = true, default-features = false, features = ["derive", "std"] }
xxhash-rust = { workspace = true, optional = true, features = ["xxh3"] }

[dev-dependencies]
derive_more = { workspace = true, features = ["constructor", "from"] }
once_cell = { workspace = true, features = ["std"] }
mutants.workspace = true
once_cell = { workspace = true, features = ["std"] }
serde = { workspace = true, features = ["derive", "std"] }
serde_json = { workspace = true, features = ["std"] }

[features]
default = ["serde"]
serde = ["dep:serde"]
xxh3 = ["dep:xxhash-rust"]

[lints]
workspace = true

[[example]]
name = "employees"
path = "examples/employees/main.rs"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"serde::*",
"serde_core::de::*",
"serde_core::ser::*",
"data_privacy_macros::*",
]
8 changes: 3 additions & 5 deletions crates/data_privacy_macros/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ license-file.workspace = true
homepage.workspace = true
repository.workspace = true

[package.metadata.cargo_check_external_types]
allowed_external_types = ["data_privacy_macros::*"]

[lib]
proc-macro = true

Expand All @@ -28,8 +31,3 @@ mutants.workspace = true

[lints]
workspace = true

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"data_privacy_macros::*",
]
16 changes: 8 additions & 8 deletions crates/data_privacy_macros_impl/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,22 +17,22 @@ license-file.workspace = true
homepage.workspace = true
repository.workspace = true

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"proc_macro2::TokenStream",
"syn::error::Error",
"syn::error::Result",
]

[dependencies]
proc-macro2.workspace = true
quote.workspace = true
syn = { workspace = true, features = ["derive", "full", "parsing", "printing", "proc-macro"] }

[dev-dependencies]
mutants.workspace = true
insta = { workspace = true, features = ["yaml"] }
mutants.workspace = true
prettyplease.workspace = true

[lints]
workspace = true

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"proc_macro2::TokenStream",
"syn::error::Error",
"syn::error::Result",
]
8 changes: 3 additions & 5 deletions crates/fundle/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ license-file.workspace = true
homepage.workspace = true
repository.workspace = true

[package.metadata.cargo_check_external_types]
allowed_external_types = ["fundle_macros::*"]

[dependencies]
fundle_macros.workspace = true

Expand All @@ -25,8 +28,3 @@ trybuild.workspace = true

[lints]
workspace = true

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"fundle_macros::*",
]
1 change: 0 additions & 1 deletion crates/fundle_macros/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ repository.workspace = true
[lib]
proc-macro = true


[dependencies]
fundle_macros_impl.workspace = true

Expand Down
31 changes: 17 additions & 14 deletions crates/fundle_macros_impl/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,27 +17,30 @@ license-file.workspace = true
homepage.workspace = true
repository.workspace = true

[package.metadata.cargo_check_external_types]
allowed_external_types = ["proc_macro2::*", "syn::error::*"]

[dependencies]
syn = { workspace = true, features = ["derive", "parsing", "proc-macro", "full", "extra-traits", "printing"] }
quote.workspace = true
proc-macro2.workspace = true

[dev-dependencies.syn]
workspace = true
features = ["derive", "parsing", "proc-macro", "full", "extra-traits", "printing", "clone-impls"]
quote.workspace = true
syn = { workspace = true, features = ["derive", "parsing", "proc-macro", "full", "extra-traits", "printing"] }

[dev-dependencies]
mutants.workspace = true
insta.workspace = true
mutants.workspace = true
prettyplease.workspace = true

[lints]
[dev-dependencies.syn]
workspace = true


[package.metadata.cargo_check_external_types]
allowed_external_types = [
"proc_macro2::*",
"syn::error::*",
features = [
"derive",
"parsing",
"proc-macro",
"full",
"extra-traits",
"printing",
"clone-impls",
]

[lints]
workspace = true
16 changes: 7 additions & 9 deletions crates/ohno/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,13 @@ license-file.workspace = true
homepage.workspace = true
repository.workspace = true

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.cargo_check_external_types]
allowed_external_types = ["ohno_macros::*"]

[features]
test-util = []

Expand All @@ -34,12 +41,3 @@ tokio = { workspace = true, features = ["macros", "rt", "time", "rt-multi-thread

[lints]
workspace = true

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"ohno_macros::*",
]
18 changes: 8 additions & 10 deletions crates/thread_aware/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,27 +17,25 @@ license-file.workspace = true
homepage.workspace = true
repository.workspace = true

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.cargo_check_external_types]
allowed_external_types = ["thread_aware_macros::ThreadAware"]

[features]
default = ["derive"]
derive = ["dep:thread_aware_macros"]
threads = ["dep:many_cpus"]

[dependencies]
mutants.workspace = true
many_cpus = { workspace = true, optional = true }
mutants.workspace = true
thread_aware_macros = { workspace = true, optional = true }

[dev-dependencies]
thread_aware_macros = { workspace = true }

[lints]
workspace = true

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"thread_aware_macros::ThreadAware"
]
18 changes: 9 additions & 9 deletions crates/thread_aware_macros_impl/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,15 @@ license-file.workspace = true
homepage.workspace = true
repository.workspace = true

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"proc_macro2::*",
"syn::attr::*",
"syn::error::*",
"syn::path::*",
"syn::ty::*",
]

[dependencies]
proc-macro2.workspace = true
quote.workspace = true
Expand All @@ -28,12 +37,3 @@ prettyplease.workspace = true

[lints]
workspace = true

[package.metadata.cargo_check_external_types]
allowed_external_types = [
"proc_macro2::*",
"syn::attr::*",
"syn::error::*",
"syn::path::*",
"syn::ty::*",
]
Loading