-
Notifications
You must be signed in to change notification settings - Fork 38
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
Error Fetching GitHub contribution data for "..." failed: User "..." not found. #82
Comments
Hey. Thanks for reporting this! However, caching is not the issue, but GitHub seems to have changed how the contribution graph is rendered. Now client-side JavaScript appears to be required to generate the calendar markup on the GH profile page. You can test this by disabling JavaScript in your browser (the chart never shows up, but you will only see a spinner forever). Consequently, the contribution data can no longer be scraped by simply parsing the HTML source. So this will make things harder, unfortunately, and I have to think about this. There probably is no way around something like Puppeteer which sounds quite heavy. |
Oh wow, I thought this was using API or something. Regarding client-side, I do force the component to run client side |
This component does use an API that handles the scraping: The described issue is in the context of this API. |
What about using something like this it's freemium, but perhaps alongside a good caching strategy can go a long way, and it seems fairly easy compared to puppeteer or other alternatives. Probably not within the scope of what you were aiming, more a patch/hack(fallback even) if there's no available clean solution, what do you think? |
Puppeteer is not hard to use and Microlink seems to use it under the hood as well. So I guess I'll have to move github-contributions-api from Cheerio to Puppeteer. This will take a bit of time, though. Sorry people. |
So, we can't get contrbution of github anymore ? |
No, not until the API is fixed, which I'll do as soon a possible. The issue with scraping simply is that it can break any time when GitHub changes how they render the calendar. |
|
It would be really helpful if it gets fixed early |
I'll be working on it this weekend. A few days at most. Please see this issue for further progress: |
Sure thanks! |
Thanks for posting this issue! Is the problem that the github API does not serve the contribution data so it needs to be scraped? I understand from your messages that Github changed their calendar rendering which broke react-github-calendar. |
I tried to fetch this endpoint https://api.github.com/users/${username}/contributions but I am getting this error { |
Yea I'm not seeing that as an endpoint. |
@ everyone Don't pressure grubersjoe we should just be thankful and patient or try to fix it ourselves since it's opensource. Keep the conversation clean and read the messages above before commenting, remember that everyone subscribed to this thread will get emails and notifications. |
Thanks for posting this issue. |
I had this contribution graph embedded in my site and suddenly I saw error in fetching the data, thanks for this info that it will fixed |
Appreciate you being on top of this so quickly @grubersjoe . Godspeed to ya! You're the man! |
@d3or found a nice and easy solution: grubersjoe/github-contributions-api#8 Just deployed the latest version of the API, everything should work again! |
Thank you so much! |
Hello,
I've implemented your component in a site I'm developing,
e-id.to/adriangalilea
After a while I get
I'm guessing this is due being rate limited, If this is the case a clear error message for rate limiting would be nice.
As you can see it happens to me even on your site:
![image](https://private-user-images.githubusercontent.com/90320947/317870447-9ff78232-241a-43c0-9f41-362613b14056.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2NjM4NTksIm5iZiI6MTcyMjY2MzU1OSwicGF0aCI6Ii85MDMyMDk0Ny8zMTc4NzA0NDctOWZmNzgyMzItMjQxYS00M2MwLTlmNDEtMzYyNjEzYjE0MDU2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MDMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODAzVDA1MzkxOVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTc3NTNlZWI3NzJmODc5YWRjOGFkZDEyODU4Yjk3MzY2ZGNmYjQwNGYzMWEyMDIxNDk2NjEzMGNhYmJkNTNiZDAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.YqskXfLk4eB0iaR2rlrviYZ-qH7_-DxjEDiR14HfNSY)
I've also noticed this:
So it's not clear to me why this could be the case, maybe it's how I'm using it on dev that's not caching it appropriately.
This is the file and my next.js project.
How can I debug the caching?
I would also like to customise for how long or where I store the data preferably, is this reasonable?
Or perhaps your other 2 libraries in conjunction would lead me to have more manual control over this?
Thank you for this great component,
Adrian.
The text was updated successfully, but these errors were encountered: