Binding dependency question

I have a new binding (Doorbird) that depends on a 3rd party crypto library (LazySodium, which is a wrapper around the libsodium native library). My binding uses com.sun.jna.NativeLong directly, and the 3rd party library, LazySodium, uses several classes from com.sun.jna.

I see that openHAB is installing version 5.3.0 of com.java.jna, which is perfectly fine for my binding. However, in the event that openHAB includes a newer version of com.java.jna, is it acceptable for my binding’s pom.xml and feature.xml to specify an open-ended version range?

Like this in feature.xml

    <bundle dependency="true">mvn:net.java.dev.jna/jna/[5.3.0,)</bundle>

And this in pom.xml

      <version>[5.3.0,)</version>

The feature defines the version that is actually installed, so we need a single version there.

The pom-version is automatically translated to a version range during manifest-generation there is no need to add a version range. In general it is [5.3.0,5.4.0). Since APIs are not expected to stay the same for different minor-versions this is in most cases the proper choice.