Skip to main content

mz-dependencies

Trigger: adding, removing, or updating a Rust dependency, changing crate features, touching Cargo.toml or Cargo.lock, "cargo update", "add a crate", "bump a dependency", or a new dependency license in Materialize.

Source facts

Repository
MaterializeInc/materialize
Last source activity
October 23, 2026 at 16:11
Detected SKILL.md language
English
Stars
6,399
Forks
517

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
mz-dependencies
description
Trigger: adding, removing, or updating a Rust dependency, changing crate features, touching Cargo.toml or Cargo.lock, "cargo update", "add a crate", "bump a dependency", or a new dependency license in Materialize.
# Dependency management ## Workspace dependencies All third-party versions declared in `[workspace.dependencies]` in root `Cargo.toml`. Members use `dep.workspace = true` or `dep = { workspace = true, optional = true }`. * **Add new dep**: add to `[workspace.dependencies]` in root `Cargo.toml` first, then `dep.workspace = true` in member crate. * **Never inline version** in member `Cargo.toml` — `bin/lint-cargo` enforces. * **Update version**: change once in root `Cargo.toml`. * Cargo unifies features workspace-wide, so workspace declaration is union of all features across crates. Members just use `dep.workspace = true`. ## Cargo.lock Never regenerate full Cargo.lock. When changing deps: * **Add dep or change features**: run `cargo check` — updates only what changed. * **Update specific crate**: `cargo update -p <crate>` (optional `--precise <version>`). * **Never bare `cargo update`** — bumps every semver-compatible dep, causes unrelated breakage from transitive changes. * **If lock regenerated**, diff before commit (`git diff Cargo.lock | grep '^[+-]version'`) and pin back unintended bumps with `cargo update -p <crate> --precise <old-version>`. ## Licensing Two files control license policy, **keep in sync**: `deny.toml` (`[licenses].allow`) and `about.toml` (`accepted`). New dep with new license not already allowed: add SPDX identifier to both.
View on GitHub