Releases: kaby76/Trash
0.23.5
Minor release, which adds features for tracking ambiguity within a grammar.
- Added the command-line option
--ambig
to trparse to output parse trees of ambiguity. Each tree is printed with a unique file name that is composed from the original file name plus the decision number. - Added file name to output of trtree when there are multiple parsing result sets.
- Added Antlr4 parse tree output to trtree.
- Added indented parenthesis-less output to trtree.
- Refactored some of the underlying code for parse tree output.
- Updated the CSharp templates in target for collecting information on parse tree ambiguity.
- Updated the dependencies for the trgenvsc-generated extension.
0.23.4
Minor fix and new feature.
- trperf. The value for column "a" (ambiguities) was incorrectly implemented, counting the number of errors.
- trgenvsc. The settings.rc JSON file is now initialized when "install.sh" is run. It is set up with syntactic highlighting categories.
0.23.3
- Removed parse result Text field (now all in parse tree).
- Removed trprint as it is no longer needed.
- Added match-required to trquery so require matching for an XPath expression.
- More code clean ups.
- Updates to tritext filters of --filter option for Fortran EBNF scraping.
- Fix trgen ignore files.
- Re-add trsort.
- Add trclonerename tool for grammar optimization.
0.23.1
- Added tritext from the grave.
- Added option
-m
to tritext for markup of fonts. This was done specifically for scraping the EBNF from the WG5 Fortran specs. - Add heat map to trperf. This option creates a "cover.html" that produces a color-coded HTML file of the input file used in testing. In addition, when moving the mouse over a token, a pop-up will contain all call stacks for LT() for the token. This information can be useful in determining how to optimize your grammar.
- Rewrite grammar analysis in trgen.
0.23.0
Release 0.23.0 changes the way certain CRUD are made.
The main engine used in Trash, currently Eclipse XPath ported to C#, only implements XPath2. It does not contain XQuery, and there are many features in XPath3 that would be valuable. Although the Eclipse XPath code port in C# is being updated, the original code forked from Eclipse is no longer being maintained. Therefore, the XPath engine needs to be replaced. This release moves in this direction.
trquery
, which implements a very basic XQuery CRUD, replaces the basic CRUD applications trinsert
, trdelete
, trmove
, etc. Some of the "higher-level" applications, which deal with Antlr4 grammars, are implemented as XQuery scripts in g4-scripts.
Prior to this release, one of the more important features missing is how to "grep" for off-channel tokens. While "whitespace" is integrated in the parse tree (unlike Antlr itself, which does not place any off-channel content in the parse tree), the XPath syntax to access this content was terrible. This release fixes this by adding attribute nodes for off-channel token types, e.g., @WS
. It is now possible to move comments, whitespace, etc., around the parse tree.
Changes
- Update the antlr4 grammar so that it is consistent with grammars-v4: removed labeledLexerElement; reformatted grammar.
- Remove xalan port.
- Fix various templates for trgen.
- Fix Typescript templates compilation issue.
- Update Antlr4ng template with new requirements.
- Add column data specification to trperf. Add file name input to output. Add option to display column header names (default is to not display).
- Add in updates for XPath expressions involving attributes. The problem is that there was no way to address off-channel content in XPath expressions. The solution fixes this using attributes.
- Fix trfoldlit.
- Update testing and re-add the workflow tests.
- Update build and install scripts for Trash for Ubuntu.
- Replace basic CRUD commands with trquery commands. It's unnecessary to have applications that implement CRUD when when we have trquery, which implements CRUD.
- Removed trdelabel and trstrip from Trash, and add scripts in g4-scripts.
- Removed trdelete and trdeltree. These are now implemented using trquery
delete
. - Implement trquery
move
.
- Update readme.
- Fixed https://github.com/kaby76/Domemtech.Trash/pull/437