docs: improve project documentation and metadata - #319
Conversation
7eebe60 to
70ddc0c
Compare
There was a problem hiding this comment.
🟡 Changes recommended
The README’s async dependency snippet is not valid TOML as written (missing [dependencies]), which can break copy/paste quick-start setup.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
This review doesn't count toward merge requirements. Sign up for the private preview to control whether Copilot approvals count.
Pull request overview
This PR rewrites the repository README to better explain ttrpc-rust’s purpose, supported RPC modes/transports, and provide clearer quick-start workflows (examples + build-time code generation).
Changes:
- Restructures the README around features/capabilities, quick start, transports, workspace crates, and compatibility notes.
- Adds badges and direct links to docs.rs, crates.io, CI, license, examples, and protocol docs.
- Updates the getting-started guidance to emphasize build-time (pure Rust) code generation without requiring a
protocinstall.
File summaries
| File | Description |
|---|---|
| README.md | Reorganized and expanded documentation; adds badges/links; updates quick-start and codegen guidance. |
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 1
- Review effort level: Lite
We're testing this review assessment. Please use 👍 or 👎 to tell us if it's correct.
5eba7a6 to
aea9dc6
Compare
aea9dc6 to
f2a4b38
Compare
Improve the project overview, feature documentation, and quick-start guide. Signed-off-by: Tim Zhang <tim@hyper.sh>
f2a4b38 to
f99b32f
Compare
Apply the non-core project boilerplate and remove stale issue links. Signed-off-by: Tim Zhang <tim@hyper.sh>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 4 out of 4 changed files in this pull request and generated no new comments.
Suppressed comments (4)
README.md:161
- These example source links reference
blob/master, which may be a broken branch name for this repository. Update them toblob/main(or another branch that exists) to avoid dead links.
See the complete [synchronous](https://github.com/containerd/ttrpc-rust/blob/master/example/server.rs) and [asynchronous](https://github.com/containerd/ttrpc-rust/blob/master/example/async-server.rs) servers, plus the [streaming example](https://github.com/containerd/ttrpc-rust/blob/master/example/async-stream-server.rs), for production-shaped implementations.
README.md:196
- This workspace link points at
tree/master, which will break if the repository doesn’t have amasterbranch. Update totree/mainto match the repo’s current default branch naming.
| [`example`](https://github.com/containerd/ttrpc-rust/tree/master/example) | End-to-end unary and streaming examples |
README.md:201
- This link references
blob/master, which may be a non-existent branch in this repository. Update it toblob/mainso therust-toolchain.tomllink stays valid.
- Repository development toolchain: see [`rust-toolchain.toml`](https://github.com/containerd/ttrpc-rust/blob/master/rust-toolchain.toml)
README.md:12
- The README links use
blob/masterandtree/master, but this repo’s default branch appears to bemain(the PR diff is againstmain). These URLs will 404 if themasterbranch does not exist; usemainconsistently for GitHub links.
This issue also appears in the following locations of the same file:
- line 161
- line 196
- line 201
[](https://github.com/containerd/ttrpc-rust/blob/master/LICENSE)
[API documentation](https://docs.rs/ttrpc) · [Examples](https://github.com/containerd/ttrpc-rust/tree/master/example) · [ttrpc protocol](https://github.com/containerd/ttrpc/blob/main/PROTOCOL.md) · [Report an issue](https://github.com/containerd/ttrpc-rust/issues)
What changed
protoc.Why
The previous README was brief, difficult to scan, and mixed outdated setup details with feature documentation. The repository metadata also did not fully follow the current containerd non-core project boilerplate and contained issue guidance unrelated to ttrpc-rust.
The new structure helps users quickly understand what ttrpc-rust is, when to use it, which features and transports are supported, and how to get a working client/server setup while keeping the repository aligned with containerd community guidance.
Impact
Documentation and project metadata only. There are no runtime or API changes.
Validation
cargo test --workspace --all-featuresgit diff --check