[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Updating debian/control at build time



Julien Cristau <jcristau@debian.org> writes:
> On Tue, Apr 26, 2011 at 13:51:53 +0200, Christoph Berg wrote:
>> The alternative would be to make the control update a manual step.
>> 
> That sounds much better to me.  You'd need to have an appropriate
> versioned build-dep on postgresql-server-dev-all anyway, AIUI, which has
> to be a manual step...

There's a missing point here, I think.

PostgreSQL upstream project maintains up to 7 back branches at any time,
currently the last updates are 9.0.4, 8.4.8, 8.3.15 and 8.2.21.  8.2
will not be dropped just when 9.1 gets out the door, either, see

  http://www.postgresql.org/support/versioning
  http://wiki.postgresql.org/wiki/PostgreSQL_Release_Support_Policy

The point I'm trying to make is that the choice made by debian to only
support one major version of PostgreSQL in any stable release bears only
little meaning.  People using PostgreSQL to support their internal
application architecture will not typically upgrade it when they upgrade
their distribution (say, from lenny to squeeze).

Also, extensions are made so that they can support several major
versions from the same unmodified sources.  That's quite easy to do and
very handy for everybody involved.

The conclusion is that we should make it as easy as possible for people
to maintain their own backports of any PostgreSQL extension we include
in debian.  That means they should not have to edit the packaging if
that make sense.

Also please consider that I've been volunteering to manage an apt
repository hosted on the PostgreSQL side of things, where all upstream
supported major versions would be maintained as a debian package.  I
would of course include PostgreSQL extensions over there.  I would like
to have an automated way to handle all of this, of course.

So to build the following binary packages, I would like not to have to
edit anything, but to just run debuild once.

  postgresql-8.2-{prefix,preprepare,ip4r,temporal,plproxy,younameit}
  postgresql-8.3-{prefix,preprepare,ip4r,temporal,plproxy,younameit}
  postgresql-8.4-{prefix,preprepare,ip4r,temporal,plproxy,younameit}
  postgresql-9.0-{prefix,preprepare,ip4r,temporal,plproxy,younameit}
  postgresql-9.1-{prefix,preprepare,ip4r,temporal,plproxy,younameit}

That's what the pg_buildext tool is all about, with debian/pgversions
containing all upstream releases supported by the extension sources, and
the supported-version script that will only output the debian supported
ones, but will add to the list any version you have installed locally.

Regards,
-- 
Dimitri Fontaine
PostgreSQL DBA, Architecte


Reply to: