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

Report endless recursion #474

Merged
merged 8 commits into from Jul 4, 2016
Merged

Report endless recursion #474

merged 8 commits into from Jul 4, 2016

Conversation

@krlmlr
Copy link
Member

@krlmlr krlmlr commented May 17, 2016

Currently only contains a failing test.

Expected behavior: An error should be reported.

@krlmlr krlmlr force-pushed the krlmlr:feature/recursion branch from cc95695 to 207d6d0 May 17, 2016
@krlmlr krlmlr force-pushed the krlmlr:feature/recursion branch from 207d6d0 to 391601d Jul 3, 2016
@krlmlr
Copy link
Member Author

@krlmlr krlmlr commented Jul 3, 2016

@hadley: The reason here is that handle_error() can't execute properly because the stack is already "almost full". 2d8429d demonstrates the principle by temporarily raising the limit, but I'll be looking for a better solution.

@codecov-io
Copy link

@codecov-io codecov-io commented Jul 3, 2016

Current coverage is 78.40%

Merging #474 into master will decrease coverage by 4.38%

@@             master       #474   diff @@
==========================================
  Files            45         54     +9   
  Lines          1360       1593   +233   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
+ Hits           1126       1249   +123   
- Misses          234        344   +110   
  Partials          0          0          

Powered by Codecov. Last updated by d3e20b9...2d8429d

@krlmlr krlmlr force-pushed the krlmlr:feature/recursion branch from 2d8429d to 0275dae Jul 3, 2016
@krlmlr krlmlr force-pushed the krlmlr:feature/recursion branch from 0275dae to dee12e4 Jul 3, 2016
@krlmlr
Copy link
Member Author

@krlmlr krlmlr commented Jul 3, 2016

This now builds upon #494 and #495, and includes a better refactoring of the expectation code. Infinite recursions are now caught with a proper stack trace.

@krlmlr
Copy link
Member Author

@krlmlr krlmlr commented Jul 3, 2016

The output is way too large: 5b17d3e. Need to limit to first/last 20 entries?

@hadley
Copy link
Member

@hadley hadley commented Jul 3, 2016

@krlmlr I think keeping the first and last 10 would be great if >20 entries

- limit call stack to first and last 10 entries
@krlmlr krlmlr force-pushed the krlmlr:feature/recursion branch from 3381458 to edb290e Jul 3, 2016
@krlmlr
Copy link
Member Author

@krlmlr krlmlr commented Jul 3, 2016

Should be much better now. Setting options(expression = 200) for the output tests.

@krlmlr krlmlr force-pushed the krlmlr:feature/recursion branch from e748ccf to 7373ac6 Jul 3, 2016
@krlmlr krlmlr changed the title WIP: Endless recursion is not reported Endless recursion is not reported Jul 3, 2016
@hadley
Copy link
Member

@hadley hadley commented Jul 3, 2016

LGTM.

@krlmlr krlmlr changed the title Endless recursion is not reported Report endless recursion Jul 3, 2016
was set too low originally, too
@krlmlr krlmlr merged commit a58c954 into r-lib:master Jul 4, 2016
4 checks passed
4 checks passed
codecov/patch 91.42% of diff hit (target 78.14%)
Details
codecov/project 78.29% (+0.15%) compared to feb60fa
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@krlmlr
Copy link
Member Author

@krlmlr krlmlr commented Jul 4, 2016

Thanks. Merging because it affects #470.

@krlmlr krlmlr deleted the krlmlr:feature/recursion branch Jul 4, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants