socketry-project
Shared conventions and development tasks for Rust projects in the Socketry organization.
Motivation
Rust projects should share a small set of clear conventions and a reliable release process without repeating task wiring in every repository.
Usage
Install the launcher and create the private task package:
Let Cargo select the current dependency version:
In bake/Cargo.toml, prefix the version selected by Cargo with >= to make it an open-ended minimum. Keep that actual minimum in the manifest and the resolved version in Cargo.lock; the setup documentation does not need a copy of either version.
Then run cargo bake --regenerate again to link the dependency's tasks. The command keeps generated links separate from task source, so no manual import in main.rs is needed. Run cargo bake --list to see the available tasks. The open-ended minimum requirement keeps this development dependency eligible for newer releases. Cargo.lock records the selected version for reproducible builds; update it deliberately when adopting a newer release.
This adds the standard Cargo, release, license, Readme, Markdown, agent-context, and testing tasks, including test and test:external. It also registers a version-bump hook that updates the project's standard files.
See the repository setup skill for the minimal Cargo configuration and the conventions for repository layout, documentation, and code conventions. The Rust Repository Layout explains source organization. The testing skill sets expectations and points to bake-test-rust for task and workflow details.
Releasing
Prepare a release with cargo bake cargo:version:patch (or minor, major, or bump --version X.Y.Z), then run cargo bake cargo:release and open a pull request. After review and merge, GitHub Actions publishes the release when the configured crates-io environment approves it, then creates or updates the matching GitHub Release from releases.md. See the shared Releasing skill for the standard release process.
Releases
See releases.md for the full release history.
v0.3.8
- Let Cargo select setup dependency versions while retaining open-ended minimum requirements.
- Require current agent-context and readme providers so installed guidance preserves repository instructions and shared conventions.
v0.3.7
- Require a stable aggregate test and coverage result alongside publishing checks.
- Clarify merge gates and repository-owned agent guidance in the shared conventions.
v0.3.6
- Normalize standard project Markdown files after version bumps.
- Fix the version bump hook's invocation of the Markdown normalizer.
- Include
bake-markdown0.3.0 in the shared task set so version bumps use hyphen markers for unordered lists.
See Also
Contributing
Please open an issue or pull request on GitHub.
Agent Context
Run cargo bake agent:context:install to install shared context and skills. Read .agents/context/index.md to find relevant guides, follow agents.md if present, and apply skills under .agents/skills/. The installer preserves repository-owned agents.md; it does not create or regenerate that file.