oxidecomputer / oxidecomputer/progenitor

docs for operations should link to their response types

Open
#715 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
1k
Forks
136
Avg merge
8h 36m
Merged PRs (30d)
14

Description

Today we show something like this:

fn instance_list(&self) -> InstanceList<'_>
List instances

Sends a GET request to /v1/instances

Arguments:

limit: Maximum number of items returned by a single call
page_token: Token returned by previous call to retrieve the subsequent page
project: Name or ID of the project
sort_by
ⓘ
let response = client.instance_list()
   .limit(limit)
   .page_token(page_token)
   .project(project)
   .sort_by(sort_by)
   .send()
   .await;

Fine, but what does that return? To figure it out, I have to click InstanceList, then click send, then click its return type. It would be useful if we had that return type linked directly from the docs.

Some other nits here:

  • could we make the example runnable / testable? (even if it's kind of janky)
  • should paginated endpoints (such as this one) show the use of the stream() call rather than send()?
  • should each of the arguments link to the appropriate type or to the function within the builder?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the generated documentation for the instance_list operation and trace the links from InstanceList through send() to its response type. Define completion as linking the operation directly to its response type; the issue also raises separate questions about runnable examples, stream() for pagination, and links for arguments, which need scope decisions.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.