Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request]: Native CPython Integration in Apache Hop (No Extension Required) #4958

Open
alexdesousapereira opened this issue Feb 27, 2025 · 2 comments

Comments

@alexdesousapereira
Copy link

What would you like to happen?

I would like to explore the possibility of natively integrating CPython into Apache Hop so that users don’t need to install an additional extension. Python is widely used for data transformation, automation, and scripting, and having CPython built into Hop by default could greatly enhance its flexibility.

Issue Priority

Priority: 3

Issue Component

Component: Transforms

@hansva
Copy link
Contributor

hansva commented Feb 28, 2025

We have permission from the original author to include this code in the main code base.
And I agree it would be fun to include it in the project. The main reason it's still a separate plugin is that none of the core developers have enough knowledge and time to support and maintain this code.
Adding new code to the project is the "easy" part; maintaining the code and providing support, tests, and documentation is hard.

If someone is willing to do the work, we will help in any way possible.

@AlefRP
Copy link
Contributor

AlefRP commented Feb 28, 2025

I recently submitted a pull request (m-a-hall/hop-cpython#15) with a few fixes to make the project compatible with hop 2.12.0. The changes include updating the hop snapshot version in the pom.xml, adding an id in the assembly.xml, and modifying a method in CPythonScriptExecutorData.java to resolve an error.

I’d like to emphasize that these were only minor adjustments. Maintaining the project on a deeper level – such as performance improvements, security enhancements, or implementing new features – would require a more advanced knowledge of Java. Since my core expertise is in Python and I have limited spare time, I could only contribute these small fixes. The fix worked, but the maintainer has not merged it into the main branch yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants