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

Migrating name reconciliation and resolution to https://github.com/gnames/gnames #893

Open
dimus opened this issue May 11, 2022 · 4 comments

Comments

@dimus
Copy link

dimus commented May 11, 2022

Hi @sckott I am getting close to making a stable v1.0.0 for GNverifier (+ GNames, GNmatcher). Currently I have a v1.0.0-RC1, and,
if all goes well, I will release v1.0.0 (with, probably, /api/v1) in the last week of May 2022, or the first week of June.

This brings a question about https://resolver.globalnames.org. I know that Taxize uses its API, and it was serving us well so far.
However the project's code is dated, and is about 30 times slower than GNverifier. Also from time to time it gets into Denial of Service mode, if people start to pound it too much. The new code is much more scalable and reliable.

Because of that I would like to start sunsetting resolver.globalnames.org slowly when GNverifier & Co will reach v1.0.0. How do you feel about migrating to the new REST api after https://github.com/gnames/gnames v1.0.0 is out? Its current description is at https://apidoc.globalnames.org/gnames-beta,
and it will migrate to https://apidoc.globalnames.org/gnames when it is ready for /api/v1.
I suspect that sunsetting will take all 2022, and may be, most of 2023, depending on how fast people will migrate to new API.

I am cheating a little, because /api/v1 exists already, but practically noone uses it anymore, so I feel it is safe to move /api/v0 to /api/v1 without making people angry. Then I can synchronize API version with the app version, if needed.

@sckott
Copy link
Contributor

sckott commented May 11, 2022

Hi @dimus 👋🏽

I've moved on to a new job and @zachary-foster is the new maintainer. Zach, what do you think? You could move to the new API or if you want to limit taxize scope you could drop it. Up to you.

@zachary-foster
Copy link
Collaborator

I will have to take a look and perhaps learn more about APIs in general, but I would like to keep this functionality in taxize.

@dimus
Copy link
Author

dimus commented May 11, 2022

Congratulations on your new job @sckott!
@zachary-foster I did try my best to keep API simple especially for GET: https://verifier.globalnames.org/api/v0/verifications/Monochamus%20galloprovincialis?data_sources=1%7C12%7C170&all_matches=true

The only thing that will change in a few weeks is /api/v0 -> /api/v1

@dimus
Copy link
Author

dimus commented Aug 29, 2022

@zachary-foster, I moved GN tools to v1.0.0, the APIs are described here:

name verification: https://apidoc.globalnames.org/gnames

name finding: https://apidoc.globalnames.org/gnfinder

name parsing: https://apidoc.globalnames.org/gnparser

And the example I gave before is still working:

https://verifier.globalnames.org/api/v1/verifications/Monochamus%20galloprovincialis?data_sources=1%7C12%7C170&all_matches=true

I am planning to keep v1.0.0 to be stable and backward compatible. In case if there will be a necessity to create v2 I will keep v1 running in parallel

Web-interfaces are at:

https://finder.globalnames.org

https://verifier.globalnames.org

https://parser.globalnames.org

Github:

https://github.com/gnames/gnfinder

https://github.com/gnames/gnverifier

https://github.com/gnames/gnparser

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