[SAOC 2024] - Leverage dmd as a library in D-Scanner in order to extend its functionality - Weekly Update 9
Vladiwostok
riciuvlad at gmail.com
Tue Nov 19 00:13:56 UTC 2024
Greetings,
I apologize for the late update.
In the past week I've been working on dealing with the final
changes before being able to merge with the upstream repo.
As of now, there are 2 issues left to fix:
1. Fix the locations of the warnings emitted by the checks used
in integration tests
2. Switch the Autofix replacement feature to the dmd-as-a-lib flow
Regarding point 1, some warnings emitted by libdparse checks
would contain not only the necessary location (line & column),
but also some additional locs, such as the end line / column.
However, this is not something that was consistently implemented
across all checks - some had inaccurate or even missing
additional locations. The integration step tests the report
generated by D-Scanner, and, in order to re-enable it, the checks
used have to be accurate.
Point 2 is a bit unexpected - there are 2 D-Scanner features that
make use of Autofix - one for generating a report with the
warnings / autofixes found, and the other for actually applying
the Autofix. Unfortunately the code paths for both features are
just slightly different, and the Autofix replacement flow has to
be patched.
Here's the WIP branch I've been using so far:
https://github.com/Dlang-UPB/D-scanner/compare/replace_libdparse...Vladiwostok:D-scanner:wip-cleanup-code
More information about the Digitalmars-d
mailing list