Python Extension with private components.

Hello guys!

Python Extensions looks super cool, but guess there is no elegant way to use it with private COMPs.
As I store extension object inside COMP and after enable privacy for this COMP and restart patch - COMP could not have access to that extension object, as it is inside private COMP.

The only way is to have an extension object outside private COMP - which is not beautiful at all)

Am I correct?

Best.

Hi.
Unfortunately you are correct.
We are still evaluating ways of how to open up extensions safely inside private components.

Thanks for your support.
Rob

Ok,
Thank you, Rob.

Best,
Alex

Hey everyone!

I was wondering if there’s any update on that subject?

For now, in order to make my private component work, I have to put it one level deeper. So, instead of

Component (set with privacy) → Extension

I have to do this :

COMP (set with privacy) → Component → Extension

It’s a bit annoying because I have to transfer all the parameters from my Component to the parent COMP and recreate ‘inOP’ and ‘outOP’.

Thanks!
Dage

Anything new on this front? Some way maybe to define an extension via script from the inside?
Have all promoted functions be available from outside, non promoted not? This would also make working with locked components much easier as it offers a sufficient API from the inside to the outside,

This is, to be honest, a big bummer and makes basicly all my components unlockable.

2 Likes

We’ve been discussing some possible approaches and hope to push it further soon.

3 Likes

Really looking forward!

Anything new here? I would like to lock components with extensions on them, but this limitation is preventing me from doing so.

No unfortunately still in the early planning stages.
These comments help advise the priority though.

Thanks for info. It would be great to have this functionality, but I understand it is hard to implement. Nevertheless it would definitely make creation of private components much more elegant.

The best possible scenario would be ability to have some sort of public / private API for locked components (so that one could interface with this component using some public methods from outside network, while having also private extension hidden inside - taking care of all the “secret stuff”). But I understand this doesn’t play along with the way Python works.

@rob Please may I just ask if there are some updates on this coming in next experimental? Thanks.

Unfortunately nothing in the experimental, as it hasn’t advanced much in this specific problem.

Today I ran into the same problem. A client wants me to protect a toe file but it uses an external tox which also needs privacy enabled, causing the extension to fail initializing.
I will try the workaround of encapsulating it in another layer.
+1 hoping for a solution though :slight_smile:

Applied the workaround. It works fine now as a protected base component. BUT … this component does heavy calculations and needs to run inside of an engine COMP, but the engine COMP gives a yellow warning triangle and does not work, and with it running inside the engine I also can not see what the error is :confused: Kinda dead in the water with this now

Place an Error DAT connected to an Out DAT in the tox you’re loading in the Engine COMP. That way you can see all errors also on the outside.

1 Like

Thank you. Derivative recommended me the exact same thing yesterday :slight_smile:
(And of course the error happening was just me having saved the protected version of the project files in a separate folder and forgetting to include a subfolder it writes to ^^; )