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

Migrate to TypeScript #64

Open
queicherius opened this issue May 10, 2019 · 7 comments · May be fixed by #75
Open

Migrate to TypeScript #64

queicherius opened this issue May 10, 2019 · 7 comments · May be fixed by #75

Comments

@queicherius
Copy link
Owner

No description provided.

@darthmaim
Copy link
Contributor

This would be useful so other devs don't need to define files like https://github.com/Archomeda/gw2-console/blob/master/types/gw2api-client.d.ts

@ogrady
Copy link

ogrady commented Apr 23, 2023

I am currently working on a migration, but obviously, the process is quite cumbersome as defining all possible response types takes a lot of time.

What's the scope of this issue? Just a basic migration with several result types available and some possible still being any, or a full migration with all types being present?

@queicherius
Copy link
Owner Author

I am currently working on a migration, but obviously, the process is quite cumbersome as defining all possible response types takes a lot of time.

Yeah, I tried auto-generating some types before as well, but the quality of those was pretty meh.

What's the scope of this issue? Just a basic migration with several result types available and some possible still being any, or a full migration with all types being present?

I think the goal is definitely full type support with all types. But I'd be more than happy to merge a PR with some types, it doesnt have to be all of them. 👍 Maybe even start with something small, so we can align the style.

@ogrady
Copy link

ogrady commented Apr 23, 2023

Okay, I'll just poke a bit around and see how far I can get. It may actually require slight adjustments in the API if you'd like to have the types as strict as possible, as the rolling schema version is hard to express via types.
I will open a PR as soon as I have a somewhat stable state. Just wanted to make sure the issue is still relevant beforehand. :)

@ogrady ogrady linked a pull request May 3, 2023 that will close this issue
@bmeulmeester
Copy link

Any update on this @ogrady @queicherius ?

@ogrady
Copy link

ogrady commented Dec 5, 2023

Hi everyone,

I defined most endpoints manually in my fork, but then got swamped with other projects and irl stuff. I hope to continue at some point, maybe around the holidays, but there is still a truckload of work to do.
I started semi-automating the process of reading the types from the wiki, which brought more consistency into the types. But the ones I did before that would require at least a second round to double-check them and carry over the comments from the wiki.
After that, we still need to assign the types to each endpoint, add testing, etc.

tl;dr: I have made good progress but had to pause.

@sickhippie
Copy link

sickhippie commented Jun 17, 2024

To anyone watching out for this one, I talked with @ogrady for a bit today and I'm going to take this issue over from the state of the latest commit on the open PR to try to wrap up the rest of it over the next few weeks (time permitting of course).

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

Successfully merging a pull request may close this issue.

5 participants