./databases/sqlite3, SQL Database Engine in a C Library

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.18.0nb1, Package name: sqlite3-3.18.0nb1, Maintainer: pkgsrc-users

SQLite is a C library that implements an SQL database engine. Programs
that link with the SQLite library can have SQL database access without
running a separate RDBMS process. The distribution comes with a standalone
command-line access program (sqlite) that can be used to administer an
SQLite database and which serves as an example of how to use the SQLite
library.

SQLite is not a client library used to connect to a big database server.
SQLite is the server. The SQLite library reads and writes directly to and
from the database files on disk.

This is sqlite3, the current stable version.


Required to build:
[pkgtools/cwrappers]

Package options: fts

Master sites:

SHA1: 74559194e1dd9b9d577cac001c0e9d370856671b
RMD160: dca1a652fa28133f505daba50a021d90891f0ea2
Filesize: 2473.637 KB

Version history: (Expand)


CVS history: (Expand)


   2017-04-22 23:04:05 by Adam Ciarcinski | Files touched by this commit (670) | Package updated
Log message:
Revbump after icu update
   2017-03-30 17:55:12 by Adam Ciarcinski | Files touched by this commit (4)
Log message:
Release 3.18.0:

Added the PRAGMA optimize command
The SQLite version identifier returned by the sqlite_source_id() SQL function \ 
and the sqlite3_sourceid() C API and found in the SQLITE_SOURCE_ID macro is now \ 
a 64-digit SHA3-256 hash instead of a 40-digit SHA1 hash.
Added the json_patch() SQL function to the JSON1 extension.
Enhance the LIKE optimization so that it works for arbitrary expressions on the \ 
left-hand side as long as the LIKE pattern on the right-hand side does not begin \ 
with a digit or minus sign.
Added the sqlite3_set_last_insert_rowid() interface and use the new interface in \ 
the FTS3, FTS4, and FTS5 extensions to ensure that the \ 
sqlite3_last_insert_rowid() interface always returns reasonable values.
Enhance PRAGMA integrity_check and PRAGMA quick_check so that they verify CHECK \ 
constraints.
Enhance the query plans for joins to detect empty tables early and halt without \ 
doing unnecessary work.
Enhance the sqlite3_mprintf() family of interfaces and the printf SQL function \ 
to put comma separators at the thousands marks for integers, if the \ 
"," format modifier is used in between the "%" and the \ 
"d" (example: "%,d").
Added the -DSQLITE_MAX_MEMORY=N compile-time option.
Added the .sha3sum dot-command and the .selftest dot-command to the command-line \ 
shell
Begin enforcing SQLITE_LIMIT_VDBE_OP. This can be used, for example, to prevent \ 
excessively large prepared statements in systems that accept SQL queries from \ 
untrusted users.
Various performance improvements.

Bug Fixes:
----------
Ensure that indexed expressions with collating sequences are handled correctly. \ 
Fix for ticket eb703ba7b50c1a5.
Fix a bug in the 'start of ...' modifiers for the date and time functions. \ 
Ticket 6097cb92745327a1
Fix a potential segfault in complex recursive triggers, resulting from a bug in \ 
the OP_Once opcode introduced as part of a performance optimization in version \ 
3.15.0. Ticket 06796225f59c057c
In the RBU extension, add extra sync operations to avoid the possibility of \ 
corruption following a power failure.
The sqlite3_trace_v2() output for nested SQL statements should always begin with \ 
a "--" comment marker.
   2017-02-23 12:07:32 by Jonathan Perkin | Files touched by this commit (1) | Package updated
Log message:
Add workaround for build issue on Darwin, to be removed in the next update.
   2017-02-13 18:44:01 by Adam Ciarcinski | Files touched by this commit (8) | Package updated
Log message:
SQLite Release 3.17.0 On 2017-02-13
* Approximately 25% better performance from the R-Tree extension.
* Uses compiler built-ins (ex: __builtin_bswap32() or _byteswap_ulong()) for \ 
byteswapping when available.
* Uses the sqlite3_blob key/value access object instead of SQL for pulling \ 
content out of R-Tree nodes
* Other miscellaneous enhancements such as loop unrolling.
* Add the SQLITE_DEFAULT_LOOKASIDE compile-time option.
* Increase the default lookaside size from 512,125 to 1200,100 as this provides \ 
better performance while only adding 56KB of extra memory per connection. \ 
Memory-sensitive applications can restore the old default at compile-time, \ 
start-time, or run-time.
* Use compiler built-ins __builtin_sub_overflow(), __builtin_add_overflow(), and \ 
__builtin_mul_overflow() when available. (All compiler built-ins can be omitted \ 
with the SQLITE_DISABLE_INTRINSIC compile-time option.)
* Added the SQLITE_ENABLE_NULL_TRIM compile-time option, which can result in \ 
significantly smaller database files for some applications, at the risk of being \ 
incompatible with older versions of SQLite.
* Change SQLITE_DEFAULT_PCACHE_INITSZ from 100 to 20, for improved performance.
* Added the SQLITE_UINT64_TYPE compile-time option as an analog to SQLITE_INT64_TYPE.
* Perform some UPDATE operations in a single pass instead of in two passes.
* Enhance the session extension to support WITHOUT ROWID tables.
* Fixed performance problems and potential stack overflows when creating views \ 
from multi-row VALUES clauses with hundreds of thousands of rows.
* Added the sha1.c extension.
* In the command-line shell, enhance the ".mode" command so that it \ 
restores the default column and row separators for modes "line", \ 
"list", "column", and "tcl".
* Enhance the SQLITE_DIRECT_OVERFLOW_READ option so that it works in WAL mode as \ 
long as the pages being read are not in the WAL file.
* Enhance the LEMON parser generator so that it can store the parser object as a \ 
stack variable rather than allocating space from the heap and make use of that \ 
enhancement in the amalgamation.
* Other performance improvements. Uses about 6.5% fewer CPU cycles.

