<?xml version="1.0"?>
<ruleset xmlns="http://windup.jboss.org/schema/jboss-ruleset" id="quarkus1-11-resteasy-jackson"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://windup.jboss.org/schema/jboss-ruleset http://windup.jboss.org/schema/jboss-ruleset/windup-jboss-ruleset.xsd">
    <metadata>
        <description>
            This ruleset gives hints for upgrading to quarkus 1.11 for applications that use Jackson 
        </description>
        <dependencies>
            <addon id="org.jboss.windup.rules,windup-rules-javaee,3.0.0.Final" />
            <addon id="org.jboss.windup.rules,windup-rules-java,3.0.0.Final" />
            <addon id="org.jboss.windup.rules,windup-rules-xml,3.0.0.Final" />
        </dependencies>
        <!-- The major version is implied by the target, the minor is reflected in the verionRange -->
        <sourceTechnology id="quarkus1" versionRange="(,10]"/>
        <targetTechnology id="quarkus1" versionRange="[11,)"/>
    </metadata>
    <rules>
        <rule id="quarkus1-11-resteasy-jackson-00000">
            <when>

                <project>
                    <artifact groupId="io.quarkus" artifactId="quarkus-resteasy-jackson"/>
                </project>
            </when>
            <perform>
                <iteration over="default">
                    <hint title="The Jackson ObjectMapper ignores unknown properties" effort="1" category-id="potential">
                        <message>
                            The default `ObjectMapper` obtained via CDI and consumed by the Quarkus extensions now ignores unknown properties 
                            (by disabling the `DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES` feature).  
                            Refer to the guide below for more details about how to return to the previous behaviour.
                        </message>
                        <link title="Quarkus - Writing JSON REST Services" href="https://quarkus.io/guides/rest-json#jackson" />
                        <link title="Quarkus - Migraton Guide 1.11" href="https://github.com/quarkusio/quarkus/wiki/Migration-Guide-1.11" />
                    </hint>
                </iteration>
            </perform>
        </rule>
    </rules>
</ruleset>
