ID 321962 - nodeCreated() signals for every existing node fired on node copy [ctrl+c]

Follow

Problem summary
nodeCreated() signals on node copy [ctrl+c]

Customer reported version
3.3v1
Customer reported platform
Win 7
Steps to reproduce

1) Open the example project in Mari and navigate to the Python console (Views - Palettes - Python Console)

2) Run the following command:

def testSignal(node): 
print node.name()

geo = mari.current.geo()
graph = geo.nodeGraph()
mari.utils.connect(mari.nodes.nodeCreated,testSignal)


3) Go to your NodeGraph and create a new node, for example a 'Cloud'.
Result: Mari will print out the node name in the Console

4) Create a Quick Channel (via the Channel Palette) and select all nodes belonging to the Quick Channel in the NodeGraph.

5) Copy (CTRL+C) the selected nodes into the NodeGraph
Result: Mari emits a signal of all nodes present in the NodeGraph on copy
 
6) Paste (CTRL+V)
Result: Mari prints the name of ALL of the nodes in the NodeGraph, thus emitting a signal for each node present in the NodeGraph instead of just the new nodes created.
 
7) If you're not seeing this because it floods your console, follow the steps, copy, clear the python console, and then paste

Workaround
N/A

Reproduced by support
Mari 3.3v1 - MAC 10.12.3 - Win 7
Mari 3.2v1 - MAC 10.12.3 - Win 7
Result: Reproduced

Mari 3.1v3 - MAC 10.12.3 - Win 7
Mari 3.1v1 - MAC 10.12.3 - Win 7
Mari 3.0v4 - MAC 10.12.3 - Win 7
Mari 3.0v1 - MAC 10.12.3 - Win 7
Result: Script does not work as expected pre 3.1v3 due to potential API changes but the trigger issue remains the same

Earliest version tested
3.0v1 (NodeGraph did not exist prior to this)

Expected behaviour
Mari to emit a signal for each of the new nodes created when copy/pasting existing nodes in the NodeGraph

Actual behaviour
A signal is emitted for every existing Node in the NodeGraph.

    We're sorry to hear that

    Please tell us why