"David E. Wheeler" <david@kineticode.com> writes:
> On Dec 10, 2010, at 1:50 PM, Dimitri Fontaine wrote:
>> I don't think we can safely design around one part version numbers here,
>> because I'm yet to see that happening in any extension I've had my hands
>> on, which means a few already, as you can imagine.
>
> Why not? Simplest thing, to my mind, is to have
>
> upgrade/foo-1.12.sql
> upgrade/foo-1.13.sql
> upgrade/foo-1.15.sql
Since when is 1.12 a one part version number? :)
> Since you know the existing version number, you just run all that come
> after. For example, if the current version is 1.12, then you know to
> run foo-1.13.sql and foo-1.15.sql.
I don't think imposing what version numbers must look like and what the
separators in the file names should be is a good idea.
>> version = '13'
>> script = 'foo.sql'
>> upgrade = 'foo_upgrade.%v.13.sql'
>
> I think that's way more complicated than necessary.
It's just moving the complexity from the rules for the user to obey to
having them explain us by which rules they're playing. I personally very
much prefer the later, as you can imagine.
Regards,
--
Dimitri Fontaine
http://2ndQuadrant.fr PostgreSQL : Expertise, Formation et Support