I happened to accidentally discover that the golang-modernc-ccorpus2 packaging repository: https://src.fedoraproject.org/rpms/golang-modernc-ccorpus2 currently has the dubious distinction of being the single largest package repo in the Fedora collection, exceeding the next-nearest by over 100MB. This is because the generated `assets.go` source archive is committed to the package repository, instead of having been uploaded to the builder lookaside cache. I wasn't clear myself on the correct procedure for generated sources like that, but @churchyard reported that it's no different from any other source archive. To avoid large downloads, upstream source files (or upstream-originating modified source files) should not be committed to the package repo. Rather, they should be added to the builders' lookaside cache using `fedpkg new-sources`, which uploads the file to Koji and adds its name to the local `.gitignore` file so that it can't be checked in. To correct this (remove the source files from the Git history), a surgical rewrite of the repository history by a Fedora git administrator will be required. See https://pagure.io/releng/issue/7265 for when this was previously done, for the Blender package. An important point here is that it will NOT do any good to simply `git rm` the errant file -- it's still part of the commit history, so it'll still live in the `.git` directory and still cause large checkouts. Correcting this requires administrative rewrite of the repo's commit history, which can be done by releng but first has to be authorized by FeSCO because under normal circumstances rewriting package repo history is entirely prohibited. But I wanted to open this issue first, as a heads-up regarding the handling of that file in the future. Source archives from upstream should never be committed to the package repo itself, only uploaded to the lookaside cache. See the Package Maintenance Guide section of the Packaging Guidelines, for some brief documentation regarding the lookaside cache (although the packaging docs' coverage of this topic could be better, IMHO): https://docs.fedoraproject.org/en-US/package-maintainers/Package_Maintenance_Guide/#_upload_new_source_files_to_the_lookaside_cache Thread in which I discovered these oversize repos, and where the proper handling of `assets.go` was discussed: https://discussion.fedoraproject.org/t/package-repo-surgery-due-to-checked-in-source-archive/138772 Reproducible: Always
I've filed a releng ticket asking for their assistance in cleaning up the repo's history, that ticket is: https://pagure.io/releng/issue/12488 Traditionally it's been deemed necessary for releng to seek FESCO approval before performing any such cleanup, so there are a few steps to the whole process and it may take a bit of time.
Mea culpa. I missed this. I agree with Frank's suggestions.