0.000045  2026-06-02 11:34:03-07:00 America/Los_Angeles

    - Switched PostgreSQL shutdown back to SIGTERM (smart shutdown) for a proper, clean shutdown when possible. The earlier hang risk is now covered: stop() disconnects our own lingering handles first, forces a CHECKPOINT, and the watcher's SIGKILL grace period is generous and tunable
    - Driver stop() now forces a CHECKPOINT (PostgreSQL) before shutting the server down. If the shutdown is slow enough to be SIGKILLed, the data dir is already consistent, so cloning it no longer triggers crash recovery that jumps SERIAL sequences forward by SEQ_LOG_VALS (32) -- the FreeBSD smoke failure where a cloned row got id 34 instead of 2
    - Increased the watcher's graceful-shutdown window before escalating to SIGKILL (4s -> 15s) and made it configurable via the QDB_STOP_GRACE environment variable, so slow hosts can finish a clean shutdown
    - Made the Pool tests tolerant of non-deterministic SERIAL ids (verify row values and that ids are strictly increasing, rather than exact id values)
    - Fixed t/stop_socket_cleanup.t failing on platforms without DBI/IO::Socket::UNIX (e.g. Windows, smoke hosts lacking DBI): it now skips cleanly instead of dying

0.000044  2026-06-01 14:23:16-07:00 America/Los_Angeles

    - Driver stop() now confirms the server is gone by its pid instead of waiting for the unix socket file to disappear, and removes a stale socket left behind by a SIGKILLed server. Fixes FreeBSD smoke failures where a slow shutdown was SIGKILLed and stop() then timed out waiting for the leaked socket

0.000043  2026-05-29 13:09:21-07:00 America/Los_Angeles

    - Stop PostgreSQL with SIGINT (fast shutdown) instead of SIGTERM (smart shutdown) to avoid hangs/SIGKILL and leaked sockets on slow hosts

