Update dependency org.liquibase:liquibase-core to v4 #1343
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
3.5.5
->4.8.0
By merging this PR, the below issues will be automatically resolved and closed:
Release Notes
liquibase/liquibase
v4.8.0
Compare Source
Liquibase 4.8.0 release
Please report any issues to https://github.com/liquibase/liquibase/issues.
Notable Changes
Liquibase 4.8.0 introduces the following functionality:
init hub
subcommand that connects your local Liquibase activity to Liquibase Hub and sets up the Liquibase environment to use Liquibase Hub. [DAT-8769]Note: For more information, see init hub and Getting Started with Liquibase Hub.
sqlcmd
utility support to process complex SQL for MSSQL Server. Liquibase provides theliquibase.sqlcmd.conf
file to pass arguments to your executor when running Liquibase Pro. [DAT-7447]Note: For more information, see Using the SQLCMD integration and runWith attribute with Liquibase Pro and MSSQL Server.
liquibase.secureParsing=false
. [PR#2384] [LB-2218]Note: For more information about the ways to set the parameter, see Command Parameters.
postgresql
(from42.2.12
to42.3.2
) andh2
(from2.0.206
to2.1.210
) drivers that Liquibase includes in the installation package. If you use those drivers and upgrade an existing Liquibase installation, remove the earlier versions of drivers from theLIQUIBASE_HOME/lib
directory.Enhancements
SimpleObjectConstructor
interface for DB2 on z/OS [DAT-8580]init project
subcommand [DAT-9041]init start-h2
when the H2 database driver is specified, but there is no connection detected [DAT-8992]enableCheckConstraint
,disableCheckConstraint
,dropPackage
,dropPackageBody
Change Types [DAT-9017]example-changelog.sql
file [LB-2220]customChange
node with noclass
attribute [LB-1144]rollback-sql <tag>
operation [LB-2198]close
method for theClassLoaderResourceAccessor
class [LB-2205]Fixes
renameSequence
Change Type generating an uppercase SQL instead of lowercase and causing failures with case-sensitive databases [LB-1763]generate-changelog
anddiff
commands to show and generate a proper SQL with autoincrement for PostgreSQL [DAT-8779]<sql>
tags [LB-562]UniqueConstraintSnapshotGenerator
class to add a table name to the Oracle database query so that the cache key can contain it, and the unique constraint can be read from cache [LB-2206]update-sql
command against a new database [LB-2208]MANIFEST.MF
file in theliquibase-core-4.7.0.jar
file. The PR fixes PR#2361.sp_rename
function to be lowercase when using MSSQL Servercomputed=true
columns with no type set in thecreateTable
Change Type. The PR fixes PR#2283. [LB-2215]ordered
clause is specified in thecreateSequence
oralterSequence
Change Type. The PR fixes PR#2528.dbms
filters. The PR fixes PR#2231. [LB-2217]Full Changelog: liquibase/liquibase@v4.7.1...v4.8.0
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:
Our first-time contributors
Thanks to everyone who helps make the Liquibase community strong!
v4.7.1
Compare Source
Liquibase 4.7.1 is a patch release
Please report any issues to https://github.com/liquibase/liquibase/issues
Known Issues
In version 4.7.0, users that have "edb" in connection URLs but are not using EnterpriseDB experienced errors that caused Liquibase to misinterpret the database dialect. This patch release resolves this issue along with several others.
Enhancements
RollbackRequired
. The check detects when a changeset does not have a rollback. [DAT-8871]TableColumnLimit
check to work with formatted SQL changelogs [DAT-8531]--auto-update
quality check parameter, which allows automatic backup and updating of theliquibase.check-settings.conf
file when new quality checks are available. [DAT-8752]--auto-update=[on|off]
liquibase.properties
file:liquibase.command.checks.show.autoUpdate: [on|off]
LIQUIBASE_COMMAND_CHECKS_SHOW_AUTO_UPDATE=[ON|OFF]
Note: You can use the property not only with the
show
command but any other quality checks command.liquibase-maven-plugin
logging configuration as deprecated [LB-2183]listLocks
output message. The PR fixes PR#2029. [LB-2126]FormattedSqlChangeParser
[DAT-4793]init project
command if you miss a supported argument in any command [DAT-8641]Fixes
EnterpriseDBDatabase
detection less broad. The implementation ofEnterpriseDBDatabase
picked up database with "edb" in the URL instead of an actual EDB URL. The PR fixes PR#2363. [LB-2214]OBJECT_TYPES=TABLE, COLUMN, SEQUENCE
specified in the sameObjectNameMustMatch
rule to find all matches [DAT-8716]runWith=changeLogProperty
attribute not working in a formatted SQL changelog [DAT-4793]cacheSize
attribute in thecreateSequence
andalterSequence
Change Types for MariaDB. The PR fixes PR#2147. [LB-2191]tag-exists
command old syntax in Liquibase 4.4 and later (liquibase tagExists myTag
) to correctly convert the pattern into new versions. The PR fixes PR#2109. [LB-2192]columnDataType
attribute for the generatedsetColumnRemarks
changesets to fix an error in MySQL [LB-2199]Full Changelog: liquibase/liquibase@v4.7.0...v4.7.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 make it stronger:
Our first-time contributors
Thanks to everyone who helps make the Liquibase community strong!
v4.7.0
Compare Source
Liquibase 4.7.0 release
Please report any issues to https://github.com/liquibase/liquibase/issues
Notable Changes
Liquibase 4.7.0 introduces the
init
command with theproject
andstart-h2
subcommands.init project
subcommand helps to set configuration files for using Liquibase or, if you already use Liquibase, create new project files with minimal input. [DAT-8640]init start-h2
subcommand helps to start the included in-memory H2 database. The subcommand needs to be run in a new terminal window. [DAT-8945]Note: For more information and examples of using
init
project, see init project.Additionally, we have updated the Liquibase Getting Started tutorials, sample changelog files, and the example H2 database in the installation package. From now on, you can use sample SQL, XML, JSON, and YAML changelog files with the corresponding changesets and the latest version of H2. [LB-2177] [LB-2174]
Note: Check Liquibase Getting Started to see more details.
Enhancements
rollback-one-update
command [DAT-7590]jdbc:edb
URL for Liquibase to recognize EnterpriseDB [LB-2185]sys.synonyms
objects for thegenerate-changelog
anddiff-changelog
commands in Liquibase and SQL Server. The PR fixes PR#2044. [LB-2175]liquibase.sqlplus.conf
file and put the file in theexamples/sql
folder [DAT-7618]loadData
performance [LB-2173]Fixes
generateChangeLog
wrong dependency order: theaddPrimaryKey
Change Type appeared before its base table in PostgreSQL [DAT-8256]loadData
Change Type to recognize CSV files when loading data with the path that contains a dot character ('.') [LB-2178]addNotNullConstraint
Change Type causing the "Data too long" error message. The PR fixes PR#1054. [LB-2187]relativeToChangelogFile
attribute forloadData
,createProcedure
, andcreateView
Change Types [LB-2179]COLUMN_SIZE
for the PostgreSQLNUMERIC[]
datatypeFull Changelog: liquibase/liquibase@v4.6.2...v4.7.0
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 make it stronger:
Our first-time contributors
Thanks to everyone who helps make the Liquibase community strong!
v4.6.2
Compare Source
Liquibase 4.6.2 is a patch release
Please report any issues to https://github.com/liquibase/liquibase/issues
Notable Changes
Liquibase 4.6.2 introduces the multiple objects quality check that allows you to define and check the naming pattern for multiple types of objects rather than one type of object. For example, you do not want to have a dash in the table, column, and sequence names. With the multiple objects check, you can specify a pattern to check for dashes and choose tables, columns, and sequences as the objects to check. In version 4.6.2, the check is available for:
Note: For more information, see Multiple Objects Quality Check [DAT-8444]
The logging of SQL statements and execution output
Liquibase 4.6.2 includes the
liquibase.sql.logLevel
configuration option to control the level at which SQL is logged. The default value isFINE
.You can run the
--sql-log-level
parameter with the--log-level <level>
parameter in the CLI:You can also set the parameter as follows:
liquibase.sql.logLevel: <FINE|INFO|SEVERE|WARNING|OFF>
in yourliquibase.properties
fileLIQUIBASE_SQL_LOG_LEVEL=<FINE|INFO|SEVERE|WARNING|OFF>
as an environment variable [PR#1520] [nvoxland]An additional
liquibase_libs
directoryWhen you run Liquibase in the CLI, the executables generate a classpath with the
.jar
files from theLIQUIBASE_HOME
andLIQUIBASE_HOME/lib
directories. Liquibase 4.6.2 adds the ability to load an additional directory ofliquibase_libs
in the current working directory to the classpath. With theliquibase_libs
directory located in the/lib
directory, projects can have separate extensions, drivers, and versions specific to a project [PR#2015] [mcred]The
validate
command in automationFrom now on, the exit code for the
validate
command running in automation shows1
when there is an error. The PR fixes PR#1006. [PR#2185] [nvoxland] [christf]Enhancements
DDL_LOCK_TIMEOUT
parameter for Oracle without SQL Plus and define the connection timeout. You can configureDDL_LOCK_TIMEOUT
as follows:liquibase.ddlLockTimeout: <value>
in yourliquibase.properties
file--ddl-lock-timeout=<value>
as a CLI global parameterLIQUIBASE_DDL_LOCK_TIMEOUT=<int>
as an environment variable [DAT-7649]SqlUserDefinedPatternCheck
quality check copy [DAT-8492]MSSQLDatabase
specific error evaluation when creating DATABASECHANGELOGLOCK tableNOT NULL
constraint with an initial default value in theaddColumn
Change TypeFixes
remarks
attribute in a primary key column tag for MariaDBaddColumn
Change Type in SQLitegenerate-changelog
command to generate theNUMERIC[]
data type for PostgreSQL correctlyalterSequence
Change Type to be compatible with the Oracle, PostgreSQL, MariaDB, and MSSQL databases--verbose
flag used in theunexpected-changesets
command. The PR fixes PR#1987.YAMLChangelogParser
andchangeLogId
in a Map. The PR fixes PR#1988.GENERATED ALWAYS AS
clause while creating a table for PostgreSQLLOCKGRANTED
column to include time zone information in the DATABASECHANGELOGLOCK tableDB2Database
implementations. The PR fixes PR#2058.ColumnConfig.java
documentationrelativeToChangelog=true
parameter for Spring Bootsnapshot
command failing against CockroachDB with the Liquibase Pro license key applied [DAT-8253]addPrimaryKey
Change Type generated by thegenerate-changelog
command for PostgreSQL [DAT-8256]LIQUIBASE_COMMAND_CHECKS_CONFIGURE_CHECKS_SETTINGS_FILE
,LIQUIBASE_COMMAND_CHECKS_RUN_CHECKS_SETTINGS_FILE
, andLIQUIBASE_COMMAND_CHECKS_SHOW_CHECKS_SETTINGS_FILE
to be detected when running the quality checks commands [DAT-8546]strict
parameter. The default value isfalse
. You can set thestrict
parameter as follows:liquibase.strict=false|true
in your liquibase.properties file--strict=false|true
as a CLI parameterLIQUIBASE_STRICT=false|true
as an environment variable [DAT-8547]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 make it stronger:
Our first-time contributors
Thanks to everyone who helps make the Liquibase community strong!
v4.6.1
Compare Source
Liquibase 4.6.1 is a patch release
Please report any issues to https://github.com/liquibase/liquibase/issues.
Notable Changes
v4.6.0
Compare Source
Liquibase 4.6.0 is a major release
Please report any issues to https://github.com/liquibase/liquibase/issues
Notable Changes
Starting with version 4.6.0, the Windows and Mac/Linux Liquibase installers and the .tar.gz and .zip installation files include the most common JDBC drivers in the installation package:
To use the available drivers, see the Adding and Updating Liquibase Drivers documentation. Also, check the page for the cases when you need different drivers. [PR#2031] [DAT-7438]
Note: Since Liquibase 4.6.0 provides driver jar files, the size of the installation package is bigger than the size of the installation package in earlier versions.
Liquibase Pro Changes
GRANT WITH ADMIN OPTION
statement is detected [DAT-7955]GRANT WITH GRANT OPTION
statement is detected [DAT-7995]liquibase.checks-settings.conf
file is unencoded in version 4.6.0 and later versions for easier inspection that allows you to resolve a merge conflict in source control. Liquibase backs up encoded files in the working directory, and you can still use previous versions by specifying the--checks-settings-file
parameter in the CLI, as an environment variable, or as a property in the liquibase.properties file. [DAT-8473]If you use Liquibase Hub, check the Liquibase Hub DevOps metrics documentation to learn more about DevOps metrics that provide the data to optimize your DevOps performance.
Enhancements
errorOnMissingOrEmpty
attribute totrue
for theincludeAll
attribute in the XML changelog file. The PR fixes PR#1960.createTable
Change Type. The PR fixes PR#1597constraintName
attribute in thedropNotNullConstraint
attribute. Updated theaddNotNullConstraint
rollback logic to pass the constraint name to the generateddropNotNullConstraint
change. The PR fixes PR#1492 and PR#1942.liquibase.util
packagedatetime
type todatetime2
for thetimestamp
type on SQL Server.liquibase.fileEncoding
setting, which you can set as--file-encoding=ASCII
in the CLI,liquibase.fileEncoding: ASCII
in the liquibase.properties file, andLIQUIBASE_FILE_ENCODING=ASCII
as an environment variable. The PR fixes PR#1445.strict
attribute is set totrue
[DAT-6946]Fixes
snapshot
command using for CockroachDB with Liquibase Pro license key [DAT-8253]ChangesetCommentCheck
check to handle a lack of comments in thetagDatabase
Change Type [DAT-8313]liquibase.checks-settings.conf
files [DAT-8328]checks customize
andchecks copy
commands to handle directories with spaces [DAT-8389]schemas
andincludeSchema
attributes for thegenerateChangeLog
command in Liquibase 4.4 and later versions [DAT-8133]insert
Change Type with thevalueSequenceNext
andvalueSequenceCurrent
attributes to use the schema specified on a statement level of a changeset. The PR fixes PR#1304.LicenseService
interface cannot be loaded because of the missingjaxb
dependenciesUniqueConstraintSnapshotGenerator
class switching to a bulk query after four unique constraints. The PR fixes PR#1996.--changeset
line. The PR fixes PR#1919.dropAll
command failing in the PostgreSQL database when the Liquibase-Cassandra extension is in theliquibase/lib
directory. The PR fixes PR#47.liquibaseSchemaName
andliquibaseCatalogName
configuration settings. The PR fixes PR#2000.dropPrimaryKey
attribute for PostgreSQL. The PR fixes PR#1933.sqlFile
Change Type to handle theencoding
attribute. The PR fixes PR#1760.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 make it stronger:
Our first-time contributors
Thanks to everyone who helps make the Liquibase community strong!
v4.5.0
Compare Source
v4.5.0
Liquibase 4.5.0 is now available at Liquibase.org.
Here is a closer look at what we improved in the latest release.
Liquibase 4.5.0 is a major release
Please report any issues to https://github.com/liquibase/liquibase/issues.
Notable Changes
Liquibase 4.5.0 includes support for Liquibase Quality Checks, which allow you to run checks against changelogs and SQL scripts by flagging conditions and configurations you need.
There is a new family of commands to use to run quality checks:
liquibase checks show
to list the available quality checksliquibase checks run
to run the available quality checksenable
,disable
,customize
,copy
,reset
, anddelete options, and
liquibase checks --help` to learn moreThe following is a list of changes related to Liquibase Quality Checks:
Bugfixes
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 make it stronger:
Our first-time contributors
Thanks to everyone who helps make the Liquibase community strong!
v4.4.3
Compare Source
Liquibase 4.4.3 is now available at Liquibase.org.
Here is a closer look at what we improved in the latest release.
Liquibase 4.4.3 is a patch release
This release includes many community-contributed pull requests, Liquibase Community and Liquibase Pro bug fixes, and enhancements to Liquibase Hub performance and pipelines.
Notable Changes
In Liquibase 4.4.3, there are improvements to the
FileSystemAlreadyExistsException
output message. The originalFileSystemNotFoundException
warning was changed to be aninfo
message that does not include logs of stack traces. If you are still seeing stack traces, please contact us. #1885 dertinAdditionally, we fixed bugs in SQL files: #1798
sqlFile
andrelativeToChangelogFile
attributes fail when using thelogicalFilePath
attribute #1277 darkcamperrelativeToChangelogFile=true
anddatabaseChangeLog
haslogicalFilePath != PhisicalFilePath
#1353 kezhevatovBugfixes
dropAll
command on DB2 for iSeries #1412 wardvijflogicalFilePath
attribute not being serialized #1471 tms-91SqlParser
bug related to parsing UTF-8 valid symbols #1513 matteoturraInsertOrUpdateGeneratorHsql.java
#1563 devorgplcustomChange
Change Type has noname
attribute #1592 danielthegrayisNumericBoolean
now checks theFirebird3Database
instance type and returns Boolean for Firebird 3. #1875 koushikd02?
JSON operator into??
, causing function definitions using this operator to become invalid #1764ClassCastException
in a standard lock service:java.time.LocalDateTime
cannot be cast tojava.util.Date
#1878 jocmer-evooq and haidiiiiCUBE
to the list of Liquibase reserved columns for the schema migration to work.CUBE
is a reserved word as of MySQL 8.0.1 #1515 jasonwjonesCLOB
data into PostgreSQL. Instead of loading theCLOB
file name, PostgreSQL loads the content of theCLOB
file. #1791 jidmaRawSqlStatement
toUpdateStatement
#1602 biryukovpavelChangeLogHistoryServiceFactory.java
#1361 OlardDATICAL_SPERRORLOG
table when using therunWith=sqlplus
attribute and executing operations as a user with onlySELECT
,UPDATE
andINSERT
permissions [DAT-7410]liquibase/liquibase-github-action-example
repository [DAT-6679]dropAll
report to work with a registered changelog with no extra arguments and send the information to Liquibase Hub [DAT-7554]tablespaceName
parameter toliquibaseTablespaceName
[DAT-7676]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 make it stronger:
Our first-time contributors