Switch to importing the lib3to2 as a check, which is platform agnostic
and doesn't depend on how 3to2 was installed. Also, take advantage of
the fact that the 3to2 converter recurses by default to avoid spawning
a bunch of subprocesses. Finally, don't depend on the location of the
3to2 script and just use the library directly to do the conversion.
Update and make more consistent the specification of Python package
building. Since SCons can be run by Python 3 now, we cannot assume that
the Python running SCons is Python 2. This changes a bunch of
assumptions in SConstruct about where things should be built or
installed. This commit addresses those assumptions by making the options
for Python 2 and Python 3 symmetric.
If no full or minimal Python interface is being built, copy the minimal
interface into the build directory and use the sys.executable to run it,
so the tests that require CTML or CTI conversion can run.
Minimum set based on a regression in NumPy 1.8.0 which affects the SolutionArray
class.
This makes Trusty Tahr (14.04) the oldest supported version of Ubuntu (using the
Ubuntu-provided NumPy package).
Resolves#445.
The 'install' and 'test' targets had some undeclared dependencies on the 'build'
target, such that running 'scons install' or 'scons test' without having first
run 'scons build' would result in incomplete installation or test failures,
respectively.
Fixes#432.
An import error with NumPy caused the build to fail when it shouldn't.
This fixes that and fixes#414. Also implement a minimum version
warning check with NumPy. The warning message is printed if the NumPy
version that's found is less than the version we test with.
Previously, the warning message would print, but the full package would be built anyways.
This caused errors later in the build process that this check is supposed to handle.
Anything that raises a CanteraError in C++ will now raise CanteraError in
Python, instead of the more generic RuntimeError.
This change increases the required Cython version to 0.23 or newer.