Not able to customize ShouldRunChangeSetFilter.normalizePath in 4.x
See original GitHub issueIssue: Till 3.10, ShouldRunChangeSetFilter
used to allow overriding normalizePath
(https://github.com/liquibase/liquibase/blob/3.10.x/liquibase-core/src/main/java/liquibase/changelog/filter/ShouldRunChangeSetFilter.java#L108), but it is not possible anymore in 4.x where this method has been moved to a static utility with no way of customization (https://github.com/liquibase/liquibase/blob/master/liquibase-core/src/main/java/liquibase/changelog/filter/ShouldRunChangeSetFilter.java#L102)
We have a use case where we don’t have a control over the source changelog files. We just need to import them to our system and run them. The problem here is that the path of the changelog files in both the systems are different, which causes all the changelogs to run everytime new changes are added to the imported files. Since we don’t have control over the source, we cannot set logicalFilePath
. Hence we used the normalizePath
in ShouldRunChangeSetFilter
to remove the varying part of the path, which is not possible in 4.x version. We need to move to 4.x to fix a vulnerability CVE-2022-0839.
Can this be fixed or is there any other workaround?
Issue Analytics
- State:
- Created a year ago
- Comments:7 (4 by maintainers)
Top GitHub Comments
Liquibase Integration & Version: gradle:6.5.1
Liquibase Extension(s) & Version: liquibase-core:3.5.3
Database Vendor & Version: postgre:11
Operating System Type & Version: azul/zulu-openjdk-debian:8 (debian-bullseye-slim)
Infrastructure Type/Provider: AWS-EKS
Hi @santoshtrip - must not be related, this issue is about a code where they exetend a liquibase class. Which version of liquibase do you use?