From: drh
Date: Sat, 19 Mar 2005 14:45:48 +0000 (+0000)
Subject: Preparations for the release of version 3.2.0. (CVS 2400)
X-Git-Tag: version-3.6.10~3758
X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=47b4b29b12681e1e6d2a2bcf5497238dc6b161ea;p=thirdparty%2Fsqlite.git
Preparations for the release of version 3.2.0. (CVS 2400)
FossilOrigin-Name: 90a00e90663749e5d1f8e28709dfbe981f8afc8b
---
diff --git a/VERSION b/VERSION
index 9cec7165ab..944880fa15 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-3.1.6
+3.2.0
diff --git a/manifest b/manifest
index f279c63890..491fe35ede 100644
--- a/manifest
+++ b/manifest
@@ -1,9 +1,9 @@
-C Fix\stypos\sin\sdocumentation.\s(CVS\s2399)
-D 2005-03-19T03:41:58
+C Preparations\sfor\sthe\srelease\sof\sversion\s3.2.0.\s(CVS\s2400)
+D 2005-03-19T14:45:49
F Makefile.in 5c00d0037104de2a50ac7647a5f12769795957a3
F Makefile.linux-gcc 06be33b2a9ad4f005a5f42b22c4a19dab3cbb5c7
F README a01693e454a00cc117967e3f9fdab2d4d52e9bc1
-F VERSION 4cc3959f8989cf586df7ed2c0b0829dfff828441
+F VERSION 2520423000707b82b67b4165b1b94c51ea9e04ac
F aclocal.m4 7daea4c35e88de30d5a3f6f7a2ab99720e803bbd
F art/SQLite.eps 9b43cc99cfd2be687d386faea6862ea68d6a72b2
F art/SQLite.gif 1bbb94484963f1382e27e1c5e86dd0c1061eba2b
@@ -27,7 +27,7 @@ F sqlite.pc.in 30552343140c53304c2a658c080fbe810cd09ca2
F sqlite3.1 6be1ad09113570e1fc8dcaff84c9b0b337db5ffc
F sqlite3.def dbaeb20c153e1d366e8f421b55a573f5dfc00863
F sqlite3.pc.in 985b9bf34192a549d7d370e0f0b6b34a4f61369a
-F src/alter.c 85a23fc9a565c0e065d05d1d89744fcc6dee1c65
+F src/alter.c 8ee27ba2d09f26030c145a780ec8a93cd876d315
F src/attach.c 3615dbe960cbee4aa5ea300b8a213dad36527b0f
F src/auth.c 18c5a0befe20f3a58a41e3ddd78f372faeeefe1f
F src/btree.c 1d9b2179ccac13970c883da6ae3758cc72978bb0
@@ -79,7 +79,7 @@ F src/vdbe.c 086e4b42d57af68fceb8c04a6e4eed901777d942
F src/vdbe.h 7e307333d74e134eff237bb9d45fe764e544ad6a
F src/vdbeInt.h e80721cd8ff611789e20743eec43363a9fb5a48e
F src/vdbeapi.c 467caa6e6fb9247528b1c7ab9132ae1b4748e8ac
-F src/vdbeaux.c 3c2f1d5df1ac21e20a9795f4a988f663b01f7b83
+F src/vdbeaux.c 91013922626fed75ad091459b7f05f9e86581690
F src/vdbemem.c 4e853ce3151eaf7906150da85a1b3ce1fe5e8da8
F src/where.c c4b227458e8993decb515ed9a2fe2d4f5f8e3125
F tclinstaller.tcl 046e3624671962dc50f0481d7c25b38ef803eb42
@@ -243,7 +243,7 @@ F www/autoinc.tcl b357f5ba954b046ee35392ce0f884a2fcfcdea06
F www/c_interface.tcl b51b08591554c16a0c3ef718364a508ac25abc7e
F www/capi3.tcl 7a7cc225fe02eb7ab861a6019b08baa0014409e1
F www/capi3ref.tcl 59c7da9ef1f24dcb10b247cd3b7452cf76ab36f0
-F www/changes.tcl 8b78425c6eedbe457a0cdf461f94f165bfc2b77d
+F www/changes.tcl 2a01ed8f51729365d190e5adbae7aee61499a6cc
F www/common.tcl de758130d54d95d151ea0d17a2ae5b92e1bb01de
F www/compile.tcl 65b26bdfc964b66c5f0af841718a52f9795ceb05
F www/conflict.tcl cdd0f4b59b0ba6d61f67e6a38f3ae45853bacb30
@@ -253,14 +253,14 @@ F www/copyright.tcl 82c9670c7ddb0311912ab7fe24703f33c531066c
F www/datatype3.tcl 1d14f70ab73075556b95e76a5c13e5b03f7f6c47
F www/datatypes.tcl 7c786d2e8ff434346764534ec015966d17efce60
F www/different.tcl f9f573553f4b6854797120b9caba758ae7da240a
-F www/docs.tcl 95f464d6ae02fe265a845ba60d44e053ab5cb5d5
+F www/docs.tcl 6c0b2c567404b15bd46a0cda2dc69615a8e679a8
F www/download.tcl 3af00c0e8fd915961707cddb4c2260f5cf59f3c1
F www/dynload.tcl 02eb8273aa78cfa9070dd4501dca937fb22b466c
F www/faq.tcl 1e348dec52dc0f21f4216fd6918c69c56daa4cfd
F www/fileformat.tcl 900c95b9633abc3dcfc384d9ddd8eb4876793059
-F www/formatchng.tcl bfbf14dbf5181e771d06da7797767b0200b36d8a
-F www/index.tcl a53c9b092ab528cc4b9755ccd78e23ca796bafe0
-F www/lang.tcl 1f58511c7e59c5de26c9bf07c488584493dfab1d
+F www/formatchng.tcl ec974d74a87f7ae69d0626848bfcf716865c3291
+F www/index.tcl d205e4f360829c2f2805b7d4c11f8b293e1f6bac
+F www/lang.tcl 074e2d08fbe7c756988a9192856e962c8734f797
F www/lockingv3.tcl f59b19d6c8920a931f096699d6faaf61c05db55f
F www/mingw.tcl d96b451568c5d28545fefe0c80bee3431c73f69c
F www/nulls.tcl ec35193f92485b87b90a994a01d0171b58823fcf
@@ -277,7 +277,7 @@ F www/tclsqlite.tcl e73f8f8e5f20e8277619433f7970060ab01088fc
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
F www/version3.tcl 092a01f5ef430d2c4acc0ae558d74c4bb89638a0
F www/whentouse.tcl 528299b8316726dbcc5548e9aa0648c8b1bd055b
-P e53c77268cd16802bd8c6fc4c6cd5280dc12f9c1
-R 0d34799a6d013756241b74ca09f6edb9
+P aee888ca58a7d059ff3ccb26bf0924550d54ab1c
+R c29caad866fc92d0ecab41a8c373b379
U drh
-Z 79192b57d19e830ea2fe10543e7bbe47
+Z 879278758b279ffc4d2f1084c6b49b27
diff --git a/manifest.uuid b/manifest.uuid
index d3d9ba8140..8880cabfe3 100644
--- a/manifest.uuid
+++ b/manifest.uuid
@@ -1 +1 @@
-aee888ca58a7d059ff3ccb26bf0924550d54ab1c
\ No newline at end of file
+90a00e90663749e5d1f8e28709dfbe981f8afc8b
\ No newline at end of file
diff --git a/src/alter.c b/src/alter.c
index c01219f211..58784622bf 100644
--- a/src/alter.c
+++ b/src/alter.c
@@ -12,7 +12,7 @@
** This file contains C code routines that used to generate VDBE code
** that implements the ALTER TABLE command.
**
-** $Id: alter.c,v 1.3 2005/03/17 05:03:39 danielk1977 Exp $
+** $Id: alter.c,v 1.4 2005/03/19 14:45:49 drh Exp $
*/
#include "sqliteInt.h"
#include
@@ -444,7 +444,7 @@ void sqlite3AlterFinishAddColumn(Parse *pParse, Token *pColDef){
zCol = sqliteStrNDup(pColDef->z, pColDef->n);
if( zCol ){
char *zEnd = &zCol[pColDef->n-1];
- while( zEnd>zCol && *zEnd==';' || isspace(*(unsigned char *)zEnd) ){
+ while( (zEnd>zCol && *zEnd==';') || isspace(*(unsigned char *)zEnd) ){
*zEnd-- = '\0';
}
sqlite3NestedParse(pParse,
@@ -548,4 +548,3 @@ exit_begin_add_column:
return;
}
#endif /* SQLITE_ALTER_TABLE */
-
diff --git a/src/vdbeaux.c b/src/vdbeaux.c
index 3bce2cb7fc..fa67a41abf 100644
--- a/src/vdbeaux.c
+++ b/src/vdbeaux.c
@@ -273,7 +273,7 @@ void sqlite3VdbeChangeP3(Vdbe *p, int addr, const char *zP3, int n){
assert( p->magic==VDBE_MAGIC_INIT );
if( p==0 || p->aOp==0 ){
if( n==P3_DYNAMIC || n==P3_KEYINFO_HANDOFF ){
- sqliteFree(zP3);
+ sqliteFree((void*)zP3);
}
return;
}
diff --git a/www/changes.tcl b/www/changes.tcl
index d0164042f1..4d4f96f7ea 100644
--- a/www/changes.tcl
+++ b/www/changes.tcl
@@ -21,6 +21,10 @@ proc chng {date desc} {
puts "
"
}
+chng {2005 March 19 (3.2.0)} {
+Added support for ALTER TABLE ADD COLUMN.
+}
+
chng {2005 March 16 (3.1.6)} {
Fix a bug that could cause database corruption when inserting
record into tables with around 125 columns.
diff --git a/www/docs.tcl b/www/docs.tcl
index 56ed15c2a8..981b2ab66f 100644
--- a/www/docs.tcl
+++ b/www/docs.tcl
@@ -1,7 +1,7 @@
# This script generates the "docs.html" page that describes various
# sources of documentation available for SQLite.
#
-set rcsid {$Id: docs.tcl,v 1.10 2005/03/12 15:55:11 drh Exp $}
+set rcsid {$Id: docs.tcl,v 1.11 2005/03/19 14:45:50 drh Exp $}
source common.tcl
header {SQLite Documentation}
puts {
@@ -128,5 +128,10 @@ doc {Compilation Options} {compile.html} {
in order to reduce binary size.
}
+doc {Backwards Compatibility} {formatchng.html} {
+ This document details all of the incompatible changes to the SQLite
+ file format that have occurred since version 1.0.0.
+}
+
puts {}
footer $rcsid
diff --git a/www/formatchng.tcl b/www/formatchng.tcl
index fd1745db9a..f42d65f444 100644
--- a/www/formatchng.tcl
+++ b/www/formatchng.tcl
@@ -1,16 +1,18 @@
#
# Run this Tcl script to generate the formatchng.html file.
#
-set rcsid {$Id: formatchng.tcl,v 1.12 2004/10/10 17:24:55 drh Exp $ }
+set rcsid {$Id: formatchng.tcl,v 1.13 2005/03/19 14:45:50 drh Exp $ }
source common.tcl
header {File Format Changes in SQLite}
puts {
File Format Changes in SQLite
-From time to time, enhancements or bug fixes require a change to
-the underlying file format for SQLite. When this happens and you
-want to upgrade your library, you must convert the contents of your
+Every effort is made to keep SQLite fully backwards compatible from
+one release to the next. Rarely, however, some
+enhancements or bug fixes may require a change to
+the underlying file format. When this happens and you
+must convert the contents of your
databases into a portable ASCII representation using the old version
of the library then reload the data using the new version of the
library.
@@ -18,11 +20,16 @@ library.
You can tell if you should reload your databases by comparing the
-version numbers of the old and new libraries. If either of the
-first two digits in the version number change, then a reload is
-either required or recommended. For example, upgrading from
-version 1.0.32 to 2.0.0 requires a reload. So does going from
-version 2.0.8 to 2.1.0.
+version numbers of the old and new libraries. If the first digit
+of the version number is different, then a reload of the database will
+be required. If the second digit changes, newer versions of SQLite
+will be able to read and write older database files, but older versions
+of the library may have difficulty reading or writing newer database
+files.
+For example, upgrading from
+version 2.8.14 to 3.0.0 requires a reload. Going from
+version 3.0.8 to 3.1.0 is backwards compatible but not necessarily
+forwards compatible.
@@ -54,7 +61,11 @@ occurred since version 1.0.0:
The same basic B-Tree format is used but the details of the
index keys were changed in order to provide better query
optimization opportunities. Some of the headers were also changed in order
- to increase the maximum size of a row from 64KB to 24MB. |
+ to increase the maximum size of a row from 64KB to 24MB.
+
+ This change is an exception to the version number rule described above
+ in that it is neither forwards or backwards compatible. A complete
+ reload of the database is required. This is the only exception.
2.1.7 to 2.2.0 |
@@ -168,14 +179,38 @@ occurred since version 1.0.0:
2.8.14 to 3.0.0 |
- (pending) |
+ 2004-Jun-18 |
Version 3.0.0 is a major upgrade for SQLite that incorporates
support for UTF-16, BLOBs, and a more compact encoding that results
- in database files that are typically 25% to 35% smaller. The new file
- format is radically different and completely incompatible with the
+ in database files that are typically 25% to 50% smaller. The new file
+ format is very different and is completely incompatible with the
version 2 file format.
|
+
+ 3.0.8 to 3.1.0 |
+ 2004-Jan-21 |
+ Version 3.1.0 adds support for
+ autovacuum mode.
+ Prior versions of SQLite will be able to read and autovacuumed
+ database but will not be able to write it. If autovaccum is disabled
+ (which is the default condition)
+ then databases are fully forwards and backwards compatible.
+ |
+
+
+ 3.1.6 to 3.2.0 |
+ 2004-Mar-19 |
+ Version 3.2.0 adds support for the
+ ALTER TABLE ADD COLUMN
+ command. A database that has been modified by this command can
+ not be read by a version of SQLite prior to 3.1.4. Running
+ VACUUM
+ after the ALTER TABLE
+ restores the database to a format such that it can be read by earlier
+ SQLite versions.
+ |
+
@@ -190,7 +225,7 @@ this is as follows:
- echo .dump | sqlite-old old.db | sqlite-new new.db
+ sqlite-old old.db .dump | sqlite-new new.db
}
footer $rcsid
diff --git a/www/index.tcl b/www/index.tcl
index 62590caf9b..12b58c493e 100644
--- a/www/index.tcl
+++ b/www/index.tcl
@@ -61,6 +61,10 @@ proc newsitem {date title text} {
puts "
"
}
+newsitem {2005-Mar-19} {Version 3.2.0} {
+ Version 3.2.0 adds support for ALTER TABLE ADD COLUMN.
+}
+
newsitem {2005-Mar-16} {Version 3.1.6} {
Version 3.1.6 fixes a critical bug that can cause database corruption
when inserting rows into tables with around 125 columns. This bug was
@@ -91,4 +95,4 @@ puts {
Old news...
}
-footer {$Id: index.tcl,v 1.111 2005/03/17 03:33:17 drh Exp $}
+footer {$Id: index.tcl,v 1.112 2005/03/19 14:45:50 drh Exp $}
diff --git a/www/lang.tcl b/www/lang.tcl
index c85266340d..cd80e90dbf 100644
--- a/www/lang.tcl
+++ b/www/lang.tcl
@@ -1,7 +1,7 @@
#
# Run this Tcl script to generate the lang-*.html files.
#
-set rcsid {$Id: lang.tcl,v 1.86 2005/03/19 01:41:22 drh Exp $}
+set rcsid {$Id: lang.tcl,v 1.87 2005/03/19 14:45:50 drh Exp $}
source common.tcl
if {[llength $argv]>0} {
@@ -181,6 +181,10 @@ statement, with the following restrictions:
the amount of data in the table. The ALTER TABLE command runs as quickly
on a table with 10 million rows as it does on a table with 1 row.
+
+After ADD COLUMN has been run on a database, that database will not
+be readable by SQLite version 3.1.3 and earlier until the database
+is VACUUMed.
}
Section {ATTACH DATABASE} attach