Skip to content

Python 3 Support

Pre-release
Pre-release
Compare
Choose a tag to compare
@PetePupalaikis PetePupalaikis released this 09 Nov 19:32
· 771 commits to master since this release

This is the fourth minor release of SignalIntegrity, but it has some really major changes in that it will now run on both Python 2.7.x distributions and Python 3.6.x distributions (and assumedly higher).

For now and probably for a long time, support will be maintained for working on both Python 2 and 3.

The intensive 1000 unittests pass on both Python 2 and 3, although Python 3 spews future deprecation warnings. All of the manageable ones have been fixed, but one warning remains (although repeats over and over during coverage testing) about the matrix class. This warning is flat out wrong, and I can't seem to figure out how to suppress this. The tests all pass, however.

The preferences file is now streamlined and some new preferences added, namely the ability to utilize the plot cursors in matplotlib, which turn out to be somewhat problematic sometimes. This release will clear your old preferences - sorry about that - they will be set to the default. This will not happen in future releases.

In converting to Python 3, a few bugs were found and fixed. Of interest is schematic part rotation. They now always rotate about the center. This fix might break some existing schematics containing rotated amplifiers - although all of the examples have been fixed.

More test coverage was added. All part pictures are covered along with the spline class (which also involved some bug fixing).

See Installation for installation instructions.