Changes for version 1.3.0 - 2022-08-12

  • Fixed an issue when testing Firebird on a host with Firebird installed but no `isql`, and when using a local Firebird (e.g., the Engine12 provider), which allows only one connection at a time. Thanks to Slaven Rezić for the the reproducible configuration (#597).
  • Tweaked the Postgres engine to support Yugabyte. The only unsupported features are explicit locks, so users need to manually ensure that only one instance of Sqitch is updating the cluster at a time.
  • Added support for CockroachDB. Almost exactly the same as for Postgres, so the new App::Sqitch::Engine::cockroach class extends App::Sqitch::Engine::pg to make a few changes. The SQL files with the registry DDL varies in a few ways, so they're separate.
  • Now require URI::db v0.20 for Cockroach and Yugabyte URI support.
  • Dropped support for MySQL 5.0.
  • Added explicit sorting for aggregated lists (such as the tags associated with a commit) to the MySQL, Exasol, Snowflake, and Postgres (8.4 and higher) engines.
  • Fixed slow deploys on MariaDB thanks to fractional timestamp support added in 5.03.05. Thanks to @rbrigot for the PR (#658)!
  • Fixed a bug where destination locking failed on the first deploy to MySQL. Bug introduced along with destination locking in v1.2.0. Thanks Tom Bloor the report and to Alberto Simões for the help replicating the issue (#601).
  • Removed the `sqitch engine update-config` action, originally added for compatibility reasons in 2014, and the prompt to use it was removed as of 0.9999 in 2019.
  • Fixed a warning when searching for the Firebird client on Windows.

Documentation

Sqitch add usage statement
Add a database change to plans
Guide to using database authentication credentials with Sqitch
Sqitch bundle usage statement
Bundle a Sqitch project for distribution
Sqitch check usage statement
Checks for divergences between planned and deployed changes.
Sqitch checkout usage statement
Revert, checkout another VCS branch, and re-deploy changes
Sqitch config usage statement
Get and set local, user, or system Sqitch options
Hierarchical engine and target configuration
Sqitch deploy usage statement
Deploy changes to a database
Sqitch engine usage statement
Manage database engine configuration
Environment variables recognized by Sqitch
Sqitch help usage statement
Display help for Sqitch and Sqitch commands
Sqitch init usage statement
Create a new Sqitch project
Sqitch log usage statement
Show Sqitch change deployment logs
Guide to using database passwords with Sqitch
Sqitch plan usage statement
Show planned database changes
Sqitch rebase usage statement
Revert and redeploy database changes
Sqitch revert usage statement
Revert changes to a database
Sqitch rework usage statement
Rework a database change
Sqitch show usage statement
Show object information or script contents
Sqitch status usage statement
Show the current deployment status of a database
Sqitch tag usage statement
Create or list tag objects
Sqitch target usage statement
Manage target database configuration
Sqitch upgrade usage statement
Upgrade the registry to the current version
Sqitch verify usage statement
Verify deployed database changes
Sensible database change management
Specifying changes for Sqitch
List of common sqitch commands
List of common Sqitch guides
A tutorial introduction to Sqitch change management on Exasol
A tutorial introduction to Sqitch change management on Firebird
A tutorial introduction to Sqitch change management on MySQL
A tutorial introduction to Sqitch change management on Oracle
A tutorial introduction to Sqitch change management on Snowflake
A tutorial introduction to Sqitch change management on SQLite
A tutorial introduction to Sqitch change management on Vertica
A tutorial introduction to Sqitch change management on PostgreSQL
Sqitch usage statement

Modules

Sensible database change management
Sqitch Command support
Add a new change to Sqitch plans
Bundle Sqitch changes for distribution
Runs various checks and prints a report
Revert, change checkout a VCS branch, and redeploy
Get and set local, user, or system Sqitch options
Deploy Sqitch changes to a database
Add, modify, or list Sqitch database engines
Display help information about Sqitch
Initialize a Sqitch project
Show a database event log
List the changes in the plan
Revert and redeploy Sqitch changes
Revert Sqitch changes from a database
Rework a Sqitch change
Show Sqitch changes to a database
Display status information about Sqitch
Add or list tags in Sqitch plans
Add, modify, or list Sqitch target databases
Upgrade the Sqitch registry
Verify deployed Sqitch changes
Sqitch configuration management
Sqitch DateTime object
Sqitch Deployment Engine
Sqitch CockroachDB Engine
Sqitch Exasol Engine
Sqitch Firebird Engine
Sqitch MySQL Engine
Sqitch Oracle Engine
Sqitch PostgreSQL Engine
Sqitch Snowflake Engine
Sqitch SQLite Engine
Sqitch Vertica Engine
Format events and changes for command output
Sqitch Deployment Plan
Sqitch deployment plan blank line
Sqitch deployment plan tag
Sqitch deployment plan change list
Sqitch dependency specification
Sqitch deployment plan line
Sqitch deployment plan line list
Sqitch deployment plan blank line
Sqitch deployment plan tag
A command that connects to a target
A command that needs to know where things are
An engine based on the DBI
A command that reverts and deploys
A command that handles target-related configuration
Sqitch deployment target
Definition of attribute data types
Sqitch Exception class