[IGN-6751]Unable to import scripting function on module with non-system namespace

Hello,

I am building a module and attempting to expose a scripting function to the ignition python environment. This works fine when I embed within system namespace but as soon as I move to my own namespace I understand from the documentation that I must import this namespace. Unfortunately the import fails.

Definition within module java:
image

Then when I attempt to import the namespace / module it fails:

This works just fine if I change 'ignition_module' to 'system' and skip the import.

Any ideas on how I can accomplish this?

Thanks

I tried once and never got it to work. /:

Aw, that's a bit lame. Everything works correctly, it's just that there's a whitelist of things we automatically import, it looks like.

We should probably fix that; if importing a module breaks anything, you can just remove the module.

Are you sure? When I played with it, the non-system module-provided elements simply would not import. (It has been while.) I agree that only select names should auto-import. That doesn't need fixing.

No, you're right. I saw the hints working, and stepping through execution it appears to be doing the right things, but clearly isn't. I have both issues in a ticket.

Any updates on being able to add scripts in our own namespace outside of system?

Still broken as of Sunday on 8.1.48.

No. At this point the earliest it will be picked up is some minor release of 8.3. There's just not a lot of demand for it, and there's some semi-significant risks associated with messing with the things involved.