[ 
https://issues.apache.org/jira/browse/GROOVY-12433?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18119580#comment-18119580
 ] 

ASF GitHub Bot commented on GROOVY-12433:
-----------------------------------------

codecov-commenter commented on PR #2949:
URL: https://github.com/apache/groovy/pull/2949#issuecomment-5843316298

   ## 
[Codecov](https://app.codecov.io/gh/apache/groovy/pull/2949?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 Report
   :x: Patch coverage is `70.68966%` with `17 lines` in your changes missing 
coverage. Please review.
   :white_check_mark: Project coverage is 71.6110%. Comparing base 
([`ac3babd`](https://app.codecov.io/gh/apache/groovy/commit/ac3babdee109f9b0bcfab241f152028fb52b47f4?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache))
 to head 
([`e5e2f17`](https://app.codecov.io/gh/apache/groovy/commit/e5e2f17eba8c35dcdd404ae4b30a005054b53f79?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)).
   
   | [Files with missing 
lines](https://app.codecov.io/gh/apache/groovy/pull/2949?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 | Patch % | Lines |
   |---|---|---|
   | 
[...java/org/apache/groovy/xml/util/JacksonHelper.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-xml%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fgroovy%2Fxml%2Futil%2FJacksonHelper.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXhtbC9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvZ3Jvb3Z5L3htbC91dGlsL0phY2tzb25IZWxwZXIuamF2YQ==)
 | 53.3333% | [6 Missing and 1 partial :warning: 
](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 |
   | 
[...roovy-csv/src/main/java/groovy/csv/CsvBuilder.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-csv%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Fcsv%2FCsvBuilder.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LWNzdi9zcmMvbWFpbi9qYXZhL2dyb292eS9jc3YvQ3N2QnVpbGRlci5qYXZh)
 | 0.0000% | [3 Missing :warning: 
](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 |
   | 
[...roovy-csv/src/main/java/groovy/csv/CsvSlurper.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-csv%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Fcsv%2FCsvSlurper.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LWNzdi9zcmMvbWFpbi9qYXZhL2dyb292eS9jc3YvQ3N2U2x1cnBlci5qYXZh)
 | 71.4286% | [2 Missing :warning: 
](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 |
   | 
[...vy-toml/src/main/java/groovy/toml/TomlBuilder.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-toml%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Ftoml%2FTomlBuilder.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXRvbWwvc3JjL21haW4vamF2YS9ncm9vdnkvdG9tbC9Ub21sQnVpbGRlci5qYXZh)
 | 0.0000% | [1 Missing :warning: 
](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 |
   | 
[...vy-toml/src/main/java/groovy/toml/TomlSlurper.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-toml%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Ftoml%2FTomlSlurper.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXRvbWwvc3JjL21haW4vamF2YS9ncm9vdnkvdG9tbC9Ub21sU2x1cnBlci5qYXZh)
 | 75.0000% | [1 Missing :warning: 
](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 |
   | 
[...ava/org/apache/groovy/toml/util/TomlConverter.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-toml%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fgroovy%2Ftoml%2Futil%2FTomlConverter.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXRvbWwvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2dyb292eS90b21sL3V0aWwvVG9tbENvbnZlcnRlci5qYXZh)
 | 87.5000% | [1 Missing :warning: 
](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 |
   | 
[...vy-yaml/src/main/java/groovy/yaml/YamlBuilder.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-yaml%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Fyaml%2FYamlBuilder.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXlhbWwvc3JjL21haW4vamF2YS9ncm9vdnkveWFtbC9ZYW1sQnVpbGRlci5qYXZh)
 | 80.0000% | [1 Missing :warning: 
](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 |
   | 
[...ava/org/apache/groovy/yaml/util/YamlConverter.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-yaml%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fgroovy%2Fyaml%2Futil%2FYamlConverter.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXlhbWwvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2dyb292eS95YW1sL3V0aWwvWWFtbENvbnZlcnRlci5qYXZh)
 | 87.5000% | [1 Missing :warning: 
](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 |
   
   <details><summary>Additional details and impacted files</summary>
   
   
   
   [![Impacted file tree 
graph](https://app.codecov.io/gh/apache/groovy/pull/2949/graphs/tree.svg?width=650&height=150&src=pr&token=1r45138NfQ&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
   
   ```diff
   @@                Coverage Diff                 @@
   ##               master      #2949        +/-   ##
   ==================================================
   + Coverage     71.6060%   71.6110%   +0.0051%     
   - Complexity      38060      38064         +4     
   ==================================================
     Files            1588       1588                
     Lines          137078     137092        +14     
     Branches        25507      25508         +1     
   ==================================================
   + Hits            98156      98173        +17     
   + Misses          30015      30010         -5     
   - Partials         8907       8909         +2     
   ```
   
   | [Files with missing 
lines](https://app.codecov.io/gh/apache/groovy/pull/2949?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
 | Coverage Δ | |
   |---|---|---|
   | 
[...rg/apache/groovy/json/internal/BaseJsonParser.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-json%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fgroovy%2Fjson%2Finternal%2FBaseJsonParser.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LWpzb24vc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2dyb292eS9qc29uL2ludGVybmFsL0Jhc2VKc29uUGFyc2VyLmphdmE=)
 | `75.2941% <ø> (ø)` | |
   | 
[...vy-yaml/src/main/java/groovy/yaml/YamlSlurper.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-yaml%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Fyaml%2FYamlSlurper.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXlhbWwvc3JjL21haW4vamF2YS9ncm9vdnkveWFtbC9ZYW1sU2x1cnBlci5qYXZh)
 | `93.3333% <100.0000%> (+0.2299%)` | :arrow_up: |
   | 
[...vy-toml/src/main/java/groovy/toml/TomlBuilder.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-toml%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Ftoml%2FTomlBuilder.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXRvbWwvc3JjL21haW4vamF2YS9ncm9vdnkvdG9tbC9Ub21sQnVpbGRlci5qYXZh)
 | `75.0000% <0.0000%> (ø)` | |
   | 
[...vy-toml/src/main/java/groovy/toml/TomlSlurper.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-toml%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Ftoml%2FTomlSlurper.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXRvbWwvc3JjL21haW4vamF2YS9ncm9vdnkvdG9tbC9Ub21sU2x1cnBlci5qYXZh)
 | `87.0968% <75.0000%> (ø)` | |
   | 
[...ava/org/apache/groovy/toml/util/TomlConverter.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-toml%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fgroovy%2Ftoml%2Futil%2FTomlConverter.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXRvbWwvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2dyb292eS90b21sL3V0aWwvVG9tbENvbnZlcnRlci5qYXZh)
 | `80.0000% <87.5000%> (+30.0000%)` | :arrow_up: |
   | 
[...vy-yaml/src/main/java/groovy/yaml/YamlBuilder.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-yaml%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Fyaml%2FYamlBuilder.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXlhbWwvc3JjL21haW4vamF2YS9ncm9vdnkveWFtbC9ZYW1sQnVpbGRlci5qYXZh)
 | `78.9474% <80.0000%> (+1.1696%)` | :arrow_up: |
   | 
[...ava/org/apache/groovy/yaml/util/YamlConverter.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-yaml%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fgroovy%2Fyaml%2Futil%2FYamlConverter.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXlhbWwvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2dyb292eS95YW1sL3V0aWwvWWFtbENvbnZlcnRlci5qYXZh)
 | `81.8182% <87.5000%> (+18.1818%)` | :arrow_up: |
   | 
[...roovy-csv/src/main/java/groovy/csv/CsvSlurper.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-csv%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Fcsv%2FCsvSlurper.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LWNzdi9zcmMvbWFpbi9qYXZhL2dyb292eS9jc3YvQ3N2U2x1cnBlci5qYXZh)
 | `83.6956% <71.4286%> (ø)` | |
   | 
[...roovy-csv/src/main/java/groovy/csv/CsvBuilder.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-csv%2Fsrc%2Fmain%2Fjava%2Fgroovy%2Fcsv%2FCsvBuilder.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LWNzdi9zcmMvbWFpbi9qYXZhL2dyb292eS9jc3YvQ3N2QnVpbGRlci5qYXZh)
 | `65.2174% <0.0000%> (ø)` | |
   | 
[...java/org/apache/groovy/xml/util/JacksonHelper.java](https://app.codecov.io/gh/apache/groovy/pull/2949?src=pr&el=tree&filepath=subprojects%2Fgroovy-xml%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fgroovy%2Fxml%2Futil%2FJacksonHelper.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-c3VicHJvamVjdHMvZ3Jvb3Z5LXhtbC9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvZ3Jvb3Z5L3htbC91dGlsL0phY2tzb25IZWxwZXIuamF2YQ==)
 | `48.6486% <53.3333%> (+0.5005%)` | :arrow_up: |
   
   ... and [11 files with indirect coverage 
changes](https://app.codecov.io/gh/apache/groovy/pull/2949/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)
   </details>
   <details><summary> :rocket: New features to boost your workflow: </summary>
   
   - :snowflake: [Test 
Analytics](https://docs.codecov.com/docs/test-analytics): Detect flaky tests, 
report on failures, and find test suite problems.
   - :package: [JS Bundle 
Analysis](https://docs.codecov.com/docs/javascript-bundle-analysis): Save 
yourself from yourself by tracking and limiting bundle sizes in JS merges.
   </details>




> Move groovy-yaml, groovy-toml and groovy-csv to Jackson 3
> ---------------------------------------------------------
>
>                 Key: GROOVY-12433
>                 URL: https://issues.apache.org/jira/browse/GROOVY-12433
>             Project: Groovy
>          Issue Type: Improvement
>          Components: groovy-csv, groovy-toml, groovy-yaml, XML Processing
>            Reporter: Scott Murphy Heiberg
>            Priority: Major
>             Fix For: 7.0.0-alpha-1
>
>
> groovy-yaml, groovy-toml and groovy-csv are built on Jackson 2 
> ({{com.fasterxml.jackson}} 2.22.x). Spring Boot 4 uses Jackson 3 
> ({{tools.jackson}}) by default, so an application on Spring Boot 4 that uses 
> one of these modules carries both major versions and has to manage the 
> Jackson 2 one itself. Jackson 2 and 3 use different packages and coordinates, 
> so having Jackson 3 on the classpath does nothing for these modules.
> None of the three modules exposes a Jackson type in its public API, so they 
> can move to Jackson 3 without source changes for callers.
> Proposal:
> * Depend on {{tools.jackson}} 3.1.6, the version Spring Boot 4.2 manages. 
> {{jackson-datatype-jsr310}} is no longer needed; java.time support is built 
> into Jackson 3 databind.
> * Build every mapper with {{configureForJackson2()}} so databinding keeps 
> Jackson 2's defaults: properties in declaration order, unknown properties 
> rejected, nulls for primitives and trailing tokens accepted. The CSV mapper 
> also keeps {{SORT_PROPERTIES_ALPHABETICALLY}}, which Jackson 2's 
> {{CsvMapper}} enabled itself and the user guide documents.
> * Parser limits follow Jackson 3's defaults: nesting depth 500 (was 1000) and 
> string length 100,000,000 (was 20,000,000). Jackson lowered the depth after 
> fuzzers reached a StackOverflowError below 1000 (FasterXML/jackson-core#1233) 
> and raised the string length for legitimate large payloads 
> (FasterXML/jackson-core#1538). {{JsonSlurper}} and {{XmlParser}} keep their 
> 1000-level caps.
> * {{XmlParser.parseAs}} and {{parseTextAs}} load jackson-databind 
> reflectively; use Jackson 3 when present and fall back to Jackson 2.
> * Jackson 3's YAML backend uses SnakeYAML Engine rather than SnakeYAML, so 
> the SnakeYAML alias recipe from GROOVY-12358 needs {{org.yaml:snakeyaml}} 
> declared explicitly, as the user guide already anticipates.
> Jackson 3 still uses {{com.fasterxml.jackson.annotation}}, so 
> {{@JsonProperty}}, {{@JsonFormat}} and the other annotations in user code 
> keep working.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to