head	1.95;
access;
symbols
	REL9_0_0:1.94
	REL9_1_ALPHA1:1.95
	REL9_0_RC1:1.94
	REL9_0_BETA4:1.94
	REL9_0_STABLE:1.94.0.2
	REL9_0_BETA3:1.94
	REL9_0_BETA2:1.94
	REL7_4_29:1.40.4.2
	REL8_0_25:1.52.4.3
	REL8_1_21:1.63.2.2
	REL8_2_17:1.69.2.1
	REL8_3_11:1.81.2.1
	REL8_4_4:1.90
	REL9_0_BETA1:1.94
	REL9_0_ALPHA5_BRANCH:1.93.0.2
	REL9_0_ALPHA5:1.93
	REL7_4_28:1.40.4.2
	REL8_0_24:1.52.4.3
	REL8_1_20:1.63.2.2
	REL8_2_16:1.69.2.1
	REL8_3_10:1.81.2.1
	REL8_4_3:1.90
	REL9_0_ALPHA4:1.92
	REL9_0_ALPHA4_BRANCH:1.92.0.4
	REL8_5_ALPHA3:1.92
	REL8_5_ALPHA3_BRANCH:1.92.0.2
	REL7_4_27:1.40.4.2
	REL8_0_23:1.52.4.3
	REL8_1_19:1.63.2.2
	REL8_2_15:1.69.2.1
	REL8_3_9:1.81.2.1
	REL8_4_2:1.90
	REL8_5_ALPHA2:1.91
	REL8_5_ALPHA2_BRANCH:1.91.0.2
	REL7_4_26:1.40.4.2
	REL8_0_22:1.52.4.3
	REL8_1_18:1.63.2.2
	REL8_2_14:1.69.2.1
	REL8_3_8:1.81.2.1
	REL8_4_1:1.90
	REL8_5_ALPHA1:1.90
	REL8_5_ALPHA1_BRANCH:1.90.0.4
	REL8_4_STABLE:1.90.0.2
	REL8_4_0:1.90
	REL8_4_RC2:1.90
	REL8_4_RC1:1.90
	REL8_4_BETA2:1.90
	REL8_4_BETA1:1.88
	REL7_4_25:1.40.4.2
	REL8_0_21:1.52.4.3
	REL8_1_17:1.63.2.2
	REL8_2_13:1.69.2.1
	REL8_3_7:1.81.2.1
	REL7_4_24:1.40.4.2
	REL8_0_20:1.52.4.3
	REL8_1_16:1.63.2.2
	REL8_2_12:1.69.2.1
	REL8_3_6:1.81.2.1
	REL7_4_23:1.40.4.2
	REL8_0_19:1.52.4.3
	REL8_1_15:1.63.2.2
	REL8_2_11:1.69.2.1
	REL8_3_5:1.81.2.1
	REL7_4_22:1.40.4.2
	REL8_0_18:1.52.4.3
	REL8_1_14:1.63.2.2
	REL8_2_10:1.69.2.1
	REL8_3_4:1.81.2.1
	REL7_4_21:1.40.4.1
	REL8_0_17:1.52.4.2
	REL8_1_13:1.63.2.1
	REL8_2_9:1.69
	REL8_3_3:1.81
	REL7_4_20:1.40.4.1
	REL8_0_16:1.52.4.2
	REL8_1_12:1.63.2.1
	REL8_2_8:1.69
	REL8_3_2:1.81
	REL8_2_7:1.69
	REL8_3_1:1.81
	REL8_3_STABLE:1.81.0.2
	REL8_3_0:1.81
	REL8_3_RC2:1.81
	REL7_3_21:1.35.2.4
	REL7_4_19:1.40.4.1
	REL8_0_15:1.52.4.2
	REL8_1_11:1.63.2.1
	REL8_2_6:1.69
	REL8_3_RC1:1.80
	REL8_3_BETA4:1.79
	REL8_3_BETA3:1.79
	REL8_3_BETA2:1.79
	REL8_3_BETA1:1.79
	REL7_3_20:1.35.2.4
	REL7_4_18:1.40.4.1
	REL8_0_14:1.52.4.2
	REL8_1_10:1.63.2.1
	REL8_2_5:1.69
	REL7_3_19:1.35.2.4
	REL7_4_17:1.40.4.1
	REL8_0_13:1.52.4.2
	REL8_1_9:1.63.2.1
	REL8_2_4:1.69
	REL8_0_12:1.52.4.2
	REL8_1_8:1.63.2.1
	REL8_2_3:1.69
	REL7_3_18:1.35.2.4
	REL7_4_16:1.40.4.1
	REL8_0_11:1.52.4.2
	REL8_1_7:1.63.2.1
	REL8_2_2:1.69
	REL8_0_10:1.52.4.2
	REL8_1_6:1.63.2.1
	REL8_2_1:1.69
	REL7_4_15:1.40.4.1
	REL7_3_17:1.35.2.4
	REL8_2_STABLE:1.69.0.2
	REL8_2_0:1.69
	REL8_2_RC1:1.69
	REL8_2_BETA3:1.68
	REL8_2_BETA2:1.68
	REL8_1_5:1.63.2.1
	REL8_0_9:1.52.4.2
	REL7_4_14:1.40.4.1
	REL7_3_16:1.35.2.4
	REL8_2_BETA1:1.66
	REL7_3_15:1.35.2.4
	REL7_4_13:1.40.4.1
	REL8_0_8:1.52.4.2
	REL8_1_4:1.63.2.1
	REL7_3_14:1.35.2.4
	REL7_4_12:1.40.4.1
	REL8_0_7:1.52.4.2
	REL8_1_3:1.63
	REL7_3_13:1.35.2.4
	REL7_4_11:1.40.4.1
	REL8_0_6:1.52.4.2
	REL8_1_2:1.63
	REL7_3_12:1.35.2.4
	REL7_4_10:1.40.4.1
	REL8_0_5:1.52.4.2
	REL8_1_1:1.63
	REL8_1_STABLE:1.63.0.2
	REL8_1_0:1.63
	REL8_1_0RC1:1.62
	REL8_1_0BETA4:1.62
	REL8_1_0BETA3:1.62
	REL7_3_11:1.35.2.4
	REL7_4_9:1.40.4.1
	REL8_0_4:1.52.4.2
	REL8_1_0BETA2:1.61
	REL8_1_0BETA1:1.60
	REL7_2_8:1.28.2.3
	REL7_3_10:1.35.2.3
	REL7_4_8:1.40.4.1
	REL8_0_3:1.52.4.2
	REL8_0_2:1.52.4.1
	REL7_2_7:1.28.2.3
	REL7_3_9:1.35.2.2
	REL7_4_7:1.40
	REL8_0_1:1.52.4.1
	REL8_0_STABLE:1.52.0.4
	REL8_0_0:1.52.0.2
	REL8_0_0RC5:1.52
	REL8_0_0RC4:1.52
	REL8_0_0RC3:1.52
	REL8_0_0RC2:1.52
	REL8_0_0RC1:1.49
	REL8_0_0BETA5:1.49
	REL8_0_0BETA4:1.47
	REL7_4_6:1.40
	REL7_3_8:1.35.2.2
	REL7_2_6:1.28.2.3
	REL8_0_0BETA3:1.44
	REL8_0_0BETA2:1.44
	REL7_2_5:1.28.2.3
	REL7_4_5:1.40
	REL7_3_7:1.35.2.2
	REL7_4_4:1.40
	REL8_0_0BETA1:1.44
	REL7_4_3:1.40
	REL7_4_2:1.40
	REL7_3_6:1.35.2.2
	REL7_4_1:1.40
	REL7_3_5:1.35.2.2
	REL7_4:1.40
	REL7_4_RC2:1.40
	REL7_4_STABLE:1.40.0.4
	REL7_4_RC1:1.40
	REL7_4_BETA5:1.40
	REL7_4_BETA4:1.40
	REL7_4_BETA3:1.40
	REL7_4_BETA2:1.40
	WIN32_DEV:1.40.0.2
	REL7_4_BETA1:1.40
	REL7_3_4:1.35.2.2
	REL7_3_2:1.35.2.2
	REL7_2_4:1.28.2.3
	REL7_3_STABLE:1.35.0.2
	REL7_2_3:1.28.2.3
	REL7_2_STABLE:1.28.0.2
	REL7_2:1.28
	REL7_2_RC2:1.27
	REL7_2_RC1:1.27
	REL7_2_BETA5:1.27
	REL7_2_BETA4:1.27
	REL7_2_BETA3:1.27
	REL7_2_BETA2:1.27
	REL7_2_BETA1:1.27
	REL7_1_2:1.24
	REL7_1_STABLE:1.24.0.2
	REL7_1_BETA:1.21
	REL7_1_BETA3:1.21
	REL7_1_BETA2:1.21
	REL7_1:1.22
	REL7_0_PATCHES:1.19.0.2
	REL7_0:1.19
	REL6_5_PATCHES:1.15.0.2
	REL6_5:1.15
	REL6_4:1.12.0.2
	release-6-3:1.5;
locks; strict;
comment	@# @;


1.95
date	2010.07.12.16.21.51;	author momjian;	state Exp;
branches;
next	1.94;

1.94
date	2010.04.15.11.00.45;	author mha;	state Exp;
branches;
next	1.93;

1.93
date	2010.03.18.16.31.12;	author momjian;	state Exp;
branches;
next	1.92;

1.92
date	2009.12.09.17.03.30;	author mha;	state Exp;
branches;
next	1.91;

1.91
date	2009.10.20.18.22.19;	author petere;	state Exp;
branches;
next	1.90;

1.90
date	2009.05.04.08.08.47;	author petere;	state Exp;
branches;
next	1.89;

1.89
date	2009.05.02.20.28.17;	author tgl;	state Exp;
branches;
next	1.88;

1.88
date	2009.04.09.21.50.31;	author momjian;	state Exp;
branches;
next	1.87;

1.87
date	2009.04.09.21.35.33;	author petere;	state Exp;
branches;
next	1.86;

1.86
date	2008.06.10.18.08.48;	author tgl;	state Exp;
branches;
next	1.85;

1.85
date	2008.02.13.21.09.24;	author alvherre;	state Exp;
branches;
next	1.84;

1.84
date	2008.02.13.18.30.21;	author momjian;	state Exp;
branches;
next	1.83;

1.83
date	2008.02.13.18.29.08;	author momjian;	state Exp;
branches;
next	1.82;

1.82
date	2008.02.13.18.10.23;	author momjian;	state Exp;
branches;
next	1.81;

1.81
date	2008.01.07.22.05.27;	author momjian;	state Exp;
branches
	1.81.2.1;
next	1.80;

1.80
date	2007.12.13.02.02.20;	author momjian;	state Exp;
branches;
next	1.79;

1.79
date	2007.09.29.12.19.16;	author momjian;	state Exp;
branches;
next	1.78;

1.78
date	2007.09.18.01.52.39;	author momjian;	state Exp;
branches;
next	1.77;

1.77
date	2007.09.12.19.27.16;	author momjian;	state Exp;
branches;
next	1.76;

1.76
date	2007.09.12.03.21.20;	author momjian;	state Exp;
branches;
next	1.75;

1.75
date	2007.09.10.02.01.19;	author tgl;	state Exp;
branches;
next	1.74;

1.74
date	2007.08.13.19.27.12;	author tgl;	state Exp;
branches;
next	1.73;

1.73
date	2007.04.20.15.47.08;	author momjian;	state Exp;
branches;
next	1.72;

1.72
date	2007.01.06.15.18.03;	author momjian;	state Exp;
branches;
next	1.71;

1.71
date	2007.01.06.00.25.11;	author momjian;	state Exp;
branches;
next	1.70;

1.70
date	2007.01.05.20.54.43;	author momjian;	state Exp;
branches;
next	1.69;

1.69
date	2006.11.24.17.03.50;	author petere;	state Exp;
branches
	1.69.2.1;
next	1.68;

1.68
date	2006.10.10.00.30.32;	author momjian;	state Exp;
branches;
next	1.67;

1.67
date	2006.10.10.00.30.18;	author momjian;	state Exp;
branches;
next	1.66;

1.66
date	2006.05.21.20.29.16;	author momjian;	state Exp;
branches;
next	1.65;

1.65
date	2006.05.19.03.57.09;	author momjian;	state Exp;
branches;
next	1.64;

1.64
date	2006.02.12.17.23.31;	author momjian;	state Exp;
branches;
next	1.63;

1.63
date	2005.11.05.01.38.44;	author momjian;	state Exp;
branches
	1.63.2.1;
next	1.62;

1.62
date	2005.10.10.19.41.27;	author petere;	state Exp;
branches;
next	1.61;

1.61
date	2005.08.25.00.30.10;	author momjian;	state Exp;
branches;
next	1.60;

1.60
date	2005.08.24.19.34.34;	author momjian;	state Exp;
branches;
next	1.59;

1.59
date	2005.07.08.15.13.09;	author pgsql;	state Exp;
branches;
next	1.58;

1.58
date	2005.05.08.23.34.15;	author tgl;	state Exp;
branches;
next	1.57;

1.57
date	2005.03.11.19.13.43;	author momjian;	state Exp;
branches;
next	1.56;

1.56
date	2005.02.02.16.58.52;	author momjian;	state Exp;
branches;
next	1.55;

1.55
date	2005.01.23.00.30.59;	author momjian;	state Exp;
branches;
next	1.54;

1.54
date	2005.01.22.23.39.21;	author momjian;	state Exp;
branches;
next	1.53;

1.53
date	2005.01.18.05.00.35;	author momjian;	state Exp;
branches;
next	1.52;

1.52
date	2004.12.20.21.00.48;	author momjian;	state Exp;
branches
	1.52.4.1;
next	1.51;

1.51
date	2004.12.16.22.11.06;	author momjian;	state Exp;
branches;
next	1.50;

1.50
date	2004.12.13.17.28.54;	author momjian;	state Exp;
branches;
next	1.49;

1.49
date	2004.10.26.23.42.49;	author momjian;	state Exp;
branches;
next	1.48;

1.48
date	2004.10.25.06.40.39;	author neilc;	state Exp;
branches;
next	1.47;

1.47
date	2004.10.24.15.01.54;	author tgl;	state Exp;
branches;
next	1.46;

1.46
date	2004.10.06.18.15.24;	author momjian;	state Exp;
branches;
next	1.45;

1.45
date	2004.10.06.15.23.27;	author momjian;	state Exp;
branches;
next	1.44;

1.44
date	2004.07.25.03.30.31;	author momjian;	state Exp;
branches;
next	1.43;

1.43
date	2004.07.24.03.06.47;	author momjian;	state Exp;
branches;
next	1.42;

1.42
date	2003.11.30.06.09.54;	author momjian;	state Exp;
branches;
next	1.41;

1.41
date	2003.11.04.10.33.28;	author petere;	state Exp;
branches;
next	1.40;

1.40
date	2003.07.23.04.08.44;	author momjian;	state Exp;
branches
	1.40.4.1;
next	1.39;

1.39
date	2003.01.29.03.41.54;	author momjian;	state Exp;
branches;
next	1.38;

1.38
date	2003.01.11.04.58.44;	author momjian;	state Exp;
branches;
next	1.37;

1.37
date	2002.12.18.20.07.32;	author momjian;	state Exp;
branches;
next	1.36;

1.36
date	2002.12.14.19.45.46;	author momjian;	state Exp;
branches;
next	1.35;

1.35
date	2002.10.12.16.34.28;	author petere;	state Exp;
branches
	1.35.2.1;
next	1.34;

1.34
date	2002.09.04.07.31.59;	author momjian;	state Exp;
branches;
next	1.33;

1.33
date	2002.09.04.07.26.37;	author momjian;	state Exp;
branches;
next	1.32;

1.32
date	2002.07.24.17.58.24;	author momjian;	state Exp;
branches;
next	1.31;

1.31
date	2002.03.26.05.34.33;	author momjian;	state Exp;
branches;
next	1.30;

1.30
date	2002.03.26.05.33.23;	author momjian;	state Exp;
branches;
next	1.29;

1.29
date	2002.03.18.23.03.13;	author momjian;	state Exp;
branches;
next	1.28;

1.28
date	2002.01.30.21.59.33;	author petere;	state Exp;
branches
	1.28.2.1;
next	1.27;

1.27
date	2001.08.16.21.53.27;	author momjian;	state Exp;
branches;
next	1.26;

1.26
date	2001.08.09.16.38.59;	author momjian;	state Exp;
branches;
next	1.25;

1.25
date	2001.05.11.01.34.14;	author momjian;	state Exp;
branches;
next	1.24;

1.24
date	2001.05.03.17.20.14;	author momjian;	state Exp;
branches;
next	1.23;

1.23
date	2001.05.03.16.47.58;	author momjian;	state Exp;
branches;
next	1.22;

1.22
date	2001.01.25.00.01.17;	author momjian;	state Exp;
branches;
next	1.21;

1.21
date	2000.11.24.18.28.20;	author petere;	state Exp;
branches;
next	1.20;

1.20
date	2000.07.02.15.21.23;	author petere;	state Exp;
branches;
next	1.19;

1.19
date	2000.03.23.06.30.58;	author momjian;	state Exp;
branches;
next	1.18;

1.18
date	2000.01.10.15.41.34;	author momjian;	state Exp;
branches;
next	1.17;

1.17
date	99.10.13.11.08.57;	author momjian;	state Exp;
branches;
next	1.16;

1.16
date	99.09.28.18.08.29;	author momjian;	state Exp;
branches;
next	1.15;

1.15
date	99.07.10.16.28.02;	author momjian;	state Exp;
branches;
next	1.14;

1.14
date	98.12.25.02.20.12;	author momjian;	state Exp;
branches;
next	1.13;

1.13
date	98.12.23.14.35.42;	author momjian;	state Exp;
branches;
next	1.12;

1.12
date	98.08.30.01.40.52;	author momjian;	state Exp;
branches
	1.12.2.1;
next	1.11;

1.11
date	98.08.30.00.17.42;	author momjian;	state Exp;
branches;
next	1.10;

1.10
date	98.08.29.04.07.08;	author momjian;	state Exp;
branches;
next	1.9;

1.9
date	98.08.29.02.09.27;	author momjian;	state Exp;
branches;
next	1.8;

1.8
date	98.06.16.17.04.31;	author momjian;	state Exp;
branches;
next	1.7;

1.7
date	98.04.14.01.52.47;	author momjian;	state Exp;
branches;
next	1.6;

1.6
date	98.03.23.16.14.50;	author momjian;	state Exp;
branches;
next	1.5;

