Date: Wed, 14 May 2014 18:17:56 +0200 From: Baptiste Daroussin <bapt@FreeBSD.org> To: Matthew Seaman <m.seaman@infracaninophile.co.uk> Cc: cperciva@freebsd.org, freebsd-pkg@freebsd.org Subject: Re: Delta packages Message-ID: <20140514161756.GB16089@ivaldir.etoilebsd.net> In-Reply-To: <53733AB2.6060003@infracaninophile.co.uk> References: <EF0C6032-F5AA-4F6D-9462-CC6AB69BF79A@ixsystems.com> <53733AB2.6060003@infracaninophile.co.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
--xgyAXRrhYN0wYx8y Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable CCing colin because he has interest to that subject On Wed, May 14, 2014 at 05:43:14AM -0400, Matthew Seaman wrote: > On 13/05/2014 16:21, Sean Fagan wrote: > > We have a strong desire to make delta packages -- that is, given > > version A and version B of a package, to be able to download a > > package that has only the changes between A and B. > >=20 > > I've written a little program to create this (it currently only has > > the files that have changed, not binary diffs, although that would I > > suppose be possible; just harder). > >=20 > > I can, I'm sure, come up with a way to manually extract and update > > the packages databases; however, I'd prefer to do a lot of that in > > the package code. (Among other things, being able to specify what > > the delta is from would be good; I couldn't see a way to add random > > key/value pairs to the manifest using the pkg* routines, and while I > > can add it to the +MANIFEST file I create, that doesn't actually do a > > whole lot.) >=20 > Uhh... doesn't 'pkg annotate' provide what you need? Although for a > fully-fledged delta package we'd probably be thinking in terms of > generating some sort of diff between old and new manifests. >=20 > > First question: is anyone working on something like this already? >=20 > There has been some talk about it, but as far as I know no code has been > produced in public. >=20 > Delta packages would be good for lots of reasons, but one really cool > scenario is -- >=20 > * upgrade package foo-1.0.0 to foo-1.0.1 > * automatically produces delta/foo-1.0.1-1.0.0.txz > * should there be problems with foo-1.0.1 can then rollback by > applying the delta package. >=20 > (of course, it's not going to be as easy as that -- dependencies will > need simultaneous up/down- grade simultaneously >=20 > > Second question: Any objections to it in principal? >=20 > On the contrary. This would make a really great addition. Please do > send patches / pull requests. >=20 > Cheers, >=20 > Matthew >=20 > --=20 > Dr Matthew J Seaman MA, D.Phil. >=20 > PGP: http://www.infracaninophile.co.uk/pgpkey > JID: matthew@infracaninophile.co.uk >=20 regards, Bapt --xgyAXRrhYN0wYx8y Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (FreeBSD) iEYEARECAAYFAlNzlzQACgkQ8kTtMUmk6Ey/3ACgqoJ9SDbIVap4cPKHDXfa4DkY 0dMAnjigbvO0HGyuG+FCHMbTuCiwlyZz =btMd -----END PGP SIGNATURE----- --xgyAXRrhYN0wYx8y--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140514161756.GB16089>