Help with Package Index Issue

A user has reported an issue with installing the qi library and I'd love some help getting to the bottom of it.

I recently changed the organization of the library from a single collection to a multi collection package using the lib/test/doc structure. While doing this I pointed the package index to a temporary branch to iterate until I could fix the errors, and then eventually repointed the index back at the main branch when I was convinced there were no more errors, and after merging the changes into the main branch.

In fact, although I was convinced that there were no further errors, that is not what I was actually seeing on the package index. The index showed an error message about "failing tests" from Nov 25, but I'd made a change intended to fix that error and the timestamp on the message hadn't updated after several days, so I assumed that the build was actually OK and that it was just a stale message that would eventually resolve on its own. It may be that this is just what happened. But a user reports the following error.


Downloading repository
git: could not find requested reference
  reference: master
  repo: countvajhula/qi.git

Note that I repointed the package on the index to the main branch a few days ago, but apparently when the user attempted to install the library (presumably in the last day or so) it is still using the old branch. Even so, I'd expect this branch to be in a working state since it is at parity with the main branch I believe. The error message reported by the user is also not the same as the error I was seeing on the index. Instead, it's similar to an error message I've seen that seems to have something to do with the fact that the Qi repo uses the branch named "main" as its primary branch, rather than "master" (mainly due to a recent change by GitHub to prefer main, but I agree "main" is better, fwiw). I remember reading somewhere that this is a known issue, but I think the present manifestation is probably novel.

So I think these are the questions:

  1. What can I do to fix the build so users can install the qi-* libraries?

  2. Why is raco still attempting to install from the old branch, even though I updated it to point to main a few days ago? The package index page confirms the last change was on Nov 30, and it does reflect that the branch is main. Of note though is that when I did update the branch to main and hit save (i.e. on Nov 30), I tried several times and each time the page would just hang with no response. Eventually when I returned to the package page by manually visiting it, I discovered that the change to "main" had apparently taken effect. Incidentally, I've also noticed frequent "proxy error" messages on the package index of late, but those seemed to go away on refresh - not sure if these are related.

  3. Why is the installation failing? That "reorganize-...-redux" branch, though not the intended one, should still be fully functional since I think it's at parity with main at the moment. Neither main nor the redux branch have been changed in several days (i.e. much longer than the 24 hour package refresh cycle)

  4. This is not as acute of an issue, but what could be causing the stale test results on the package index pages? It still shows the stale output from Nov 25 indicating that tests fail. If indeed the tests are still failing, I'd love to fix that, but since the message is stale I don't have fresh data to act on.

Any insights appreciated! Thanks,

  1. Something was wrong with the part of the pkg server that updates the catalog on S3.

  2. That's a client-side bug fixed in v8.3.

  3. The pkg-build service uses whatever the catalog reports, so since the catalog wasn't updating, the pkg-build service didn't rebuild anything.

I've restarted the part of the pkg server that transfers information to the catalog on S3, and it seems to be updating ok now. Also the pkg-build service was using v8.2 to fetch packages, so part 4 may have had a little of part 3, and I've upgraded the pkg-build service to use v8.3 for fetching packages.


@mflatt thank you for fixing it! That makes sense now why the branch was reflecting correctly but raco was still using the old one. Everything looks good on the package index, I am able to install locally, and I've asked the user to try again on their end. I'll report back if they still encounter issues.