1.5
date	98.03.02.05.52.57;	author momjian;	state Exp;
branches;
next	1.4;

1.4
date	98.01.10.05.19.22;	author momjian;	state Exp;
branches;
next	1.3;

1.3
date	97.10.30.22.37.28;	author momjian;	state Exp;
branches;
next	1.2;

1.2
date	97.10.18.16.59.06;	author momjian;	state Exp;
branches;
next	1.1;

1.1
date	97.10.16.04.14.30;	author momjian;	state Exp;
branches;
next	;

1.12.2.1
date	98.12.25.02.20.42;	author momjian;	state Exp;
branches;
next	;

1.28.2.1
date	2002.03.18.23.04.11;	author momjian;	state Exp;
branches;
next	1.28.2.2;

1.28.2.2
date	2002.03.26.05.33.47;	author momjian;	state Exp;
branches;
next	1.28.2.3;

1.28.2.3
date	2002.03.26.05.34.37;	author momjian;	state Exp;
branches;
next	;

1.35.2.1
date	2002.12.18.20.07.43;	author momjian;	state Exp;
branches;
next	1.35.2.2;

1.35.2.2
date	2003.01.11.04.59.08;	author momjian;	state Exp;
branches;
next	1.35.2.3;

1.35.2.3
date	2005.05.08.23.34.44;	author tgl;	state Exp;
branches;
next	1.35.2.4;

1.35.2.4
date	2005.10.03.17.24.27;	author tgl;	state Exp;
branches;
next	;

1.40.4.1
date	2005.05.08.23.34.32;	author tgl;	state Exp;
branches;
next	1.40.4.2;

1.40.4.2
date	2008.06.10.18.09.26;	author tgl;	state Exp;
branches;
next	;

1.52.4.1
date	2005.01.23.00.38.05;	author momjian;	state Exp;
branches;
next	1.52.4.2;

1.52.4.2
date	2005.05.08.23.34.23;	author tgl;	state Exp;
branches;
next	1.52.4.3;

1.52.4.3
date	2008.06.10.18.09.15;	author tgl;	state Exp;
branches;
next	;

1.63.2.1
date	2006.05.19.03.57.17;	author momjian;	state Exp;
branches;
next	1.63.2.2;

1.63.2.2
date	2008.06.10.18.09.08;	author tgl;	state Exp;
branches;
next	;

1.69.2.1
date	2008.06.10.18.09.01;	author tgl;	state Exp;
branches;
next	;

1.81.2.1
date	2008.06.10.18.08.55;	author tgl;	state Exp;
branches;
next	;


desc
@@


1.95
log
@Document bump of minor library version numbers.
@
text
@For All Releases (major, minor, beta, RC)
================

* Release version number changes
	o run src/tools/version_stamp.pl, then run autoconf
	  (by packager) (beta)

* Release notes
	o scan cvs logs, use pgcvslog and flags in comments
	o update doc/src/sgml/release.sgml
	o run spellchecker on result
	o add SGML markup
	o check if 'gmake HISTORY.html' works for <link>s

* Update timezone data to match latest zic database and new
  Windows releases, if any (see src/timezone/README)

* Translation updates
	Translations are kept in the project "pgtranslation" on PgFoundry.
	1. Check out the messages module (of the right branch).
	2. Tag the messages: cvs tag -c RELx_y_z
	3. Check out the admin module.
	4. From babel.postgresql.org, download the "qualified list"
	   for the respective branch.
	5. Run "sh .../admin/cp-po -L qualified-list-xxx.txt .../messages .../pgsql
	6. Commit.


For Major Releases
==================
(in addition to the above)

* Release notes
	o search with commit message text to find CVS commit file changes
	o check completion of items that have been marked as completed at
	  http://wiki.postgresql.org/wiki/Todo
	o remove completed TODO items
	o group items into categories
	o select major features
	o select incompatibilities
	o add documentation for items

* Documentation
	o document all new features
	o update help output from inside the programs
	o doc/src/sgml/ref manual pages
	o convert any literal "<" and ">" characters, use tools/find_gt_lt
	o update the sizes specified for installation requirements
	  (doc/src/sgml/installation.sgml, section "install-requirements")
	o update the shared memory size requirement table
	  (doc/src/sgml/runtime.sgml, section "shared-memory-parameters")

