Unable to install some extensions under Apple Silicon M1

When trying to install or being prompted to install an extension under KNIME 5.2 on Apple Silicon I get the same problem like there has been with several extensions (also this) over the month that they would not be installed - neither prompted nor manually.

I know this problem is not easy to pin down and I am not sure it can savely be reproduced on other (M1) machines.

Bildschirmaufnahme 2023-12-06 um 19.09.45

This a an excerpt from the log file (“not registered via extension point”):

Caused by: org.knime.core.node.InvalidSettingsException: Unknown factory class "org.knime.ext.textprocessing.dl4j.nodes.embeddings.extract.VocabularyExtractorNodeFactory2" -- not registered via extension point
	at org.knime.core.node.workflow.FileNativeNodeContainerPersistor.loadNodeFactory(FileNativeNodeContainerPersistor.java:339)

20231206_knime.log (2.8 MB)

This is the workflow used:

1 Like

Hi @mlauber71,

it seems that extension does not offer a native M1 (“arm64”) plugin that can be installed (I can reproduce it on my Mac, too).

I’m not sure why it does not stop you from installing it with a helpful error message.
For example, if I try to install the Tableau extension, it shows me this error message (which is a bit cryptic, but at least there…):

Cannot complete the install because some dependencies are not satisfiable
  org.eclipse.equinox.p2.iu; org.knime.features.ext.tableau.hyperapi.feature.group [5.2.0.v202311100943,5.2.0.v202311100943] cannot be installed in this environment because its filter is not applicable.

The filter it mentions is filtering in this case for arch = x86_64, which would be arch = arm64 on the M1 Macs, so it does not apply. I would have expected something similar to be there for the Deeplearning4j extension, but it seems to be missing.

In any case, even if you would succeed to install the Deeplearning4j extension on M1, it will not work because there is no corresponding plugin installed (that would bring any needed native arm64 libraries/binaries).

As a workaround, if you absolutely need/want to use Deeplearning4j, you would need to switch to the AP Intel build, where the extension can be installed (and everything runs under Rosetta2).

Best,
Manuel

3 Likes

@hotzm this does make sense. I might try to install the intel version. Question is if there could be a hint or warning to that effect. Thank you.

We’ll add the architecture filter to the extension as well, so it cannot be installed on M1 (and enter this weird state where you can click Next but nothing happens).

Then it will also disappear if you (in the “Install Extensions” dialog) check the checkbox for “Show only software applicable to target environment”.

1 Like