* atexit is ignored by uWSGI and the worker thread can not exit
* queue API and naming is not final
Gunicorn ignores an error on shutdown:
Exception SystemExit: 0 in <module 'threading' from
'/usr/lib64/python2.7/threading.pyc'> ignored
* add a wrapper around `sqlite3` to enable connection pooling across
multiple threads.
Most tests now use a in-memory database which speeds things (slightly)
up. The database wrapper is now uncoupled from the actual database
connection.
* split cache framework from core.Mixin into a separate package
`isso.cache`. The dependency on `werkzeug.contrib` has been removed to
ease a possible transition to a different web framework later.
The default cache uses SQLite3 now (unless Isso is run from uWSGI).
While it may sound like a Bad Idea (tm), it's much more efficient than
per-process python datastructures. The SQLite3 cache is SMP-capable
and fast for read-heavy sites.
SQLite3 may fail due to a corrupt database for concurrent read access
from multiple processes. The database is actually not corrupted, but
the connection is stale. As a workaround, limit process number to your
CPU count or wait until a "real" backend such as PostgreSQL is
available.
* use a single default configuration, share/isso.conf
* try to use config.new in some tests which are decoupled
A few tests now depend on `isso.dist` to show that they (or the used
objects) have too much dependencies and need to be rewritten.
Site links such as /?p=1234 are imported *as is* and maybe do work in
Isso. Do not use a query-based URL structure as permalinks. Ever.
Also, depending on the pages you are going to export, WXR' XML namespace
may change from ../export/1.0/ to ../export/1.2/. Isso tries to import
any WXR 1.x
A minor regression introduced by the latest refactorings. A functional
test is now included. Only affects Firefox users that use non-SSL and
supress their HTTP Referer completely