PJ did a great job of fixing the bug
<https://github.com/FasterXML/jackson-module-scala/issues/542>, 2.13.0 is
good to go as far as I'm concerned.  Thanks again PJ!

On Tue, Sep 14, 2021 at 6:48 PM Nakamura <nakamura.mo...@gmail.com> wrote:

> OK, I did some more research.  Two updates:
>
> 1.  Filed an issue
> <https://github.com/FasterXML/jackson-module-scala/issues/542> about the
> malformed class name
> 2.  I looked into the JsonNode thing.  Basically we were creating an empty
> ArrayNode, and calling ArrayNode#add(Short).  Previously, this inserted an
> IntNode, but now it inserts a ShortNode.  This seems like a bugfix, so I
> don't think we need to take any action.
>
> The scala bug is the only thing that I think would prevent us from
> upgrading right now, but I'll try to confirm in the next couple of hours.
>
> On Sat, Sep 4, 2021 at 4:27 PM Tatu Saloranta <t...@fasterxml.com> wrote:
>
>> On Fri, Sep 3, 2021 at 12:56 PM Nakamura <nakamura.mo...@gmail.com>
>> wrote:
>> >
>> > OK, I haven't finished working through the issues yet.  I'm trying to
>> upgrade from 2.11.4 to 2.13.0-rc2.  After fixing some expected breaking
>> changes, here are a few I found:
>>
>> First of all, thank you for going through testing, reporting issues!
>>
>> >
>> > 1. We have tests that compare the values of JsonNodes.  After the
>> upgrade, it started failing when it said that IntNode and ShortNode are not
>> equal.  I haven't pinpointed what has changed (whether it's equality, or
>> how things are turned into ShortNode or IntNode). I'll update the thread
>> once I've figured it out.
>>
>> Interesting. I do not have a good idea here; although I do know that
>> the comparison across different node types and esp. for Numeric types
>> is challenging in general.
>> This is one reason why external comparator approach with JsonNode method:
>>
>>     public boolean equals(Comparator<JsonNode> comparator, JsonNode
>> other) {
>>
>> is strongly recommended; plain `equals()` is notoriously difficult to
>> make work reliably (has to work "both ways" across different types
>> etc).
>>
>> Having said that, IntNode.equals() and ShortNode.equals() appear
>> unchanged between 2.11 and 2.13; and both would fail comparison
>> (they assume strict type equality).
>> So the issue is probably more with construction of ShortNode vs
>> IntNode for some input...
>>
>> >
>> > 2.  We have a test that tries to read all of the resources files.  When
>> it comes across jackson, it says "File Not Found".
>> > > ..../
>> repo1.maven.org/com/fasterxml/jackson/core/jackson-databind/2.13.0-rc2/jackson-databind-2.13.0-rc2.jar!/META-INF/versions/11
>> (No such file or directory)
>>
>> That is a weird one for sure.
>>
>> The location of `module-info.class` did move from main-level (in 2.11
>> and 2.12) to under `META-INF/versions/11`: this to prevent issues with
>> some older Java 8
>> clients. But no idea how this could cause other issues.
>>
>> > 3.  I'm getting a Malformed class name exception from the
>> jackson-scala-module.
>> >
>> >                      java.lang.InternalError: Malformed class name
>> >                       at java.lang.Class.getSimpleName(Class.java:1330)
>> >                       at
>> java.lang.Class.getCanonicalName(Class.java:1399)
>> >                       at
>> com.fasterxml.jackson.module.scala.util.TastyUtil$.hasTastyFile(TastyUtil.scala:10)
>> >                       at
>> com.fasterxml.jackson.module.scala.util.ClassW.extendsScalaClass(Classes.scala:12)
>> >                       at
>> com.fasterxml.jackson.module.scala.util.ClassW.extendsScalaClass$(Classes.scala:9)
>> >                       at
>> com.fasterxml.jackson.module.scala.util.ClassW$$anon$1.extendsScalaClass(Classes.scala:34)
>> >                       at
>> com.fasterxml.jackson.module.scala.introspect.ScalaAnnotationIntrospector$._descriptorFor(ScalaAnnotationIntrospectorModule.scala:157)
>> >                       at
>> com.fasterxml.jackson.module.scala.introspect.ScalaAnnotationIntrospector$.fieldName(ScalaAnnotationIntrospectorModule.scala:173)
>> >                       at
>> com.fasterxml.jackson.module.scala.introspect.ScalaAnnotationIntrospector$.findImplicitPropertyName(ScalaAnnotationIntrospectorModule.scala:46)
>> >                       at
>> com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findImplicitPropertyName(AnnotationIntrospectorPair.java:502)
>> >                       at
>> com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector._addFields(POJOPropertiesCollector.java:530)
>> >                       at
>> com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector.collectAll(POJOPropertiesCollector.java:421)
>> >                       at
>> com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector.getPropertyMap(POJOPropertiesCollector.java:386)
>> >                       at
>> com.fasterxml.jackson.databind.introspect.POJOPropertiesCollector.getProperties(POJOPropertiesCollector.java:233)
>> >                       at
>> com.fasterxml.jackson.databind.introspect.BasicBeanDescription._properties(BasicBeanDescription.java:164)
>> >                       at
>> com.fasterxml.jackson.databind.introspect.BasicBeanDescription.findProperties(BasicBeanDescription.java:239)
>> >                       at
>> com.fasterxml.jackson.databind.deser.BasicDeserializerFactory._findCreatorsFromProperties(BasicDeserializerFactory.java:328)
>> >                       at
>> com.fasterxml.jackson.databind.deser.BasicDeserializerFactory._constructDefaultValueInstantiator(BasicDeserializerFactory.java:272)
>> >                       at
>> com.fasterxml.jackson.databind.deser.BasicDeserializerFactory.findValueInstantiator(BasicDeserializerFactory.java:223)
>> >                       at
>> com.fasterxml.jackson.databind.deser.BeanDeserializerFactory.buildBeanDeserializer(BeanDeserializerFactory.java:261)
>> >                       at
>> com.fasterxml.jackson.databind.deser.BeanDeserializerFactory.createBeanDeserializer(BeanDeserializerFactory.java:150)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache._createDeserializer2(DeserializerCache.java:415)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache._createDeserializer(DeserializerCache.java:350)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCache2(DeserializerCache.java:264)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCacheValueDeserializer(DeserializerCache.java:244)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache.findValueDeserializer(DeserializerCache.java:142)
>> >                       at
>> com.fasterxml.jackson.databind.DeserializationContext.findNonContextualValueDeserializer(DeserializationContext.java:632)
>> >                       at
>> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.resolve(BeanDeserializerBase.java:539)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCache2(DeserializerCache.java:294)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCacheValueDeserializer(DeserializerCache.java:244)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache.findValueDeserializer(DeserializerCache.java:142)
>> >                       at
>> com.fasterxml.jackson.databind.DeserializationContext.findContextualValueDeserializer(DeserializationContext.java:609)
>> >                       at
>> com.fasterxml.jackson.databind.deser.std.MapDeserializer.createContextual(MapDeserializer.java:316)
>> >                       at
>> com.fasterxml.jackson.module.scala.deser.GenericMapFactoryDeserializerResolver$Deserializer.createContextual(GenericMapFactoryDeserializerResolver.scala:122)
>> >                       at
>> com.fasterxml.jackson.databind.DeserializationContext.handlePrimaryContextualization(DeserializationContext.java:825)
>> >                       at
>> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.resolve(BeanDeserializerBase.java:550)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCache2(DeserializerCache.java:294)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCacheValueDeserializer(DeserializerCache.java:244)
>> >                       at
>> com.fasterxml.jackson.databind.deser.DeserializerCache.findValueDeserializer(DeserializerCache.java:142)
>> >                       at
>> com.fasterxml.jackson.databind.DeserializationContext.findRootValueDeserializer(DeserializationContext.java:642)
>> >                       at
>> com.fasterxml.jackson.databind.ObjectMapper._findRootDeserializer(ObjectMapper.java:4751)
>> >                       at
>> com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4621)
>> >                       at
>> com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3575)
>> >                       at
>> com.fasterxml.jackson.module.scala.ScalaObjectMapper.readValue(ScalaObjectMapper.scala:206)
>> >                       at
>> com.fasterxml.jackson.module.scala.ScalaObjectMapper.readValue$(ScalaObjectMapper.scala:205)
>>
>> Possibly worth filing separate jackson-module-scala issue?
>>
>> >
>> > I have been too busy with other things at work to dig in and understand
>> where these bugs are coming from, or how easy they are to work around, but
>> I'll try to update you shortly.
>>
>> Excellent work so far, looking forward to learning more!
>>
>> -+ Tatu +-
>>
>> >
>> > Best,
>> > Moses
>> >
>> > On Mon, Aug 30, 2021 at 1:00 PM Tatu Saloranta <tsalora...@gmail.com>
>> wrote:
>> >>
>> >> On Mon, Aug 30, 2021 at 7:02 AM Nakamura <nakamura.mo...@gmail.com>
>> wrote:
>> >>>
>> >>> Hi Tatu,
>> >>> I've started testing with RC2 across my company's monorepo, and I'm
>> seeing a bunch of test failures.  Could you please wait until at least next
>> week to promote to stable?  I'll need some time to figure out which are
>> fragile tests vs real regressions.
>> >>> Best,
>> >>> Moses
>> >>
>> >>
>> >> Yes, I will not be releasing 2.13.0 next weekend: probably will take
>> at least 2 weeks from now on.
>> >>
>> >> -+ Tatu +-
>> >>
>> >>>
>> >>>
>> >>> On Fri, Aug 27, 2021 at 1:22 PM Tatu Saloranta <tsalora...@gmail.com>
>> wrote:
>> >>>>
>> >>>> As per title, I decided that instead of trying to release the
>> official 2.13.0, it makes sense to instead push another release candidate.
>> >>>> Decision is due to:
>> >>>>
>> >>>> 1. Multiple fixes since rc1, including important ones (see
>> https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.13 -- alas,
>> fixes for rc1 not separated)
>> >>>> 2. A few bugs remain on the list of "really want to fix for 2.13.0
>> final" (see
>> https://github.com/FasterXML/jackson-future-ideas/wiki/Jackson-Work-in-Progress
>> )
>> >>>>
>> >>>> I have also had much less time to work on Jackson itself lately
>> (first due to vacation, but also due to starting a new job which requires a
>> lot of active learning at this point) so things are a bit slow on getting
>> PRs integrated, verified and so on.
>> >>>> I feel that avoiding the rush to "just get it done" makes sense
>> here, to minimize the possibility of regressions.
>> >>>>
>> >>>> Having said that, I do hope that the final 2.13.0 will get out by
>> mid-September 2021.
>> >>>>
>> >>>> At this point I would REALLY welcome help in
>> regression/compatibility testing Jackson 2.13.0-rc2. Thank you everyone who
>> tested, reported issues with 2.13.0-rc1!
>> >>>>
>> >>>> -+ Tatu +-
>> >>>>
>> >>>>
>> >>>> --
>> >>>> You received this message because you are subscribed to the Google
>> Groups "jackson-user" group.
>> >>>> To unsubscribe from this group and stop receiving emails from it,
>> send an email to jackson-user+unsubscr...@googlegroups.com.
>> >>>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jackson-user/CAGrxA25gN%2BWHoOzF9Rr_umR3%3DPEUs4JQxEM9kO%2BUDL0fYeozrA%40mail.gmail.com
>> .
>> >>>
>> >>> --
>> >>> You received this message because you are subscribed to the Google
>> Groups "jackson-user" group.
>> >>> To unsubscribe from this group and stop receiving emails from it,
>> send an email to jackson-user+unsubscr...@googlegroups.com.
>> >>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jackson-user/CAEYWR9vzobuTaw3_eNtgdfVFTCiy%2BjcsXjSkZNV5bQ%2BPhAwOSQ%40mail.gmail.com
>> .
>> >>
>> >> --
>> >> You received this message because you are subscribed to the Google
>> Groups "jackson-user" group.
>> >> To unsubscribe from this group and stop receiving emails from it, send
>> an email to jackson-user+unsubscr...@googlegroups.com.
>> >> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jackson-user/CAGrxA25%2B5SowwgSWmb301qYj_nOnAdQ6wwB3tSFDLeufkndBVg%40mail.gmail.com
>> .
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> Groups "jackson-user" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> an email to jackson-user+unsubscr...@googlegroups.com.
>> > To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jackson-user/CAEYWR9vUq0t%2BMy7_bKf8A1g_NL1XLXAU_kRT5sPn_hjtZz83HQ%40mail.gmail.com
>> .
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "jackson-user" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jackson-user+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jackson-user/CAL4a10jPtxgCE%2BELikXtO9PgPHAhQQa%2BjZj173CNtbE3ZChirA%40mail.gmail.com
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"jackson-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jackson-user+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jackson-user/CAEYWR9tNOvwr3ObxZtTx_Zx%3DDRA_LZ-3UDqOgUNR7XBxjsBu8A%40mail.gmail.com.

Reply via email to