openhab / openhab-addons

Add-ons for openHAB
https://www.openhab.org/
Eclipse Public License 2.0
1.9k stars 3.59k forks source link

[jellyfin] - API deserialization problems after update to latest Jellyfin Server Version 10.9 #16903

Closed pgfeller closed 4 months ago

pgfeller commented 4 months ago

After the latest server update of my Jellyfin Server instance the binding reports a problems with the server communication (se-serialization).

Environment

Jellyfin

Component Version
Server 10.9.6
Web 10.9.6
Build Version 10.9.6

Current Behavior

Api error: Deserialization failed
  2024-06-22 10:06:13.581 [WARN ] [ternal.handler.JellyfinServerHandler] - Api error: Deserialization failed
  2024-06-22 10:06:43.692 [ERROR] [.jellyfin.sdk.api.client.RawResponse] - Deserialization failed
  kotlinx.serialization.SerializationException: org.jellyfin.sdk.model.api.MediaStreamType does not contain element with name 'Lyric' at path $[0].NowPlayingQueueFullItems[7].MediaSources[0].MediaStreams[2].Type
      at kotlinx.serialization.json.internal.JsonNamesMapKt.getJsonNameIndexOrThrow(JsonNamesMap.kt:107) ~[bundleFile:?]
      at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeEnum(StreamingJsonDecoder.kt:352) ~[bundleFile:?]
      ..
      at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17) ~[bundleFile:?]
      at org.jellyfin.sdk.model.api.MediaSourceInfo$$serializer.deserialize(MediaSourceInfo.kt:17) ~[bundleFile:?]
      ..
      at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33) ~[bundleFile:?]
      at org.jellyfin.sdk.model.api.BaseItemDto$$serializer.deserialize(BaseItemDto.kt:33) ~[bundleFile:?]
      ...
      at org.jellyfin.sdk.model.api.SessionInfo$$serializer.deserialize(SessionInfo.kt:27) ~[bundleFile:?]
      at org.jellyfin.sdk.model.api.SessionInfo$$serializer.deserialize(SessionInfo.kt:27) ~[bundleFile:?]
      ...
      at org.jellyfin.sdk.api.operations.SessionApi.getSessions(SessionApi.kt:509) [bundleFile:?]
      at org.jellyfin.sdk.api.operations.SessionApi$getSessions$1.invokeSuspend(SessionApi.kt) [bundleFile:?]
      ...
  2024-06-22 10:06:43.693 [WARN ] [ternal.handler.JellyfinServerHandler] - Api error: Deserialization failed
  

Possible Solution

I assume that the SDK version 1.4.6 used by the binding is no longer compatible with the latest release. I did not do a full investigation, but it looks like there is a backport of the API changes to SDK 1.4 available: Backport 10.9 enum changes to 10.8.13 API specification

➡️ potentially an update to SDK 1.4.7 would solve the problem.

Minimum Jellyfin Server Version for this is 10.8.1 - which is the same as for SDK 1.4.6 - therefore I do not expect compatibility problems.

Steps to Reproduce (for Bugs)

Update Jellyfin Server to 10.9.x

Context

Major parts of the binding functionality are affected and do no longer work.

Your Environment

Tested with

@GiviMAD - I'll try to update the SDK on a test setup to 1.4.7 and report back. If it works I'll create a PR and the issue can be assigned to me; or do you think an update to SDK 1.5 would be the better option?

GiviMAD commented 4 months ago

@GiviMAD - I'll try to update the SDK on a test setup to 1.4.7 and report back. If it works I'll create a PR and the issue can be assigned to me; or do you think an update to SDK 1.5 would be the better option?

Thank for reporting it, I hope the upgrade to 1.4.7 solves the issue because 1.5 seems to be still in beta. Let me know if you need any help.

pgfeller commented 4 months ago

👍 ... the backport PR to 1.4.x looks promising - but just simply changing the SDK version to 1.4.7 resulted in build problems on my test system:

