Liquibase 4.18.0 Release Notes
Liquibase v4.18.0 is a major release.
See GitHub formatted release notes for more information. Full changelog: 4.17.2–4.18.0 (December 6, 2022)
Breaking Changes
- Use
PathHandler
for writing log files, which allows using S3 and other extensions (DAT-11515) by @abrackx in #3438
Notable Changes
[PRO] Hashicorp Vault extension and Liquibase Pro
Use together for increased security and convenience of centralized properties
- Security: Vaults offer much greater security than defaults files or environment variables
- Centralization: Secure your database credentials, Liquibase Pro license key, secure URLs, and more in one central location. Update your critical properties in one place, and all linked tools and jobs use the new values
[PRO] rollback-on-error
command argument for update
command
- When set to
true
will attempt to roll back a failed update operation. - Note: changesets marked
failOnError=false
, do not count as error, and so do not runrollback-on-error
[OSS] Liquibase Environment variables
- Now free to all users, not just Liquibase Pro users.
- Learn more at Liquibase Environment Variables
Enhancements
- [PRO] Added new
modifyChangeSets
tag to support specification ofrunWith
attribute for all change sets ininclude
orincludeAll
Security, Driver and other updates
- Upgrade
mockito-inline
from 4.8.0 to 4.8.1 by @dependabot in #3382 - Upgrade
actions/cache
from 3.0.8 to 3.0.11 by @dependabot in #3370 - Bump
robinraju/release-downloader
from 1.5 to 1.6 by @dependabot in #3423 - Upgrade
postgresql driver
from 42.5.0 to 42.5.1 by @dependabot in #3501 - Bump
maven-plugin-plugin
from 3.6.4 to 3.7.0 by @dependabot in #3450 - Bump
sqlite-jdbc
from 3.39.3.0 to 3.39.4.0 by @dependabot in #3451 - Bump
maven-shade-plugin
from 3.4.0 to 3.4.1 by @dependabot in #3422 - Bump
gmavenplus-plugin
from 1.13.1 to 2.1.0 by @dependabot in #3391 - Bump
picocli
from 4.6.3 to 4.7.0 by @dependabot in #3432 - Bump
jcc
from 11.5.7.0 to 11.5.8.0 by @dependabot in #3414 - Upgrade
testcontainers-bom
from 1.17.3 to 1.17.5 by @dependabot in #3341
Fixes
- Fixes
generate-changelog
view comments for Postgres (DAT-9410) by @abrackx in #3403 - Adds
DefaultChangeExecListener
, catches and handles migration errors (DAT-9372) by @abrackx in #3431 - Fixes nullpointer when dealing with
LiquibaseException
on updates. by @filipelautert in #3447 - Resets changelog cache upon acquiring lock by @filipelautert in #3396
- Allows
createSequence
field "dataType
" to be use with DB2 as the database supports it. by @filipelautert in #3328 - Defines "
--rollback empty
" as the way to specify "no rollback needed". by @filipelautert in #3324 - Fix create index on Postgresql and MSSQL using wrong column names when generating a changelog by @filipelautert in #3366
- Fixed input string handling in
CompareControl
constructor by @filipelautert in #3309 - Add '
ifExists
' parameter to thedropView
statement by @gzsombor in #3301 - Fix
getResourceAccessor
logic to avoid settingchangeLogDirectory
whensearchPath
has already set by @MalloD12 in #3347 - Ensures that Postgresql works with blob types
bytea
andoid
(large objects) by @filipelautert in #3381 - Improve
int
/tinyint
/smallint
/bigint
handling in H2 by @MalloD12 in #3274 - The
onSqlOutput
attribute does not work for preconditions in formatted SQL changelog. by @dyadyushko in #3436 - [DAT-11899] Modifies deploy plugin and distribution management. by @jnewton03 in #3457
- Adds
ChangeExecListener
properties to Maven plugin (DAT-12219) by @abrackx in #3443 - make
BufferedLogService
thread safe by @StevenMassaro in #3470 - Improved Sybase ASE Support by @carlos940513 in #665
- Do not write output files for computed columns when executing
dbDoc
. Fixes #1088 by @rozenshteyn in #3398 - Sequence owned by a table field must be included in database snapshot by @filipelautert in #3335
- Fixes snapshot of case-sensitive views by @filipelautert in #3329
- Fix
include
/includeAll
to correct trackrelativeToChangelog=true
paths using./
or../
by @nvoxland in #3355 - Improved readability in the
createCDILiquibaseConfig
method. by @musttafayildirim in #3316 - testing
main
andsha
builds by @jnewton03 in #3481 - Fix Postgresql
autoIncrement
Information in snapshot by @filipelautert in #3361 - Treat "
,
" as "or
" when parsing context expressions. Fixes #1103 by @rozenshteyn in #3426 - CORE-1127: Filter by context when doing a rollback. by @berryh in #898
- Implement
tagExists
Maven command (Fix issue 1063) by @rozenshteyn in #3385 - Fixes transaction handling within changesets on DB2 on z/OS by @MichaelKern-IVV in #3342
- Improve
dropAllForeignKeyConstraints
performance by @Spindl in #2155 - Adds error handling for
updateCount
(DAT-11950) by @abrackx in #3463 - Adds error handling to
update-to-tag
(DAT-11951) by @abrackx in #3468 - Adds error handling for
update-testing-rollback
command andupdateTestingRollback
goal (DAT-11952) by @abrackx in #3474 - Fixes behaviour of
includeAll
by keeping the trailing slash on the path by @filipelautert in #3506 - Restore
FileSystemResourceAccessor
and add tests. by @filipelautert in #3499 - Simplify
if
statements to a single assignment. Avoid extra works. by @arturobernalg in #3375 - Fixed
resolveSibling
method by updating URL resource type by @MalloD12 in #3413 - Fix dependency query for PostgreSQL 15 by @Domm98CZ in #3456
- Release
liquibase-nochangeloglock
extension with the others by @nvoxland in #3452
New Contributors
- @gzsombor made their first contribution in #3301
- @carlos940513 made their first contribution in #665
- @rozenshteyn made their first contribution in #3398
- @musttafayildirim made their first contribution in #3316
- @berryh made their first contribution in #898
- @Spindl made their first contribution in #2155
- @arturobernalg made their first contribution in #3375
- @Domm98CZ made their first contribution in #3456