Bug Fixes:
* Throw an error if the ON clause of a LEFT JOIN references tables to the right \ 
of the ON clause. This is the same behavior as PostgreSQL. Formerly, SQLite \ 
silently converted the LEFT JOIN into an INNER JOIN.
* Use the correct affinity for columns of automatic indexes.
* Ensure that the sqlite3_blob_reopen() interface can correctly handle short rows.
   2017-01-19 19:52:30 by Alistair G. Crooks | Files touched by this commit (352)
Log message:
Convert all occurrences (353 by my count) of

	MASTER_SITES= 	site1 \
			site2

style continuation lines to be simple repeated

	MASTER_SITES+= site1
	MASTER_SITES+= site2

lines. As previewed on tech-pkg. With thanks to rillig for fixing pkglint
accordingly.
   2017-01-07 11:23:00 by Adam Ciarcinski | Files touched by this commit (6)
Log message:
Changes 3.16.2:
Fix the REPLACE statement for WITHOUT ROWID tables that lack secondary indexes \ 
so that it works correctly with triggers and foreign keys. This was a new bug \ 
caused by performance optimizations added in version 3.16.0. Ticket 30027b613b4
Fix the sqlite3_value_text() interface so that it correctly translates content \ 
generated by zeroblob() into a string of all 0x00 characters. This is a \ 
long-standing issue discovered after the 3.16.1 release by OSS-Fuzz
Fix the bytecode generator to deal with a subquery in the FROM clause that is \ 
itself a UNION ALL where one side of the UNION ALL is a view that contains an \ 
ORDER BY. This is a long-standing issue that was discovered after the release of \ 
3.16.1. See ticket 190c2507.
Adjust the sqlite3_column_count() API so it more often returns the same values \ 
for PRAGMA statements as it did in prior releases, to minimize disruption to \ 
applications that might be using that interface in unexpected ways.
   2017-01-05 18:49:54 by Adam Ciarcinski | Files touched by this commit (5)
Log message:
Changes 3.16.1:
Fix a bug concerning the use of row values within triggers (see ticket 8c9458e7) \ 
that was in version 3.15.0 but was not reported until moments after the 3.16.0 \ 
release was published.
   2017-01-02 18:52:24 by Adam Ciarcinski | Files touched by this commit (8)
Log message:
SQLite Release 3.16.0 On 2017-01-02

Uses 9% fewer CPU cycles. (See the CPU performance measurement report for \ 
details on how the this performance increase was computed.)
Added experimental support for PRAGMA functions.
Added the SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE option to sqlite3_db_config().
Enhance the date and time functions so that the 'unixepoch' modifier works for \ 
the full span of supported dates.
Changed the default configuration of the lookaside memory allocator from 500 \ 
slots of 128 bytes each into 125 slots of 512 bytes each.
Enhanced "WHERE x NOT NULL" partial indexes so that they are usable if \ 
the "x" column appears in a LIKE or GLOB operator.
Enhanced sqlite3_interrupt() so that it interrupts checkpoint operations that \ 
are in process.
Enhanced the LIKE and GLOB matching algorithm to be faster for cases when the \ 
pattern contains multiple wildcards.
Added the SQLITE_FCNTL_WIN32_GET_HANDLE file control opcode.
Added ".mode quote" to the command-line shell.
Added ".lint fkey-indexes" to the command-line shell.
Added the .imposter dot-command to the command-line shell.
Added the remember(V,PTR) SQL function as a loadable extension.
Rename the SQLITE_OMIT_BUILTIN_TEST compile-time option to SQLITE_UNTESTABLE to \ 
better reflect the implications of using it.

Bug Fixes:
Fix a long-standing bug in the query planner that caused incorrect results on a \ 
LEFT JOIN where the left-hand table is a subquery and the join constraint is a \ 
bare column name coming from the left-hand subquery. Ticket 2df0107b.
Correctly handle the integer literal -0x8000000000000000 in the query planner.