From 1c84036c6761a77cc3b5e3ff47be5a281bd20146 Mon Sep 17 00:00:00 2001 From: bill fumerola Date: Tue, 10 Jun 2025 11:47:50 -0700 Subject: [PATCH] chore(words): lint using google style --- .vale.ini | 5 ++++- CONTRIBUTING.md | 23 ++++++++++++++--------- README.md | 15 ++++++++------- devenv.nix | 1 + 4 files changed, 27 insertions(+), 17 deletions(-) diff --git a/.vale.ini b/.vale.ini index 68343c9..5b19689 100644 --- a/.vale.ini +++ b/.vale.ini @@ -1,6 +1,9 @@ MinAlertLevel = suggestion +StylesPath = .vale.styles +Packages = Google + [*.md] -BasedOnStyles = Vale +BasedOnStyles = Vale, Google Vale.Spelling = warning diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 75e0e9f..9f9981c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,21 +1,22 @@ -# Contributing to the Project +# Contributing to the project Thank you for your interest in contributing to wasm-component-trampoline. -We welcome contributions from the community and appreciate your efforts to improve the codebase. +We welcome community contributions and appreciate your efforts to improve the codebase. -## Pre-requisite Knowledge +## Pre-requisite knowledge Before you start contributing, please ensure you have the following: -1. A working knowledge of Rust and [WebAssembly](https://webassembly.org/) (or a willingness to learn). + +1. A working knowledge of [Rust](https://www.rust-lang.org/) and [WebAssembly](https://webassembly.org/) or a willingness to learn. 1. Familiarity with [Wasmtime](https://docs.wasmtime.dev/) as it relates to the [WebAssembly component model](https://component-model.bytecodealliance.org/). -## How to Develop +## How to develop -We use [devenv](https://devenv.sh/) to manage our development environment. +Use [devenv](https://devenv.sh/) to manage the development environment. 1. **Clone the Repository**: You know how to do that. -1. **Install direnv**: Follow the instructions at [direnv Installation](https://direnv.net/docs/installation.html) to install direnv. -1. **Install Devenv**: Follow the instructions at [Devenv Installation](https://devenv.sh/docs/installation) to install devenv. +1. **Install direnv**: Follow the instructions at [direnv Installation](https://direnv.net/docs/installation.html) to install `direnv`. +1. **Install Devenv**: Follow the instructions at [devenv Installation](https://devenv.sh/docs/installation) to install `devenv`. 1. `direnv allow $PWD` and/or `devenv shell` to enter the development environment. 1. `devenv test` to run all the tests locally. 1. (OPTIONAL) `devenv shell wasm-trampoline-coverage` to generate code coverage. `cargo llvm-cov report --html --open --release` to view a coverage report in your browser. @@ -24,7 +25,9 @@ We use [devenv](https://devenv.sh/) to manage our development environment. [License](LICENSE) -## Contribution Agreement +## Certifying contributions + + [Developer Certificate of Origin](https://developercertificate.org/) Version 1.1 @@ -60,3 +63,5 @@ By making a contribution to this project, I certify that: personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved. + + diff --git a/README.md b/README.md index 26ddf0e..fb96aa7 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,19 @@ -WASM Component Trampoline -========================= +# WebAssembly Component Trampoline [![Crates.io](https://img.shields.io/crates/v/wasm-component-trampoline.svg)](https://crates.io/crates/wasm-component-trampoline) [![Documentation](https://docs.rs/wasm-component-trampoline/badge.svg)](https://docs.rs/wasm-component-trampoline) ![License](https://img.shields.io/crates/l/wasm-component-trampoline.svg) -Library for linking WASM components together using host "trampoline" functions, that can securely read/modify the host -context between component calls. +Library for linking WebAssembly components together using host "trampoline" functions. +Trampoline functions can read and modify the provided context between inter-component calls. +Guests will not directly call other components, but must go through the host trampoline functions. -Designed for versioned WIT (WASM Interface Type) components, but can be used with others. Versioned dependency -resolution between components is done in the same style as the Wasmtime component linker +Specifically designed for versioned [WIT](https://component-model.bytecodealliance.org/design/wit.html) +(WASM Interface Type) packages, but users can intercept any components calls. +Versioned dependency resolution occurs between components in the same style as the Wasmtime component linker ([docs](https://docs.wasmtime.dev/api/wasmtime/component/struct.Linker.html#names-and-semver)). -![WASM Component Trampoline Example Diagram](https://raw.githubusercontent.com/andyl-technologies/wasm-component-trampoline/refs/heads/master/docs/images/example_diagram.svg) +![Trampoline Example Diagram](https://raw.githubusercontent.com/andyl-technologies/wasm-component-trampoline/refs/heads/master/docs/images/example_diagram.svg) ## Installation diff --git a/devenv.nix b/devenv.nix index 29d55c8..f14cc64 100644 --- a/devenv.nix +++ b/devenv.nix @@ -52,6 +52,7 @@ ''; git-hooks.hooks.actionlint.enable = true; + git-hooks.hooks.check-merge-conflicts.enable = true; git-hooks.hooks.nixfmt-rfc-style.enable = true; git-hooks.hooks.vale.enable = true;