Releases: dev-cafe/parselglossy
Fix bug in `pyparsing` import
What's Changed
- Fixed a bug in the generated parser where
pyparsing
could not be found. #117
Full Changelog: v0.8.0...v0.8.1
Update to use pyparsing >=3.0
What's Changed
- Compatibility with
pyparsing
>=3.0 by @robertodr in #109 - Update
package.yml
by @robertodr in #111 - Change documentation theme by @robertodr in #112, #114, #115
- Add a
flake.nix
with development shell defined by @robertodr in #116
Full Changelog: v0.7.0...v0.8.0
Minor fixes and usability improvements
This minor release improves the code generated: docstring
-s are pruned from the template, such that the generated stencil
function in the API takes up a lesser number of lines.
Additionally, the generated validate
API function learnt to recognize a Python dict
directly as intermediate representation.
Fix exposing internal dependencies in generated parser
We fixed a leaky dependency in the generator: the networkx
Python module would be imported, unnecessarily, also in the generated parser Python module.
Improve usage of parselglossy
parselglossy
can now be used to generate a Python module for input parsing that only depends on a standard Python installation.
This is a huge improvement in user experience: parselglossy
is a developer-only dependency and it will not anymore ripple down to users.
See PR #84.
The CLI received a corresponding breaking change: only the generate
subcommand has been left. See PR #97
In addition:
parselglossy
learnt to analyze dependencies between default actions of different keywords. Cyclic dependencies are disallowed and will result in an error (see PR #96) Non-cyclic dependencies are reordered (see PR #99) so that no type errors can arise (see Issue #76)- Repeated keywords are identified and flagged as an error (see PR #89)
- We dropped support for Python 3.5
- We switched to Flit to manage packaging.
Improve grammars and validation
This release features:
- Robustness and speed improvements in the available grammars.
- Refactor of the validation process to output informative errors.
- First version of the application programming interface (API).
- First version of the command-line interface (CLI) using the Click library.
- Autogeneration of documentation in reStructuredText (
.rst
) format.