-
Notifications
You must be signed in to change notification settings - Fork 7
Use GitHub GraphQL for Metadata fetching (with new metadata fields) #138
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
Conversation
|
Thank you. |
|
Pending Issues have been fixed, and a test has been done by running a full metadata processing on the awesome-selfhosted-data repository. Some things in the code still have open Questions; see comments marked with |
|
Just a quick ping to remind you about this. 😊 |
|
Hey there, Separately, I would like to challenge the current status of whether we should include the commit history. I am currently finishing up the last touches for a new alternative interface for awesome-selfhosted, and plan to ask for feedback in the data repo, once I've ironed out a few bugs in the next coming days. Maybe as a bit of a spoiler why I would appreciate, if he could include it, here are the interfaces resulting out of the datasets: |
|
These web interfaces look absolutely awesome |
|
The current version is already open-source (under AGPL-3.0 license) (However this is not yet production ready - I only push to the repo, when I want to check the code against the live data from awesome-selfhosted). For deployment see this repo (the github action there put's this already on my webserver): https://github.com/Rabenherz112/awesome-selfhosted-web Quite important to mention also (will do this as well, when I open the discussion in awesome-selfhosted-data, since I find this rather important) that quite a lot of this code is AI generated / fixed and patched, since I am a Sysadmin not a web dev. |
- Rewrite of the add_github_metadata() function
- Uses GraphQL API instead of REST API
- Adds new additional metadata keys commit_history, current_release
- Adds new module options batch_size, commit_history_clean_months, commit_history_fetch_months with default values
- Updates setup.py to include new dependencies
- Updates tests to include new module options
aa3def7 to
aa6ebf6
Compare
|
Little update on this PR. The core functionality remains unchanged and has been tested successfully against the awesome-selfhosted-data repo. Some improvements I did were:
PS: I don't understand why the test is failing.. I didn't even touch Edit: I use this new version in my pipeline for my own fronted for awesome-selfhosted. |
…atch first.. - Better re-try loggic was needed, because GitHub API really is dog sh-- - Currently breaks my pipeline otherwise (https://github.com/Rabenherz112/awesome-selfhosted-web)
…ging-too-few-args)
…ging-too-few-args)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's do this, reviewed, tested and works well.
I fixed the remaining pylint errors, I don't know why they didn't show earlier.
I will make a release, and then a PR in awesome-selfhosted to bump the hecat version there.
Thanks for your patience
Edit: other tests started failing in the archive_webpage, this is not related to this PR but it's expected that they start failing when websites against which the tests are run change things. I will fix these here as well.
… a comma? (hecat.processors.github_metadata, line 225)' (syntax-error)
- jinja.palletsprojects.com now issues 403 when tested from github actions, run the test agains docs.ansible.com instead
|
Massive thanks, for reviewing and merging it, even though you are quite busy (really did expect that) <3 |
This is my best try on implement awesome-selfhosted/awesome-selfhosted-data#84, as well as some other nice-to-have metadata (which I personally would like to see, such as the current release and release date), which means fetching the metadata over the GrapSQL API instead of the Python package used.
New metadata preview:
The new changes have been tested by running the full metadata processing on the awesome-selfhosted-data repo (last tested May 5). However I still have some open questions regarding how we should do some things, these things have been marked with
TODO:in the code itself.Additionally, there have been no tests written or modified (since I don't code normally or use python), so this is still open and would need to be done.