bugfix:
That bug might possibly cause database corruption if a large
INSERT or UPDATE statement within a multi-statement transaction fails
due to a uniqueness constraint but the containing transaction commits.
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
INSTALLATION_DIRS, as well as all occurrences of ${PREFIX}/man with
${PREFIX}/${PKGMANDIR}.
Fixes PR 35265, although I did not use the patch provided therein.
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.
For example, "make show-buildlink3" in fonts/Xft2 displays:
zlib
fontconfig
iconv
zlib
freetype2
expat
freetype2
Xrender
renderproto
RECOMMENDED is removed. It becomes ABI_DEPENDS.
BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.
BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.
BUILDLINK_DEPENDS does not change.
IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".
Added to obsolete.mk checking for IGNORE_RECOMMENDED.
I did not manually go through and fix any aesthetic tab/spacing issues.
I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.
I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.
As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.
As discussed on tech-pkg.
I will commit to revbump, pkglint, pkg_install, createbuildlink separately.
Note that if you use wip, it will fail! I will commit to pkgsrc-wip
later (within day).
developer is officially maintaining the package.
The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list). Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
2005 February 15 (2.8.16)
* Fix a bug that can lead to database corruption if there are two open connections
to the same database and one connection does a VACUUM and the second makes some
change to the database.
* Correctly handle quoted names in CREATE INDEX statements.
* Fix a naming conflict between sqlite.h and sqlite3.h.
* Avoid excess heap usage when copying expressions.
* Other minor bug fixes.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".
changes:
Fix the min() and max() optimizer so that it works when the FROM clause
consists of a subquery.
Ignore extra whitespace at the end of of "." commands in the shell.
Bundle sqlite_encode_binary() and sqlite_decode_binary() with the library.
The TEMP_STORE and DEFAULT_TEMP_STORE pragmas now work.
Code changes to compile cleanly using OpenWatcom.
Fix VDBE stack overflow problems with INSTEAD OF triggers and NULLs in
IN operators.
Add the global variable sqlite_temp_directory which if set defines
the directory in which temporary files are stored.
sqlite_interrupt() plays well with VACUUM.
Other minor bug fixes.
FreeBSD 4 portability hint from Michal Pasternak.
Some of the changes since 2.8.5 include:
* Refactor parts of the code in order to make the code footprint
smaller. The code is now also a little bit faster.
* The built-in min() and max() functions now honor the difference
between NUMERIC and TEXT datatypes.
* New HH:MM:SS modifier to the built-in date/time functions.
* Add function prototypes for the database encryption API.
* Fix a bug that might corrupt the rollback journal if a power failure or
external program halt occurs in the middle of a COMMIT.
* Reduce the size and increase the speed of various modules.
* Fix a potential database corruption problem on Unix.
* Fix a 32-bit integer overflow problem that could result in corrupt
indices in a database if large negative numbers (less than -2147483648)
were inserted into a indexed numeric column.
* Fix a locking problem on multi-threaded Linux implementations.
* Fix a critical bug introduced in 2.8.0 which could cause database corruption.
* The VACUUM command now works with the non-callback API
* If the name of the database is an empty string, open a new database in a
temporary file that is automatically deleted when the database is
closed.
* Performance enhancements in the lemon-generated parser
* Documentation updates and typo fixes
* Removed support for the Oracle8 outer join syntax.
* Allow GLOB and LIKE operators to work as functions.
* Make sure the journal file directory entry is committed to disk before
writing the database file.
changes:
Make LIMIT work on a compound SELECT statement.
LIMIT 0 now shows no rows. Use LIMIT -1 to see all rows.
Correctly handle comparisons between an INTEGER PRIMARY KEY and a
floating point number.
Fix several important bugs in the new ATTACH and DETACH commands.
Updated the NULL-handling document.
Allow NULL arguments in sqlite_compile() and sqlite_step().
Many minor bug fixes
Enhanced the "PRAGMA integrity_check" command to verify indices.
Added authorization hooks for the new ATTACH and DETACH commands.
Many documentation updates
2003 June 4 (2.8.3)
- Fix a problem that will corrupt the indices on a table if you
do an INSERT OR REPLACE or an UPDATE OR REPLACE on a table that
contains an INTEGER PRIMARY KEY plus one or more indices.
- Add the ability for INSERT and UPDATE statements to refer to
the "rowid" (or "_rowid_" or "oid") columns.
- Other important bug fixes
2003 May 17 (2.8.2)
- Fix a problem that will corrupt the database file if you drop a
table from the main database that has a TEMP index.
2003 May 16 (2.8.1)
- Reactivated the VACUUM command that reclaims unused disk space
in a database file.
- Added the ATTACH and DETACH commands to allow interacting with
multiple database files at the same time.
- Added support for TEMP triggers and indices.
- Added support for in-memory databases.
- Removed the experimental sqlite_open_aux_file(). Its function
is subsumed in the new ATTACH command.
- The precedence order for ON CONFLICT clauses was changed so
that ON CONFLICT clauses on BEGIN statements have a higher
precedence than ON CONFLICT clauses on constraints.
- Many, many bug fixes and compatibility enhancements.
Lots of bug fixes in SQL parsing and supports more weildy SQL code like
using the right of an AS in athe column list of a SELECT as part of an
expression in the WHERE, ORDER BY, GROUP BY and/of HAVING clauses.
For a full report see the changelog on
http://www.hwaci.com/sw/sqlite/changes.html
1) locking problems due to a few race conditions
2) fixing a bug in `create temporary table' wich could contaminate the
main database file opened too
3) bug fix in b-tree subsystem that could sometimes cause the first row of
a table to be repeated during a database scan.
bugs removal, fixing the behaviour of comparison operators so that they are
consistent with the order of entries in an index, correct handling of
integers in SQL expressions that are larger than what can be represented by
the machine integer and locking protocol fixes.
The author also incorporated my suggestions after the messy LP64 patches I
made; its now a lot more clean allthough there are still a few warnings but
they are checked and OK.