Cyclic reference issue

I've found that after running  `full` gc collection (with 2nd generation) <code>Connection</code> objects  not always were freeing. From Python 3 doc:

> Objects that have __del__() methods and are part of a reference cycle cause the entire reference cycle to be uncollectable, including objects not necessarily in the cycle but reachable only from it

So I tried to break cyclic references using weak-ref.I might be wrong but  <code>__del__</code> method should be removed from<code>Connection</code>  class.   
Any another thought about it?