Dear Community Developers
In our next feature release of KNIME Analytics Platform (4.7.0) we will be updating the underlying version of Eclipse. The release is planned for winter 2022 (early December) - no date confirmed yet.
This upgrade might require changes to 3rd party node extensions like community, partner or custom in-house extensions, especially if libraries such as Jetty, Apache POI, or Apache Batik are used. In most cases, only an update of the version ranges in the dependency declaration is needed. What weād like you to do is testing the nightly build with your own custom node extension.
You can download the nightly build here or point your Eclipse IDE to an updated āTarget Platformā by switching to the master branch in the knime-sdk-setup repository. (Details are described here).
Troubleshooting
This update should be relatively easy, please take note of the following troubleshooting tips, to ensure a smooth update.
Apple Silicon Support
With 4.7.0 we are shipping a version of AP natively built for Apple Silicon (aarch64). This might require some adjustments, to get your extensions working on this build.
- Make sure to adapt the platform filters in
feature.xml
andMANIFEST.MF
files to ensure that your extension can be installed in this build, (e.g. remove x86_64 architecture restrictions on Java based extensions) - If your extension makes use of natively compiled binaries, you will need to include a version compiled for the aarch64 architecture.
Updated / renamed libraries
Some libraries have been renamed, removed or replaced, take note of the following important examples:
- We now ship Jetty only in version 10.0.9 (used for any temporary ālocalhostā web-servers, e.g. for OAuth authentication)
- We now ship Apache POI (used for Excel file processing) only in version 4.1.1
-
org.apache.servicemix.bundles.poi
have been removed - Instead depend on the bundles
org.apache.poi
,org.apache.poi.ooxml
andorg.apache.poi.ooxml.schemas
-
- Apache Batik (used for SVG image generation) for has been updated to version 1.14
- Eclipse Birt (KNIMEās reporting extension) has been updated to the proper 4.9.0 release
- Some bundles have been renamed (e.g.
bcprov
toorg.bouncycastle.bcprov
) - The eclipse pug-in
org.eclipse.help.ui
is no longer available, as it is not required anymore. Just delete references to it from yourfeature.xml
or other build files if you encounter error messages complaining about it missing.
Please reach out to me if you are missing any dependencies or are having trouble updating.
Important: Remove org.w3c.dom.events package imports!
You need to remove all imports of the org.w3c.dom.events
package in version 3 in from your extensions MANIFEST.MF. Otherwise, installing your extension will break KNIME AP installations, as they will no longer start!
The org.w3c.dom.events
import was previously required to get extensions to work that had dependencies on apache poi, knime-svg or batik, so if your extensions have one of these dependencies, make sure to check for and remove this package import!
How to debug AP startup issues
When you have dependency resolution issues, the startup of the AP becomes very slow, so you need to fix these. By enabling osgi resolver debugging, you can see these errors as they appear during startup in the terminal / eclipse console.
- Modify the
knime.ini
(standalone AP) or your debug launch configuration (starting from Eclipse) and add this line to the vm arguments. Either at the end of theknime.ini
file (somewhere below-vmargs
) or in the arguments tab of the launch configuration. -Dosgi.debug=/path/to/debug.options
- ā¦ whereby the
debug.options
file contains these lines
org.eclipse.osgi/resolver=true
org.eclipse.osgi/resolver/roots=true
org.eclipse.osgi/resolver/report=true
If you have any further questions, problems etc, please post them in this thread so I can help you with them.
Best regards,
Gabriel