Skip to content

Releases: liquibase/liquibase

Liquibase v4.33.0

09 Jul 14:38
75773ed
Compare
Choose a tag to compare

Liquibase 4.33.0 is a minor release

Liquibase 4.33.0 delivers important updates across Policy Checks, Change Automation, and other areas of platform enhancement, along with critical bug fixes and improvements to MongoDB, PostgreSQL, and DB2 on Z/OS support. See the Liquibase 4.33.0 Release Notes for the complete set of release information.

Notable Changes

[PRO]

Change Automation

  • PostgreSQL Composite TYPE Support in Database Inspection. Liquibase Pro now includes support for inspecting PostgreSQL Composite TYPE objects during database inspection operations such as snapshot and diff. This enhancement ensures Composite TYPEs appear in inspection outputs, helping users manage and track changes to complex data structures more effectively. [INT-1249] [INT-135]

  • PostgreSQL Composite TYPE Support in generate-changelog and diff-changelog. Liquibase Pro now includes support for detecting PostgreSQL composite TYPE objects during generate-changelog and diff-changelog operations. This enhancement ensures that composite TYPE definitions—used to group multiple fields into a custom data structure—are captured and modeled alongside other schema elements, helping users manage and track changes more comprehensively. [INT-1251]

  • PostgreSQL Password Escaping Enhancement. Liquibase now escapes special characters in PostgreSQL passwords when using the psql native executor. Previously, if a password included characters requiring percent-encoding (such as @, %, or #), the executor would fail with a psql: error: invalid percent-encoded token message. [DAT-20254]

  • Db2 on Z/OS JCL Executor. Liquibase Pro now includes the ability to submit JCL jobs to the mainframe via Db2 DSNUTILU stored procedure. This enables users to automate more sophisticated procedures by integrating system level activities and database activities in a standard changelog format. This feature is enabled by a runwith:JCL decoration on applicable changesets containing properly formatted JCL.[INT-573, INT-1217]

  • Improved Persistent Spool File Behavior for SQLPlus Executor. The SQLPlus executor ensures that spool files are always retained when --sqlplus-create-spool=true, giving users consistent access to output files. Previously, spool file retention was tied to the --sqlplus-keep-temp setting; now, this setting applies only to temporary SQL files, not spool files. This decoupling improves clarity and gives users more control—if a spool file is created, it will remain unless users opt out by setting --sqlplus-create-spool=false. [DAT-18983]

Policy Checks

  • MongoChangetypeAttributes Policy Check. Introduced a new quality check named MongoChangetypeAttributes that allows users to enforce specific values or patterns for attributes within MongoDB-specific changetypes. Users can select a single Mongo changetype (e.g., createIndex, dropCollection) and specify expected values or patterns for its attributes. The check triggers if a specified attribute is present but does not match the defined value or regex—ensuring consistent standards across Mongo changesets. This supports validation across key changetypes attributes like adminCommand, createCollection, insertOne, and more, and enhances control and quality enforcement in MongoDB deployment pipelines. [DAT-18275]

[OSS]

Important dependency updates

⚠️[PRO] and [OSS] Upcoming Change in Distributions

Liquibase is evolving to better serve both open-source contributors and enterprise customers by introducing a clearer separation between its Open Source (OSS) and PRO offerings. This change is designed to ensure that each distribution is optimized for its respective users—providing open-source users with flexibility and control, while delivering scalability, reliability, and governance for enterprise teams.

The new structure enables Liquibase to more effectively support developers at all stages—from experimentation and community collaboration to mission-critical deployments. Liquibase 4.32.0 introduced the first general availability (GA) release of independently packaged Pro distributions, along with dedicated distribution channels and key-based access enforcement for Pro capabilities. This marks a significant step toward delivering a curated, enterprise-grade experience for Pro users.

The OSS distribution and its delivery channels remain unchanged in this phase.

PRO PRs

🆕New Features

🐛Bug Fixes 🐛

Version updates: In the pom.xml for Maven, update postgres to 42.7.7 liquibase/liquibase-pro#2486 by @abrackx

🔒Security, Driver and Other Updates

  • [DA...
Read more

Liquibase v4.32.0

21 May 20:41
7e70496
Compare
Choose a tag to compare

Liquibase 4.32.0 is a major release

Note

See the Liquibase 4.32.0 Release Notes for the complete set of release information.

Important

⚠️ [PRO] and [OSS] Upcoming Change in Distributions
Liquibase is evolving to better serve both open-source contributors and enterprise customers by introducing a clearer separation between its Open Source (OSS) and PRO offerings. This change is designed to ensure that each distribution is optimized for its respective users—providing open-source users with flexibility and control, while delivering scalability, reliability, and governance for enterprise teams. The new structure enables Liquibase to more effectively support developers at all stages—from experimentation and community collaboration to mission-critical deployments.
Liquibase 4.32.0 introduces the first general availability (GA) release of independently packaged Pro distributions, along with dedicated distribution channels and key-based access enforcement for Pro capabilities. This marks a significant step toward delivering a curated, enterprise-grade experience for Pro users.
The OSS distribution and its delivery channels remain unchanged in this phase.
Learn more

Notable Changes

[PRO]

Policy Checks

Formatted SQL Header Policy Check. Introduced a new policy check named FormattedSqlHeaderRequired to ensure that.sql files included in changelogs begin with the required --liquibase formatted sql header. This check helps prevent improperly formatted SQL changes that could bypass Liquibase’s change tracking, auditing, and rollback features. This new policy check supports changelogs of any format (SQL, XML, YAML, JSON) and includes an EXCEPTIONS_LIST customization option to exclude specific files. When triggered, it lists all offending .sql files missing the required header, helping maintain the integrity and reliability of database change management. [DAT-19042]

Get Config Value Helper Function for Python Checks. Added a new helper function, liquibase_utilities.get_config_value(), for custom Python checks. This function enables easy access to standard Liquibase configuration properties—including those set via environment variables, CLI arguments, or defaults files. This enhancement simplifies scripting by allowing users to retrieve values such as url, loglevel, changelogfile, and custom properties like dbplatform or contexts directly within their Python checks, without manually resolving property names or sources. [DAT-19486]

Property Substitution in Python Check Script Arguments. Enhanced support for custom Python checks by allowing the use of Liquibase properties in the SCRIPT_ARGS section. Users can now reference properties—such as environment variables, CLI arguments, or values from the defaults file—using standard substitution syntax (e.g., ${liquibase.command.url} or ${PIPELINE_NAME}). This enables dynamic and context-aware scripting, such as configuring behavior based on runtime attributes like the current Git branch or target environment. [DAT-19377]

Absolute Path for Custom Python Policy Checks. Updated custom policy check support to allow Python script paths to be specified using absolute paths, in addition to relative paths. This enhancement enables users to store and reference custom check scripts from centralized or shared directories outside the local project repository, eliminating the need to duplicate scripts across multiple projects. This improves flexibility and promotes better reuse and maintenance of custom policy checks across teams and environments. [DAT-19408]

Audit and History

DBCLH History Command for MongoDB and DynamoDB. Added support for the liquibase dbcl-history command for MongoDB and DynamoDB users, enabling access to the DatabaseChangeLogHistory (DBCLH) table. This Liquibase Pro command outputs each DBCLH row as a JSON object, making it easy to integrate with BI and analytics tools. Users can customize output with --format=json|JSON_PRETTY and --verbose to control the level of detail in capturedsql and extensions fields. Output defaults to console but can be redirected to a file using --outputfile. [DAT-17162], [DAT-17164]

Observability and Reports

Drift Report Support for MongoDB Family. Liquibase Pro now supports Drift Report generation for the MongoDB database family, including MongoDB Atlas and AWS DocumentDB. This enhancement allows DevOps and SRE teams to detect schema drift and compare MongoDB instances using the same familiar workflow as relational databases. Drift Reports now include MongoDB-specific snapshot and diff outputs, while omitting or clearly marking relational-only fields as "Not Applicable for Mongo-type Databases." This feature enables consistent configuration checks across distributed NoSQL environments and helps ensure alignment between instances of application data stores. [INT-871]

Enhanced Drift Report Connection Detail. Improved drift reports generated by the liquibase diff command by including complete connection details. Source and target URLs now display full catalog and schema names—particularly valuable for platforms like Databricks—allowing users to accurately identify and distinguish the environments being compared. This enhancement provides greater clarity and helps streamline the process of reviewing and resolving discrepancies. [DAT-18910]

Sensitive SQL Content Suppression in Operational Reports. Added a new global --reports-suppress-sql option to prevent sensitive SQL content—such as passwords—from appearing in operational reports and CLI output (e.g., during update-sql or drift report generation). This setting helps improve security and reduce noise in reports, especially in CI/CD pipelines like Jenkins. When enabled, SQL output is replaced with a placeholder message (SQL suppressed). An optional companion flag, --reports-suppress-exceptions, controls whether SQL appears in error messages. It is automatically set to true when --reports-suppress-sql is enabled, unless explicitly overridden. Both flags are configurable via CLI, environment variables, or properties files. [DAT-19076]

Security

Kerberos Passwordless Authentication for runWith:psql. Liquibase Pro now supports Kerberos passwordless authentication with the runWith:psql native executor, enabling secure, credential-free connections in environments where plain user/password secrets are restricted. This enhancement ensures compatibility with Active Directory/Kerberos authentication workflows while preserving full functionality, including the generation of log spool files as configured in liquibase.psql.conf. Both Kerberos and non-Kerberos environments continue to be supported, ensuring seamless transitions and enhanced security compliance. [DAT-19525]

Simplified Snowflake OAUTH and PKI Authentication Support. Liquibase Pro now supports Snowflake OAUTH and Private Key Infrastructure (PKI) authentication through new dedicated properties, eliminating the need for manual JDBC URL customization in most cases. This enhancement ensures compliance with Snowflake’s upcoming requirement for token-based authentication (effective November 2025) and simplifies secure connectivity for all Snowflake users. Sensitive authentication details—such as tokens, private key paths, and passphrases—can now be provided via Liquibase properties with standard handling for logging and reporting, helping users adopt modern authentication methods with less complexity and greater security. [INT-190], [INT-182]

Workflow Automation

Conditional Flow File Logic Based on Action Exit Codes. Liquibase Pro now supports conditional flow file logic based on action exit codes, enabling more flexible and resilient automation. A new continueOnError property (default: false) allows flows to proceed even when an individual action fails. Additionally, the new exitCode value captures the exit code of the previous action. This allows users to write conditional logic (e.g., if: "exitCode <= 1") directly within flow files. This enhancement empowers users to handle errors and successes gracefully within a single flow, rather than halting execution entirely. [DAT-19490]

Change Automation

Composite Type Objects in PostgreSQL Support. Liquibase now supports Composite TYPE objects in PostgreSQL, enabling users to manage these objects more effectively. This feature allows users to create and drop Composite Types using Liquibase change types, with support for XML, YAML, and JSON formats. Auto-rollback functionality is also included for these change types, ensuring smooth execution and rollback. This enhancement fills the gap in PostgreSQL object support and provides a valuable tool to manage complex PostgreSQL data types with Liquibase. [INT-173], [INT-175]

PostgreSQL Composite Type Schema Change Support. Liquibase Pro now supports the changeCompositeTypeSchema change type for PostgreSQL, enabling users to manage schema changes for composite Type objects. This enhancement fills a gap in Postgres object support by allowing ALTER operations to move a Type between schemas. The change type is available in all modeled formats (XML, YAML, JSON) and includes auto-rollback functionality. [INT-1268]

PostgreSQL Composite Type Ownership Change Support. Liquibase Pro now supports altering the ownership of Composite Type objects in PostgreSQL through a new changeCompositeTypeOwner change type. This feature allows users to manage ownership changes using modeled formats (XML, YAML, and JSON), expanding Liquibase’s support for advanced PostgreSQL object types. Auto-rollback is not supported because the current owner cannot be determined. [INT-1266]

PostgreSQL Composite Type Rename Support. Liquibase Pro now supports renaming PostgreSQL Composi...

Read more

v4.31.1

17 Feb 16:27
Compare
Choose a tag to compare

Liquibase 4.31.1 is a patch release

Important

Liquibase 4.31.1 patches vulnerability found in Snowlake driver (CVE-2025-24789) and resolves issue with logicalfilepath reported in 4.31.0 (see 4.31.0 Release Notes)

Note

See the Liquibase 4.31.1 Release Notes for the complete set of release information.

Notable Changes

[OSS]

logicalfilepath bug: in 4.31.0, the parent logicalfilepath value will be used in DBCL/DBCLH as the changelogfilepath value, as a result the changesets from the included changelogs that were deployed with the changelog level logicalFilePath in version 4.31.0 will be considered new and will be redeployed in the latest versions. 4.31.1 fixes this behavior and deployed changesets will not be redeployed.

[PRO] Changelog

🐛 Bug Fixes 🛠

  • DAT-19579: The changesets from the included changelogs that were deployed with the changelog level logicalFilePath in version 4.31.0 will be considered new and will be redeployed in the latest versions #6716 @filipelautert

[OSS] Changelog

🐛 Bug Fixes 🛠

🤖 [OSS] Security, Driver and Other Updates

Snowflake vulnerability update CVE-2025-24789

  • Snowflake discovered and remediated a vulnerability in the Snowflake JDBC Driver. Liquibase now includes a version with the fixed issue 3.22.0.

Full Changelog: v4.31.0...v4.31.1

Get Certified

Learn all the Liquibase fundamentals from free online courses by Liquibase experts and see how to apply them in the real world at https://learn.liquibase.com/.

Read the Documentation

Please check out and contribute to the continually improving docs, now at https://docs.liquibase.com/.

Join the Community

Our community has built a lot. From extensions to integrations, you’ve helped make Liquibase the amazing open source project that it is today. Keep contributing to making it stronger:

Contribute code
Make doc updates
Help by asking and answering questions
Join our Discord server
Sign up to provide feedback to the product team

Thanks to everyone who helps make Liquibase better!

File Descriptions

  • Liquibase CLI -- Includes open source + commercial functionality
  • liquibase-x.y.z.tar.gz -- Archive in tar.gz format
  • liquibase-x.y.z.zip -- Archive in zip format
  • liquibase-windows-x64-installer-x.y.z.exe -- Installer for Windows
  • Primary Libraries - For embedding in other software
    • liquibase-core-x.y.z.jar – Base Liquibase library (open source)
    • liquibase-commerical-x.y.z.jar – Additional commercial functionality
  • liquibase-additional-x.y.z.zip – Contains additional, less commonly used files
    • Additional libraries such as liquibase-maven-plugin.jar and liquibase-cdi.jar
    • Javadocs for all the libraries
    • Source archives for all the open source libraries
    • ASC/MD5/SHA1 verification hashes for all files

Liquibase v4.31.0

16 Jan 15:39
11ef37b
Compare
Choose a tag to compare

Liquibase 4.31.0 is a major release

Important

Liquibase 4.31.0 contains an expanded Checks Extension, and so the artifact size has increased.

Note

See the Liquibase 4.31.0 Release Notes for the complete set of release information.

⚠️ Breaking Change

Changesets with entirely blank IDs will now fail validation. This change improves the reliability and diagnosability of database changes, and enforces the best-practices set forth in documentation and training.

This validation does not apply to changesets that have already been deployed. However, any changesets marked as runOnChange or runAlways will fail validation if they have an empty changeset ID.

UPDATE: Reported Problems with LogicalFilePath

A few OSS users have reported a logicalfilepath bug, described below. This update aims to highlight potential trouble for users who meet three specific conditions:

  1. Use Liquibase 4.31.0
  2. Use the logicalfilepath attribute with different values at changelog and changeset levels
  3. Use include/includeAll to nest changelogs

The Bug
The standard Liquibase practice is to accept the attribute closest to the changeset. But in 4.31.0, the parent logicalfilepath value will be used in DBCL/DBCLH as the changelogfilepath value.

What Next?
If your workflow meets the conditions mentioned above, please avoid upgrading to version 4.31.0. The issue will be resolved in the upcoming 4.31.1 release.

Notable Changes

[PRO]

New Checks extension delivered in the box

  • Policy Checks are undoubtedly one of Liquibase Pro's stickiest capabilities, for which we continually add database platforms, new checks, and customizations. But to get these developments, users would need to download and upgrade to the latest Liquibase. Not any more! With this new checks extension, you can deploy the latest Policy Checks powers by optionally upgrading just the Check Extension on your cadence. Conveniently, this extension is delivered "in the box" at /internal/extensions, so you do not have to change anything about your current Policy Checks workflow.
  • Learn more https://docs.liquibase.com/pro-extensions

Other Checks Enhancements

  • Pro users can suppress sql in reports with the new global property: --reports-suppress-sql=true
  • New checks-settings files can be created without CLI prompts by adding --force to checks show command
  • By popular demand, checks reports now show all checks run, including those not triggered.
  • We simplified the custom python check creation flow by removing the single-answer prompts/
  • Learn more https://docs.liquibase.com/policy-checks

[OSS]

Liquibase capability enhancements

  • Changesets with entirely blank IDs will fail validation. This is a breaking change.
    • NOTE: Validation should not fail for changes that have already been ran. Changes that have been ran with an empty changeset id that are marked as runOnChange or runAlways WILL fail validation.
  • Added changeset execution time to output and logs
  • Added calculated checksum to output of calculate-checksum command
  • Added two new command parameters to history command so users can better see tagged deployments without having to directly examine the DATABASECHANGELOG table
    • show-tags will return only tagged deployment history
    • tag-filter will return deployment history for a specific tag or group of tags
  • If an XML changelog is generate-changelog and fails to validate, Liquibase will indicate where the codepoint where the XML failure is located.
  • Added new Spring properties for Pro license key and to disable analytics

Java API Changes

  • Added missing changeLogParameters argument to generateChangeLog, calculateCheckSum, doChangeLogSyncSql, and changeLogSync

[PRO] Changelog

🚀 New Features

🐛 Bug Fixes 🛠

🤖 Security, Driver and Other Updates

[OSS] Changelog

💥 Breaking Changes

  • (#6472) Fail validation for blank changeset IDs (DAT-18773) by @abrackx

🚀 New Features

Read more

Liquibase v4.30.0

06 Jan 18:29
38cc3e9
Compare
Choose a tag to compare

Liquibase 4.30.0 is a major release

Important

Liquibase 4.30.0 contains new capabilities and notable enhancements for Liquibase OSS and Pro users including:

  • Flow enhancements
  • Validation improvements
  • Clearer error messaging for thrown exceptions
  • Addition of Anonymous Analytics
  • Deprecation of the MacOS dmg installer in favor of installation via homebrew

Note

See the Liquibase 4.30.0 Release Notes for the complete set of release information.

Notable Changes

[PRO]

Anonymous Analytics:

  • Liquibase can now gather anonymous usage analytics when commands are run. No user-specific data will be gathered.

For Liquibase OSS users, this functionality is enabled by default, but can be opted-out of before any data is sent. For Liquibase Pro users, this is disabled by default with the ability to opt-in.

Gathering anonymous usage analytics allows us to better understand how Liquibase is actually being used by a very wide, diverse set of millions of users.

Flow Enhancements: Detect pending changesets, and variable-variables

  • There are two exciting Flow enhancements: the ability to condition action on presence of pending changesets, and the ability to use a global variable inside other global or stage variables, enabling variable-variables within flows.
  • Learn more https://docs.liquibase.com/flow

[OSS]

Usability Improvements:

  • Avoid ignoring caught exceptions, and instead return the exception and append the reason for better debugging.
  • When using failOnError=false, changesets that failed will now show up in the default output.
  • When using STRICT mode, update-to-tag will now throw an error when there is no tag specified or the tag specified does not exist.
  • Added a Customizer that allows discovery of changesets that are not known to an application. This can be used to prevent an application's startup when discovering new, unexpected changesets before an update is made.

Deprecated: MacOS .dmg installer

  • The MacOS dmg installer no longer ships with release artifacts. Please use the tar.gz or .zip release artifacts, or install via homebrew by running brew install liquibase

For a full list of improvements and bug fixes, see the [OSS] Changelog section.

[PRO] Changelog

🚀 New Features

Changes

🐛 [PRO] Bug Fixes 🛠

🤖 [PRO] Security, Driver and Other Updates

12 changes

(#1973) Bump com.fasterxml.jackson.module:jackson-module-jaxb-annotations from 2.17.2 to 2.18.0 by dependabot
(#1974) Bump com.fasterxml.jackson.core:jackson-annotations from 2.17.2 to 2.18.0 by dependabot
(#1976) Bump com.fasterxml.jackson.core:jackson-databind from 2.17.2 to 2.18.0 by dependabot
(#1975) Bump com.fasterxml.jackson.core:jackson-core from 2.17.2 to 2.18.0 by dependabot
(#1988) Bump org.apache.maven.plugins:maven-failsafe-plugin from 2.22.2 to 3.5.1 by dependabot
(#1991) Bump org.apache.maven.plugins:maven-surefire-plugin from 2.22.2 to 3.5.1 by dependabot
(#2003) Bump org.junit.vintage:junit-vintage-engine from 5.10.3 to 5.11.3 by dependabot
(#2002) Bump org.junit:junit-bom from 5.10.3 to 5.11.3 by dependabot
(#1963) Bump com.networknt:json-schema-validator from 1.5.0 to 1.5.2 by dependabot
(#1947) Bump org.yaml:snakeyaml from 2.2 to 2.3 by dependabot
(#1984) Bump org.codehaus.gmavenplus:gmavenplus-plugin from 1.13.1 to 4.0.1 by dependabot
(#2005) Bump org.nanohttpd:nanohttpd from 2.2.0 to 2.3.1 by dependabot

[OSS] Changelog

🚀 New Features

  • (#6414) When using failOnError=false, changesets that failed will now show up in the default output. Thanks, @filipelautert
  • (#6413) Ensure all failed changesets show in the exceptionChangesets. Previously, output summaries did not include changesets that failed when running failOnError=false (DAT-18689). Thanks, @filipelautert
  • (#6169) When using STRICT mode, update-to-tag will now throw an error when there is no tag specified or the tag specified does not exist. Thanks, @MalloD12
  • (#6410) Modified clob handling in loadData by checking the string passed to a CLOB type column. Thanks, @tati-qalified
    • By default this value will be interpreted as a path. If the file at that path exists, the file's contents will be inserted into the column. If not, the passed value will be inserted as-is.
  • (#6067) Added additional modes for duplicateFileMode. Thanks, @k4pran
    • INFO - Logs when duplicate changelog files are found at the INFO level
    • DEBUG - Logs when duplicate changelog files are found at the FINE level
    • SILENT - Does not log when duplicate changelog files are detected
  • (#6432) Added a Customizer that allows discovery of changesets that are not known to an application. This can be used to prevent an application's startup when discovering new, unexpected changesets before an update is made. Thanks, @raphw
  • (#6288) Avoid ignoring caught exceptions, and instead return the exception and append the reason for better debugging. Thanks, @asolntsev
  • (#6265) Enhanced include and includeAll to support logicalFilePath (DAT-18350). Thanks, @wwillard7800
  • (#6300) Added method to reset command definitions cache in CommandFactory for testing. Thanks, @wwillard7800
  • (#6280) Undeprecated StringUtil class (DAT-18538). Thanks, @MalloD12
  • (#5223) Improved empty check style by using isEmpty String method. Thanks, @MalloD12
  • BigQuery
    • (#6294) Suppress UnsupportedClassVersionErrors for Bigquery at info level (DAT-18534). Thanks, @filipelautert
  • Databricks
  • Maven
  • MSSQL
  • PostgreSQL
    • (#6402) Added pg_stat_statements and pg_stat_statements_info views to the list of system tables and views to prevent them from being dropped. Thank you, @rozenshteyn
    • (#6211) Updated PostgreSQL database major and minor versions. Thanks, @MalloD12

🐛 Bug Fixes 🛠

  • (#6266) Fix CustomTaskRollback rollback bug where it was being called twice. Thanks, @momosetkn
  • (#6205) Removed usage of the deprecated isEmpty() method. Thanks, @anton-erofeev
  • (#6366) Improve startup performance (DAT-18327). Thanks, @StevenMassaro
  • (#6407) Added filterable flag to ChangeLogParameter class (DAT-18811). Thanks, @abrackx
    • This enables users to use label filters such as @some-filter and still have values replaced from global changelog parameters like environment variables.
  • (#6416) When determining the schema name make sure a value was found (DAT-18673). Thanks, @abrackx
  • (#6418) Fix issue where context filters with @ symbols were not being executed properly (DAT-18843). Thanks, @abrackx
  • (#6406) Test assertion code modification. (DAT-17568). Thanks, @wwillard7800
  • (#6429) Check that getPriority method is correct for snapshot generators (DAT-18730). Thanks, @StevenMassaro
  • (#6417) Revert "Remove unneeded inclusion of commons-io in liquibase-core pom.xml". Thanks, @catull
  • (#6385) Do not check for nested database objects when using foreignKeyConstraintExists precondition (DAT-18624). Thanks, @abrackx
  • (#5894) Do not strip "classpath:" when normalizing the path. Thanks, @andrus
  • (#6359) Fix issue...
Read more

Liquibase v4.29.2

04 Sep 14:06
fd04dbd
Compare
Choose a tag to compare

Liquibase 4.29.2 is a patch release

Important

Liquibase 4.29.2 patches minor issues found in Liquibase 4.29.1 release.

Note

See the Liquibase 4.29.2 Release Notes for the complete set of release information.

Notable Changes

[PRO]

Custom Policy Checks updates: Create and run Python-based checks which fit your specific needs.

  • Liquibase checks have been opened to the world of Python development! This release fixes some minor issues so you can use your custom Python scripts as policy checks to solve your nuanced and techstack specific conditions for better risk mitigation, compliance, code quality, security, and more.
  • Learn more https://docs.liquibase.com/custom-policy-checks
  • Get the Checks extension to enable this capability: https://docs.liquibase.com/pro-extensions

Deprecation Notice

MacOS .dmg Installer to be removed in next release.

  • This is the final Liquibase release in which the MacOS installer will be shipped. Both the tarball (the liquibase-x.y.z.tar.gz) and the .zip (liquibase-x.y.x.zip) are the preferred replaced options for MacOS users.
  • Questions or comments? https://www.liquibase.com/contact-us

[PRO] Changelog

💥 Breaking Changes

  • None

Changes

[OSS] Changelog

💥 Breaking Changes

  • None

Changes

🤖 Security, Driver and Other Updates

3 changes
  • Bump org.testcontainers:testcontainers-bom from 1.19.8 to 1.20.1 in #6155
    by @dependabot
  • Bump org.apache.commons:commons-lang3 from 3.14.0 to 3.15.0 in #6112
    by @dependabot
  • Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.7.0 to 3.8.0 in #6116
    by @dependabot

New Contributors

Full Changelog: v4.29.1...v4.29.2

Get Certified

Learn all the Liquibase fundamentals from free online courses by Liquibase experts and see how to apply them in the real world at https://learn.liquibase.com/.

Read the Documentation

Please check out and contribute to the continually improving docs, now at https://docs.liquibase.com/.

Meet the Community

Our community has built a lot. From extensions to integrations, you’ve helped make Liquibase the amazing open source project that it is today. Keep contributing to making it stronger:

Contribute code
Make doc updates
Help by asking and answering questions
Set up a chat with the Product team

Thanks to everyone who helps make the Liquibase community strong!

File Descriptions

  • Liquibase CLI -- Includes open source + commercial functionality
  • liquibase-x.y.z.tar.gz -- Archive in tar.gz format
  • liquibase-x.y.z.zip -- Archive in zip format
  • liquibase-windows-x64-installer-x.y.z.exe -- Installer for Windows
  • liquibase-macos-installer-x.y.z.dmg -- Installer for MacOS
  • Primary Libraries - For embedding in other software
    • liquibase-core-x.y.z.jar – Base Liquibase library (open source)
    • liquibase-commerical-x.y.z.jar – Additional commercial functionality
  • liquibase-additional-x.y.z.zip – Contains additional, less commonly used files
    • Additional libraries such as liquibase-maven-plugin.jar and liquibase-cdi.jar
    • Javadocs for all the libraries
    • Source archives for all the open source libraries
    • ASC/MD5/SHA1 verification hashes for all files

Liquibase v4.29.1

31 Jul 19:15
e0c7137
Compare
Choose a tag to compare

Liquibase 4.29.1 is a patch release

Important

Liquibase 4.29.1 patches minor structure and pom issues found in Liquibase 4.29.0 release.

Note

See the Liquibase 4.29.1 Release Notes for the complete set of release information.

Notable Changes

[PRO]

Liquibase 4.29.1 .zip files: Restored to standard directory structure

  • This release correctly places Liquibase .zip files inside liquibase-4.29.1 directory to match Pre-4.29.0 directory structure.

Big Query Extension: using Liquibase Pro with Google Big Query

  • With Liquibase 4.29.1, Google BigQuery is now supported as an ‘out of the box’ database enabling users to more quickly achieve value. Also included is support for Liquibase Pro features such as Flows, Policy Checks, and Reports with Google BigQuery so that users will have the efficiency and productivity benefits of Liquibase Pro when working with the platform.

  • Learn more https://docs.liquibase.com/bigquery

[PRO] Changelog

🐛 [PRO] Bug Fixes 🛠

🤖 [PRO] Security, Driver and Other Updates

  • None

Full Changelog: v4.29.0...v4.29.1

Get Certified

Learn all the Liquibase fundamentals from free online courses by Liquibase experts and see how to apply them in the real world at https://learn.liquibase.com/.

Read the Documentation

Please check out and contribute to the continually improving docs, now at https://docs.liquibase.com/.

Meet the Community

Our community has built a lot. From extensions to integrations, you’ve helped make Liquibase the amazing open source project that it is today. Keep contributing to making it stronger:

Contribute code
Make doc updates
Help by asking and answering questions
Set up a chat with the Product team

Thanks to everyone who helps make the Liquibase community strong!

File Descriptions

  • Liquibase CLI -- Includes open source + commercial functionality
  • liquibase-x.y.z.tar.gz -- Archive in tar.gz format
  • liquibase-x.y.z.zip -- Archive in zip format
  • liquibase-windows-x64-installer-x.y.z.exe -- Installer for Windows
  • liquibase-macos-installer-x.y.z.dmg -- Installer for MacOS
  • Primary Libraries - For embedding in other software
    • liquibase-core-x.y.z.jar – Base Liquibase library (open source)
    • liquibase-commerical-x.y.z.jar – Additional commercial functionality
  • liquibase-additional-x.y.z.zip – Contains additional, less commonly used files
    • Additional libraries such as liquibase-maven-plugin.jar and liquibase-cdi.jar
    • Javadocs for all the libraries
    • Source archives for all the open source libraries
    • ASC/MD5/SHA1 verification hashes for all files

v4.29.0

25 Jul 15:04
7e83bbc
Compare
Choose a tag to compare

Liquibase 4.29.0 is a major release

Important

Liquibase 4.29.0 contains several new capabilities and notable enhancements for Liquibase Pro users: Python-based Custom Policy Checks, a new Google BigQuery extension, and Operation Reports being enabled by default in certain conditions.

Note

See the Liquibase 4.29.0 Release Notes for the complete set of release information.

Notable Changes

[PRO]

Big Query Extension: using Liquibase Pro with Google Big Query

  • With Liquibase 4.29.0, Google BigQuery is now supported as an ‘out of the box’ database enabling users to more quickly achieve value. Also included is support for Liquibase Pro features such as Flows, Policy Checks, and Reports with Google BigQuery so that users will have the efficiency and productivity benefits of Liquibase Pro when working with the platform.
  • Learn more https://docs.liquibase.com/bigquery

Operation Reports: Enabled by default

  • With Liquibase 4.29.0, Operation reports for key Liquibase commands are generated and presented to users who meet the following conditions: running Liquibase commands which generate reports, on systems with read/write permissions, which are not "headless" in automation, and who have not explicitly set LIQUIBASE_REPORTS_ENABLED=false.
  • Learn more at https://docs.liquibase.com/operation-reports

Custom Policy Checks: Create and run Python-based checks which fit your specific needs.

  • Liquibase checks have been opened to the world of Python development! With this release, you can point your custom checks to your custom Python scripts to solve your nuanced conditions for better risk mitigation, compliance, code quality, security, and more. (Extension release: 29 July 2024)
  • Learn more https://docs.liquibase.com/custom-policy-checks

[PRO] Changelog

🚀 New Features

Changes

🐛 [PRO] Bug Fixes 🛠

🤖 [PRO] Security, Driver and Other Updates

25 changes

(#1825) Bump org.assertj:assertj-core from 3.26.0 to 3.26.3 by @dependabot
(#1824) Bump net.snowflake:snowflake-jdbc from 3.16.1 to 3.17.0 by @dependabot
(#1819) Bump com.fasterxml.jackson.module:jackson-module-jaxb-annotations from 2.17.1 to 2.17.2 by @dependabot
(#1820) Bump com.fasterxml.jackson.core:jackson-* DATabind from 2.17.1 to 2.17.2 by @dependabot
(#1818) Bump com.fasterxml.jackson.core:jackson-annotations from 2.17.1 to 2.17.2 by @dependabot
(#1807) Bump org.apache.groovy:groovy-all from 4.0.21 to 4.0.22 by @dependabot
(#1804) Bump org.junit.vintage:junit-vintage-engine from 5.10.2 to 5.10.3 by @dependabot
(#1803) Bump org.junit:junit-bom from 5.10.2 to 5.10.3 by @dependabot
(#1805) Bump org.projectlombok:lombok from 1.18.32 to 1.18.34 by @dependabot
(#1791) Bump org.apache.maven.plugins:maven-jar-plugin from 3.4.1 to 3.4.2 by @dependabot
(#1817) Bump com.fasterxml.jackson.core:jackson-core from 2.17.1 to 2.17.2 by @dependabot
(#1816) Bump com.networknt:json-schema-vali* DATor from 1.4.2 to 1.5.0 by @dependabot
(#1786) Bump com.github.xmlet:xsdParser from 1.2.14 to 1.2.15 by @dependabot
(#1794) Bump com.networknt:json-schema-vali* DATor from 1.4.0 to 1.4.2 by @dependabot
(#1783) Bump com.azure:azure-identity from 1.8.1 to 1.12.2 in /liquibase-azure-deps by @dependabot
(#1781) Bump com.microsoft.azure:msal4j from 1.13.8 to 1.15.1 in /liquibase-azure-deps by @dependabot
(#1746) Bump net.snowflake:snowflake-jdbc from 3.16.0 to 3.16.1 by @dependabot
(#1737) Bump org.mariadb.jdbc:mariadb-java-client from 3.3.3 to 3.4.0 by @dependabot
(#1760) Bump org.hsqldb:hsqldb from 2.7.2 to 2.7.3 by @dependabot
(#1758) Bump liquibase/build-logic from 0.7.7 to 0.7.8 by @dependabot
(#1718) Bump org.mockito:mockito-core from 5.11.0 to 5.12.0 by @dependabot
(#1717) Bump com.oracle.* DATabase.jdbc:ojdbc8 from 19.22.0.0 to 19.23.0.0 by @dependabot
(#1736) Bump org.codehaus.mojo:build-helper-maven-plugin from 3.5.0 to 3.6.0 by @dependabot
(#1745) Bump org.assertj:assertj-core from 3.25.3 to 3.26.0 by @dependabot
(#1762) Bump org.apache.maven.plugins:maven-shade-plugin from 3.5.3 to 3.6.0 by @dependabot

[OSS] Changelog

💥 Breaking Changes

Changes

Read more

v4.28.0

21 May 19:33
Compare
Choose a tag to compare

Liquibase 4.28.0 is a major release

Important

Liquibase 4.28.0 contains several New Capabilities and Notable Enhancements for Liquibase Pro users: DATABASECHANGELOGHISTORY with Big Query, Flow file enhancements, Formatted SQL changelog enhancements, and a new --pro-strict flag

Note

See the Liquibase 4.28.0 Release Notes for the complete set of release information.

Notable Changes

[PRO]

DATABASECHANGELOGHISTORY table with Big Query: See all changes that have been applied with Big Query

  • Liquibase uses the DATABASECHANGELOGHISTORY (DBCLH) table to record a history of all changes made to the database. Unlike the DATABASECHANGELOG table that only shows active changes, the DBCLH shows all historical changes, including those that have been rolled back, dropped, or cleared. The DBCLH is now available for Big Query users.
  • Learn more https://docs.liquibase.com/databasechangeloghistory

Flow file usage enhancements: Full strings as single variable values, and nested variables for "double-expansion"

  • Flow files have been enhanced to allow multi-part args to be expanded from a single variable. Think cmdArgs: { "${COMMAND_ARGS}" }, which allows for more dynamic customization in the flowfile operations. Similarly, variables can include variables when expanded, which will in turn be expanded before processing.
  • Learn more https://docs.liquibase.com/flow

Formatted SQL changelog enhanced with include/includeAll functionality

New --pro-strict flag: Catch missing Pro resource files early!

  • A new optional pro parameter which alerts users when specified paths to Pro resource files (flow files, checks settings files, native executor conf files, etc) or rollback scripts are missing or empty.
  • Learn more https://docs.liquibase.com/parameters/pro-strict.html

[PRO] Changelog

🤖 [PRO] Security, Driver and Other Updates

15 changes

(#1652) Bump org.apache.groovy:groovy-all from 4.0.20 to 4.0.21 @dependabot
(#1673) Bump org.apache.maven.plugins:maven-shade-plugin from 3.5.2 to 3.5.3 @dependabot
(#1700) Bump com.fasterxml.jackson.module:jackson-module-jaxb-annotations from 2.17.0 to 2.17.1 @dependabot
(#1701) Bump com.fasterxml.jackson.core:jackson-databind from 2.17.0 to 2.17.1 @dependabot
(#1710) Bump info.picocli:picocli from 4.7.5 to 4.7.6 @dependabot
(#1702) Bump liquibase/build-logic from 0.7.5 to 0.7.7 @dependabot
(#1699) Bump com.fasterxml.jackson.core:jackson-annotations from 2.17.0 to 2.17.1 @dependabot
(#1698) Bump com.fasterxml.jackson.core:jackson-core from 2.17.0 to 2.17.1 @dependabot
(#1684) Bump commons-codec:commons-codec from 1.16.1 to 1.17.0 @dependabot
(#1668) Bump org.apache.maven.plugins:maven-jar-plugin from 3.3.0 to 3.4.1 @dependabot
(#1707) Bump net.snowflake:snowflake-jdbc from 3.15.1 to 3.16.0 @dependabot
(#1695) Bump com.github.spullara.mustache.java:compiler from 0.9.11 to 0.9.13 @dependabot
(#1690) Bump liquibase/build-logic from 0.7.2 to 0.7.5 @dependabot
(#1680) Bump liquibase/build-logic from 0.7.2 to 0.7.5 AI Generated Code @dependabot
(#1666) Bump actions/upload-artifact from 2 to 3 @dependabot

[OSS] Changelog

💥 Breaking Changes

Changes

🚀 New Features

🐛 Bug Fixes 🛠

🤖 Security, Driver and Other Updates

33 changes
Read more

Liquibase v4.27.0

27 Mar 20:27
9c8fb14
Compare
Choose a tag to compare

Liquibase 4.27.0 is a major release

Important

Liquibase 4.27.0 contains several New Capabilities and Notable Enhancements for Liquibase Pro users: DATABASECHANGELOGHISTORY table, Quality Checks Chains, Rollback Reports

Note

See the Liquibase 4.27.0 Release Notes for the complete set of release information.

Notable Changes

[PRO]

Liquibase DATABASECHANGELOGHISTORY table: See all changes that have been applied to your database

  • With the new DatabaseChangeLogHistory (DBCLH) Table, get a complete history of changes made to your database through Liquibase operations, including updates, rollbacks, dropAlls, tags, changelogsyncs, and repeated updates to the same ChangeSet. The DBCLH table is disabled by default, so Users must turn it on to start capturing historical data.
  • Learn more https://docs.liquibase.com/databasechangeloghistory

Quality Checks Chains: Perform multiple policy evaluations with a single Quality Check

  • Chain multiple Quality Checks together with logic conditionals (AND, OR, and NOT) for more flexibility to perform multiple evaluations in a single check. Useful to confirm complex best practices or governance issues. Check Chains are run like traditional single-condition existing Quality Checks
  • Learn more https://docs.liquibase.com/quality-checks

Observability: Rollback Reports: Understand and share the data on the execution of rollback commands

  • Easily scan and understand a high-level overview of the ChangeSets rolled back. Get a detailed view of both successful and failed rollbacks. Collaborate with your team with shareable report in PDF format
  • Learn more https://docs.liquibase.com/observability

Breaking Change

[PRO] Changelog

🤖 [PRO] Security, Driver and Other Updates

39 change * Bump liquibase/build-logic from 0.6.4 to 0.6.6 dependencies github_actions #1616 by dependabot bot
  • Bump org.projectlombok:lombok from 1.18.30 to 1.18.32 #1614 by dependabot bot

  • Bump org.apache.maven.plugins:maven-assembly-plugin from 3.6.0 to 3.7.1 #1613 by dependabot bot

  • Bump org.apache.maven.plugins:maven-compiler-plugin from 3.12.1 to 3.13.0 #1612 by dependabot bot

  • Bump com.networknt:json-schema-validator from 1.3.3 to 1.4.0 #1610 by dependabot bot

  • Bump actions/delete-package-versions from 3 to 5 dependencies github_actions #1551 by dependabot bot

  • Bump org.postgresql:postgresql from 42.7.2 to 42.7.3 #1604 by dependabot bot

  • Bump com.fasterxml.jackson.core:jackson-core from 2.16.2 to 2.17.0 #1597 by dependabot bot

  • Bump com.fasterxml.jackson.module:jackson-module-jaxb-annotations from 2.16.2 to 2.17.0 #1595 by dependabot bot

  • Bump org.sonarsource.scanner.maven:sonar-maven-plugin from 3.10.0.2594 to 3.11.0.3922 #1599 by dependabot bot

  • Bump com.fasterxml.jackson.core:jackson-databind from 2.16.2 to 2.17.0 #1596 by dependabot bot

  • Bump com.fasterxml.jackson.core:jackson-annotations from 2.16.2 to 2.17.0 #1594 by dependabot bot

  • Bump com.github.jsqlparser:jsqlparser from 4.8 to 4.9 #1583 by dependabot bot

  • Bump com.fasterxml.jackson.core:jackson-annotations from 2.16.1 to 2.16.2 #1588 by dependabot bot

  • Bump com.fasterxml.jackson.core:jackson-core from 2.16.1 to 2.16.2 #1586 by dependabot bot

  • Bump com.fasterxml.jackson.module:jackson-module-jaxb-annotations from 2.16.1 to 2.16.2 #1584 by dependabot bot

  • Bump com.fasterxml.jackson.core:jackson-databind from 2.16.1 to 2.16.2 #1585 by dependabot bot

  • Bump ch.qos.logback:logback-classic from 1.5.1 to 1.5.2 #1568 by dependabot bot

  • Bump com.fasterxml.jackson.module:jackson-module-jaxb-annotations from 2.15.3 to 2.16.1 #1449 by dependabot bot

  • Bump com.fasterxml.jackson.core:jackson-annotations from 2.15.3 to 2.16.1 #1450 by dependabot bot

  • Bump com.oracle.database.jdbc:ojdbc8 from 19.21.0.0 to 19.22.0.0 #1563 by dependabot bot

  • Bump org.mariadb.jdbc:mariadb-java-client from 3.2.0 to 3.3.3 #1555 by dependabot bot

  • Bump com.fasterxml.jackson.core:jackson-core from 2.15.3 to 2.16.1 #1451 by dependabot bot

  • Bump com.fasterxml.jackson.core:jackson-databind from 2.15.3 to 2.16.1 #1452 by dependabot bot

  • Bump com.github.jsqlparser:jsqlparser from 4.7 to 4.8 #1558 by dependabot bot

  • Bump com.github.wvengen:proguard-maven-plugin from 2.6.0 to 2.6.1 #1557 by dependabot bot

  • Bump org.apache.maven.plugins:maven-shade-plugin from 3.5.1 to 3.5.2 #1559 by dependabot bot

  • Bump org.codehaus.mojo:flatten-maven-plugin from 1.5.0 to 1.6.0 #1560 by dependabot bot

  • Bump commons-codec:commons-codec from 1.16.0 to 1.16.1 #1561 by dependabot bot

  • Bump org.mvel:mvel2 from 2.5.0.Final to 2.5.2.Final #1562 by dependabot bot

  • Bump com.fasterxml.jackson.dataformat:jackson-dataformat-yaml from 2.15.3 to 2.16.1 #1453 by dependabot bot

  • Bump org.jacoco:jacoco-maven-plugin from 0.8.10 to 0.8.11 dependencies java #1309 by dependabot bot

  • Bump org.apache.maven.plugins:maven-compiler-plugin from 3.11.0 to 3.12.1 #1547 by dependabot bot

  • Bump org.assertj:assertj-core from 3.24.2 to 3.25.3 #1548 by dependabot bot

  • Bump ch.qos.logback:logback-classic from 1.4.11 to 1.5.1 #1543 by dependabot bot

  • Revert * Bump actions/delete-package-versions from 3 to 5 #1546 by StevenMassaro

  • Bump org.postgresql:postgresql from 42.6.0 to 42.7.2 #1530 by dependabot bot

  • Bump org.postgresql:postgresql from 42.6.0 to 42.6.1 in /pro dependencies java #1541 by dependabot bot

  • Bump org.postgresql:postgresql from 42.6.0 to 42.7.2 in /liquibase-pro-extension-testing dependencies java #1527 by dependabot bot

[OSS] Changelog

💥 Breaking Changes

🚀 New Features

Read more