Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Path to GitHub client #395

Open
2 of 9 tasks
augustuswm opened this issue Mar 29, 2023 · 3 comments
Open
2 of 9 tasks

Path to GitHub client #395

augustuswm opened this issue Mar 29, 2023 · 3 comments
Assignees

Comments

@augustuswm
Copy link
Contributor

augustuswm commented Mar 29, 2023

Currently the octorust client is generated out of the third-part-api-clients repo against an outdated GitHub spec. Ideally progenitor could be used to generate this client against the current live spec instead. This is a tracking issue to track the list of known features needed to make this possible. See the individual tickets for more details.

For reference this list was compiled against: https://github.com/github/rest-api-description/blob/main/descriptions/api.github.com/api.github.com.json

Tasks

Preview Give feedback
  1. augustuswm
geoffreygarrett added a commit to geoffreygarrett/progenitor that referenced this issue Jul 13, 2024
…er#395)

Add support for multiple response types in the generated client, including handling JSON deserializable types, empty bodies, streams of bytes, and upgraded connections.

This change addresses the following issues:
- Multiple response types not supported (oxidecomputer#344)
- Path to GitHub client (oxidecomputer#395)
@geoffreygarrett
Copy link

geoffreygarrett commented Jul 13, 2024

@augustuswm & @ahl, which of the above tasks relate to the following:

--- stdout
cargo:rerun-if-changed=./api.github.com.json
--- stderr
thread 'main' panicked at progenitor-github/build.rs:10:50:
called `Result::unwrap()` on an `Err` value: Error("data did not match any variant of untagged enum ReferenceOr", line: 65608, column: 3)

(?)

I could only find #348. If desired my setup is as available in the zip in the PR demo #857.

EDIT:

Seems to be the lack of support for JSON schema types in OpenAPI deserialisation.

 "type": ["string", "null"],

I guess I'll just parse it to the nullable syntax in OpenAPI for now.

@ahl
Copy link
Collaborator

ahl commented Jul 16, 2024

Seems to be the lack of support for JSON schema types in OpenAPI deserialisation.

Yeah, that works in 3.1, but not in 3.0.x. Progenitor will support 3.1 at some point, but 1. there aren't that many 3.1 docs out there and 2. I have a stack of work I want to do in order to "propertly" support it

@geoffreygarrett
Copy link

@ahl I'm not sure if the project is open to PRs etc. or if development will continue, but there's this I was hoping might get a review #857.

@augustuswm augustuswm self-assigned this Nov 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants