simonw / simonw

https://simonwillison.net/2020/Jul/10/self-updating-profile-readme/

Home Page:https://github.com/simonw

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Many of my projects are now missing

simonw opened this issue · comments

As of this commit: 1ed4132

Before:

Listing <!-- releases_count starts -->1089<!-- releases_count ends --> releases across <!-- project_count starts -->165<!-- project_count ends --> of my projects, ordered by the date of their most recent release.

After:

Listing <!-- releases_count starts -->111<!-- releases_count ends --> releases across <!-- project_count starts -->12<!-- project_count ends --> of my projects, ordered by the date of their most recent release.

Here's that after page: https://github.com/simonw/simonw/blob/1ed413252bac947dd8aa9aef15d5ecd5989a7c46/releases.md

Looks to me like GitHub GraphQL pagination is broken:

        "viewer": {
            "repositories": {
                "pageInfo": {
                    "hasNextPage": false,
                    "endCursor": "Y3Vyc29yOnYyOpHOA_JrgA=="
                },

Pretty sure that should be hasNextPage of true.

Trying this query in the explorer:

{
  viewer {
    repositories(first: 8, privacy: PUBLIC) {
      pageInfo {
        hasNextPage
        endCursor
      }
      nodes {
        name
        description
        url
        releases(last: 1) {
          totalCount
          nodes {
            name
            publishedAt
            url
          }
        }
      }
    }
  }
}

https://docs.github.com/en/graphql/overview/explorer

With first: 8 I do get a next page:

image

But at first: 9 I do not:

image

Adding totalCount shows that I have 568 repos.

image

The bug is with hasNextPage - it's possible a workaround may work where I check for endCursor of null instead. I'll try that out.

That workaround fixed it.