Rascal formatter based on Box and layoutDiff, including upgrades of Tree2Box, Box2Text and layoutDiff#2346
Rascal formatter based on Box and layoutDiff, including upgrades of Tree2Box, Box2Text and layoutDiff#2346jurgenvinju wants to merge 9773 commits intomainfrom
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2346 +/- ##
=======================================
Coverage 46% 46%
+ Complexity 6721 6718 -3
=======================================
Files 794 794
Lines 65905 65900 -5
Branches 9884 9879 -5
=======================================
- Hits 30827 30825 -2
+ Misses 32690 32685 -5
- Partials 2388 2390 +2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
In the spirit of eat your own dog food, I gave it a spin
The error is not in the original file:
I did not investigate further, but it might very well be introduced by our |
toinehartman
left a comment
There was a problem hiding this comment.
Nice! Really cool to test declarative formatting on a mature languge.
I think finding a formatting for Rascal that's commonly agreed on might be controversial...
|
Fix/better handling of ignore
New test scenarios for handling TPLs with outdated version number
OS independent logical locs
jurgenvinju
left a comment
There was a problem hiding this comment.
- the big work is done; the formatting architecture works well for Rascal
- there is room for optimization in Box2Text. The other components seem flashy.
- the formatter for Rascal itself will probably receive more love in the coming months. there are always more exceptions to add. but in general it looks good in the entire standard library and the checker and the compiler.
- we have not applied the checker to the actual Rascal source files and committed the result, because that would generate too much noise.
|
Converting to draft until the compilation and the tests run again. |
Fix/change multiple times
0a53771 to
08fbddd
Compare
|





Rascal is a pretty big language so this pushes the new
toBoxandformatandlayoutDifffunctions to the max.toBoxrules such that the formatter produces beautiful layout, andtoBox,formatandlayoutDiffand fix them immediately.