Monday, April 1, 2013

PostgreSQL To Adopt New Version Numbering System

According to several focus groups, greatest among the marketing obstacles for PostgreSQL is our "old skool" three-digit version numbering system. As such, I am pleased as punch to announce that we have adopted a new, "hip" and "cutting-edge" version numbering system.

First, since decimal version numbers are antiquated, we will be adopting a system which uses only a whole integer for the version number.  In order to accommodate all of the minor update releases we do (another one is coming up on Thursday, so I hope you're planning to update!), each new major version of PostgreSQL will be a multiple of 25, starting with our next release, PostgreSQL 50.

Then the minor releases will each add on one version, so the first update to version 50 will be version 51, then 52, etc.  To know your core version of Postgres, simply divide by 25 and round down.  Any PostgreSQL annual release which requires more than 24 updates will be preemptively EOL'd in as too buggy to live.

Since file format compatibility is now a big issue, given pg_upgrade, each version will also carry a file format version, which will be alphabetical (ASCII alphabet).  When we break file format compatibility, you will know because the letter changes.  With these things taken together, our next release PostgreSQL will be:

PostgreSQL-C 50

The version after that will be:

PostgreSQL-C 75

Unless we break the file format, in which case it will be:

PostgreSQL-D 75

See how much more intuitive and user-friendly the new system is?

Now, we realize that this new numbering system may be somewhat confusing for users until they get used to it, and that not everyone likes numerical version numbers (at least, our focus group told us it was so).  Accordingly, we are only renumbering version 9.2 as version 25 (currently version 28, actually); prior versions of PostgreSQL will retain their existing numbering.

Further, to give users a second, even more friendly way to track PostgreSQL versions, we will be giving each release a "codename".  In keeping with PostgreSQL's international user base, these codenames will alternate languages, with each language community voting on the name they want to use.   Thus, the next version of PostgreSQL will be also called:

PostgreSQL Hilaria

Our Japanese community has chosen the name of the prior version of Postgres (currently known as 9.2.3), which will hereafter be:


PostgreSQL 化け狸 update 3


The PostgreSQL community will alternate between the numerical version number and the codename in our documentation and literature in order to get users comfortable with both systems. You can also track which version comes after which other version based on the Unicode UTF-8 ID of the first character of the codename modulo 100.  A built-in PostgreSQL function and data type will be supplied for easy sorting of version numbers.

I hope you're as excited about this as I am!  A brave, new, marketing-driven future awaits us!

No comments:

Post a Comment