/ Check-in [5232fd29]
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Documentation updates in preparation for 3.4.0. (CVS 4064)
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 5232fd29d01d48d70b6d8f34ad5d0e2dde115fa0
User & Date: drh 2007-06-15 12:16:31
Context
2007-06-15
12:41
Clean up a variable in tkt2409.test that would cause subsequent tests to fail. (CVS 4065) check-in: 0f944cb9 user: drh tags: trunk
12:16
Documentation updates in preparation for 3.4.0. (CVS 4064) check-in: 5232fd29 user: drh tags: trunk
12:06
Update the btree file format description in btreeInt.h. (CVS 4063) check-in: 1ac160d3 user: drh tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to VERSION.

     1         -3.3.17
            1  +3.4.0

Changes to www/changes.tcl.

    18     18   
    19     19   proc chng {date desc} {
    20     20     if {[regexp {\(([0-9.]+)\)} $date all vers]} {
    21     21       set label [string map {. _} $vers]
    22     22       puts "<A NAME=\"version_$label\">"
    23     23     }
    24     24     puts "<DT><B>$date</B></DT>"
    25         -  puts "<DD><P><UL>$desc</UL></P></DD>"
           25  +  regsub -all {[Tt]icket #(\d+)} $desc \
           26  +      {<a href="http://www.sqlite.org/cvstrac/tktview?tn=\1">\0</a>} desc
           27  +  puts "<DD><P><UL>$desc</UL></P>"
           28  +  puts "</DD>"
           29  +}
           30  +
           31  +chng {2007 June 15 (3.4.0)} {
           32  +<li>Fix a bug that can lead to database corruption if an SQLITE_BUSY error
           33  +    occurs in the middle of an explicit transaction and that transaction
           34  +    is later committed.  Ticket #2409.  See the
           35  +    <a href="http://www.sqlite.org/cvstrac/wiki?p=CorruptionFollowingBusyError">
           36  +    CorruptionFollowingBusyError</a> wiki page for details.</i>
           37  +<li>Added explicit <a href="limits.html">upper bounds</a> on the sizes and
           38  +    quantities of things SQLite can process.  This change might break some
           39  +    applications that use SQLite in the extreme, which is when the current
           40  +    release is 3.4.0 instead of 3.3.18.</li>
           41  +<li>Added support for <a href="capi3ref.html#sqlite3_blob_open">
           42  +    Incremental BLOB I/O</a>.</li>
           43  +<li>Added the <a href="capi3ref.html#sqlite3_bind_zeroblob">zeroblob API</a>
           44  +    and the <a href="lang_expr.html#zeroblob">zeroblob()</a> SQL function.</li>
           45  +<li>Added support for <a href="pragma.html#pragma_incremental_vacuum">
           46  +    Incremntal Vacuum</a>.</li>
           47  +<li>Added the SQLITE_MIXED_ENDIAN_64BIT_FLOAT compile-time option to suppport
           48  +    ARM7 processors with goofy endianness.</li>
           49  +<li>Removed all instances of sprintf() and strcpy() from the core library.</li>
           50  +<li>Added support for <a href="http://www.icu-project.org/">
           51  +    International Components for Unicode (ICU)</a> to the full-text search
           52  +    extensions.
           53  +</ul><p>
           54  +<ul type="circle">
           55  +<li>In the windows OS driver, reacquire a SHARED lock if an attempt to
           56  +    acquire an EXCLUSIVE lock fails.  Ticket #2354</li>
           57  +<li>Fix the REPLACE() function so that it returns NULL if the second argument
           58  +    is an empty string.  Ticket #2324.</li>
           59  +<li>Document the hazards of type coversions in
           60  +    <a href="capi3ref.html#sqlite3_column_blob">sqlite3_column_blob()</a>
           61  +    and related APIs.  Fix unnecessary type conversions.  Ticket #2321.</li>
           62  +<li>Internationalization of the TRIM() functin.  Ticket #2323</li>
           63  +<li>Use memmove() instead of memcpy() when moving between memory regions
           64  +    that might overlap.  Ticket #2334</li>
           65  +<li>Fix an optimizer bug involving subqueries in a compound SELECT that has
           66  +    both an ORDER BY and a LIMIT clause.  Ticket #2339.</li>
           67  +<li>Make sure the <a href="capi3ref.html#sqlite3_snprintf">sqlite3_snprintf()
           68  +    </a> interface does not zero-terminate the buffer if the buffer size is
           69  +    less than 1.  Ticket #2341</li>
           70  +<li>Fix the built-in printf logic so that it prints "NaN" not "Inf" for
           71  +    floating-point NaNs.  Ticket #2345</li>
           72  +<li>When converting BLOB to TEXT, use the text encoding of the main database.
           73  +    Ticket #2349</li>
           74  +<li>Keep the full precision of integers (if possible) when casting to
           75  +    NUMERIC.  Ticket #2364</li>
           76  +<li>Fix a bug in the handling of UTF16 codepoint 0xE000</li>
           77  +<li>Consider explicit collate clauses when matching WHERE constraints
           78  +    to indices in the query optimizer.  Ticket #2391</li>
           79  +<li>Fix the query optimizer to correctly handle constant expressions in 
           80  +    the ON clause of a LEFT JOIN.  Ticket #2403</li>
           81  +<li>Fix the query optimizer to handle rowid comparisions to NULL
           82  +    correctly.  Ticket #2404</li>
           83  +<li>Fix many potental segfaults that could be caused by malicious SQL
           84  +    statements.</li>
    26     85   }
    27     86   
    28     87   chng {2007 April 25 (3.3.17)} {
    29     88   <li>When the "write_version" value of the database header is larger than
    30     89       what the library understands, make the database read-only instead of
    31     90       unreadable.</li>
    32     91   <li>Other minor bug fixes</li>

Changes to www/index.tcl.

    66     66   
    67     67   proc newsitem {date title text} {
    68     68     puts "<h3>$date - $title</h3>"
    69     69     regsub -all "\n( *\n)+" $text "</p>\n\n<p>" txt
    70     70     puts "<p>$txt</p>"
    71     71     puts "<hr width=\"50%\">"
    72     72   }
           73  +
           74  +newsitem {2007-Jun-15} {Version 3.4.0} {
           75  +  This release fixes a bug that can lead to database corruption.  Upgrading
           76  +  is strongly recommended.  If you must continue using an older version
           77  +  of SQLite, please at least read
           78  +  <a href="http://www.sqlite.org/cvstrac/wiki?p=CorruptionFollowingBusyError">
           79  +  how to avoid the bug</a>.
           80  +  <p>
           81  +  This release also adds explicit <a href="limits.html">limits</a> on the
           82  +  sizes and quantities of things SQLite will handle.  The new limits might
           83  +  causes minor problems for some existing applications that push the
           84  +  envelope, which is the reason that this release is 3.4.0 instead of 3.3.18.
           85  +  </p>
           86  +  There are also new features, including
           87  +  <a href="capi3ref.html#sqlite3_blob_open">incremental BLOB I/O</a> and
           88  +  <a href="pragma.html#pragma_incremental_vacuum">incremental vacuum</a>.
           89  +  See the <a href="changes.html">change log</a> for additional information.
           90  +}
    73     91   
    74     92   newsitem {2007-Apr-25} {Version 3.3.17} {
    75     93     This version fixes a bug in the forwards-compatibility logic of SQLite
    76     94     that was causing a database to become unreadable when it should have
    77     95     been read-only.  Upgrade from 3.3.16 only if you plan to deploy into
    78     96     a product that might need to be upgraded in the future.  For day to day
    79     97     use, it probably does not matter.
................................................................................
    81     99   
    82    100   newsitem {2007-Apr-18} {Version 3.3.16} {
    83    101     Performance improvements added in 3.3.14 but mistakenly turned off
    84    102     in 3.3.15 have been reinstated.  A bug has been fixed that prevented 
    85    103     VACUUM from running if a NULL value was in a UNIQUE column.
    86    104   }
    87    105   
    88         -newsitem {2007-Apr-09} {Version 3.3.15} {
    89         -  An annoying bug introduced in 3.3.14 has been fixed.  There are
    90         -  also many enhancements to the test suite.  
    91         -}
    92         -
    93         -newsitem {2007-Apr-02} {Version 3.3.14} {
    94         -  This version focuses on performance improvements.  If you recompile
    95         -  <a href="http://www.sqlite.org/cvstrac/wiki?p=TheAmalgamation">
    96         -  the amalgamation</a> using GCC option -O3 (the precompiled binaries
    97         -  use -O2) you may see performance
    98         -  improvements of 35% or more over version 3.3.13 depending on your
    99         -  workload.  This version also
   100         -  adds support for <a href="pragma.html#pragma_locking_mode">
   101         -  exclusive access mode</a>.
   102         -}
   103         -
   104         -newsitem {2007-Feb-13} {Version 3.3.13} {
   105         -  This version fixes a subtle bug in the ORDER BY optimizer that can 
   106         -  occur when using joins.  There are also a few minor enhancements.
   107         -  Upgrading is recommended.
   108         -}
   109         -
   110         -newsitem {2007-Jan-27} {Version 3.3.12} {
   111         -  The first published build of the previous version used the wrong
   112         -  set of source files.  Consequently, many people downloaded a build
   113         -  that was labeled as "3.3.11" but was really 3.3.10.  Version 3.3.12
   114         -  is released to clear up the ambiguity.  A couple more bugs have
   115         -  also been fixed and <a href="pragma.html#pragma_integrity_check">
   116         -  PRAGMA integrity_check</a> has been enhanced.
   117         -}
   118         -
   119    106   puts {
   120    107   <p align="right"><a href="oldnews.html">Old news...</a></p>
   121    108   </td></tr></table>
   122    109   }
   123         -footer {$Id: index.tcl,v 1.155 2007/06/09 09:53:51 drh Exp $}
          110  +footer {$Id: index.tcl,v 1.156 2007/06/15 12:16:32 drh Exp $}

Changes to www/lang.tcl.

     1      1   #
     2      2   # Run this Tcl script to generate the lang-*.html files.
     3      3   #
     4         -set rcsid {$Id: lang.tcl,v 1.129 2007/05/15 01:13:47 drh Exp $}
            4  +set rcsid {$Id: lang.tcl,v 1.130 2007/06/15 12:16:32 drh Exp $}
     5      5   source common.tcl
     6      6   
     7      7   if {[llength $argv]>0} {
     8      8     set outputdir [lindex $argv 0]
     9      9   } else {
    10     10     set outputdir ""
    11     11   }
................................................................................
  1481   1481   <tr>
  1482   1482   <td valign="top" align="right">upper(<i>X</i>)</td>
  1483   1483   <td valign="top">Return a copy of input string <i>X</i> converted to all
  1484   1484   upper-case letters.  The implementation of this function uses the C library
  1485   1485   routine <b>toupper()</b> which means it may not work correctly on 
  1486   1486   UTF-8 strings.</td>
  1487   1487   </tr>
         1488  +
         1489  +<tr>
         1490  +<td valign="top" align="right">zeroblob(<i>N</i>)</td>
         1491  +<td valign="top"><a name="zeroblob">
         1492  +Return a BLOB consisting of N bytes of 0x00.  SQLite
         1493  +manages these zeroblobs very efficiently.  Zeroblobs can be use to
         1494  +reserve space for a BLOB that is later written using 
         1495  +<a href="capi3ref.html#sqlite3_blob_open">incremental BLOB I/O</a>.</td>
         1496  +</tr>
         1497  +
  1488   1498   </table>
  1489   1499   
  1490   1500   <b>Date And Time Functions</b>
  1491   1501   
  1492   1502   <p>Date and time functions are documented in the 
  1493   1503   <a href="http://www.sqlite.org/cvstrac/wiki?p=DateAndTimeFunctions">
  1494   1504   SQLite Wiki</a>.</p>

Changes to www/oldnews.tcl.

     5      5   proc newsitem {date title text} {
     6      6     puts "<h3>$date - $title</h3>"
     7      7     regsub -all "\n( *\n)+" $text "</p>\n\n<p>" txt
     8      8     puts "<p>$txt</p>"
     9      9     puts "<hr width=\"50%\">"
    10     10   }
    11     11   
           12  +
           13  +newsitem {2007-Apr-09} {Version 3.3.15} {
           14  +  An annoying bug introduced in 3.3.14 has been fixed.  There are
           15  +  also many enhancements to the test suite.  
           16  +}
           17  +
           18  +newsitem {2007-Apr-02} {Version 3.3.14} {
           19  +  This version focuses on performance improvements.  If you recompile
           20  +  <a href="http://www.sqlite.org/cvstrac/wiki?p=TheAmalgamation">
           21  +  the amalgamation</a> using GCC option -O3 (the precompiled binaries
           22  +  use -O2) you may see performance
           23  +  improvements of 35% or more over version 3.3.13 depending on your
           24  +  workload.  This version also
           25  +  adds support for <a href="pragma.html#pragma_locking_mode">
           26  +  exclusive access mode</a>.
           27  +}
           28  +
           29  +newsitem {2007-Feb-13} {Version 3.3.13} {
           30  +  This version fixes a subtle bug in the ORDER BY optimizer that can 
           31  +  occur when using joins.  There are also a few minor enhancements.
           32  +  Upgrading is recommended.
           33  +}
           34  +
           35  +newsitem {2007-Jan-27} {Version 3.3.12} {
           36  +  The first published build of the previous version used the wrong
           37  +  set of source files.  Consequently, many people downloaded a build
           38  +  that was labeled as "3.3.11" but was really 3.3.10.  Version 3.3.12
           39  +  is released to clear up the ambiguity.  A couple more bugs have
           40  +  also been fixed and <a href="pragma.html#pragma_integrity_check">
           41  +  PRAGMA integrity_check</a> has been enhanced.
           42  +}
    12     43   
    13     44   newsitem {2007-Jan-22} {Version 3.3.11} {
    14     45     Version 3.3.11 fixes for a few more problems in version 3.3.9 that
    15     46     version 3.3.10 failed to catch.  Upgrading is recommended.
    16     47   }
    17     48   
    18     49   newsitem {2007-Jan-9} {Version 3.3.10} {
................................................................................
   408    439     changes to both the C-language API and the underlying file format
   409    440     that will enable SQLite to better support internationalization.
   410    441     The first beta is schedule for release on 2004-July-01.
   411    442   
   412    443     Plans are to continue to support SQLite version 2.8 with
   413    444     bug fixes.  But all new development will occur in version 3.0.
   414    445   }
   415         -footer {$Id: oldnews.tcl,v 1.20 2007/04/09 13:18:47 drh Exp $}
          446  +footer {$Id: oldnews.tcl,v 1.21 2007/06/15 12:16:32 drh Exp $}