1. 20 Apr, 2015 1 commit
  2. 14 Apr, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: fix non-determinism in the test suite. · 39b92a6d
      Alexandre Duret-Lutz authored
      Some tests calling spot.automaton('non-existing|') where failing either
      with a "process returned 127", or, under heavier load, with "failed to
      read from...".  The latter occur if we poll() the exit status before the
      children has had the tame to finish.
      
      * wrap/python/spot.py: Make sure we wait for the child process if we
      reach EOF, so that we can report the error status.
      * wrap/python/tests/automata-io.ipynb, wrap/python/tests/piperead.ipynb:
      Update.
      39b92a6d
  3. 13 Apr, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: fix error handling while reading automata · ab7ee2c4
      Alexandre Duret-Lutz authored
      * wrap/python/tests/run.in: Make it easier to run python with gdb.
      * wrap/python/tests/automata-io.ipynb: Add test case.
      * wrap/python/spot.py (spot.automata): Make sure p is defined in all
      cases.
      * src/hoaparse/hoascan.ll: Make sure we do not close a file that
      hasn't been opened.
      ab7ee2c4
  4. 02 Apr, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: better bindings for testing automata · 16204e8e
      Alexandre Duret-Lutz authored
      * src/taalgos/dotty.cc, src/taalgos/dotty.hh: Add an interface
      similar to that of tgba/dotty.hh, even if we have to ignore
      most options.
      * src/taalgos/tgba2ta.cc, src/taalgos/tgba2ta.hh: Add an option
      to display the intermediate automaton with explicit stuttering
      transitions, for the purpose of making demonstrations.
      * src/tgba/tgbagraph.hh: Tweak the file so that SWIG can
      read it.
      * wrap/python/spot.py: Add wrappers for testing automata.
      * wrap/python/spot_impl.i: Fix support for
      atomic_prop_collect_as_bdd, and include a few more files.
      * wrap/python/tests/testingaut.ipynb: New file.
      * wrap/python/tests/Makefile.am: Add it.
      16204e8e
  5. 01 Apr, 2015 1 commit
  6. 30 Mar, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: read automata from pipes · 961d005b
      Alexandre Duret-Lutz authored
      * src/hoaparse/hoaparse.yy, src/hoaparse/hoascan.ll,
      src/hoaparse/parsedecl.hh, src/hoaparse/public.hh:
      Add a way to read automata from a file descriptor.
      * wrap/python/spot.py: Add machinery to read from
      pipes.
      * wrap/python/tests/piperead.ipynb: New file.
      * wrap/python/tests/Makefile.am: Add it.
      * wrap/python/tests/run.in: Setup PATH.
      961d005b
  7. 27 Mar, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: add a spot.automata(filename) interface, yielding automata · 25de479e
      Alexandre Duret-Lutz authored
      * src/hoaparse/fmterror.cc, src/hoaparse/public.hh,
      src/hoaparse/hoaparse.yy (hoa_stream_parser::parse_strict): New method
      that raises an exception whenever a syntax error is encountered.
      * src/ltlparse/public.hh (parse_error): Move ...
      * src/misc/common.hh: ... here.
      * wrap/python/spot_impl.i: Wrap the hoa output.
      * wrap/python/spot.py: Implement spot.automata.
      * wrap/python/tests/automata-io.ipynb: New test.
      * wrap/python/tests/Makefile.am: Add it.
      25de479e
  8. 17 Mar, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      dotty: colored acceptance sets · 838bfb2a
      Alexandre Duret-Lutz authored
      This implement several new options for --dot in order to
      allow emptiness sets to be output as colored ⓿ or ❶...
      Also add a SPOT_DOTDEFAULT environment variable.
      
      * NEWS, src/bin/man/spot-x.x, src/bin/common_aoutput.cc,
      src/bin/dstar2tgba.cc: Document the new options.
      * doc/org/.dir-locals.el, doc/org/init.el.in: Setup
      SPOT_DOTEXTRA and SPOT_DOTDEFAULT for all documents.
      * doc/org/autfilt.org, doc/org/dstar2tgba.org, doc/org/ltl2tgba.org,
      doc/org/ltldo.org, doc/org/oaut.org, doc/org/randaut.org,
      doc/org/satmin.org: Adjust to this new setup.
      * src/misc/escape.cc, src/misc/escape.hh (escape_html): New function.
      * src/tgba/acc.cc, src/tgba/acc.hh (to_text, to_html): New method.
      * src/tgbaalgos/dotty.cc: Implement the new options.
      * src/tgbatest/readsave.test, wrap/python/tests/automata.ipynb: More
      tests.
      * wrap/python/spot.py: Make sure the default argument for
      dotty_reachable is None, so that SPOT_DOTDEFAULT is honored.
      838bfb2a
  9. 16 Mar, 2015 1 commit
  10. 15 Mar, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: some bindings for translating formulas and diplaying automata · 3c38780d
      Alexandre Duret-Lutz authored
      * wrap/python/spot.py: Introduce spot.translate (and
      spot.formula.translate) as well, as a wrapper around the
      spot.translator class.  Also implement spot.tgba.show()
      to allow passing argument to dotty_reachable() before
      the result is converted to SVG.
      * wrap/python/tests/automata.ipynb: New test file.
      * wrap/python/tests/Makefile.am: Add it.
      3c38780d
  11. 11 Mar, 2015 1 commit
    • Alexandre Duret-Lutz's avatar
      python: improve handling of formulas · 2362b9ab
      Alexandre Duret-Lutz authored
      * src/misc/escape.hh, src/misc/escape.cc (escape_latex): New function.
      * src/ltlvisit/tostring.cc: Escape atomic proposition in LaTeX output.
      * wrap/python/spot.py: Make it easy to output formulas in different
      syntaxes.  Also allow the AST to be shown.
      * wrap/python/spot_impl.i: Catch std::runtime_error.
      * wrap/python/tests/formulas.ipynb: New file.
      * wrap/python/tests/Makefile.am: Add it.
      2362b9ab
  12. 08 Mar, 2015 1 commit
    • Thibaud Michaud's avatar
      Adding python functions to mirror the functionalities found in src/bin · 3bf3d2c8
      Thibaud Michaud authored
      * wrap/python/spot.i: Rename to...
      * wrap/python/spot_impl.i: ...this, and import spot_impl from spot.py so
      that it is not needed to recompile everything when modifying python
      code.
      * wrap/python/spot.py: Adding python functions to mirror the
      functionalities found in src/bin.
      * src/bin/common_r.cc: Move simplification level...
      * src/ltlvisit/simplify.hh: ... here as a constructor of
      ltl_simplifier_options, to make it available in wrap/python.
      * src/bin/ltlfilt.cc: Set simplification level using the new
      ltl_simplifier_options constructor.
      * src/bin/randltl.cc: Move most of the code...
      * src/ltlvisit/randomltl.cc, src/ltlvisit/randomltl.hh: ... here, as a
      class named randltlgenerator.
      * wrap/python/tests/bddnqueen.py, wrap/python/tests/minato.py: Avoid
      calling bdd_init twice by moving 'import spot' after bdd initialization.
      * wrap/python/Makefile.am: Rename spot to spot_impl
      * wrap/python/tests/Makefile.am: Add ipnbdoctest.py.
      * wrap/python/.gitignore: Rename spot.py to spot_impl.py
      * src/ltlvisit/tostring.cc: \ttrue and \ffalse should be \top and \bot.
      * wrap/python/tests/ipnbdoctest.py: Run code cells of a python notebook
      and compare the output to the actual content of the notebook.
      * wrap/python/tests/randltl.ipynb: Document and test randltl.
      * wrap/python/tests/run.in: Call ipnbdoctest.py to run ipython
      notebooks.
      3bf3d2c8