On Sun, 8 Sep 2024, Christoph M. Becker wrote: > On 08.09.2024 at 16:58, Derick Rethans wrote: > > > I think it needs some good thinking through first. I also don't > > believe the RFC system is something we need to use for deciding how > > to serve files. > > This is not about *how* to serve files, but rather *which* files to > serve; for instance, I'm currently working on updating libpng, where > we still ship v1.6.34 from Sep 29, 2017.
Ok, but I still don't see why you need an RFC for this? :-) > > Anyhow, coming back to my list of problems: > > (1) only few people can do these uploads > (2) the process is not transparent > (3) there is no history of the series > (4) the process is prone to error > > If we only had the series files in a Github repository, (2) and (3) > would be solved, and (4) at least partially. > > The workflow for updating a dependency might then look like: > > * someone submits a PR with updates to the series files and a link to > the new dependency build on winlibs/winlib-builder (a PR template might > be useful) > * after some basic CI had been run, a notification is sent to those who > can do the uploads to downloads.php.net (or to the rsync server) > * one of these people can then check the PR, and if okay, upload the > dependency builds > * afterwards the PR is merged, and synced with the server > * archiving no longer needed dependencies could be done on the server (a > simple script should do; and it's not a very important task anyway, and > maybe it shouldn't be done at all, so that older Git revisions of the > series are still useable) > > While that would not solve problem (1), it would at least avoid having > to ping some "random" people ("can you please upload?"), and if there is > an appropriate PR template, some further issues with problem (4) could > be resolved (e.g. do the series files refer to existing files?) I know Shivam (https://github.com/php/web-downloads) has also been working on doing automatic pulls of PECL builds onto the "downloads" server. The idea was to trigger a GitHub action to call to this API to then download file file. Ideally the downloads server *pulls* files, as uploading *to* it can't work through GHA as we require 2FA through a jump host. We'll have to have multiple Git repositories, and perhaps subdomain names to make this all work. The downloads.php.net site currently doesn't have any code yet, as I am waiting for this 404 ErrorHandler to be included in it: <?php if (preg_match('/Win32-vc/', $_SERVER['REQUEST_URI'])) { $fixed = str_replace( 'Win32-vc', 'Win32-VC', $_SERVER['REQUEST_URI'] ); header("Location: $fixed", true, 301); exit(); } header('Location: /', true, 404); Ideally, instead of having downloads.php.net/~windows, we have downloads.php.net/windows which is a Git repository for the series files, but it is probably better if it's all in that same web-downloads repository. cheers, Derick -- https://derickrethans.nl | https://xdebug.org | https://dram.io Author of Xdebug. Like it? Consider supporting me: https://xdebug.org/support mastodon: @derickr@phpc.social @xdebug@phpc.social