v2.5.0: introducing pest_debugger
#739
tomtau
announced in
Announcements
Replies: 2 comments 1 reply
-
BTW for those first two ideas, I opened these issues, feel free to comment directly on them: |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
What's Changed
pest_debugger
crate (fixes Grammar backtrace #98) by @dragostis and @tomtau in feature: added apest_debugger
crate (fixes #98) #736New Contributors
Full Changelog: v2.4.1...v2.5.0
Accidental breakage of semantic versioning since v2.2.0 in
pest_meta
We found out that, in addition to a breaking change in
pest
that was reverted, there were a few breaking changes inpest_meta
in v2.2.0:pest_meta::validator::validate_undefined
now takes 2 parameters instead of 3,pest_meta::validator::validate_pest_keywords
now takes 1 parameter instead of 2,pest_meta::validator::validate_rust_keywords
now takes 1 parameter instead of 2.Given
pest_meta
is primarily used within pest's own crates1 and no one opened an issue regarding these breaking changes, we decided not to revert the post-2.2.0 releases and keep those functions as they are now in 2.5.02.Having said that, we now have a CI action to check for semantic versioning, so we should be able to avoid accidental breaking changes in the future.
Introducing a new grammar debugger CLI and crate (
pest_debugger
)While pest's focus is on accessibility, developers can sometimes struggle to understand what is going under the hood and why a particular input is parsed in a particular way (or fails to parse). A long time ago, @dragostis implemented a simple CLI debugger that could help in this aspect, but this effort was not finished. This implementation was revived and you are now welcome to use it. You should be able to install it using:
You can then run the interactive debugger by calling
pest_debugger
and view its help by typingh
in its prompt:The commands are self-explanatory; for a quick reference, the basic usage is:
💡 There is a tab completion for file paths and command history.
And then, once the debugger hits a breakpoint, you can continue the execution by typing:
💡 You can also start up the debugger with command-line arguments that will do those steps during initialisation:
Looking for a side project?
If you are using pest in your projects and would like to contribute to its development by organising its issues, reviewing its pull requests etc., please feel free to comment on this post to join the triage team!
In addition to that, here are also a few potential ideas for work that can help anyone who would like to get familiar with pest's implementation:
Does any of these ideas sound interesting to you and would like to work on them? Or do you have other pest-related ideas you are working on or would like to explore? Please don't hesitate to share them in the comments below the announcement!
This discussion was created from the release v2.5.0: introducing `pest_debugger`.
Footnotes
Those three
pest_meta
functions are rather internal and perhaps did not need to be made public early on. ↩If these accidental
pest_meta
breaking changes cause any trouble in your code, please feel free to open an issue though! ↩Beta Was this translation helpful? Give feedback.
All reactions