Conversation
There was a problem hiding this comment.
Pull request overview
Updates the Fluss Rust client crate’s README and crate metadata to provide a more complete “getting started” experience (KV + log table flow) and clearer distribution info for storage backends.
Changes:
- Reworked
crates/fluss/README.mdwith a fuller async usage example, badges, and a storage-backend feature matrix. - Updated
crates/fluss/Cargo.tomlpackage metadata (description/homepage/documentation, plus minor manifest cleanup). - Updated workspace
Cargo.tomlhomepage URL.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
crates/fluss/README.md |
Adds badges, a combined KV+log example, and documents storage feature flags. |
crates/fluss/Cargo.toml |
Adjusts published crate metadata and simplifies prost-build spec. |
Cargo.toml |
Updates workspace homepage URL. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
9b7d603 to
8f52e79
Compare
| description = { workspace = true } | ||
| homepage = { workspace = true } | ||
| description = "The official rust client of Apache Fluss (Incubating)" | ||
| homepage = "https://clients.fluss.apache.org/" |
There was a problem hiding this comment.
will wait util https://clients.fluss.apache.org/ is read.
|
@fresh-borzoni @leekeiabstraction Could you please help review this? |
There was a problem hiding this comment.
@luoyuxia TY, LGTM overall, left a couple of comments, but minors
| The following example shows both **primary key (KV) tables** and **log tables** in one flow: connect, create a KV table (upsert + lookup), then create a log table (append + scan). | ||
|
|
||
| ## Build | ||
| ```rust |
There was a problem hiding this comment.
i wonder how easy it is to maintain this code snippet long-term in README.md, since it's not compiled, so API changes will silently make it stale. We already have examples in crates/examples/ that cover these flows.
Would we consider to keep short quickstart snippet to just give users a feel for API, and link example folder for detailed workflows. This was inspired by what OpenDAL does: https://github.com/apache/opendal/blob/main/core/README.md
There was a problem hiding this comment.
This crossed my mind as well (I partially mitigate for python package docs by using generating it from other existing website documentations).
Generally there are duplications in test cases, examples, documentations and package readmes.
It sounds like there's an opportunity to improve this e.g., test cases as ground truth, scripts then populate docs code snippets from test cases. This way, there's less effort in separately maintaining doc as well as ensuring that documents are accurate. The work it saves increases as we have more language bindings. The script can even highlight gaps in testing /feature.
But this might be something that we consider in the mid/longer term.
It's certainly worth coming up with a proposal for it (there might be some other OS project which already solves this.) Happy to collaborate on proposing something.
There was a problem hiding this comment.
Thanks for the thoughtful discussion! I think we can keep the current approach for now —
the snippet is relatively small, and the API it demonstrates is stable enough that it's
unlikely to go stale anytime soon. Let's leave it as-is and revisit if it becomes a
real maintenance pain point down the road.
There was a problem hiding this comment.
cool! Let's keep as is and revisit if becoming an issue long term! Thanks for the discussion!
leekeiabstraction
left a comment
There was a problem hiding this comment.
TY for the PR. LGTM!
Purpose
Linked issue: close #xxx
See https://staging.crates.io/crates/fluss-rs-readme-preview
to preview the page in crate
Brief change log
Tests
API and Format
Documentation