0.000042  2026-05-25 17:30:00-07:00 America/Los_Angeles

    - Add DuckDB driver (optional DBD::DuckDB + duckdb CLI; tests skip if absent)

    - Add [PruneCruft] to dist.ini so build artifacts (blib/,
      pm_to_blib, MYMETA.*) no longer leak into release tarballs.

    - Fix provider_info running mariadb-install-db with no args, which created a
      143MB 'data' dir in CWD (GH #11)
    - Exclude 'data/' from dist tarball via GatherDir as a safeguard
    - Fix DB-QUICK-CLONE temp dirs and server processes leaking after tests (GH #10)
      - Set SIGTERM/SIGINT to SIG_IGN before watcher exec to prevent race
        condition where watcher is killed before signal handlers are installed
      - Add fallback in Driver::DESTROY to kill server directly and clean up
        dir if watcher fails to do so

0.000041  2026-04-07 17:13:03-07:00 America/Los_Angeles

    - Fix clone_dir cp fallback copying source dir into dest instead of contents
    - Add unit tests for all clone_dir implementations
    - Fix Windows warnings and test failures:
      - SQLite version_string no longer warns when sqlite3 binary is missing
      - Pool no longer warns about undefined $ENV{USER} on Windows
      - Pool clear_old_cache closes file handle before remove_tree (Windows file locking)
      - Test files no longer warn about undefined $ENV{HOME} on Windows
      - Pool instance_dir test uses canonical paths for cross-platform comparison
    - Fix PostgreSQL initdb failure when system locale is non-UTF8

0.000040  2026-04-05 14:03:55-07:00 America/Los_Angeles

    - Make MySQL less noisy
    - Remove other noise
    - Fix Mariadb binary detection
    - Fix a few minor bugs (AI assisted)

0.000039  2026-01-23 12:04:49-08:00 America/Los_Angeles

    - Add $db->resync method

0.000038  2025-03-29 00:35:02-07:00 America/Los_Angeles

    - Remove rogue Carp::Always from test
    - MAke it easier to runt he tests on my machine

0.000037  2025-03-26 23:10:00-07:00 America/Los_Angeles

    - Fix typo that caused the MySQL driver to break

0.000036  2025-03-26 22:56:11-07:00 America/Los_Angeles

    - Support MySQL community server (MySQLCom)
    - Default to DBD::MariaDB for all mysql variants

0.000035  2024-07-10 08:25:37-07:00 America/Los_Angeles

    - Documentation Updates

0.000034  2024-06-12 17:11:24-07:00 America/Los_Angeles

    - MAke watcher use exec

0.000033  2024-05-13 11:13:04-07:00 America/Los_Angeles

    - Remove Carp::Always from MariaDB test

0.000032  2024-05-07 09:12:13-07:00 America/Los_Angeles

    - Docs fixes

0.000031  2024-05-06 15:53:42-07:00 America/Los_Angeles

    - Fix silencing of watchers

0.000030  2024-05-06 14:58:26-07:00 America/Los_Angeles

    - Cleanup the db-watcher code
    - Split MySQL into Percona and MariaDB

0.000029  2024-04-28 09:58:52+01:00 Europe/Lisbon

    - Add QDB_TMPDIR env var

0.000028  2024-04-25 13:00:04+01:00 Europe/Lisbon

    - Fix mariadb warning

0.000027  2024-04-25 12:24:25+01:00 Europe/Lisbon

    - Fix doc issue

0.000026  2024-04-16 15:04:26-07:00 America/Los_Angeles

    - Use MariaDB binaries when available
    - Silence mariadb complaints about using mysql binaries

0.000025  2024-04-16 14:34:21-07:00 America/Los_Angeles

    - Fix test error when DBD::mysql is not installed

0.000024  2024-02-07 17:19:03-08:00 America/Los_Angeles

    - Add QDB_MYSQL_SSL_FIPS env var

0.000023  2022-08-23 14:02:40-07:00 America/Los_Angeles

    - Allow an instance dir for pools

0.000022  2022-07-08 15:44:44-07:00 America/Los_Angeles

    - Better support for percona 5.7
    - Do not modify config reference that is passed in, make a copy

0.000021  2021-01-19 14:55:27-08:00 America/Los_Angeles

    - For pools, make sure cache db is stopped before marking it as ready
    - Move ready file outside the directory so it is not copied with the dir (ooops)
    - Add ability to show pool diag without showing all sql-server output

0.000020  2020-12-01 15:35:36-08:00 America/Los_Angeles

    - Watcher should use POSIX::_exit() since it is exec-like
    - Minimum mysqld version 5.6.0

0.000019  2020-11-30 15:40:36-08:00 America/Los_Angeles

    - Add watcher process to make sure cleanup happens

0.000018  2020-11-20 08:46:39-08:00 America/Los_Angeles

    - Fix bug where driver could be forgotten in pool during reclaim

0.000017  2020-11-16 08:26:03-08:00 America/Los_Angeles

    - Support for older percona mysqld's that need mysql_install_db run

0.000016  2020-11-13 11:28:35-08:00 America/Los_Angeles

    - Support older version of percona
    - Minor test fixes

0.000015  2020-08-14 20:45:04-07:00 America/Los_Angeles

    - Make it possible to clear old cache
    - Do not leave garbage in /tmp from tests

0.000014  2020-07-30 22:36:47-07:00 America/Los_Angeles

    - Fix some Postgres 'starting up' issues
    - Support for percona in MySQL
    - Support for either DBD::MariaDB or DBD::mysql

0.000013  2020-07-28 21:17:30-07:00 America/Los_Angeles

    - Add module to deps

0.000012  2020-07-28 15:33:51-07:00 America/Los_Angeles

    - Add ability to clone without cp or rsync
    - Fix minimum perl version

0.000011  2020-07-27 23:07:33-07:00 America/Los_Angeles

    - Add ability to clone databases
    - Add Database pools
    - Make databases better at stopping (close connections)
    - Fix some test timeout issues under yath due to ^
    - Update copyright date

0.000010  2019-06-08 13:03:48-07:00 America/Los_Angeles

    - More work for issue #1

0.000009  2019-05-29 21:49:45-07:00 America/Los_Angeles

    - Work for issue #1

0.000008  2019-04-28 08:41:10-07:00 America/Los_Angeles

    - Make PostgresQL use UTF8

0.000007  2018-01-29 14:23:53-08:00 America/Los_Angeles

    - Make SQLite work without the sqlite3 binary

0.000006  2018-01-29 12:59:54-08:00 America/Los_Angeles

    - Fix for postgres with alternate hardcoded port numbers

0.000005  2018-01-29 09:00:44-08:00 America/Los_Angeles

    - ENV var safety

0.000004  2018-01-28 20:29:12-08:00 America/Los_Angeles

    - More complete docs
    - More complete testing
    - Significant MySQL speed improvements
    - Better diagnostics from all drivers

0.000003  2018-01-28 12:50:32-08:00 America/Los_Angeles

    - Add sqlite driver

0.000002  2018-01-28 09:08:30-08:00 America/Los_Angeles

    - Minor bug fixes
    - Add diagnostics for tests

0.000001  2018-01-28 00:09:47-08:00 America/Los_Angeles

    - Initial Release
