How fresh is the General package registry?

Krastanov
Sat, 17 Feb 2024 21:52:09 +0000
Package Management

I was wondering how many orphaned single-release “maybe should never have been registered” packages are there in the General registry. This is something I have heard other communities lament – pollution of their package namespace with one-offs that do not see any support.

I wrote a small script to check the time-since-last-release for all the packages in the registry and this is what I found (JLL packages are not counted):

Does the number of orphans grow over time

The plots show the total number of packages, the amount of brand new packages per month, the amount of new releases (whether an update or a new package) per month, and then it gives a few lines related to “stale” packages: packages with no more than two releases, packages with a single release, and package that have zero releases in the General registry (and were simply copied over from before we used a package registry like this).

Overall, the health seems pretty good, the “staleness” does not seem to be significant.

In the plot you see two dips. They are respectively:

remove packages and versions of packages that do not support Julia 1.0 by KristofferC · Pull Request #4169 · JuliaRegistries/General · GitHub

Move JLLs to own folder by oxinabox · Pull Request #79064 · JuliaRegistries/General · GitHub (I do not know why there is a dip for this one… I supposedly am not counting JLLs)

Freshness histogram for each month

Here is a per-month snapshot of the freshness distribution of packages: for each month I plot a histogram of how-long ago a package has seen a release. You might need to open the image in a new tab.

Similarly to above, these histograms seem to show most packages see regular updates.

Today, age vs freshness

Lastly, I was curious whether in the present state of the registry one can see a wave of abandoned packages. I tried to plot something to expose a correlation between how long ago a package was first created vs how long ago it got its latest release. I do not see anything particularly interesting in this plot though.

the scripts to generate the date and the plots themselves (click for more details)
I do not really have any closing thoughts or morals from this story, but I thought folks would be interested to see the data.

8 posts - 5 participants