AnemoneLabs / unmessage

Privacy enhanced instant messenger
GNU General Public License v3.0
42 stars 7 forks source link

Solve circular dependencies problems #51

Open felipedau opened 7 years ago

felipedau commented 7 years ago

While adding instance_of validators using attrs I have found an issue to do that when classes keep references to each other, causing a circular dependency problem where modules try to import each other and/or one of the classes in the same file has not been defined yet.

To solve this, try to remove these circular dependencies and if not possible, create interfaces. I believe that most of these were added because callback chains were not used and these references had to be kept. I think #21 will help solving this.