1. 19 Aug, 2019 1 commit
  2. 01 May, 2018 3 commits
  3. 28 Mar, 2018 1 commit
  4. 25 Mar, 2018 2 commits
  5. 22 Mar, 2018 1 commit
    • Akim Demaille's avatar
      Sms2fr: use xz · c6c0218c
      Akim Demaille authored
      Now that we support compressed efsm, let's compress the efsm
      files of sms2fr.  Not only will this save space, it should also
      help with sites that claim that Vcsn is 98.3% of shell-scripts...
      The results with Xz are impressive: graphemic.efsm is reduced to
      5% of its original size, and syntactic.efsm 12%.
          -rw-r--r--   1 akim  staff  93099091 21 mar 23:46 graphemic.efsm
          -rw-r--r--   1 akim  staff  11713613 21 mar 19:05 graphemic.efsm.bz2
          -rw-r--r--   1 akim  staff   5502716 21 mar 23:22 graphemic.efsm.xz
          -rw-r--r--   1 akim  staff  62289670 21 mar 23:46 syntactic.efsm
          -rw-r--r--   1 akim  staff  13055960 13 mar 19:44 syntactic.efsm.bz2
          -rw-r--r--   1 akim  staff   7916576 21 mar 23:24 syntactic.efsm.xz
      And Vcsn is now 68.8% C++, 20.6% Python and 3.5% shell-script!
      While at it:
      - use int not char for options
      - don't use references to keep the automata
      - don't force the format to efsm: let vcsn guess the format
  6. 02 Feb, 2018 2 commits
  7. 01 Feb, 2018 1 commit
    • Akim Demaille's avatar
      tests: disable a new pylint warning · 0d270b78
      Akim Demaille authored
      It complains about signatures such as
          def _dot_to_svg(dot, engine='dot', *args):
      and wants
          def _dot_to_svg(dot, *args, engine='dot'):
      but they mean something different, and I prefer to stick to my
      * python/pylintrc: here.
  8. 05 Dec, 2017 6 commits
  9. 03 Dec, 2017 1 commit
  10. 25 Jul, 2017 1 commit
    • Akim Demaille's avatar
      doc: SACS: update · aa7e2ff8
      Akim Demaille authored
      * doc/notebooks/SACS-2017.ipynb: Make it more pleasing to read.
      * python/vcsn/automaton.py (states): New.
      * python/vcsn/ipython.py (display): New.
  11. 16 Jul, 2017 1 commit
  12. 21 Jun, 2017 1 commit
  13. 18 Jun, 2017 1 commit
  14. 10 Jun, 2017 1 commit
    • Akim Demaille's avatar
      expression: provide a means to name expressions · 6759c737
      Akim Demaille authored
      This commit is actually pretty old, but was kept aside because, after
      discussing with people such as Alexandre Duret-Lutz, it seemed nicer
      to be able to _recognize_ an expression who has been given a name,
      even if it's not the same instance.  Indeed, the approach of this
      commit is to add `name` node in the AST of the expressions, and
      therefore `(?<foo>a+b)` and `a+b` will not be recognized as the same
      expression named foo.
      However, it is very handy to be able to name an expression, especially
      when using derived_term (or expansion) with non-trivial expressions.
      And in that context, exact equality does have its own value as opposed
      to "accidental" equality with some other subexpression which might be
      So I don't know if we are going to keep this feature.  Hence, no doc.
      It ought to be tested though...
      * vcsn/core/rat/fwd.hh, vcsn/core/rat/expression.hh,
      * vcsn/core/rat/expression.hxx (name): New type of expression node.
      * vcsn/core/rat/expressionset.hh, vcsn/core/rat/expressionset.hxx
      (name): New function.
      * vcsn/core/rat/visitor.hh, vcsn/core/rat/printer.hh,
      * vcsn/core/rat/printer.hxx (name): Support it.
      * vcsn/algos/to-expansion.hh: Handle the named expressions: recover
      the names.
      * vcsn/algos/name.hh, vcsn/dyn/algos.hh (dyn::name): New.
      * lib/vcsn/rat/parse.yy: Use it for `(?<NAME>expression)`.
      * lib/vcsn/rat/scan.ll (`(?<NAME>`): New pattern.
      * python/vcsn_cxx.cc (expression.name): New.
  15. 09 Jun, 2017 1 commit
  16. 07 Jun, 2017 2 commits
  17. 13 Apr, 2017 4 commits
    • Akim Demaille's avatar
      ipynbdoctest: ignore 'transient' entries · fb514b0b
      Akim Demaille authored
      It is unclear what this is made for, but `'transient': {}` entries
      recently appeared in the outputs.
      * tests/bin/ipynbdoctest.py: here.
    • Akim Demaille's avatar
      ipynbdoctest: respect src/build trees · e489b91a
      Akim Demaille authored
      The notebook tests fail in distcheck's installcheck, since we `cd`
      where the notebooks are (i.e., src tree, readonly in distcheck) and
      run them there.  Some try to create files, which of course fails.
      * tests/bin/ipynbdoctest.py: Don't change working directory, but
      adjust paths in the sources before running them.
    • Akim Demaille's avatar
      ipynbdoctest: simplify the handling of sources · 9ae57b4b
      Akim Demaille authored
      * tests/bin/ipynbdoctest.py: Use a variable and reorder in a more
      logical order.
    • Akim Demaille's avatar
      ipynbdoctest: address yet new kinds of failures · d3d6c94f
      Akim Demaille authored
      It appears that the Jessie slaves can now run the notebook tests.  But
      then we have new failures.
      * python/vcsn_tools/demangle.py: Remove the warning about regex.
      It is helpful, but too noisy, as we saw on SageMath.
      * tests/bin/ipynbdoctest.py: Address pandas differences.
  18. 03 Apr, 2017 1 commit
    • Akim Demaille's avatar
      tests: improve notebook checkings · 01dbf326
      Akim Demaille authored
      The handling of the widget changed in the newest versions of IPython.
      Now ipynbdoctest sees some output, but it is not stored in the
      notebook.  To handle this, we have to compare the reference dictionary
      witht the effective dictionary side-by-side, which we did not do
      Take this as an opportunity to clean up various issues.
      * tests/bin/test.py: Expose the counts of tests, passes etc.
      * tests/bin/ipynbdoctest.py: Use them instead of duplicating them.
      (compare_outputs): Rewrite as...
      (check_outputs): this.
      (run_cell): Rename i and n to n and i, as it is more logical.
      Improve the display.
      Remove redundant display (we used to display the cell numbers twice).
      fixup! tests: improve notebook checkings
  19. 20 Mar, 2017 1 commit
  20. 30 Jan, 2017 1 commit
    • Akim Demaille's avatar
      doc: regen · d5d653fe
      Akim Demaille authored
      * doc/notebooks/!Read-me-first.ipynb,
      * doc/notebooks/C++-Library.ipynb: Here.
      * tests/bin/ipynbdoctest.py: Be robust to changes in Pygmentize 2.0.
  21. 23 Jan, 2017 1 commit
  22. 20 Jan, 2017 1 commit
  23. 16 Jan, 2017 1 commit
    • Akim Demaille's avatar
      tests: adjust to newest release of Graphviz · 029ab26f
      Akim Demaille authored
      Taken from Spot:
          commit 32086f7c837b0f14fdad3af055105bff9286a6f3
          Author: Alexandre Duret-Lutz <adl@lrde.epita.fr>
          Date:   Fri Jan 6 16:37:36 2017 +0100
          tests: update ipnbdoctest to graphviz 2.40 and Python 3.6
          This fix recent failures observed on arch linux because
          it uses newer versions of graphviz and Python.
          * tests/python/ipnbdoctest.py (sanitize): More substitutions.
      * tests/bin/ipynbdoctest.py: here.
  24. 14 Jan, 2017 1 commit
    • Akim Demaille's avatar
      tests: improvements for ASAN · 7050c120
      Akim Demaille authored
      Our build with ASAN fails to find the asan library.  Help it.
      * tests/bin/checker (vcsn_env): New.
      * tests/demo/operators.chk, tests/demo/prod-eval.chk,
      * tests/demo/compose.chk: Use it.
      * tests/tools/evaluate.chk: Simplify and make it compatible with install-check.
      * doc/notebooks/Tools.ipynb: Minor improvement.
  25. 10 Jan, 2017 1 commit
  26. 05 Jan, 2017 1 commit
    • Akim Demaille's avatar
      tests: simplify · 471929be
      Akim Demaille authored
      * tests/python/divide.py: here.
      * tests/bin/test.py: Remove extraneous spaces.
  27. 27 Dec, 2016 1 commit
    • Akim Demaille's avatar
      dyn: introduce make_ function to facilitate the parsing from a string · d2887d72
      Akim Demaille authored
      * vcsn/dyn/algos.hh, vcsn/dyn/algos.hxx (make_automaton)
      (make_expression, make_label, make_polynomial, make_weight): New.
      * build-aux/bin/oodyn-gen: Use them.
      * build-aux/bin/tools-gen: Skip these `make_` functions, they are
      useless in tools, use -E, -A, etc. instead.
      While at it, report the function we ignore.
      * build-aux/bin/oodyn-gen, build-aux/bin/tools-gen: Make sure we won't
      stick on stdin, as was the case for a precursor of this commit.