Created 03-27-2023 02:57 AM
Does Apache NiFi 1.19.1 or 1.20.0 Have Kotlin in the Software Stack? And, how can I confirm this?
Thank you
Created 03-27-2023 09:35 AM
@davehkd
Kotlin is a transitive dependency of OkHttp, so any NiFi component that has a dependency on OkHttp will also include the Kotlin stdlib jars as well.
The Kotlin version was upgraded to 1.7.20 in Apache NiFi 1.19.0.
https://issues.apache.org/jira/browse/NIFI-10655
This update impacts the following Kotlin jar:
kotlin-stdlib-common-1.7.20.jar
kotlin-stdlib-jdk8-1.7.20.jar
kotlin-stdlib-jdk7-1.7.20.jar
kotlin-stdlib-1.7.20.jar
When NiFi is launched it unpacks are the NiFi nars into the NiFi work directory:
<work path defined in nifi.properties file>/work/nar/extensions/
You can search those unpacked nar's "bundled-dependencies" for the kotlin jars to see all the nars containing components that utilize OkHttp and thus also have the kotlin transitive dependency.
If you found that the provided solution(s) assisted you with your query, please take a moment to login and click Accept as Solution below each response that helped.
Thank you,
Matt
Created 03-27-2023 04:17 AM
As far as I know, there is no Kotlin in the software stack ... but you should wait for an answer from somebody with more experience.
Nevertheless, in the meantime, you can have a look for yourself, as the code is public: https://github.com/apache/nifi
Created 03-27-2023 09:35 AM
@davehkd
Kotlin is a transitive dependency of OkHttp, so any NiFi component that has a dependency on OkHttp will also include the Kotlin stdlib jars as well.
The Kotlin version was upgraded to 1.7.20 in Apache NiFi 1.19.0.
https://issues.apache.org/jira/browse/NIFI-10655
This update impacts the following Kotlin jar:
kotlin-stdlib-common-1.7.20.jar
kotlin-stdlib-jdk8-1.7.20.jar
kotlin-stdlib-jdk7-1.7.20.jar
kotlin-stdlib-1.7.20.jar
When NiFi is launched it unpacks are the NiFi nars into the NiFi work directory:
<work path defined in nifi.properties file>/work/nar/extensions/
You can search those unpacked nar's "bundled-dependencies" for the kotlin jars to see all the nars containing components that utilize OkHttp and thus also have the kotlin transitive dependency.
If you found that the provided solution(s) assisted you with your query, please take a moment to login and click Accept as Solution below each response that helped.
Thank you,
Matt
Created 03-29-2023 05:41 AM
Thanks so much Matt! Is this answer that you provided also correct in regards to version 1.20?
Thank you again!
Created 03-30-2023 05:52 AM
@davehkd
Changes committed to an early version 1.19 will persist into the next version unless a specific closed jiras exists that makes another changes impacting version. I saw no other newer jiras related to Kotlin version changes at time of this response.
Matt