Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error recovery #2033

Draft
wants to merge 127 commits into
base: main
Choose a base branch
from
Draft

Error recovery #2033

wants to merge 127 commits into from

Conversation

PieterOlivier
Copy link
Contributor

@PieterOlivier PieterOlivier commented Sep 24, 2024

This is a feature-tracking PR, will remain draft while we are working on the error recovery feature. Other smaller PRs will target this branch, and when ready we can merge this one. Where possible we try to do most of the reviewing in the open PRs that target the error-recovery branch, but sometimes stuff is missed there, and then it's better to comment on changes in this global-tracking-PR.

History:

jurgenvinju and others added 30 commits March 30, 2022 16:45
Sometimes recovery nodes start before the current location where
the parser failed to continue. Since the parser works with a
short queue of schedulede TODO's around the current cursor, we
might end up outside of this queue when recovering. This breaks
several unspecified invariants of the SGTBF implementations. For
now I added a detection that a recovery node is to be planned
before the currently retained history and filter that recovery
node. The next step will be to make sure backtracking over the
current location is made possible.
… because the next parser loop iteration always wants to advance one character
…e version of Rascal and (b) the edit command is wired to the edit IDEService
…t in the scheme by copyinhthe contents to a tmp file
Copy link

codecov bot commented Sep 28, 2024

Codecov Report

Attention: Patch coverage is 41.74917% with 1059 lines in your changes missing coverage. Please review.

Project coverage is 49%. Comparing base (fc72dc7) to head (3572860).

Files with missing lines Patch % Lines
...rg/rascalmpl/parser/util/ParseStateVisualizer.java 4% 326 Missing and 1 partial ⚠️
src/org/rascalmpl/parser/gtd/SGTDBF.java 71% 82 Missing and 43 partials ⚠️
src/org/rascalmpl/util/visualize/dot/DotGraph.java 0% 56 Missing ⚠️
src/org/rascalmpl/util/visualize/dot/NodeId.java 11% 52 Missing ⚠️
...org/rascalmpl/util/visualize/dot/DotAttribute.java 0% 51 Missing ⚠️
src/org/rascalmpl/util/visualize/dot/DotNode.java 0% 32 Missing ⚠️
...c/org/rascalmpl/parser/uptr/debug/DebugLogger.java 0% 30 Missing ⚠️
.../rascalmpl/parser/gtd/stack/AbstractStackNode.java 12% 29 Missing ⚠️
src/org/rascalmpl/util/visualize/dot/DotEdge.java 0% 29 Missing ⚠️
...almpl/parser/gtd/result/AbstractContainerNode.java 0% 22 Missing ⚠️
... and 51 more
Additional details and impacted files
@@            Coverage Diff            @@
##              main   #2033     +/-   ##
=========================================
- Coverage       49%     49%     -1%     
- Complexity    6306    6543    +237     
=========================================
  Files          664     684     +20     
  Lines        59635   60998   +1363     
  Branches      8647    8808    +161     
=========================================
+ Hits         29471   30119    +648     
- Misses       27946   28667    +721     
+ Partials      2218    2212      -6     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants