Skip to content

Latest commit

 

History

History
126 lines (99 loc) · 5 KB

HISTORY.rst

File metadata and controls

126 lines (99 loc) · 5 KB

History

0.8.1_ (2022-07-21)

  • Locate hard-copy of pyparsing inside plumbing folder. #117
  • Only import system-installed pyparsing if it is >=3.0

0.8.0 (2022-07-21)

  • Upgrade to using pyparsing>=3.0

0.7.0 (2020-08-31)

  • The validate function in the API of the generated input parser now accepts a Python dict as intermediate representation. This might be useful when wanting to validate input programmatically, i.e. avoiding writing intermediate files on disk.
  • Prune docstring element from template during generation. This reduces the lines of code produced when creating the input parser module.

0.6.0 (2020-08-25)

  • Redistribute template validation functions in check_template.py. This avoids exposing internal dependencies in the generated parser.

0.5.0 (2020-08-15)

  • parselglossy can now reorder noncyclic dependencies between keywords' defaulting actions at validation time. See PR #99.

  • parselglossy can now detect cyclic dependencies between keywords' defaulting actions at validation time. A validation specification like the following:

    - name: some_number
      type: int
      default: "user['another_number']"
      docstring: |
        Some number which defaults to the value of another_number.
    - name: another_number
      type: int
      default: "user['some_number']"
      docstring: |
        Another number which defaults to the value of some_number.

    will be flagged as invalid due to the cyclic dependency between keywords. See PR #96.

  • parselglossy can now generate an input parsing Python module which only depends on a standard Python distribution. See PR #84.

  • Switch to Flit to manage packaging. We recommend a good old virtualenv+pip for dependencies and virtual environment. See PRs #87, #88, #93, #95.

  • BREAKING parselglossy provides only a minimal CLI for generating an input parser. The full-fledged parsing functionality is, for the moment, retained in the API. See PR #97.

  • Input parsers generated with parselglossy will now raise an exception when keywords have been repeated in an input file. See PR #89.

  • Dropped support for Python 3.5

0.3.0 (2019-03-31)

  • Fix Travis automatic deployment to PyPI.
  • Fix build of API docs on ReadTheDocs.

0.3.0-alpha2 (2019-03-29)

  • Update CONTRIBUTING.rst.

0.3.0-alpha1 (2019-03-28)

  • Dropped support for Python 3.4.
  • Renamed the section and keyword fields in the template to name.
  • Renamed the documentation field in the template to docstring.
  • Arbitrary callables of the input dictionary are now allowed in the default field. Fix #31.
  • Complex numbers have the proper type after reading in. Fix #26.
  • Better error reporting. Exceptions are raised after each validation stage and offer detail error messages that give a comprehensive overview of what went wrong. Fix #24.
  • Fully defaulted sections are now properly taken into account. Fix #33.
  • Nesting of sections under keywords will throw an exception. Fix #34.

0.2.0 (2019-03-11)

  • Implementation of the Getkw input grammar.
  • Implementation of the validation infrastructure.

0.1.0 (2018-12-03)

  • First release on PyPI.