Semi-automating updates

Michael Dickens michaelld at macports.org
Sat Mar 24 23:41:35 UTC 2018


I like the idea, generally. The vast majority of my updates could be automated in this manner. There will always be a few that need patching or tweaks to existing patches, which will have to be done by hand. The only other "gotcha" I wonder about is including buildbots for various target OSs [do PRs already go through building on (say) 10.6 and newer?] ... I, personally, try to test commits on 10.8, 10.12, and 10.13 -- sometimes before committing and sometimes afterward (depending on the level of confidence in the changes I have; I'm working on a pushing this back to 10.5.7 Intel onward, but it's a little ways off still because some of the installs are being finicky). But, again, having an automated tool could be really useful, in my opinion. - MLD

On Sat, Mar 24, 2018, at 5:06 PM, Perry E. Metzger wrote:
> It occurs to me that
> 
> 1) Some ports have "livecheck", which is automated detection that an
>    updated source file is available.
> 2) Some ports have "port test" automated testing available (though not
>    many.)
> 
> It might therefore be interesting (though not a small amount of work)
> to set something up so that, for ports with both livecheck and tests,
> and where the maintainer consents, a service would look for updates,
> and if one happened, it would create a Portfile with a properly bumped
> revision number and updated checksums, run the automated tests, and if
> they passed, submit a pull request on the maintainer's behalf. The
> maintainer would be assigned the request so they could quickly check
> why the update happened and decide if they wanted to proceed or not,
> but that would be a few moments of work instead of a much more
> significant amount of tedium.
> 
> Again, creating such a service would be no small amount of work, but
> it would get rid of a great deal of tedium and make it much easier to
> keep a large fraction of ports up to date with only a minute or two of
> work once set up.
> 
> Presumably a port maintainer could indicate that they're happy with
> this arrangement by setting a variable in their Portfile, which would
> not work unless livecheck and test were also turned on. Such a scheme
> really does require that tests be present, because without them,
> there's no way to know that the robot is not requesting a pull for a
> completely broken update.
> 
> (If the update doesn't build or test correctly on its own, presumably
> the bot could inform the maintainer so they could clean up any
> breakage manually.)
> 
> Anyway, do people think this is an interesting idea, or is it
> nutty?
> 
> Perry
> -- 
> Perry E. Metzger		pmetzger at macports.org


More information about the macports-dev mailing list