Invalid version

Hi all,

I am trying to build my nodes. I already did it a few months ago. But now the pipeline is quite the same but I got an exception

2023-02-15 10:42:53,393 : ERROR : ModalContext : : Node : Off-target : 4:18 : Configure failed (Py4JException): An exception was raised by the Python Proxy. Return Message: Traceback (most recent call last):
File β€œ/home/sergeyadmin/distr/knime_4.6.1/plugins/at.ac.univie.pharminfo.offtarget.channel.bin.linux.x86_64_0.1.0.202302150919/env/lib/python3.9/site-packages/py4j/clientserver.py”, line 617, in _call_proxy
return_value = getattr(self.pool[obj_id], method)(*params)
File β€œ/home/sergeyadmin/distr/knime_4.6.1/plugins/org.knime.python3.nodes_4.6.2.v202209150850/src/main/python/knime_node_backend.py”, line 314, in setParameters
version = parse(version)
File β€œ/home/sergeyadmin/distr/knime_4.6.1/plugins/at.ac.univie.pharminfo.offtarget.channel.bin.linux.x86_64_0.1.0.202302150919/env/lib/python3.9/site-packages/packaging/version.py”, line 52, in parse
return Version(version)
File β€œ/home/sergeyadmin/distr/knime_4.6.1/plugins/at.ac.univie.pharminfo.offtarget.channel.bin.linux.x86_64_0.1.0.202302150919/env/lib/python3.9/site-packages/packaging/version.py”, line 197, in init
raise InvalidVersion(f"Invalid version: β€˜{version}’")
packaging.version.InvalidVersion: Invalid version: β€˜4.6.3.v202209271016’

What does it mean? Is it an invalid KNIME version, or is something wrong with the build system?

My KNIME is 4.6.1
I use the following line from the last version of the tutorial to build the extension:

build_python_extension.py --knime-version 4.6 src build

My conda environment file is:

name: offtarget_env_internal
channels:

  • knime
  • conda-forge
    dependencies:
  • python=3.9 # base dependency
  • knime-python-base>=4.7 # base dependency
  • knime-extension>=4.7 # base dependency
  • keras
  • packaging
  • h5py
  • tensorflow-cpu
  • py4j
  • pandas
    Maybe it is because knime-extension is 4.7 in the env file?

Hi pirotex,

good question. You’re thought could be right with the 4.7 version. In your environment offtarget_env_internal, could you try downgrading via the following command?
conda install knime-python-base=4.6 knime-extension=4.6 -c knime -c conda-forge
Does that help?
If not, we will dig further :slight_smile:

Best regards
Steffen

1 Like

Hi Steffen,

Looks like it works, after I downgraded to 4.6. Thanks.

Additional question, can I somehow provide two pipelines in one repository for building for the 4.6 version and for the 4.7 version for apple M1/M2?

Hey, glad it worked.
To provide different information for the different pipelines for 4.6 and 4.7, respectively, I suggest maintaining different branches on GitHub. About how it could look like especially with tensorflow and the resulting different yamls for different OS, you can examine this example and its corresponding bundling ymls: Word2VecPyNodeTF/knime.yml at main Β· sim2000dg/Word2VecPyNodeTF Β· GitHub
Have a look at the current 4.7 guide in the following section for the setup in the knime.yml regarding apple silicon (arm-64) builds:
Create a New Python based KNIME Extension

Best regards
Steffen

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.