require python 3.6
* HACKING, NEWS, README, doc/org/install.org: Update. * m4/pypath.m4, python/spot/__init__.py: Adjust requirements. * python/spot/ltsmin.i: Don't use capture_output, this is a 3.7 option.
This commit is contained in:
parent
88f8af22c3
commit
df44f7a5c2
7 changed files with 17 additions and 10 deletions
2
HACKING
2
HACKING
|
|
@ -42,7 +42,7 @@ since the generated files they produce are distributed.)
|
||||||
A complete LaTeX distribution, including latexmk and extra fonts
|
A complete LaTeX distribution, including latexmk and extra fonts
|
||||||
like dsfont.sty.
|
like dsfont.sty.
|
||||||
ImageMagick
|
ImageMagick
|
||||||
Python >= 3.5, IPython >= 2.3
|
Python >= 3.6, IPython >= 2.3
|
||||||
Jupyter >= 4, with nbconvert
|
Jupyter >= 4, with nbconvert
|
||||||
GraphViz
|
GraphViz
|
||||||
Java >= 1.7 (needed to run PlantUML while generating the doc)
|
Java >= 1.7 (needed to run PlantUML while generating the doc)
|
||||||
|
|
|
||||||
6
NEWS
6
NEWS
|
|
@ -1,5 +1,11 @@
|
||||||
New in spot 2.11.6.dev (not yet released)
|
New in spot 2.11.6.dev (not yet released)
|
||||||
|
|
||||||
|
Build:
|
||||||
|
|
||||||
|
- When Python bindings are enabled, Spot now requires Python 3.6 or
|
||||||
|
later. Python 3.6 has reached end-of-life in 2021, but is still
|
||||||
|
used on CentOS 7 (which will reach end-of-support later in 2024).
|
||||||
|
|
||||||
Documentation:
|
Documentation:
|
||||||
|
|
||||||
- https://spot.lre.epita.fr/tut25.html is a new example showing
|
- https://spot.lre.epita.fr/tut25.html is a new example showing
|
||||||
|
|
|
||||||
4
README
4
README
|
|
@ -76,7 +76,7 @@ Requirements
|
||||||
Spot requires a C++17-compliant compiler. G++ 7.x or later, as well
|
Spot requires a C++17-compliant compiler. G++ 7.x or later, as well
|
||||||
as Clang++ 5.0 or later should work.
|
as Clang++ 5.0 or later should work.
|
||||||
|
|
||||||
Spot expects a complete installation of Python (version 3.5 or later).
|
Spot expects a complete installation of Python (version 3.6 or later).
|
||||||
Especially, Python's headers files should be installed. If you don't
|
Especially, Python's headers files should be installed. If you don't
|
||||||
have Python installed, and do NOT want to install it, you should run
|
have Python installed, and do NOT want to install it, you should run
|
||||||
configure with the --disable-python option (see below).
|
configure with the --disable-python option (see below).
|
||||||
|
|
@ -133,7 +133,7 @@ flags specific to Spot:
|
||||||
offers a convenient interface when used in an IPython notebook,
|
offers a convenient interface when used in an IPython notebook,
|
||||||
and are also used to build the CGI script that translates LTL
|
and are also used to build the CGI script that translates LTL
|
||||||
formulas on-line. You may safely disable these, especially if you
|
formulas on-line. You may safely disable these, especially if you
|
||||||
do not have a working Python 3.2+ installation or if you are
|
do not have a working Python 3.6+ installation or if you are
|
||||||
attempting some cross-compilation.
|
attempting some cross-compilation.
|
||||||
|
|
||||||
--enable-max-accsets=N
|
--enable-max-accsets=N
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ successful development build]].
|
||||||
Spot requires a C++17-compliant compiler. =g++= 7.0 or later, as well
|
Spot requires a C++17-compliant compiler. =g++= 7.0 or later, as well
|
||||||
as =clang++= 5.0 or later should work.
|
as =clang++= 5.0 or later should work.
|
||||||
|
|
||||||
Spot expects a complete installation of Python (version 3.5 or later).
|
Spot expects a complete installation of Python (version 3.6 or later).
|
||||||
Especially, Python's headers files should be installed (the package to
|
Especially, Python's headers files should be installed (the package to
|
||||||
install has a name like =python-dev= or =libpython3-dev= in most
|
install has a name like =python-dev= or =libpython3-dev= in most
|
||||||
distributions). If you don't have Python installed, and do NOT want
|
distributions). If you don't have Python installed, and do NOT want
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
AC_DEFUN([adl_CHECK_PYTHON],
|
AC_DEFUN([adl_CHECK_PYTHON],
|
||||||
[AM_PATH_PYTHON([3.5])
|
[AM_PATH_PYTHON([3.6])
|
||||||
case $PYTHON in
|
case $PYTHON in
|
||||||
[[\\/$]]* | ?:[[\\/]]* );;
|
[[\\/$]]* | ?:[[\\/]]* );;
|
||||||
*) AC_MSG_ERROR([The PYTHON variable must be set to an absolute filename.]);;
|
*) AC_MSG_ERROR([The PYTHON variable must be set to an absolute filename.]);;
|
||||||
|
|
|
||||||
|
|
@ -19,8 +19,8 @@
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
if sys.hexversion < 0x03030000:
|
if sys.hexversion < 0x03060000:
|
||||||
sys.exit("This module requires Python 3.3 or newer")
|
sys.exit("This module requires Python 3.6 or newer")
|
||||||
|
|
||||||
import subprocess
|
import subprocess
|
||||||
import os
|
import os
|
||||||
|
|
@ -710,7 +710,7 @@ def automata(*sources, timeout=None, ignore_abort=True,
|
||||||
# returned by spot.automata() is destroyed. Otherwise, _supress()
|
# returned by spot.automata() is destroyed. Otherwise, _supress()
|
||||||
# is just a dummy context manager that does nothing (Python 3.7
|
# is just a dummy context manager that does nothing (Python 3.7
|
||||||
# introduces nullcontext() for this purpose, but at the time of
|
# introduces nullcontext() for this purpose, but at the time of
|
||||||
# writing we support Python 3.4).
|
# writing we still have to support Python 3.6).
|
||||||
mgr = proc if proc else _supress()
|
mgr = proc if proc else _supress()
|
||||||
with mgr:
|
with mgr:
|
||||||
while a:
|
while a:
|
||||||
|
|
@ -730,7 +730,7 @@ def automata(*sources, timeout=None, ignore_abort=True,
|
||||||
# an exception.
|
# an exception.
|
||||||
if ret and sys.exc_info()[0] is None:
|
if ret and sys.exc_info()[0] is None:
|
||||||
raise subprocess.CalledProcessError(ret, filename[:-1])
|
raise subprocess.CalledProcessError(ret, filename[:-1])
|
||||||
# deleting o explicitly now prevents Python 3.5 from
|
# deleting o explicitly used to prevent Python 3.5 from
|
||||||
# reporting the following error: "<built-in function
|
# reporting the following error: "<built-in function
|
||||||
# delete_automaton_parser_options> returned a result with
|
# delete_automaton_parser_options> returned a result with
|
||||||
# an error set". It's not clear to me if the bug is in Python
|
# an error set". It's not clear to me if the bug is in Python
|
||||||
|
|
|
||||||
|
|
@ -173,7 +173,8 @@ try:
|
||||||
try:
|
try:
|
||||||
p = subprocess.run(['divine', 'compile',
|
p = subprocess.run(['divine', 'compile',
|
||||||
'--ltsmin', t.name],
|
'--ltsmin', t.name],
|
||||||
capture_output=True,
|
stdout=subprocess.PIPE,
|
||||||
|
stderr=subprocess.PIPE,
|
||||||
universal_newlines=True)
|
universal_newlines=True)
|
||||||
if p.stdout: print(p.stdout)
|
if p.stdout: print(p.stdout)
|
||||||
if p.stderr: print(p.stderr, file=sys.stderr)
|
if p.stderr: print(p.stderr, file=sys.stderr)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue