-
Notifications
You must be signed in to change notification settings - Fork 18
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
Cache doesn't update due to issue with format_plugin #598
Comments
Update: It looks like this issue happened because the pypi api changes to not include previous version releases if we request for a specific version (url in this format: https://pypi.org/pypi/{plugin}/{version}/json) if that happens, our code for filling in the "first_released" field of our metadata will fail because it expects a "releases" field. This immediate issue could be fixed by only querying https://pypi.org/pypi/{plugin}/json, but I'm not sure what any potential downstream consequences of this move could be. |
@potating-potato , @neuromusic , @richaagarwal tagging for visibility |
Thank you for opening up this ticket @lgan-czi ! This is really helpful detail. I did some more digging to learn more from the pypi side, and it looks like the This impacts our Here are some options for hotfixes and for less urgent fixes: Hotfixes
Less urgent fixes:
@potating-potato and @lgan-czi let me know if you have any thoughts on the above. I'll also grab some time for the 3 of us to sync up on next steps for this. |
we have decided to: |
Just to clarify from the above, the hotfix we're moving forward with actually relies on the non-versioned API for all fields (rather than just two fields as I noted above) - but @lgan-czi did research to confirm this won't have any unintended side-effects. As this is meant to be a short-term fix, we feel confident moving forward with this (as it would be more work to treat the two fields differently). |
This was deployed earlier and I can confirm we're seeing data updates as expected. I'll create a ticket for the follow-up work on possibly switching APIs, or reworking how we populate |
Description
The cache in S3 failed to populate all plugins when I pushed to build in the remote dev environment
Steps/Code to Reproduce
Push any branch to rdev, and then observe it's cloudwatch logs in backend, you should get an error about how 'str' object has no attribute 'items'.
Expected Results
The S3 cache should populate with information scraped from pypi and github on build.
Actual Results
The S3 cache only populates information for around 30 plugins before erroring out. I printed a stack trace and it appears that the error comes from when we gather metadata from pypi. The code tries to read a json, but gets a string instead...
The text was updated successfully, but these errors were encountered: