Update:
It's a bug.
Here's a little code. Works perfectly in Python 2 mode.
In Python 3 I can register it, AELoader.loadedTemplates() confirms that template is loaded, but when I create node and open attribute editor it throws exception:
# Error: line 2: ValueError: file C:\Program Files\Autodesk\Maya2022\Python37\lib\site-packages\shiboken2\files.dir\shibokensupport\__feature__.py line 142: level must be >= 0 #
import maya.api.OpenMaya as om2
import pymel.core as pm
maya_useNewAPI = True
class Template(pm.ui.AETemplate):
_nodeType = "testNode"
def __init__(self, *args):
self.beginScrollLayout()
self.addExtraControls()
self.endScrollLayout()
class Node(om2.MPxNode):
NAME = "testNode"
ID = om2.MTypeId(0x00047374)
@classmethod
def initialize(cls):
pass
def initializePlugin(m_object):
plugin = om2.MFnPlugin(m_object)
plugin.registerNode(Node.NAME, Node.ID, Node, Node.initialize)
def uninitializePlugin(m_object):
plugin = om2.MFnPlugin(m_object)
plugin.deregisterNode(Node.ID)
sss