NASA-PDS / pds-api-client

Python library and API for accessing the online PDS Search API. This repository however only contains the utilities used to generate, test, document and demo the actual pds.api-client package. The library itself is only released on pypi (https://pypi.org/project/pds.api-client/) but not here on github
https://nasa-pds.github.io/pds-api-client/
Apache License 2.0
1 stars 2 forks source link

PDS API Client 1.0.0 cannot communicate with pds-gamma #2

Closed nutjob4life closed 3 years ago

nutjob4life commented 3 years ago

🐛 Describe the bug

The PDS API Client can't talk to pds-gamma again (as of 2021-03-28Z02:38:05).

📜 To Reproduce

$ python3 --version
Python 3.9.2
$ python3 -m venv venv
$ cd venv
$ bin/pip install --quiet pds.api_client
$ curl --silent --location --remote-name https://raw.githubusercontent.com/NASA-PDS/pds-api-client/master/client-demo.py
$ bin/python3 client-demo.py
Traceback (most recent call last):
…
ValueError: Invalid value for `ref`, must not be `None`

🕵️ Expected behavior

Pretty-printing of the API response.

📚 Version of Software Used

Output from validate -V:

$ validate -V
validate: Command not found.

🩺 Test Data / Additional context

No test data applicable save for client-demo.py. For additional context: the behavior of http://pds-gamma.jpl.nasa.gov/api/ seems to come and go; it sure makes developing a solution for https://github.com/NASA-PDS/pds-deep-archive/issues/7 tricky!

🏞Screenshots

Screen Shot 2021-03-28 at 9 37 55 PM

🖥 Desktop


Applicable requirements :unicorn:

jordanpadams commented 3 years ago

@nutjob4life is this still not working? looks like i can click a couple things successfully here: https://pds-gamma.jpl.nasa.gov/api/swagger-ui.html ?

nutjob4life commented 3 years ago

@jordanpadams yes, through-the-web is working. But the client API is not 😢

I'd prefer if the Deep Archive could use the client API!

jordanpadams commented 3 years ago

@nutjob4life agreed.

@tloubrieu-jpl can you help out here? you are using the client for your Jupyter work, so maybe you have some updated code and/or there is some config issue here?

tloubrieu-jpl commented 3 years ago

@nutjob4life you need to upgrade the client, pip install pds-api-client==0.4.0

Note that version 1.0.0 has been release by mistake... So this is not the latest. While I am writing that, I am seeing this is horrible. Next update should be 1.1 (unless there is a way to delete a pypi package version).

al-niessner commented 3 years ago

You can delete it but cannot reuse it. In other words, delete 1.0.0 then when you want to make a 1.0.0 you will have to make it 1.0.1 or 1.1.0 or 1.0 but pypi will remember you had 1.0.0 and prevent you from using it again.

On Mon, Mar 29, 2021 at 12:35 PM thomas loubrieu @.***> wrote:

@nutjob4life https://github.com/nutjob4life you need to upgrade the client, pip install pds-api-client==0.4.0

Note that version 1.0.0 has been release by mistake... So this is not the latest. While I am writing that, I am seeing this is horrible. Next update should be 1.1 (unless there is a way to delete a pypi package version).

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/NASA-PDS/pds-api-client/issues/2#issuecomment-809654117, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAIUBITEFIYFVUZGUOGKBTTTGDI7RANCNFSM4Z6YQAFA .

nutjob4life commented 3 years ago

Wait…1.0.0 is not the latest? 😑 You know how long I've been trying to develop against it @tloubrieu-jpl @al-niessner? 😝

I do recommend pushing out a 1.0.1 to PyPI ASAP, even if 1.0.1 == 0.4.0. "Upgrading" from 1.0.0 → 0.4.0 feels wrong 😅

💁‍♀️ You cannot remove releases from PyPI but you can mark one as "yanked". That will tell setuptools, pip, buildout, etc., that the release shouldn't be used. See the screenshot:

Screen Shot 2021-03-29 at 4 10 27 PM
jordanpadams commented 3 years ago

@nutjob4life would you mind "yanking" the 1.0.0?

tloubrieu-jpl commented 3 years ago

@nutjob4life @jordanpadams I've just done it. I will add you as owner/manager of the package.

nutjob4life commented 3 years ago

You know guys, we should double-check all our PyPI packages and make sure we add each other (and a common PDS EN account) as an additional owner on the off chance one of us suffers a fatal "kernel panic".

And to keep it from happening in the future…perhaps a periodic GitHub Action that compares Python-based repositories here with their corresponding packages on PyPI and alerts when there's sole owners?

jordanpadams commented 3 years ago

@nutjob4life 100% agree and we def need to do better here. Sorry for the headache. An improvement opportunity for sure. I will create a ticket to address this as well. As our team and dependencies grow, we def need to take our devops up a notch.

nutjob4life commented 3 years ago

@jordanpadams sign me up to help with that! And no apologies necessary.

jordanpadams commented 3 years ago

@nutjob4life will be adding this to our B12.0 release plan: NASA-PDS/pdsen-operations#90

jordanpadams commented 3 years ago

also @nutjob4life have you had a chance to test with the new package?

nutjob4life commented 3 years ago

@jordanpadams not yet, I changed gears to do cancer work. Wish me luck as I try to integrate it in the next 36 hours 😅

nutjob4life commented 3 years ago

Confirmed it works!