anuraghazra/github-readme-stats

Stats and languages results incorrect due to graphql 100 records limit

Open

#1852 aperta il 7 lug 2022

Vedi su GitHub
 (14 commenti) (6 reazioni) (1 assegnatario)JavaScript (33.282 fork)batch import
:star: top bugbughacktoberfesthacktoberfest-acceptedhelp wantedlang-cardstats-card

Metriche repository

Star
 (79.424 star)
Metriche merge PR
 (Merge medio 21g 13h) (1 PR mergiata in 30 g)

Descrizione

Describe the bug

The current language and stats card results are incorrect for users with more than 100 repositories (see https://docs.github.com/en/graphql/overview/resource-limitations). This is because we are currently only fetching the first 100 repositories of a user account.

https://github.com/anuraghazra/github-readme-stats/blob/a68abbb9b3a47ad73988f37fce274e882e86b7ad/src/fetchers/stats-fetcher.js#L47

https://github.com/anuraghazra/github-readme-stats/blob/a68abbb9b3a47ad73988f37fce274e882e86b7ad/src/fetchers/top-languages-fetcher.js#L17

Because of this not all languages and stars of a user are represented.

Expected behaviour

I think we can use pagination options (i.e. cursor, after, endCursor objects) to loop through all repositories of a user account (see https://stackoverflow.com/a/70039506/8135687). @anuraghazra Let me know what you think.

TODOs

  • Allow fetching of multiple pages for the languages data. #2111.
  • Improve the stats card such that it fetches more pages when a user has more than 100 repositories with stars. #2100
    • Merge #2159 to make this available on private Vercel instances while giving us the control to disable it on the public instance because of rate-limiting problems.

Guida contributor