Skip to content

Commit d96e071

Browse files
authored
feat: Upgrade to Jackson 3 (#556)
* Upgrade to Jackson 3 * Change imports for `com.fasterxml.jackson.databind` and `com.fasterxml.jackson.core` to `tools.jackson.databind` and `tools.jackson.core` * Upgrade `com.networknt:json-schema-validator` to 3.0.0 (Jackson 3 support) * Adjust Jackson 2 iterators to Jackson 3 collections * Use non-deprecated `isString` / `asString` / `stringValue` instead of `isTextual` / `asText` / `textValue` * Use `StringNode` instead of `TextNode` * Use `JsonMapper#shared` instead of underlying Schema Config `ObjectMapper` in `SubtypeResolutionSimpleIntegrationTest` since schema validation requires numbers, but underlying Object Mapper uses strings for numbers * Upgrade Java baseline to Java 17 since Jackson 3 is using Java 17
1 parent 8bded0d commit d96e071

File tree

91 files changed

+271
-288
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

91 files changed

+271
-288
lines changed

.github/workflows/maven.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717

1818
strategy:
1919
matrix:
20-
java-version: ['11', '17']
20+
java-version: ['17']
2121

2222
steps:
2323
- uses: actions/checkout@v3
@@ -37,7 +37,7 @@ jobs:
3737

3838
strategy:
3939
matrix:
40-
java-version: ['11', '17']
40+
java-version: ['17']
4141

4242
steps:
4343
- uses: actions/checkout@v3
@@ -57,10 +57,10 @@ jobs:
5757

5858
steps:
5959
- uses: actions/checkout@v3
60-
- name: Set up JDK 11
60+
- name: Set up JDK 17
6161
uses: actions/setup-java@v1
6262
with:
63-
java-version: 11
63+
java-version: 17
6464
- name: Checkstyle
6565
run: mvn verify -DskipTests=true -Dmaven.javadoc.skip=true -B
6666
env:
@@ -73,10 +73,10 @@ jobs:
7373

7474
steps:
7575
- uses: actions/checkout@v3
76-
- name: Set up JDK 11
76+
- name: Set up JDK 17
7777
uses: actions/setup-java@v1
7878
with:
79-
java-version: 11
79+
java-version: 17
8080
- name: Generate JavaDoc
8181
run: mvn verify -DskipTests=true -Dcheckstyle.skip=true -B
8282
env:

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,12 @@ It is discouraged to use an older/lower `jsonschema-generator` version than any
4747
### Code
4848
#### Complete/Minimal Example
4949
```java
50-
import com.fasterxml.jackson.databind.JsonNode;
5150
import com.github.victools.jsonschema.generator.OptionPreset;
5251
import com.github.victools.jsonschema.generator.SchemaGenerator;
5352
import com.github.victools.jsonschema.generator.SchemaGeneratorConfig;
5453
import com.github.victools.jsonschema.generator.SchemaGeneratorConfigBuilder;
5554
import com.github.victools.jsonschema.generator.SchemaVersion;
55+
import tools.jackson.databind.JsonNode;
5656
```
5757
```java
5858
SchemaGeneratorConfigBuilder configBuilder = new SchemaGeneratorConfigBuilder(SchemaVersion.DRAFT_2020_12, OptionPreset.PLAIN_JSON);

jsonschema-examples/src/main/java/com/github/victools/jsonschema/examples/AnnotationInheritanceExample.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,14 @@
1616

1717
package com.github.victools.jsonschema.examples;
1818

19-
import com.fasterxml.jackson.databind.node.ObjectNode;
2019
import com.github.victools.jsonschema.generator.OptionPreset;
2120
import com.github.victools.jsonschema.generator.SchemaGenerator;
2221
import com.github.victools.jsonschema.generator.SchemaGeneratorConfig;
2322
import com.github.victools.jsonschema.generator.SchemaGeneratorConfigBuilder;
2423
import com.github.victools.jsonschema.generator.SchemaVersion;
2524
import com.github.victools.jsonschema.module.jakarta.validation.JakartaValidationModule;
2625
import jakarta.validation.constraints.NotEmpty;
26+
import tools.jackson.databind.node.ObjectNode;
2727

2828
/**
2929
* Example created in response to <a href="https://github.com/victools/jsonschema-generator/discussions/333">#333</a>.

jsonschema-examples/src/main/java/com/github/victools/jsonschema/examples/DependentRequiredExample.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616

1717
package com.github.victools.jsonschema.examples;
1818

19-
import com.fasterxml.jackson.databind.node.ObjectNode;
2019
import com.github.victools.jsonschema.generator.OptionPreset;
2120
import com.github.victools.jsonschema.generator.SchemaGenerator;
2221
import com.github.victools.jsonschema.generator.SchemaGeneratorConfig;
@@ -29,6 +28,7 @@
2928
import java.util.Arrays;
3029
import java.util.List;
3130
import java.util.Optional;
31+
import tools.jackson.databind.node.ObjectNode;
3232

3333
/**
3434
* Example created in response to <a href="https://github.com/victools/jsonschema-generator/issues/463">#463</a>.

jsonschema-examples/src/main/java/com/github/victools/jsonschema/examples/EnumMapExample.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
package com.github.victools.jsonschema.examples;
1818

1919
import com.fasterxml.classmate.ResolvedType;
20-
import com.fasterxml.jackson.databind.node.ObjectNode;
2120
import com.github.victools.jsonschema.generator.CustomDefinition;
2221
import com.github.victools.jsonschema.generator.CustomDefinitionProviderV2;
2322
import com.github.victools.jsonschema.generator.OptionPreset;
@@ -31,6 +30,7 @@
3130
import java.util.Optional;
3231
import java.util.function.Function;
3332
import java.util.stream.Stream;
33+
import tools.jackson.databind.node.ObjectNode;
3434

3535
/**
3636
* Example created in response to <a href="https://github.com/victools/jsonschema-generator/discussions/376">#376</a>.

jsonschema-examples/src/main/java/com/github/victools/jsonschema/examples/ExternalRefAnnotationExample.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
package com.github.victools.jsonschema.examples;
1818

1919
import com.fasterxml.classmate.ResolvedType;
20-
import com.fasterxml.jackson.databind.node.ObjectNode;
2120
import com.github.victools.jsonschema.generator.CustomDefinition;
2221
import com.github.victools.jsonschema.generator.CustomDefinitionProviderV2;
2322
import com.github.victools.jsonschema.generator.OptionPreset;
@@ -32,6 +31,7 @@
3231
import io.swagger.v3.oas.annotations.media.Schema;
3332
import java.util.List;
3433
import java.util.Optional;
34+
import tools.jackson.databind.node.ObjectNode;
3535

3636
/**
3737
* Example created in response to <a href="https://github.com/victools/jsonschema-generator/issues/319">#319</a>.

jsonschema-examples/src/main/java/com/github/victools/jsonschema/examples/ExternalRefPackageExample.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
package com.github.victools.jsonschema.examples;
1818

1919
import com.fasterxml.classmate.ResolvedType;
20-
import com.fasterxml.jackson.databind.node.ObjectNode;
2120
import com.github.victools.jsonschema.generator.CustomDefinition;
2221
import com.github.victools.jsonschema.generator.CustomDefinitionProviderV2;
2322
import com.github.victools.jsonschema.generator.Module;
@@ -28,6 +27,7 @@
2827
import com.github.victools.jsonschema.generator.SchemaGeneratorConfigBuilder;
2928
import com.github.victools.jsonschema.generator.SchemaKeyword;
3029
import com.github.victools.jsonschema.generator.SchemaVersion;
30+
import tools.jackson.databind.node.ObjectNode;
3131

3232
/**
3333
* Example created in response to <a href="https://github.com/victools/jsonschema-generator/issues/248">#248</a>.

jsonschema-examples/src/main/java/com/github/victools/jsonschema/examples/IfThenElseExample.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616

1717
package com.github.victools.jsonschema.examples;
1818

19-
import com.fasterxml.jackson.databind.node.ObjectNode;
2019
import com.github.victools.jsonschema.generator.OptionPreset;
2120
import com.github.victools.jsonschema.generator.SchemaGenerationContext;
2221
import com.github.victools.jsonschema.generator.SchemaGenerator;
@@ -32,6 +31,7 @@
3231
import java.lang.annotation.Target;
3332
import java.util.Objects;
3433
import java.util.stream.Stream;
34+
import tools.jackson.databind.node.ObjectNode;
3535

3636
/**
3737
* Example created in response to <a href="https://github.com/victools/jsonschema-generator/discussions/328">#328</a>.

jsonschema-examples/src/main/java/com/github/victools/jsonschema/examples/InheritanceRefExample.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
package com.github.victools.jsonschema.examples;
1818

1919
import com.fasterxml.classmate.ResolvedType;
20-
import com.fasterxml.jackson.databind.node.ObjectNode;
2120
import com.github.victools.jsonschema.generator.CustomDefinition;
2221
import com.github.victools.jsonschema.generator.CustomDefinitionProviderV2;
2322
import com.github.victools.jsonschema.generator.Option;
@@ -29,6 +28,7 @@
2928
import com.github.victools.jsonschema.generator.SchemaKeyword;
3029
import com.github.victools.jsonschema.generator.SchemaVersion;
3130
import java.time.LocalDate;
31+
import tools.jackson.databind.node.ObjectNode;
3232

3333
/**
3434
* Example created in response to <a href="https://github.com/victools/jsonschema-generator/issues/407">#407</a>.

jsonschema-examples/src/main/java/com/github/victools/jsonschema/examples/JacksonDescriptionAsTitleExample.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818

1919
import com.fasterxml.jackson.annotation.JsonClassDescription;
2020
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
21-
import com.fasterxml.jackson.databind.node.ObjectNode;
2221
import com.github.victools.jsonschema.generator.MemberScope;
2322
import com.github.victools.jsonschema.generator.Option;
2423
import com.github.victools.jsonschema.generator.OptionPreset;
@@ -29,6 +28,7 @@
2928
import com.github.victools.jsonschema.generator.TypeScope;
3029
import com.github.victools.jsonschema.module.jackson.JacksonModule;
3130
import java.util.UUID;
31+
import tools.jackson.databind.node.ObjectNode;
3232

3333
/**
3434
* Example created in response to <a href="https://github.com/victools/jsonschema-generator/issues/343">#343</a>.

0 commit comments

Comments
 (0)