[ERROR] Message: Unable to resolve root: missing requirement [root]
[INFO] --- jar:3.3.0:jar (default-jar) @ org.openhab.binding.jellyfin ---
[INFO] Building jar: /home/pgfeller/Documents/GitHub/openhab-addons/bundles/org.openhab.binding.jellyfin/target/org.openhab.binding.jellyfin-4.2.0-SNAPSHOT.jar
[INFO] 
[INFO] --- source:3.3.0:jar-no-fork (attach-sources) @ org.openhab.binding.jellyfin ---
[INFO] Building jar: /home/pgfeller/Documents/GitHub/openhab-addons/bundles/org.openhab.binding.jellyfin/target/org.openhab.binding.jellyfin-4.2.0-SNAPSHOT-sources.jar
[INFO] 
[INFO] --- sat:0.15.0:checkstyle (sat-all) @ org.openhab.binding.jellyfin ---
[INFO] Rendering content with org.apache.maven.skins:maven-default-skin:jar:1.3 skin.
[INFO] 
[INFO] --- sat:0.15.0:pmd (sat-all) @ org.openhab.binding.jellyfin ---
[WARNING]  Parameter 'outputEncoding' (user property 'outputEncoding') is read-only, must not be used in configuration
[INFO] PMD version: 6.53.0
[INFO] Rendering content with org.apache.maven.skins:maven-default-skin:jar:1.3 skin.
[INFO] 
[INFO] --- sat:0.15.0:spotbugs (sat-all) @ org.openhab.binding.jellyfin ---
[INFO] Fork Value is true
...
[INFO] --- sat:0.15.0:report (sat-all) @ org.openhab.binding.jellyfin ---
[INFO] Empty report will not be appended to the summary report.
[INFO] 
[INFO] --- karaf:4.4.5:verify (karaf-feature-verification) @ org.openhab.binding.jellyfin ---
[INFO] Using repositories: https://openhab.jfrog.io/openhab/libs-release@id=openhab-release,https://openhab.jfrog.io/openhab/libs-snapshot@id=openhab-snapshot@noreleases@snapshots,https://repo1.maven.org/maven2@id=central
[WARNING] Feature resolution failed for [openhab-binding-jellyfin/4.2.0.SNAPSHOT]
Message: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=openhab-binding-jellyfin; type=karaf.feature; version=4.2.0.SNAPSHOT; filter:="(&(osgi.identity=openhab-binding-jellyfin)(type=karaf.feature)(version>=4.2.0.SNAPSHOT))" [caused by: Unable to resolve openhab-binding-jellyfin/4.2.0.SNAPSHOT: missing requirement [openhab-binding-jellyfin/4.2.0.SNAPSHOT] osgi.identity; osgi.identity=openhab-runtime-base; type=karaf.feature [caused by: Unable to resolve openhab-runtime-base/4.2.0.SNAPSHOT: missing requirement [openhab-runtime-base/4.2.0.SNAPSHOT] osgi.identity; osgi.identity=openhab-core-model-item; type=karaf.feature [caused by: Unable to resolve openhab-core-model-item/4.2.0.SNAPSHOT: missing requirement [openhab-core-model-item/4.2.0.SNAPSHOT] osgi.identity; osgi.identity=org.openhab.core.model.item; type=osgi.bundle; version="[4.2.0.202406110308,4.2.0.202406110308]"; resolution:=mandatory [caused by: Unable to resolve org.openhab.core.model.item/4.2.0.202406110308: missing requirement [org.openhab.core.model.item/4.2.0.202406110308] osgi.wiring.bundle; osgi.wiring.bundle=org.eclipse.xtext.common.types; filter:="(osgi.wiring.bundle=org.eclipse.xtext.common.types)" [caused by: Unable to resolve org.eclipse.xtext.common.types/2.35.0.v20240528-1523: missing requirement [org.eclipse.xtext.common.types/2.35.0.v20240528-1523] osgi.wiring.bundle; osgi.wiring.bundle=org.objectweb.asm; bundle-version="[9.7.0,9.8.0)"; filter:="(&(osgi.wiring.bundle=org.objectweb.asm)(bundle-version>=9.7.0)(!(bundle-version>=9.8.0)))"]]]]]
Repositories: {
        file:/home/pgfeller/Documents/GitHub/openhab-addons/bundles/org.openhab.binding.jellyfin/target/feature/feature.xml
        mvn:org.apache.karaf.features/framework/4.4.5/xml/features
        mvn:org.apache.karaf.features/specs/4.4.5/xml/features
        mvn:org.apache.karaf.features/standard/4.4.5/xml/features
        mvn:org.openhab.core.features.karaf/org.openhab.core.features.karaf.openhab-core/4.2.0-SNAPSHOT/xml/features
        mvn:org.openhab.core.features.karaf/org.openhab.core.features.karaf.openhab-tp/4.2.0-SNAPSHOT/xml/features
        mvn:org.ops4j.pax.web/pax-web-features/8.0.24/xml/features
}
Resources: {
        mvn:com.fasterxml.jackson.core/jackson-annotations/2.17.1
        mvn:com.fasterxml.jackson.core/jackson-core/2.17.1
        mvn:com.fasterxml.jackson.core/jackson-databind/2.17.1
        mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-cbor/2.17.1
        mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/2.17.1
        mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/2.17.1
        mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/2.17.1
        mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-base/2.17.1
        mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/2.17.1
        mvn:com.fasterxml.jackson.module/jackson-module-jaxb-annotations/2.17.1
...
[WARNING] Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=openhab-binding-jellyfin; type=karaf.feature; version=4.2.0.SNAPSHOT; filter:="(&(osgi.identity=openhab-binding-jellyfin)(type=karaf.feature)(version>=4.2.0.SNAPSHOT))" [caused by: Unable to resolve openhab-binding-jellyfin/4.2.0.SNAPSHOT: missing requirement [openhab-binding-jellyfin/4.2.0.SNAPSHOT] osgi.identity; osgi.identity=openhab-runtime-base; type=karaf.feature [caused by: Unable to resolve openhab-runtime-base/4.2.0.SNAPSHOT: missing requirement [openhab-runtime-base/4.2.0.SNAPSHOT] osgi.identity; osgi.identity=openhab-core-model-item; type=karaf.feature [caused by: Unable to resolve openhab-core-model-item/4.2.0.SNAPSHOT: missing requirement [openhab-core-model-item/4.2.0.SNAPSHOT] osgi.identity; osgi.identity=org.openhab.core.model.item; type=osgi.bundle; version="[4.2.0.202406110308,4.2.0.202406110308]"; resolution:=mandatory [caused by: Unable to resolve org.openhab.core.model.item/4.2.0.202406110308: missing requirement [org.openhab.core.model.item/4.2.0.202406110308] osgi.wiring.bundle; osgi.wiring.bundle=org.eclipse.xtext.common.types; filter:="(osgi.wiring.bundle=org.eclipse.xtext.common.types)" [caused by: Unable to resolve org.eclipse.xtext.common.types/2.35.0.v20240528-1523: missing requirement [org.eclipse.xtext.common.types/2.35.0.v20240528-1523] osgi.wiring.bundle; osgi.wiring.bundle=org.objectweb.asm; bundle-version="[9.7.0,9.8.0)"; filter:="(&(osgi.wiring.bundle=org.objectweb.asm)(bundle-version>=9.7.0)(!(bundle-version>=9.8.0)))"]]]]]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  02:04 min
[INFO] Finished at: 2024-06-22T18:24:15+02:00
[INFO] ------------------------------------------------------------------------
[INFO] Static code analysis summary report is available in:
[INFO] file:/home/pgfeller/Documents/GitHub/openhab-addons/bundles/org.openhab.binding.jellyfin/target/summary_report.html
[ERROR] Failed to execute goal org.apache.karaf.tooling:karaf-maven-plugin:4.4.5:verify (karaf-feature-verification) on project org.openhab.binding.jellyfin: Feature resolution failed for [openhab-binding-jellyfin/4.2.0.SNAPSHOT]
[ERROR] Message: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=openhab-binding-jellyfin; type=karaf.feature; version=4.2.0.SNAPSHOT; filter:="(&(osgi.identity=openhab-binding-jellyfin)(type=karaf.feature)(version>=4.2.0.SNAPSHOT))" [caused by: Unable to resolve openhab-binding-jellyfin/4.2.0.SNAPSHOT: missing requirement [openhab-binding-jellyfin/4.2.0.SNAPSHOT] osgi.identity; osgi.identity=openhab-runtime-base; type=karaf.feature [caused by: Unable to resolve openhab-runtime-base/4.2.0.SNAPSHOT: missing requirement [openhab-runtime-base/4.2.0.SNAPSHOT] osgi.identity; osgi.identity=openhab-core-model-item; type=karaf.feature [caused by: Unable to resolve openhab-core-model-item/4.2.0.SNAPSHOT: missing requirement [openhab-core-model-item/4.2.0.SNAPSHOT] osgi.identity; osgi.identity=org.openhab.core.model.item; type=osgi.bundle; version="[4.2.0.202406110308,4.2.0.202406110308]"; resolution:=mandatory [caused by: Unable to resolve org.openhab.core.model.item/4.2.0.202406110308: missing requirement [org.openhab.core.model.item/4.2.0.202406110308] osgi.wiring.bundle; osgi.wiring.bundle=org.eclipse.xtext.common.types; filter:="(osgi.wiring.bundle=org.eclipse.xtext.common.types)" [caused by: Unable to resolve org.eclipse.xtext.common.types/2.35.0.v20240528-1523: missing requirement [org.eclipse.xtext.common.types/2.35.0.v20240528-1523] osgi.wiring.bundle; osgi.wiring.bundle=org.objectweb.asm; bundle-version="[9.7.0,9.8.0)"; filter:="(&(osgi.wiring.bundle=org.objectweb.asm)(bundle-version>=9.7.0)(!(bundle-version>=9.8.0)))"]]]]]
[ERROR] Repositories: {
[ERROR]         file:/home/pgfeller/Documents/GitHub/openhab-addons/bundles/org.openhab.binding.jellyfin/target/feature/feature.xml
[ERROR]         mvn:org.apache.karaf.features/framework/4.4.5/xml/features
[ERROR]         mvn:org.apache.karaf.features/specs/4.4.5/xml/features
[ERROR]         mvn:org.apache.karaf.features/standard/4.4.5/xml/features
[ERROR]         mvn:org.openhab.core.features.karaf/org.openhab.core.features.karaf.openhab-core/4.2.0-SNAPSHOT/xml/features
[ERROR]         mvn:org.openhab.core.features.karaf/org.openhab.core.features.karaf.openhab-tp/4.2.0-SNAPSHOT/xml/features
[ERROR]         mvn:org.ops4j.pax.web/pax-web-features/8.0.24/xml/features
[ERROR] }
[ERROR] Resources: {
[ERROR]         mvn:com.fasterxml.jackson.core/jackson-annotations/2.17.1
[ERROR]         mvn:com.fasterxml.jackson.core/jackson-core/2.17.1
[ERROR]         mvn:com.fasterxml.jackson.core/jackson-databind/2.17.1
[ERROR]         mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-cbor/2.17.1
[ERROR]         mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-xml/2.17.1
[ERROR]         mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/2.17.1
[ERROR]         mvn:com.fasterxml.jackson.datatype/jackson-datatype-jsr310/2.17.1
[ERROR]         mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-base/2.17.1
[ERROR]         mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/2.17.1
[ERROR]         mvn:com.fasterxml.jackson.module/jackson-module-jaxb-annotations/2.17.1
[ERROR]         mvn:com.fasterxml.woodstox/woodstox-core/6.5.1
[ERROR]         mvn:com.google.guava/failureaccess/1.0.2
[ERROR]         mvn:com.google.guava/guava/33.2.0-jre
[ERROR]         mvn:com.google.inject/guice/7.0.0
[ERROR]         mvn:com.sun.xml.bind/jaxb-osgi/2.3.8
[ERROR]         mvn:com.thoughtworks.xstream/xstream/1.4.20
[ERROR]         mvn:de.focus-shift/jollyday-core/0.28.1
[ERROR]         mvn:de.focus-shift/jollyday-jackson/0.28.1
[ERROR]         mvn:io.github.classgraph/classgraph/4.8.172
[ERROR]         mvn:io.swagger.core.v3/swagger-annotations/2.2.15
[ERROR]         mvn:io.swagger.core.v3/swagger-core/2.2.15
[ERROR]         mvn:io.swagger.core.v3/swagger-integration/2.2.15
[ERROR]         mvn:io.swagger.core.v3/swagger-jaxrs2/2.2.15
[ERROR]         mvn:io.swagger.core.v3/swagger-models/2.2.15
[ERROR]         mvn:jakarta.annotation/jakarta.annotation-api/2.0.0
[ERROR]         mvn:jakarta.inject/jakarta.inject-api/1.0.5
[ERROR]         mvn:jakarta.inject/jakarta.inject-api/2.0.1
[ERROR]         mvn:jakarta.jws/jakarta.jws-api/2.1.0
[ERROR]         mvn:jakarta.servlet/jakarta.servlet-api/4.0.4
[ERROR]         mvn:jakarta.validation/jakarta.validation-api/2.0.2
[ERROR]         mvn:jakarta.websocket/jakarta.websocket-api/1.1.2
[ERROR]         mvn:jakarta.xml.bind/jakarta.xml.bind-api/2.3.3
[ERROR]         mvn:jakarta.xml.ws/jakarta.xml.ws-api/2.3.3
[ERROR]         mvn:javax.annotation/javax.annotation-api/1.3.2
[ERROR]         mvn:javax.measure/unit-api/2.2
[ERROR]         mvn:javax.servlet/javax.servlet-api/3.1.0
[ERROR]         mvn:net.java.dev.jna/jna-platform/5.14.0
[ERROR]         mvn:net.java.dev.jna/jna/5.14.0
[ERROR]         mvn:org.apache.aries.component-dsl/org.apache.aries.component-dsl.component-dsl/1.2.2
[ERROR]         mvn:org.apache.aries.jax.rs/org.apache.aries.jax.rs.whiteboard/2.0.2
[ERROR]         mvn:org.apache.aries.spec/org.apache.aries.javax.jax.rs-api/1.0.4
[ERROR]         mvn:org.apache.aries.spifly/org.apache.aries.spifly.dynamic.bundle/1.3.7
[ERROR]         mvn:org.apache.commons/commons-lang3/3.14.0
[ERROR]         mvn:org.apache.cxf/cxf-core/3.6.2
[ERROR]         mvn:org.apache.cxf/cxf-rt-frontend-jaxrs/3.6.2
[ERROR]         mvn:org.apache.cxf/cxf-rt-rs-client/3.6.2
[ERROR]         mvn:org.apache.cxf/cxf-rt-rs-sse/3.6.2
[ERROR]         mvn:org.apache.cxf/cxf-rt-security/3.6.2
[ERROR]         mvn:org.apache.cxf/cxf-rt-transports-http/3.6.2
[ERROR]         mvn:org.apache.felix/org.apache.felix.cm.json/1.0.6
[ERROR]         mvn:org.apache.felix/org.apache.felix.configadmin.plugin.interpolation/1.2.8
[ERROR]         mvn:org.apache.felix/org.apache.felix.configadmin/1.9.26
[ERROR]         mvn:org.apache.felix/org.apache.felix.configurator/1.0.16
[ERROR]         mvn:org.apache.felix/org.apache.felix.converter/1.0.14
[ERROR]         mvn:org.apache.felix/org.apache.felix.coordinator/1.0.2
[ERROR]         mvn:org.apache.felix/org.apache.felix.fileinstall/3.7.4
[ERROR]         mvn:org.apache.felix/org.apache.felix.inventory/1.1.0
[ERROR]         mvn:org.apache.felix/org.apache.felix.metatype/1.2.4
[ERROR]         mvn:org.apache.felix/org.apache.felix.scr/2.2.6
[ERROR]         mvn:org.apache.felix/org.apache.felix.webconsole.plugins.ds/2.2.0
[ERROR]         mvn:org.apache.felix/org.apache.felix.webconsole.plugins.event/1.1.8
[ERROR]         mvn:org.apache.karaf.config/org.apache.karaf.config.core/4.4.5
[ERROR]         mvn:org.apache.karaf.features/org.apache.karaf.features.core/4.4.5
[ERROR]         mvn:org.apache.karaf.features/org.apache.karaf.features.extension/4.4.5
[ERROR]         mvn:org.apache.karaf.http/org.apache.karaf.http.core/4.4.5
[ERROR]         mvn:org.apache.karaf.jaas/org.apache.karaf.jaas.boot/4.4.5
[ERROR]         mvn:org.apache.karaf.jaas/org.apache.karaf.jaas.command/4.4.5
[ERROR]         mvn:org.apache.karaf.jaas/org.apache.karaf.jaas.config/4.4.5
[ERROR]         mvn:org.apache.karaf.jaas/org.apache.karaf.jaas.modules/4.4.5
[ERROR]         mvn:org.apache.karaf.kar/org.apache.karaf.kar.core/4.4.5
[ERROR]         mvn:org.apache.karaf.log/org.apache.karaf.log.core/4.4.5
[ERROR]         mvn:org.apache.karaf.scr/org.apache.karaf.scr.management/4.4.5
[ERROR]         mvn:org.apache.karaf.scr/org.apache.karaf.scr.state/4.4.5
[ERROR]         mvn:org.apache.karaf.services/org.apache.karaf.services.eventadmin/4.4.5
[ERROR]         mvn:org.apache.karaf.shell/org.apache.karaf.shell.commands/4.4.5
[ERROR]         mvn:org.apache.karaf.shell/org.apache.karaf.shell.core/4.4.5
[ERROR]         mvn:org.apache.karaf.shell/org.apache.karaf.shell.groovy/4.4.5
[ERROR]         mvn:org.apache.karaf.webconsole/org.apache.karaf.webconsole.http/4.4.5
[ERROR]         mvn:org.apache.karaf.wrapper/org.apache.karaf.wrapper.core/4.4.5
[ERROR]         mvn:org.apache.karaf/org.apache.karaf.event/4.4.5
[ERROR]         mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.saaj-impl/1.4.0_2
[ERROR]         mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.activation-api-1.2.1/1.2.1_3
[ERROR]         mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxb-api-2.2/2.9.0
[ERROR]         mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.saaj-api-1.4/1.4_2
[ERROR]         mvn:org.apache.sling/org.apache.sling.commons.johnzon/1.2.16
[ERROR]         mvn:org.apache.ws.xmlschema/xmlschema-core/2.3.1
[ERROR]         mvn:org.apiguardian/apiguardian-api/1.1.2
[ERROR]         mvn:org.bitbucket.b_c/jose4j/0.9.5
[ERROR]         mvn:org.codehaus.woodstox/stax2-api/4.2.2
[ERROR]         mvn:org.eclipse.emf/org.eclipse.emf.common/2.24.0
[ERROR]         mvn:org.eclipse.emf/org.eclipse.emf.ecore.change/2.14.0
[ERROR]         mvn:org.eclipse.emf/org.eclipse.emf.ecore.xmi/2.16.0
[ERROR]         mvn:org.eclipse.emf/org.eclipse.emf.ecore/2.26.0
[ERROR]         mvn:org.eclipse.jetty.alpn/alpn-api/1.1.3.v20160715
[ERROR]         mvn:org.eclipse.jetty.http2/http2-client/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.http2/http2-common/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.http2/http2-hpack/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.http2/http2-http-client-transport/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.http2/http2-server/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.websocket/javax-websocket-client-impl/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.websocket/javax-websocket-server-impl/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.websocket/websocket-api/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.websocket/websocket-client/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.websocket/websocket-common/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.websocket/websocket-server/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty.websocket/websocket-servlet/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-alpn-client/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-alpn-java-client/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-alpn-java-server/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-alpn-server/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-client/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-continuation/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-http/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-io/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-jaas/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-jmx/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-openid/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-proxy/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-rewrite/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-security/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-server/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-servlet/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-servlets/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-util-ajax/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-util/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.jetty/jetty-xml/9.4.53.v20231009
[ERROR]         mvn:org.eclipse.lsp4j/org.eclipse.lsp4j.jsonrpc/0.23.1
[ERROR]         mvn:org.eclipse.lsp4j/org.eclipse.lsp4j/0.23.1
[ERROR]         mvn:org.eclipse.orbit.bundles/com.google.gson/2.10.1.v20230109-0753
[ERROR]         mvn:org.eclipse.orbit.bundles/org.antlr.runtime/3.2.0.v201101311130
[ERROR]         mvn:org.eclipse.orbit.bundles/org.aopalliance/1.0.0.v201105210816
[ERROR]         mvn:org.eclipse.platform/org.eclipse.equinox.common/3.18.0
[ERROR]         mvn:org.eclipse.platform/org.eclipse.equinox.registry/3.9.0
[ERROR]         mvn:org.eclipse.platform/org.eclipse.equinox.supplement/1.9.0
[ERROR]         mvn:org.eclipse.platform/org.eclipse.osgi/3.18.0
[ERROR]         mvn:org.eclipse.xtend/org.eclipse.xtend.lib.macro/2.35.0
[ERROR]         mvn:org.eclipse.xtend/org.eclipse.xtend.lib/2.35.0
[ERROR]         mvn:org.eclipse.xtext/org.eclipse.xtext.common.types/2.35.0
[ERROR]         mvn:org.eclipse.xtext/org.eclipse.xtext.ide/2.35.0
[ERROR]         mvn:org.eclipse.xtext/org.eclipse.xtext.smap/2.35.0
[ERROR]         mvn:org.eclipse.xtext/org.eclipse.xtext.util/2.35.0
[ERROR]         mvn:org.eclipse.xtext/org.eclipse.xtext.xbase.ide/2.35.0
[ERROR]         mvn:org.eclipse.xtext/org.eclipse.xtext.xbase.lib/2.35.0
[ERROR]         mvn:org.eclipse.xtext/org.eclipse.xtext.xbase/2.35.0
[ERROR]         mvn:org.eclipse.xtext/org.eclipse.xtext/2.35.0
[ERROR]         mvn:org.fusesource.jansi/jansi/2.4.1
[ERROR]         mvn:org.glassfish.hk2/osgi-resource-locator/1.0.3
[ERROR]         mvn:org.javassist/javassist/3.29.2-GA
[ERROR]         mvn:org.jline/jline/3.21.0
[ERROR]         mvn:org.jmdns/jmdns/3.5.9
[ERROR]         mvn:org.jvnet.staxex/stax-ex/1.7.4
[ERROR]         mvn:org.openhab.addons.bundles/org.openhab.binding.jellyfin/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.addon.marketplace.karaf/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.addon.marketplace/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.addon/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.audio/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.auth.jaas/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.auth.oauth2client/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.automation.module.media/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.automation.module.script.rulesupport/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.automation.module.script/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.automation.rest/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.automation/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.config.core/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.config.discovery.addon.process/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.config.discovery.addon/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.config.discovery.mdns/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.config.discovery/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.config.dispatch/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.ephemeris/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.id/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.console.karaf/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.console/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.http.auth/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.http/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.jetty.certificate/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.monitor/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.net/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest.audio/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest.auth/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest.core/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest.mdns/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest.sitemap/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest.sse/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest.swagger/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest.transform/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest.ui/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest.voice/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.rest/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.transport.mdns/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.io.websocket/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.karaf/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.core/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.item.ide/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.item.runtime/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.item/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.lsp/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.persistence.ide/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.persistence.runtime/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.persistence/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.rule.ide/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.rule.runtime/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.rule/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.script.ide/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.script.runtime/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.script/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.sitemap.ide/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.sitemap.runtime/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.sitemap/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.thing.ide/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.thing.runtime/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.thing/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.model.yaml/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.persistence/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.semantics/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.storage.json/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.thing/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.transform/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.ui.icon/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.ui/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core.voice/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.core.bundles/org.openhab.core/4.2.0-SNAPSHOT
[ERROR]         mvn:org.openhab.osgiify/io.methvin.directory-watcher/0.18.0
[ERROR]         mvn:org.openhab.osgiify/si.uom.si-units/2.1
[ERROR]         mvn:org.openhab/base-fixes/1.0.0
[ERROR]         mvn:org.ops4j.pax.logging/pax-logging-api/2.2.6
[ERROR]         mvn:org.ops4j.pax.logging/pax-logging-log4j2/2.2.6
[ERROR]         mvn:org.ops4j.pax.url/pax-url-aether/2.6.14
[ERROR]         mvn:org.ops4j.pax.web/pax-web-api/8.0.24
[ERROR]         mvn:org.ops4j.pax.web/pax-web-compatibility-servlet31/8.0.24
[ERROR]         mvn:org.ops4j.pax.web/pax-web-extender-whiteboard/8.0.24
[ERROR]         mvn:org.ops4j.pax.web/pax-web-jetty/8.0.24
[ERROR]         mvn:org.ops4j.pax.web/pax-web-runtime/8.0.24
[ERROR]         mvn:org.ops4j.pax.web/pax-web-spi/8.0.24
[ERROR]         mvn:org.ops4j.pax.web/pax-web-tomcat-common/8.0.24
[ERROR]         mvn:org.ops4j.pax.web/pax-web-websocket/8.0.24
[ERROR]         mvn:org.osgi/org.osgi.service.component.annotations/1.5.1
[ERROR]         mvn:org.osgi/org.osgi.service.component/1.5.1
[ERROR]         mvn:org.osgi/org.osgi.service.jaxrs/1.0.1
[ERROR]         mvn:org.osgi/org.osgi.util.function/1.2.0
[ERROR]         mvn:org.osgi/org.osgi.util.promise/1.3.0
[ERROR]         mvn:org.ow2.asm/asm-analysis/9.6
[ERROR]         mvn:org.ow2.asm/asm-commons/9.6
[ERROR]         mvn:org.ow2.asm/asm-tree/9.6
[ERROR]         mvn:org.ow2.asm/asm-util/9.6
[ERROR]         mvn:org.ow2.asm/asm/9.6
[ERROR]         mvn:org.threeten/threeten-extra/1.8.0
[ERROR]         mvn:org.yaml/snakeyaml/2.2
[ERROR]         mvn:si.uom/si-quantity/2.1
[ERROR]         mvn:tech.units/indriya/2.2
[ERROR]         mvn:tech.uom.lib/uom-lib-common/2.2
[ERROR] }
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

That's not my area of expertise (sometimes I wonder what my area of expertise actually is 😉) - but I assume that should be solvable - but I need to investigate. Maybe you can help, or give a hint - else I'll dig in once I've time.

Below the modified `pom.xml':

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.openhab.addons.bundles</groupId>
    <artifactId>org.openhab.addons.reactor.bundles</artifactId>
    <version>4.2.0-SNAPSHOT</version>
  </parent>
  <properties>
    <bnd.importpackage>
      !android.*,!com.android.*,!kotlin.internal.jdk7,!kotlin.internal.jdk8,!kotlin.reflect.*,!okhttp3.*,!okio.*
    </bnd.importpackage>

    <jellyfin.sdk>1.4.7</jellyfin.sdk>

    <ktor.version>1.6.8</ktor.version>
    <kotlin.lib.version>1.6.10</kotlin.lib.version>

  </properties>
  <artifactId>org.openhab.binding.jellyfin</artifactId>

  <name>openHAB Add-ons :: Bundles :: Jellyfin Binding</name>
  <dependencies>

    <dependency>
      <groupId>org.jellyfin.sdk</groupId>
      <artifactId>jellyfin-api-jvm</artifactId>
      <version>${jellyfin.sdk}</version>
    </dependency>
    <dependency>
      <groupId>org.jellyfin.sdk</groupId>
      <artifactId>jellyfin-core-jvm</artifactId>
      <version>${jellyfin.sdk}</version>
    </dependency>
    <dependency>
      <groupId>org.jellyfin.sdk</groupId>
      <artifactId>jellyfin-model-jvm</artifactId>
      <version>${jellyfin.sdk}</version>
    </dependency>

    <!-- compile -->
    <dependency>
      <groupId>io.ktor</groupId>
      <artifactId>ktor-http-jvm</artifactId>
      <version>${ktor.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.ktor</groupId>
      <artifactId>ktor-http-cio-jvm</artifactId>
      <version>${ktor.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.ktor</groupId>
      <artifactId>ktor-network-jvm</artifactId>
      <version>${ktor.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.ktor</groupId>
      <artifactId>ktor-utils-jvm</artifactId>
      <version>${ktor.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.ktor</groupId>
      <artifactId>ktor-io-jvm</artifactId>
      <version>${ktor.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.ktor</groupId>
      <artifactId>ktor-network-tls-jvm</artifactId>
      <version>${ktor.version}</version>
      <scope>compile</scope>
    </dependency>

    <dependency>
      <groupId>org.jetbrains.kotlin</groupId>
      <artifactId>kotlin-stdlib</artifactId>
      <version>${kotlin.lib.version}</version>
      <scope>compile</scope>
    </dependency>

    <dependency>
      <groupId>org.jetbrains.kotlinx</groupId>
      <artifactId>kotlinx-coroutines-core-jvm</artifactId>
      <version>1.6.4</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.jetbrains.kotlinx</groupId>
      <artifactId>kotlinx-serialization-core-jvm</artifactId>
      <version>1.4.1</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.jetbrains.kotlinx</groupId>
      <artifactId>kotlinx-serialization-json-jvm</artifactId>
      <version>1.4.1</version>
      <scope>compile</scope>
    </dependency>

    <dependency>
      <groupId>io.github.microutils</groupId>
      <artifactId>kotlin-logging-jvm</artifactId>
      <version>3.0.4</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>
</project>
GiviMAD commented 4 months ago

Hello @pgfeller, I got same error the important part seems to be:

missing requirement [org.openhab.core.model.item/4.2.0.202406110308] osgi.wiring.bundle; osgi.wiring.bundle=org.eclipse.xtext.common.types; filter:="(osgi.wiring.bundle=org.eclipse.xtext.common.types)"

So not really related to the upgrade.

After pulling last changes from main it seems to have been fixed for me.

pgfeller commented 4 months ago

Thank you for the advice!

I'll assign the issue to me an do some tests and create a PR - hope that's ok for you.

pgfeller commented 4 months ago

@kaikreuzer is it ok to add this to the 4.2 milestone - or is that too late already? Would be nice to have the binding compatible with the latest server with in the 4.2 release.

pgfeller commented 4 months ago

... looks ok on my 4.2 test system:

image

No communication/de-serialization issues anymore. Will test it also on my 4.1.3 and prepare a PR asap for review.

lsiepel commented 4 months ago

@kaikreuzer is it ok to add this to the 4.2 milestone - or is that too late already? Would be nice to have the binding compatible with the latest server with in the 4.2 release.

If you have a well tested PR of good quality this might get into 4.2, only a week left for features to add. If I’m not mistaken.

pgfeller commented 4 months ago

If you have a well tested PR of good quality this might get into 4.2, only a week left for features to add. If I’m not mistaken.

I've created a PR - the change is trivial; but the testing was limited. I used the 4.2.0 - Build 4125 and did some exploratory testing; without finding any issues.

I'll do a backport to 4.1.3 (which I use in production - and is jellyfin is currently broken). But if there are problems, I would expect them with the backwards compatibility with older server versions. As I use 10.9 can not test this. As it is the official SDK claiming the same minimal requirements as 1.4.6 that should be ok tough.