Hi @nmorti,
your help in developing extensions will always be appreciated.
There are two cases: You want to contribute to an extension which is
- not developed and maintained by KNIME
- developed and maintained by KNIME
In the first case, you can get in touch with the maintainers of the extension in question and ask them how to contribute.
In the second case, let us walk together through this example: You want to contribute to the Python View node and you know how to write a Java node. (*)
For this you need to (A) find its code base, (B) feed the monster of bueraucracy, (C) add your changes, (D) open a Pull Request which contains the code changes and a unit test or email us a test workflow and (E) confirm that the functionality is as you intended it to be.
(A) Find its code base
First, you find the node on the Hub: Python View – KNIME Community Hub
The last part is the name of the node’s factory.
org.knime.python3.scripting.nodes.view.PythonViewNodeFactory
Like in the screenshot, go to KNIME · GitHub and search in this organization for the name of the node’s factory. That should lead you roughly to the code base.
(B) Feed the monster of bureaucrazy
We require a Contributor License Agreement, please follow this manual.
(C) Add your changes
Follow the guides for Java or Python nodes for node development in general. Please also test.
(D) Propose your changes and tests
- Open a Pull Request in the code-base with your changes and unit tests
- Send us the test workflow
(E) Test the functionality in the nightly
When we merge the changes, please verify that your change works as intended.
Does this help regarding the non-technical details?
Best regards
Steffen
(*)
If it is a node written in Python, one can familiarize oneself with the following guide: Create a New Python based KNIME Extension and propose changes accordingly.