* Ports
	o update config.guess and config.sub at the start of beta
	  (from http://savannah.gnu.org/projects/config)
	o update ports list in doc/src/sgml/installation.sgml
	o update platform-specific FAQ's, if needed

* Update inet/cidr data types with newest Bind patches


Starting a New Development Cycle
================================

* Create a branch in CVS for maintenance of the previous release

* Increment the major version number in src/tools/version_stamp.pl

* Run "src/tools/version_stamp.pl devel", then run autoconf

* Bump minor library versions, major if appropriate (see below)
	o src/interfaces/*/Makefile
	o src/interfaces/*/*/Makefile


Creating Back-Branch Release Notes
==================================

* Do 'cvs log' on each back-branch and run pgcvslog

* In CVS HEAD, edit and create SGML markup for the most recent branch
  in that branch's release-N.N.sgml file

* Copy this into older branches' release-N.N.sgml files, then remove
  items that do not apply based on cvs logs for that branch (and add
  any that are needed)

* Copy the appropriate release-N.N.sgml files into each back CVS branch


---------------------------------------------------------------------------

                       Library Version Changes
                       =======================

Major Version
=============

The major version number should be updated whenever the source of the
library changes to make it binary incompatible. Such changes include,
but are not limited to:

1. Removing a public function or structure (or typedef, enum, ...)

2. Modifying a public functions arguments.

3. Removing a field from a public structure.

4. Adding a field to a public structure, unless steps have been
previously taken to shield users from such a change, for example by
such structures only ever being allocated/instantiated by a library
function which would give the new field a suitable default value.

Adding a new function should NOT force an increase in the major version
number. (Packagers will see the standard minor number update and install
the new library.)  When the major version is increased all applications
which link to the library MUST be recompiled - this is not desirable. When
the major version is updated the minor version gets reset.

Minor Version
=============

The minor version number should be updated whenever the functionality of
the library has changed, typically a change in source code between releases
would mean an increase in the minor version number so long as it does not
require a major version increase.

Given that we make at least minor changes to our libraries in every major
PostgreSQL version, we always bump all minor library version numbers at the
start of each development cycle as a matter of policy.

Minimizing Changes
==================

When modifying public functions arguments, steps should be taken to
maintain binary compatibility across minor PostgreSQL releases (e.g. the
7.2 series, the 7.3 series, the 7.4/8.0 series). Consider the following
function:

	void print_stuff(int arg1, int arg2)
	{
	    printf("stuff: %d %d\n", arg1, arg2);
	}

If we wanted to add a third argument:
	
	void print_stuff(int arg1, int arg2, int arg3)
	{
	    printf("stuff: %d %d %d\n", arg1, arg2, arg3);
	}

Then doing it like this:

	void print_stuff2(int arg1, int arg2, int arg3)
	{
	    printf("stuff: %d %d %d\n", arg1, arg2, arg3);
	}

	void print_stuff(int arg1, int arg2)
	{
	    print_stuff(arg1, arg2, 0);
	}

would maintain binary compatibility. Obviously this would add a fair
bit of cruft if used extensively, but considering the changes between
minor versions would probably be worthwhile to avoid bumping library
major version. Naturally in the next major version print_stuff() would
assume the functionality and arguments of print_stuff2().


Lee Kindness
@


1.94
log
@Add script to enumerate the timezones in the Windows registry and compare
it with the list we have in pgtz.c, showing any differences.
@
text
@a32 4
* Bump minor library versions, major if appropriate (see below)
	o src/interfaces/*/Makefile
	o src/interfaces/*/*/Makefile

d71 4
@


1.93
log
@Mention way to get commit details for release notes.
@
text
@d15 2
a16 1
* Update timezone data to match latest zic database (see src/timezone/README)
@


1.92
log
@Add notes about updating disk and shared memory size information in the
documentation when doing new major release.
@
text
@d37 1
@


1.91
log
@Update translation updating procedure.  This pertains to some changes I
made to automatically exclude translations below the 80% minimum.
@
text
@d50 4
@


1.90
log
@Replace a couple of references to files that no longer exist in the source
tree with references to the appropriate URLs.

Robert Haas
@
text
@d20 6
a25 3
	2. Check out the admin module.
	3. Run "sh .../admin/cp-po .../messages .../pgsql
	4. Commit.
@


1.89
log
@We don't need major_release_split any more.
@
text
@d34 3
a36 2
	o check that dashed items from the TODO list are complete
	o remove dashed TODO items
@


1.88
log
@No more need to update FAQs.
@
text
@d71 2
a72 1
* Edit and create SGML markup for the most recent branch
d74 3
a76 2
* Make copies of the SGML for each branch, then remove items
  that do not apply based on cvs logs for that branch
d78 1
a78 4
* Copy the SGML for each branch into release.sgml in CVS HEAD

* Use src/tools/major_release_split to create a release.sgml for
  each branch and copy them to the branch's CVS
@


1.87
log
@Add URL for config.guess/sub updates
@
text
@a4 2
	o update doc/FAQ and doc/src/FAQ/FAQ.html
	o copy FAQs from HEAD to top-most branch
@


1.86
log
@Create a script to handle stamping release version numbers into files,
replacing the tedious and error-prone manual process we've been using.
@
text
@d51 1
@


1.85
log
@Update minor version bumping policy.
@
text
@a4 7
	o doc/bug.template (beta)
	o bump Win32 interface version numbers
		- src/include/pg_config.h.win32 
		  (string and integer versions) (beta)
		- src/interfaces/libpq/libpq.rc.in
		  (pre-8.0 had just libpq.rc)
		- src/port/win32ver.rc
d7 1
a7 1
	o configure.in, and run autoconf or update configure 
d57 10
@


1.84
log
@As sub-bullet decoration.
@
text
@d48 1
a48 1
	o add documenation for items
d117 4
@


1.83
log
@Update wording for minor library bumping.
@
text
@d51 4
a54 4
	document all new features
	update help output from inside the programs
	doc/src/sgml/ref manual pages
	convert any literal "<" and ">" characters, use tools/find_gt_lt
d57 3
a59 3
	update config.guess and config.sub at the start of beta
	update ports list in doc/src/sgml/installation.sgml
	update platform-specific FAQ's, if needed
@


1.82
log
@No longer necessary:

        o update ecpg regression expected files for new library number
@
text
@d38 1
a38 1
* Bump library versions, if appropriate (see below)
@


1.81
log
@Mention use of src/tools/major_release_split for creating back-branch
release notes.
@
text
@a40 1
	o update ecpg regression expected files for new library number
@


1.81.2.1
log
@Create a script to handle stamping release version numbers into files,
replacing the tedious and error-prone manual process we've been using.
@
text
@d5 7
d14 1
a14 1
	o run src/tools/version_stamp.pl, then run autoconf
@


1.80
log
@Mark items needing updating for beta stamping.
@
text
@d77 2
a78 2
* Copy CVS HEAD release.sgml to each branch and trim off the top
  part that doesn't apply for each branch
@


1.79
log
@In the release checklist, mention packagers will see the minor upgrade
numbering for additional functions.
@
text
@d5 1
a5 1
	o doc/bug.template
d7 2
a8 1
		- src/include/pg_config.h.win32 (string and integer versions)
d14 2
a15 1
	o configure.in, and run autoconf or update configure (by packager)
@


1.78
log
@Doc reminder that integer pg version also needs updating.
@
text
@d102 4
a105 3
Adding a new function would NOT force an increase in the major version
number. When the major version is increased all applications which
link to the library MUST be recompiled - this is not desirable. When
d111 4
a114 4
The minor version number should be updated whenever the functionality
of the library has changed, typically and change in source code
between releases would mean an increase in the minor version number so
long as it does not require a major version increase.
@


1.77
log
@Whitespace improvement.
@
text
@d7 1
a7 1
		- src/include/pg_config.h.win32
@


1.76
log
@Document an efficient way to create documentation for back branches.
@
text
@d65 1
@


1.75
log
@Revert temporary patch that made synchronous_commit default to OFF.
@
text
@d63 15
@


1.74
log
@TEMPORARILY make synchronous_commit default to OFF, so that we can get more
thorough testing of async-commit mode from the buildfarm.  This patch MUST
get reverted before 8.3 release!
@
text
@a3 4
*** SPECIAL FOR 8.3: don't forget to revert patch of 2007-08-13 that
made synchronous_commit default to OFF.  Affects this file, guc.c, and
config.sgml.

@


1.73
log
@Add mention of checking <link> behavior of HISTORY.html to release
checklist.
@
text
@d4 4
@


1.72
log
@Check for ERANGE in exp() as well.

Improve release docs for ecpg regression tests.
@
text
@d20 1
@


1.71
log
@Document that we need to update the ecpg regression files when we update
the library version number.
@
text
@d38 1
a38 1
	o update ecpg regression expected files
@


1.70
log
@Stamp major release 8.3.0, and increment library version numbers.
@
text
@d38 1
@


1.69
log
@Separate release preparation jobs for all releases and for major releases
@
text
@d9 1
@


1.69.2.1
log
@Create a script to handle stamping release version numbers into files,
replacing the tedious and error-prone manual process we've been using.
@
text
@d5 5
d12 1
a12 1
	o run src/tools/version_stamp.pl, then run autoconf (by packager)
@


1.68
log
@Typo fix.
@
text
@d1 4
a4 2
 
* Major/minor release version number changes
a10 3
	o bump library versions for _major_ releases
		- src/interfaces/*/Makefile
		- src/interfaces/*/*/Makefile
a13 5
* Beta and Release Candidate (RC) changes
	o doc/bug.template
	o src/include/pg_config.h.win32
	o configure.in, and run autoconf or update configure (by packager)

d18 21
a44 1
	o add SGML markup
a56 2
* Update timezone data to match latest zic database (see src/timezone/README)

a58 7
* Translation updates
	Translations are kept in the project "pgtranslation" on PgFoundry.
	1. Check out the messages module (of the right branch).
	2. Check out the admin module.
	3. Run "sh .../admin/cp-po .../messages .../pgsql
	4. Commit.

@


1.67
log
@Add release checklist item:

        o copy FAQs from HEAD to top-most branches
@
text
@d12 1
a12 1
	o copy FAQs from HEAD to top-most branches
@


1.66
log
@Remove mention of pg_upgrade in release checklist.
@
text
@d12 1
@


1.65
log
@Mention packager bumps configure.in/configure.
@
text
@a45 2
* Update pg_upgrade to handle new version, or disable

@


1.64
log
@Update release checlist.
@
text
@a2 1
	o configure.in, and run autoconf or update configure
d12 1
a14 1
	o configure.in, and run autoconf or update configure
d17 1
@


1.63
log
@Add mention to update FAQ item on most recent release to RELEASE_CHANGES.
@
text
@d2 1
a2 1
* Beta and Release Candidate (RC) changes
d5 8
a12 1
	o src/include/pg_config.h.win32
d14 1
a14 1
* Version numbers
a17 8
	o bump library versions
		- src/interfaces/*/Makefile (major releases only)
		- src/interfaces/*/*/Makefile (major releases only)
	o bump interface version numbers
		- src/interfaces/libpq/libpq.rc.in (major and minor releases)
		- src/include/pg_config.h.win32 (major and minor releases)
		- src/port/win32ver.rc (major and minor releases)
	o update doc/FAQ and doc/src/FAQ/FAQ.html
@


1.63.2.1
log
@Stamp 8.1.4, except configure/configure.in.
@
text
@d10 1
@


1.63.2.2
log
@Create a script to handle stamping release version numbers into files,
replacing the tedious and error-prone manual process we've been using.
@
text
@d2 5
d8 2
a9 2
	o update doc/FAQ and doc/src/FAQ/FAQ.html
	o run src/tools/version_stamp.pl, then run autoconf (by packager)
d13 5
@


1.62
log
@Document the process to update translations.
@
text
@d18 1
@


1.61
log
@Update release checklist.
@
text
@d48 7
@


1.60
log
@More beta1 cleanup.
@
text
@d3 2
a4 1
	o configure.in and configure
d10 1
@


1.59
log
@
testing activitymail
@
text
@d26 1
a26 1
	o add comments for items
@


1.58
log
@Update release checklist to reflect that HISTORY and INSTALL don't
need to be created by hand anymore.
@
text
@d1 1
a1 1

@


1.57
log
@Add fprintf() custom version to libpgport.

Document use of macros for pg_printf functions.

Bump major versions of all interfaces to handle movement of get_progname
from libpq to libpgport in 8.0, and probably other libpgport changes in 8.1.
@
text
@d38 1
a38 2
	update INSTALL
	platform-specific FAQ's, if needed
@


1.56
log
@Add to release checklist:

	* Update inet/cidr data types with newest Bind patches
@
text
@d9 1
a9 1
	o bump interface version numbers
d12 1
@


1.55
log
@Add tools/find_gt_lt to find < and > in SGML source.

Lowercase some uppercase tags so tools is more reliable at finding
problems.
@
text
@d42 2
@


1.54
log
@Mention issue with < and > in docs.
@
text
@d32 1
a32 1
	convert any literal "<" and ">" characters
@


1.53
log
@Update version stamps for 8.1 as listed in RELEASE_CHANGES.
@
text
@d32 1
@


1.52
log
@Mention libpq.rc.in is now the file to update for releases.
@
text
@d11 1
d14 1
a14 1
		- port/win32ver.rc (major and minor releases)
@


1.52.4.1
log
@Add tools/find_gt_lt to find < and > in SGML source.

Lowercase some uppercase tags so tools is more reliable at finding
problems.
@
text
@a10 1
		- src/interfaces/*/*/Makefile (major releases only)
d13 1
a13 1
		- src/port/win32ver.rc (major and minor releases)
a30 1
	convert any literal "<" and ">" characters, use tools/find_gt_lt
@


1.52.4.2
log
@Update release checklist to reflect that HISTORY and INSTALL don't
need to be created by hand anymore.
@
text
@d37 2
a38 1
	update platform-specific FAQ's, if needed
@


1.52.4.3
log
@Create a script to handle stamping release version numbers into files,
replacing the tedious and error-prone manual process we've been using.
@
text
@d2 4
d7 2
a8 1
	o run src/tools/version_stamp.pl, then run autoconf (by packager)
d12 3
@


1.51
log
@Update release changes list to mention pg_config.h.win32.
@
text
@d11 1
a11 1
		- src/interfaces/libpq/libpq.rc (major and minor releases)
@


1.50
log
@Clearify which version numbers are bumped for major and minor releases.
@
text
@d1 5
d7 7
a13 7
    configure.in and configure
    doc/bug.template
    bump interface version numbers
      o src/interfaces/*/Makefile (major releases only)
      o src/interfaces/libpq/libpq.rc (major and minor releases)
      o src/include/pg_config.h.win32 (major and minor releases)
      o port/win32ver.rc (major and minor releases)
d16 10
a25 9
    update doc/src/sgml/release.sgml and generate HISTORY
      o scan cvs logs, use pgcvslog and flags in comments
      o run spellchecker on result
      o check dashed items from TODO to see they are complete
      o group items into categories
      o select major features
      o select incompatibilities
      o add comments for items
      o add SGML markup
d28 3
a30 3
    document all new features
    update help output from inside the programs
    doc/src/sgml/ref manual pages
d33 4
a36 4
    update config.guess and config.sub at the start of beta
    update ports list in doc/src/sgml/installation.sgml
    update INSTALL
    platform-specific FAQ's, if needed
@


1.49
log
@Add reminder to update copyright in sgml file.
@
text
@d5 4
a8 4
      o src/interfaces/*/Makefile
      o src/interfaces/libpq/libpq.rc (update for minor release)
      o src/include/pg_config.h.win32 (update for minor release)
      o port/win32ver.rc (update for minor release)
@


1.48
log
@Update copyright information in documentation. Also, add a note
to RELEASE_CHANGES so that this is not forgotten in the future.
@
text
@a35 3
* Update copyright year when needed
    doc/src/sgml/legal.sgml will also need to be updated

@


1.47
log
@Update RELEASE_CHANGES to mention updating the timezone database as
a routine part of release prep.
@
text
@d37 1
@


1.46
log
@Add mention of win32ver.rc for update for minor release.
@
text
@d32 2
d36 1
a36 1
* Update copyright year?
@


1.45
log
@Update win32ver.rc to 8,0,000,000.  Mention it needs updating in
RELEASE_CHANGES.
@
text
@d8 1
a8 1
      o port/win32ver.rc
@


1.44
log
@Improve description of release note creation.
@
text
@d8 1
@


1.43
log
@Add steps for creating release notes.
@
text
@d15 3
a18 1
      o add comments for items
@


1.42
log
@Bump all version numbers and version stamps mentioned in RELEASE_CHANGES.
@
text
@d11 6
@


1.41
log
@Add note to update config.guess and config.sub at the start of beta.
@
text
@d3 1
a21 3

* Miscellaneous files
    doc/bug.template
@


1.40
log
@Stamp 7.3.4.
@
text
@d17 1
@


1.40.4.1
log
@Update release checklist to reflect that HISTORY and INSTALL don't
need to be created by hand anymore.
@
text
@d9 1
a9 1
    update doc/src/sgml/release.sgml
d18 2
a19 1
    update platform-specific FAQ's, if needed
@


1.40.4.2
log
@Create a script to handle stamping release version numbers into files,
replacing the tedious and error-prone manual process we've been using.
@
text
@d2 5
a6 1
    run src/tools/version_stamp.pl, then run autoconf (by packager)
@


1.39
log
@Update release steps.
@
text
@d31 5
a35 2
Major Version Library Numbers
=============================
@


1.38
log
@A tiny patch to fix a typo in configure.in and another one in
RELEASE_CHANGES.

Manfred Koizar
@
text
@d5 2
a6 2
      o src/interfaces/libpq/libpq.rc
      o src/include/pg_config.h.win32
d9 1
a9 1
    update HISTORY and later doc/src/sgml/release.sgml 
d17 1
a17 1
    update ports list in doc/src/sgml/installation.sgml 
d31 2
a32 2
Major Version
=============
@


1.37
log
@Update RELEASE checklist.
@
text
@d44 1
a44 1
3. Adding a field to a public structure, unless steps have been
@


1.36
log
@Add major/minor release changes info to RELEASE_CHANGES file.
@
text
@d18 1
@


1.35
log
@Compute version number for docs on the fly.
@
text
@d4 1
d26 75
@


1.35.2.1
log
@Update RELEASE checklist.
@
text
@a3 1
      o src/interfaces/*/Makefile
a16 1
    update INSTALL
a24 75


---------------------------------------------------------------------------

Major Version
=============

The major version number should be updated whenever the source of the
library changes to make it binary incompatible. Such changes include,
but are not limited to:

1. Removing a public function or structure (or typedef, enum, ...)

2. Modifying a public functions arguments.

3. Removing a field from a public structure.

3. Adding a field to a public structure, unless steps have been
previously taken to shield users from such a change, for example by
such structures only ever being allocated/instantiated by a library
function which would give the new field a suitable default value.

Adding a new function would NOT force an increase in the major version
number. When the major version is increased all applications which
link to the library MUST be recompiled - this is not desirable. When
the major version is updated the minor version gets reset.

Minor Version
=============

The minor version number should be updated whenever the functionality
of the library has changed, typically and change in source code
between releases would mean an increase in the minor version number so
long as it does not require a major version increase.

Minimizing Changes
==================

When modifying public functions arguments, steps should be taken to
maintain binary compatibility across minor PostgreSQL releases (e.g. the
7.2 series, the 7.3 series, the 7.4/8.0 series). Consider the following
function:

	void print_stuff(int arg1, int arg2)
	{
	    printf("stuff: %d %d\n", arg1, arg2);
	}

If we wanted to add a third argument:
	
	void print_stuff(int arg1, int arg2, int arg3)
	{
	    printf("stuff: %d %d %d\n", arg1, arg2, arg3);
	}

Then doing it like this:

	void print_stuff2(int arg1, int arg2, int arg3)
	{
	    printf("stuff: %d %d %d\n", arg1, arg2, arg3);
	}

	void print_stuff(int arg1, int arg2)
	{
	    print_stuff(arg1, arg2, 0);
	}

would maintain binary compatibility. Obviously this would add a fair
bit of cruft if used extensively, but considering the changes between
minor versions would probably be worthwhile to avoid bumping library
major version. Naturally in the next major version print_stuff() would
assume the functionality and arguments of print_stuff2().


Lee Kindness
@


1.35.2.2
log
@A tiny patch to fix a typo in configure.in and another one in
RELEASE_CHANGES.

Manfred Koizar
@
text
@d44 1
a44 1
4. Adding a field to a public structure, unless steps have been
@


1.35.2.3
log
@Update release checklist to reflect that HISTORY and INSTALL don't
need to be created by hand anymore.
@
text
@d9 1
a9 1
    update doc/src/sgml/release.sgml 
d18 2
a19 1
    update platform-specific FAQ's, if needed
@


1.35.2.4
log
@Stamp release 7.3.11.
@
text
@d5 2
a6 2
      o src/interfaces/libpq/libpq.rc (update for minor release)
      o src/include/pg_config.h.win32 (update for minor release)
@


1.34
log
@File list cleanup.
@
text
@a2 1
    update version and perhaps majorversion in doc/src/sgml/version.sgml
@


1.33
log
@Update files to be changed.
@
text
@d5 2
a6 2
      update src/interfaces/libpq/libpq.rc
      update src/include/pg_config.h.win32
d14 1
a14 1
    /ref manual pages
@


1.32
log
@Add mention of copyright year update.
@
text
@d5 2
a6 3
    update src/interfaces/libpq/libpq.rc
    update src/interfaces/libpq++/libpq++dll.rc
    update src/include/pg_config.h.win32
d9 1
a9 2
    update doc/src/sgml/release.sgml 
    HISTORY
d13 2
a14 2
    help output from inside the programs
    reference/man pages
@


1.31
log
@Update release list.
@
text
@d26 2
@


1.30
log
@Update sgml version properly.
@
text
@d3 1
a3 1
    update doc/src/sgml/version.sgml
@


1.29
log
@Update for 7.2.1.
@
text
@d3 1
a3 1
    doc/src/sgml/version.sgml
@


1.28
log
@Update Win32-world version number of libpq++.
@
text
@d7 1
a7 1
    update src/include/config.h.win32
a22 2
    README
    register.txt
@


1.28.2.1
log
@Update for 7.2.1.
@
text
@d7 1
a7 1
    update src/include/pg_config.h.win32
d23 2
@


1.28.2.2
log
@Update sgml version properly.
@
text
@d3 1
a3 1
    update doc/src/sgml/version.sgml
@


1.28.2.3
log
@Update release list.
@
text
@d3 1
a3 1
    update version and perhaps majorversion in doc/src/sgml/version.sgml
@


1.27
log
@Update list of files to update.
@
text
@d6 1
@


1.26
log
@Update branding for 7.1.3, no HISTORY yet.
@
text
@d2 1
a2 1
    configure.in
@


1.25
log
@Stamp for 7.1.2.  Ready when you are...
@
text
@a25 2
* Update pgaccess

@


1.24
log
@Improve list.
@
text
@d6 1
a6 1
    update /src/include/config.h.win32
@


1.23
log
@Updates for 7.1.1.  Not done yet.
@
text
@d10 1
a10 1
    re-generate HISTORY
@


1.22
log
@Add ./include/config.h.win32 to RELEASE update list.
@
text
@d19 1
a19 1
    platform-specific FAQ's
@


1.21
log
@update list of places to change version numbers; reformat
@
text
@d6 1
@


1.20
log
@Version number now set in configure, available through Makefile.global
and config.h. Adjusted all referring code.

Scrapped pg_version and changed initdb accordingly. Integrated
src/utils/version.c into src/backend/utils/init/miscinit.c. Changed all
callers.

Set version number to `7.1devel'. (Non-numeric version suffixes now allowed.)
@
text
@d1 27
a27 19
update version number in configure.in
README
HISTORY
register.txt
doc/Machine-specific FAQ's
doc/bug.template
update pgaccess
update src/interfaces/jdbc/postgresql/jdbc1/DatabaseMetaData.java
update src/interfaces/jdbc/postgresql/jdbc2/DatabaseMetaData.java
update pg_upgrade to handle new version, or disable
update doc/src/sgml/release.sgml 
update doc/src/sgml/install.sgml 
update interfaces/libpq/libpq.rc
update documentation
	command-line arg printout from inside the program
	man pages
	sgml docs
update VERSION numbers of interfaces
update ports list
@


1.19
log
@Update HISTORY file for 7.0.
@
text
@d1 1
a6 1
update include/version.h.in after release, including subversion
a15 1
	psql help in psqlHelp.c
@


1.18
log
@Update int28out and out8out and _in_ functions to handle trailing zeros
properly.
@
text
@a7 1
update odbc
d20 1
@


1.17
log
@Update jdbc for release version #>
@
text
@d20 1
@


1.16
log
@Add mention of pg_upgrade for release checklist.
@
text
@d9 2
@


1.15
log
@Update stuff for 6.5.1 release.
@
text
@d9 1
@


1.14
log
@Fix for version, update to 6.5.
@
text
@a1 1
INSTALL
a4 1
doc/TODO
a6 1
update backend/parser/scan.c and gram.c so  flex/bison not necessary
d10 1
@


1.13
log
@Add subversion mention
@
text
@d8 1
a8 1
update include/version.h after release, including subversion
@


1.12
log
@Update INSTALL, etc. for release 6.4.  Update pgaccess to 0.88.
@
text
@d8 1
a8 1
update include/version.h after release
@


1.12.2.1
log
@Fix for version, update to 6.5.
@
text
@d8 1
a8 1
update include/version.h.in after release
@


1.11
log
@Update of changes
@
text
@a4 1
configure.in
a7 1
make new /mirgration file
@


1.10
log
@update libpq.rc version.
@
text
@d16 5
@


1.9
log
@libpq's pqGetnchar() should not return a null-terminated value
anymore.  Fix for large objects.
@
text
@d15 1
a15 1

@


1.8
log
@Add files to be updated for release.
@
text
@d14 2
@


1.7
log
@Update gram.c scan.c.
@
text
@d12 2
@


1.6
log
@update for 6.3.1
@
text
@d11 1
a11 1
update backend/parser/scan.l for non-flex sites
@


1.5
log
@Reminder for next time.
@
text
@a5 1
doc/FAQ, including version number
@


1.4
log
@Fix CLUSTER.
@
text
@d5 1
@


1.3
log
@Remember release.txt change.
@
text
@d11 1
@


1.2
log
@Update for 6.2.1
@
text
@d4 1
@


1.1
log
@Cleanups for 6.2.1.
@
text
@d1 1
a3 1
README
d8 2
a9 2
include/version.h

@
