In this pull request I fixed retain cycle between GroupRenderer and NodeRenderer:
parentRenderer should not be strong, because GroupRenderer also strongly referencing to his child renderers.
I saw that you are trying to broke the retain cycle in dispose() method inside deinit, but deinit won't be called while this retain cycle exists and I didn't see any other place where dispose() method could be called from outside.
Updates
In this pull request I fixed retain cycle between
GroupRenderer
andNodeRenderer
:parentRenderer
should not be strong, becauseGroupRenderer
also strongly referencing to his child renderers.I saw that you are trying to broke the retain cycle in
dispose()
method insidedeinit
, butdeinit
won't be called while this retain cycle exists and I didn't see any other place wheredispose()
method could be called from outside.