anuraghazra/github-readme-stats

Stats and languages results incorrect due to graphql 100 records limit

Open

#1 852 ouverte le 7 juil. 2022

Voir sur GitHub
 (14 commentaires) (6 réactions) (1 assigné)JavaScript (33 282 forks)batch import
:star: top bugbughacktoberfesthacktoberfest-acceptedhelp wantedlang-cardstats-card

Métriques du dépôt

Stars
 (79 424 stars)
Métriques de merge PR
 (Merge moyen 21j 13h) (1 PR mergée en 30 j)

Description

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.

Guide contributeur