Revision history for Trog-SQLite

0.002 2026-10-22 TEODESIAN
    - dbh waits for a write lock before it sets the journal mode to WAL.
      SQLite fails that change at once with SQLITE_BUSY, and does not wait
      for busy_timeout, so a process that opened a new database while
      another one wrote to it died with "database is locked".  wal tries
      again for as long as busy_timeout, with Sub::Retry.

0.001 2026-10-18 TEODESIAN
    - Initial release, from the copies in tCMS and trog-provisioner.
    - Versioned schema updates: NAME.vN.update.sql beside NAME.sql, each run
      once, in order, in its own transaction, and recorded in
      trog_sqlite_schema_version.
    - Handles have RaiseError on, and busy_timeout is set before the schema,
      so that a second process waits for the updates of the first.
    - bulk_insert quotes the table and the columns as identifiers, fills each
      batch up to the parameter limit, and returns 1.
