You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
polytope is a dependency of tulip. Therefore, it cannot itself depend on tulip, because this results in a cyclic dependency (hence the labeling as "bug").
The usage is very limited: tulip.graphics.newax and tulip.graphics.dom2vec, both of which are small or eliminable.
The module tulip.graphics originates from my porting to Python part of plotting utilities that I had developed in Matlab. In Python, either some things are not needed at all, or there is a much better and simpler way to do them, or someone - like matplotlib and friends - has already written what is needed. Also, tulip.graphics derives from code that was handling seamless plotting in 2 or 3 dimensions, which in practice is not used in tulip or polytope (and I don't think it would be very practical to plot 3D partitions).
The text was updated successfully, but these errors were encountered:
A second flaw in the design (by me) is that polytope.polytope.Polytope.plotreturns silently (!) if tulip.graphics.newax fails to import. It should raise ImportError, because requesting a plot and not getting one is an error, and "Errors should never pass silently. Unless explicitly silenced." (PEP 20).
polytope.polytope
andpolytope.plot
both depend ontulip.graphics
for plotting (remnants from a time whenpolytope
was a subpackage oftulip
). For example:polytope/polytope/polytope.py
Line 397 in 3a721bc
polytope/polytope/plot.py
Line 81 in 4b3d1c3
polytope
is a dependency oftulip
. Therefore, it cannot itself depend ontulip
, because this results in a cyclic dependency (hence the labeling as "bug").The usage is very limited:
tulip.graphics.newax
andtulip.graphics.dom2vec
, both of which are small or eliminable.The module
tulip.graphics
originates from my porting to Python part of plotting utilities that I had developed in Matlab. In Python, either some things are not needed at all, or there is a much better and simpler way to do them, or someone - likematplotlib
and friends - has already written what is needed. Also,tulip.graphics
derives from code that was handling seamless plotting in 2 or 3 dimensions, which in practice is not used intulip
orpolytope
(and I don't think it would be very practical to plot 3D partitions).The text was updated successfully, but these errors were encountered: