Enable clippy's `redundant_field_names` lint (#10985)Seems like a clear enough improvement and also something useful to havea lint for as refactorings enable/disable this pattern over time, sothi
Enable clippy's `redundant_field_names` lint (#10985)Seems like a clear enough improvement and also something useful to havea lint for as refactorings enable/disable this pattern over time, sothis should help us stay consistent.
show more ...
More clearly flag internal crates as such (#10963)* More clearly flag internal crates as suchThis commit is an attempt to more clearly flag internal crates in thisproject as internal and not int
More clearly flag internal crates as such (#10963)* More clearly flag internal crates as suchThis commit is an attempt to more clearly flag internal crates in thisproject as internal and not intended for external use. Specifically:* Many crates are renamed from `wasmtime-foo` to `wasmtime-internal-foo`.* All of these crates now have `INTERNAL: ...` in their crates.io description.* All of these crates now have a warning at the top of their documentation discouraging use.This change is a result of rustsec/advisory-db#1999 where the goal is tobe crystal clear from a project perspective that usage of these cratesare highly discouraged and not supported. We'll still probably get suchadvisories but we won't be considering them CVEs from the project itselfdue to the internal nature of these crates and the discouragingwarnings.Some concrete changes used here are:* Inter-crate dependencies still use `wasmtime_foo` for naming and do so with Cargo's package-renaming features.* Crate renames are specified at the workspace level so the rename is only in one locations and all other inherit it.* Contribution documentation now has some brief guidelines about crate organization.* Update vet config* Update checks for wasmtime-fiberprtest:full* Update publish script* Another fiber rename* Fix some doc tests
Add `rust-version.workspace = true` to all crates (#9112)Right now this is only on some crates such as `wasmtime` itself and`wasmtime-cli`, but by applying it to all crates it helps with versions
Add `rust-version.workspace = true` to all crates (#9112)Right now this is only on some crates such as `wasmtime` itself and`wasmtime-cli`, but by applying it to all crates it helps with versionselection of those using just Cranelift for example.
Configure workspace lints, enable running some Clippy lints on CI (#7561)* Configure Rust lints at the workspace levelThis commit adds necessary configuration knobs to have lints configuredat th
Configure workspace lints, enable running some Clippy lints on CI (#7561)* Configure Rust lints at the workspace levelThis commit adds necessary configuration knobs to have lints configuredat the workspace level in Wasmtime rather than the crate level. Thisuses a feature of Cargo first released with 1.74.0 (last week) of the`[workspace.lints]` table. This should help create a more consistent setof lints applied across all crates in our workspace in addition topossibly running select clippy lints on CI as well.* Move `unused_extern_crates` to the workspace levelThis commit configures a `deny` lint level for the`unused_extern_crates` lint to the workspace level rather than theprevious configuration at the individual crate level.* Move `trivial_numeric_casts` to workspace level* Change workspace lint levels to `warn`CI will ensure that these don't get checked into the codebase andotherwise provide fewer speed bumps for in-process development.* Move `unstable_features` lint to workspace level* Move `unused_import_braces` lint to workspace level* Start running Clippy on CIThis commit configures our CI to run `cargo clippy --workspace` for allmerged PRs. Historically this hasn't been all the feasible due to theamount of configuration required to control the number of warnings onCI, but with Cargo's new `[lint]` table it's possible to have aone-liner to silence all lints from Clippy by default. This commit bydefault sets the `all` lint in Clippy to `allow` to by-default disablewarnings from Clippy. The goal of this PR is to enable selective accessto Clippy lints for Wasmtime on CI.* Selectively enable `clippy::cast_sign_loss`This would have fixed #7558 so try to head off future issues with thatby warning against this situation in a few crates. This lint is stillquite noisy though for Cranelift for example so it's not worthwhile atthis time to enable it for the whole workspace.* Fix CI errorprtest:full
Memcheck for Wasm guests in Wasmtime (#6820)* attempt at inserting things where i think they might belong + questions* entry hook + questions* commented out all changes, doc comment errors* f
Memcheck for Wasm guests in Wasmtime (#6820)* attempt at inserting things where i think they might belong + questions* entry hook + questions* commented out all changes, doc comment errors* fix doc comment* libcalls build now!!!!* initial check_malloc_exit setup* WIP: load/store hooks* hooks added + building* added valgrind library* made wasm-valgrind accessible in wasmtime* check_malloc filled in...* move valgrind_state to an appropriate part of instanceit works!!!!!* yay it's working! (?) i think??* stack tracing in progress* errors + num bytes displayed* initial valgrind configuration* valgrind conditional some warnings fixed* conditional compilation + CLI flag finished* panic!() changed to bail!()* started adding doc comments* added memory grow hook + fixed access size handling* removed test.wasm* removed malloc_twice.wat* doc comments in spec.rs* pr feedback addressed* ran cargo fmt* addressing more feedback* Remove fuzz crate from wmemcheck.* Review feedback and test fix.* add wasmtime-wmemcheck crate to publish allowlist.* fix build without compiler features* reorder crates in publish list* Add trampolines for libcalls on s390x.* Make wasmtime-wmemcheck dep an exact version requirement.---------Co-authored-by: iximeow <[email protected]>Co-authored-by: Chris Fallin <[email protected]>Co-authored-by: iximeow <[email protected]>