v4.17.0
Liquibase v4.17.0
Notable Changes
-
[PRO] The
liquibase flow
command and flow files are available with a Pro license. It allows you to create portable, platform-independent workflows that can run across different tools without modifying each workflow.- Learn more about flow here: liquibase flow file and command
- If you want to provide feedback or have questions, please visit the forum at https://forum.liquibase.org/
-
[PRO] Pro license users can now integrate Amazon S3 with Liquibase. You can extend Liquibase to use remote file locations to enable secure, centralized file management.
- Learn more here: S3 Remote Files
-
[PRO] Pro license users can use searchpath to find files located on S3 that cannot be found by an absolute path.
- Learn more about the Searchpath command here.
- Learn more about Searchpath with S3 here.
API Breaking Changes
- The liquibase.resource.ResourceAccessor APIs were updated to take advantage of the new liquibase.resource.Resource abstraction that was introduced. Code that USES the existing ResourceAccessor methods will continue to work as before with no changes, but if you have written custom implementations of ResourceAccessor there are new and changed methods to implement. For more information, see javadocs.liquibase.com
Enhancements
- Created new liquibase.resource.Resource interface by @nvoxland in #3064
- Created ThreadLocalScopeManager by @nvoxland in #3240
- Create liquibase_autocomplete.zsh by @szandany in #3130
Fixes
- AlterSequence: include NOORDER clause ordered="false" is specified by @LeBezout in #1044
- Upper case result columns only for case-insensitive databases by @fbiville in #3102
- Postgresql: Fix for case when current search_path is an empty string by @gadget in #3233
- Fix missing catalog on add column rollback by @jandurovec in #921
- Fix an error which can occur if getAutoCommit is called on a closed connection by @gpsfl in #3135
- apply sqlVisitors to CompoundStatements on DB2z by @MichaelKern-IVV in #3220
- Improved message when precondition onFail : MARK_RAN is set by @MultiM25 in #2238
- Add default catalog condition to SequenceSnapshotGenerator for Oracle by @gabrielnardes in #3152
- Fixed issue with h2 loadUpdateData not correctly handling values with the string " values " in the inserted data by @tomyy in #1831
- Fix the smallserial issue not being parsed as a SmallInt type for Postgres by @MalloD12 in #3234
- Remove snowflake unsupported logging from snapshot command (DAT-11291) by @abrackx in #3277
- Fix "double" handling with H2 by @MalloD12 in #3273
- Firebird: fix createIndex missing space around "computed" by @Markus-Patt in #1500
- Test Race Condititons During Liquibase Locking by @schrieveslaach in #2327
- Use configuration to get 'altTablespace', 'altSchema' and 'altCatalog… by @mehrabisajad in #3124
- Add missing generator for parameterized SQL statements by @fbiville in #3225
- Add catalog null check to fix initializing a MSSQL db issue by @MalloD12 in #3235
- PD-2838: pointing DB list to docs by @adrian-velonis1 in #3280
- Addition of liquibase.update() Enhancement Request #1614 by @Betlista in #1638
- Fixed createView handling of replaceIfExists=true when the string "replace" exists in the view definition by @filipelautert in #3305
- DAT-11407: replace backslashes in NotFoundResource URI by @StevenMassaro in #3322
- Fix generateChangeLog and diffChangeLog logic to avoid including default schema name when it should not by @MalloD12 in #3246
Updates
Security Updates
- None
JDBC Driver and Third-Party Library Updates
- Upgraded snowflake-jdbc from 3.13.21 to 3.13.22 by @dependabot in #3196
- Upgraded opencsv from 5.6 to 5.7.0 by @dependabot in #3243
- Upgraded installer to use JDK 17.0.4.1 by @nvoxland in #3266
- Upgraded sqlite-jdbc from 3.39.2.1 to 3.39.3.0 by @dependabot in #3267
- Upgraded jaxb-core from 4.0.0 to 4.0.1 by @dependabot in #3292
- Upgraded mariadb-java-client from 3.0.7 to 3.0.8 by @dependabot in #3293
- Upgraded jaxb-runtime from 4.0.0 to 4.0.1 by @dependabot in #3294
- Upgraded snakeyaml from 1.32 to 1.33 by @dependabot in #3310
OWASP Dependency Check: Reported Vulnerabilities
- hsqldb.jar - This is a vulnerability reported against the hsqldb driver. We are currently on the newest version of hsqldb and there is no fix for the issue as of yet.
- jackson-databind - This is a vulnerability reported against the jackson-databind library we use internally. This library is repackaged for internal use only and not exposed as otherwise-callable code. We are currently on the newest version and there is no fix for the issue as of yet.
New Contributors
- @trentdm made their first contribution in #3227
- @gadget made their first contribution in #3233
- @jandurovec made their first contribution in #921
- @gpsfl made their first contribution in #3135
- @MichaelKern-IVV made their first contribution in #3220
- @MultiM25 made their first contribution in #2238
- @gabrielnardes made their first contribution in #3152
- @tomyy made their first contribution in #1831
- @neilnaveen made their first contribution in #2997
- @Markus-Patt made their first contribution in #1500
- @adrian-velonis1 made their first contribution in #3280
- @Betlista made their first contribution in #1638
- @filipelautert made their first contribution in #3305
Full Changelog: v4.16.1...v4.17
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