Skip to content

Conversation

erguiti-imane
Copy link
Contributor

@erguiti-imane erguiti-imane commented Sep 3, 2025

Add comprehensive GraalVM reachability metadata for Liquibase Core 4.25.x-4.33.x

What does this PR do?

This PR fixes GraalVM native compilation for Liquibase 4.25.0+ by:

  • Replacing problematic XML changesets with equivalent SQL to avoid Unexpected node parsing errors during native-image builds.

  • Adding comprehensive reflection metadata for Liquibase 4.25.0–4.33.0, covering all factory and service classes introduced in these versions.

  • Ensuring correct handling of precondition attributes (onFail, onError) in native mode by including the required reflection entries.

  • Consolidating metadata so that:

    • 4.25.0 metadata covers 4.25.0, 4.25.1, 4.26.0
    • 4.29.0 metadata covers 4.29.0-4.33.0 (latest)
  • Included factory/service classes

    • ShowSummaryGeneratorFactory (4.25.0)
    • SqlParserFactory (4.25.0)
    • LiquibaseTableNamesFactory (4.27.0)
    • ValidatingVisitorGeneratorFactory (4.28.0)
    • FastCheckService (4.29.0)

Plus additional reflective classes required by changelog parsing and precondition evaluation.

Code sections where the PR accesses files, network, docker or some external service

  • (example link to code section)

Checklist before merging

…25.x-4.33.x

Add reflection metadata for new factory classes introduced in recent Liquibase versions:
- 4.25.0: ShowSummaryGeneratorFactory, SqlParserFactory
- 4.27.0: LiquibaseTableNamesFactory
- 4.28.0: ValidatingVisitorGeneratorFactory
- 4.29.0: FastCheckService

Covers versions 4.25.0-4.33.0 with optimized metadata grouping:
- 4.25.0 metadata covers 4.25.0, 4.25.1, 4.26.0
- 4.29.0 metadata covers 4.29.0-4.33.0 (latest)
@erguiti-imane erguiti-imane requested a review from a team as a code owner September 3, 2025 17:43
@erguiti-imane erguiti-imane requested a review from olpaw September 3, 2025 17:43
@erguiti-imane erguiti-imane marked this pull request as draft September 4, 2025 17:48
@erguiti-imane erguiti-imane changed the title Add comprehensive GraalVM reachability metadata for Liquibase Core 4.25.x-4.33.x Fix Native compilation and add comprehensive GraalVM reachability metadata for Liquibase Core 4.25.x-4.33.x Sep 13, 2025
@erguiti-imane erguiti-imane marked this pull request as ready for review September 13, 2025 00:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant