Skip to content

Fix victools v5.0.0 compilation: adapt to Jackson 3 internal migration#244

Merged
jwijgerd merged 3 commits into
dependabot/maven/victools.version-5.0.0from
copilot/fix-compilation-issues-victools
Mar 15, 2026
Merged

Fix victools v5.0.0 compilation: adapt to Jackson 3 internal migration#244
jwijgerd merged 3 commits into
dependabot/maven/victools.version-5.0.0from
copilot/fix-compilation-issues-victools

Conversation

Copilot AI commented Mar 14, 2026

Copy link
Copy Markdown
Contributor

victools jsonschema-generator v5.0.0 migrated its internals from Jackson 2 (com.fasterxml.jackson.*) to Jackson 3 (tools.jackson.*), breaking compilation at the boundary where victools output feeds into Confluent's JsonSchema (which still uses Jackson 2).

Core changes

  • SchemaRegistry.createJsonSchemaGenerator() — Removed ObjectMapper parameter since victools now uses its own Jackson 3 ObjectMapper internally. Use the (SchemaVersion, OptionPreset) constructor instead. Convert generateSchema() output to String before passing to Confluent's JsonSchema:
    // Before: returns tools.jackson.databind.node.ObjectNode, incompatible with JsonSchema(JsonNode)
    new JsonSchema(schemaGenerator.generateSchema(clazz), List.of(), Map.of(), version);
    // After: serialize to string at the Jackson 2/3 boundary
    new JsonSchema(schemaGenerator.generateSchema(clazz).toString(), List.of(), Map.of(), version);
  • TypeAttributeOverride callback — Switched to Jackson 3 ArrayNode import for the BigDecimal type override
  • JacksonModuleJacksonSchemaModule — Replaced deprecated class across all usages
  • KafkaSchemaRegistry — Removed now-unused ObjectMapper constructor parameter; updated all 6 call sites
  • Test files (RuntimeTests, AkcesClientTests, JsonSchemaTests, 5× TestUtils) — Same pattern applied to inline schema generator construction and createJsonSchemaGenerator() calls

📍 Connect Copilot coding agent with Jira, Azure Boards or Linear to delegate work to Copilot in one click without leaving your project management tool.

Copilot AI and others added 2 commits March 14, 2026 15:43
…ion)

- Update SchemaRegistry to use Jackson 3 API: remove ObjectMapper parameter,
  use SchemaVersion/OptionPreset constructor, Jackson 3 types in callbacks
- Replace deprecated JacksonModule with JacksonSchemaModule
- Convert generateSchema() output to String for JsonSchema construction
- Update KafkaSchemaRegistry constructor (remove unused ObjectMapper param)
- Update all callers and test files

Co-authored-by: jwijgerd <914840+jwijgerd@users.noreply.github.com>
…Node instead of fully-qualified name

Co-authored-by: jwijgerd <914840+jwijgerd@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix compilation issues from upgrading victools to v5.0.0 Fix victools v5.0.0 compilation: adapt to Jackson 3 internal migration Mar 14, 2026
Copilot AI requested a review from jwijgerd March 14, 2026 15:49
@jwijgerd
jwijgerd marked this pull request as ready for review March 15, 2026 14:21
@jwijgerd
jwijgerd merged commit 5170a66 into dependabot/maven/victools.version-5.0.0 Mar 15, 2026
1 check passed
@jwijgerd
jwijgerd deleted the copilot/fix-compilation-issues-victools branch March 15, 2026 14:29
jwijgerd added a commit that referenced this pull request Mar 15, 2026
* build(deps): bump victools.version from 4.38.0 to 5.0.0

Bumps `victools.version` from 4.38.0 to 5.0.0.

Updates `com.github.victools:jsonschema-generator` from 4.38.0 to 5.0.0
- [Release notes](https://github.com/victools/jsonschema-generator/releases)
- [Changelog](https://github.com/victools/jsonschema-generator/blob/main/CHANGELOG.md)
- [Commits](victools/jsonschema-generator@v4.38.0...v5.0.0)

Updates `com.github.victools:jsonschema-module-jakarta-validation` from 4.38.0 to 5.0.0
- [Release notes](https://github.com/victools/jsonschema-generator/releases)
- [Changelog](https://github.com/victools/jsonschema-generator/blob/main/CHANGELOG.md)
- [Commits](victools/jsonschema-generator@v4.38.0...v5.0.0)

Updates `com.github.victools:jsonschema-module-jackson` from 4.38.0 to 5.0.0
- [Release notes](https://github.com/victools/jsonschema-generator/releases)
- [Changelog](https://github.com/victools/jsonschema-generator/blob/main/CHANGELOG.md)
- [Commits](victools/jsonschema-generator@v4.38.0...v5.0.0)

---
updated-dependencies:
- dependency-name: com.github.victools:jsonschema-generator
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
- dependency-name: com.github.victools:jsonschema-module-jakarta-validation
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
- dependency-name: com.github.victools:jsonschema-module-jackson
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Fix victools v5.0.0 compilation: adapt to Jackson 3 internal migration (#244)

* Initial plan

* Fix compilation issues from victools v5.0.0 upgrade (Jackson 3 migration)

- Update SchemaRegistry to use Jackson 3 API: remove ObjectMapper parameter,
  use SchemaVersion/OptionPreset constructor, Jackson 3 types in callbacks
- Replace deprecated JacksonModule with JacksonSchemaModule
- Convert generateSchema() output to String for JsonSchema construction
- Update KafkaSchemaRegistry constructor (remove unused ObjectMapper param)
- Update all callers and test files

Co-authored-by: jwijgerd <914840+jwijgerd@users.noreply.github.com>

* Address code review: use import for tools.jackson.databind.node.ArrayNode instead of fully-qualified name

Co-authored-by: jwijgerd <914840+jwijgerd@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jwijgerd <914840+jwijgerd@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joost van de Wijgerd <jwijgerd@gmail.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jwijgerd <914840+jwijgerd@users.noreply.github.com>
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.

2 participants