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

Figure out the Dune integration #203

Closed
2 tasks
aantron opened this issue Jul 17, 2019 · 5 comments
Closed
2 tasks

Figure out the Dune integration #203

aantron opened this issue Jul 17, 2019 · 5 comments
Labels
Milestone

Comments

@aantron
Copy link
Owner Author

aantron commented Jul 20, 2019

@rgrinberg, I think in order to do #136, Bisect_ppx will have to output an extra file when it preprocesses source, i.e. preprocessing foo.ml would output not only the foo.pp.ml expected today by Dune, but also foo.coverage-metadata, or something like that.

As I understand it, Dune will delete foo.coverage-metadata during a rebuild of the project. Is that right?

@rgrinberg
Copy link
Contributor

Dune would indeed delete it. The list of modules that were linked seems like something should be able to answer however. We could imagine a $ dune build foo.exe.unlinked-modules for example. Would this help at all?

@aantron
Copy link
Owner Author

aantron commented Jul 21, 2019

It would help slightly, in that at least we could report that there are some modules for which coverage wasn't generated at all due to not being linked. But the "gold standard" would be to have the coverage metadata available for those modules, so we can simply generate the normal report for them, with all the coverage points unvisited. For that, we need to dump the metadata (location info) somewhere, and the reporter needs to load it.

@aantron
Copy link
Owner Author

aantron commented Jul 21, 2019

Actually, that issue might be even more difficult to solve, even with the help of Dune, because we still can't "fix" the case where a module is not even in the dependency cone, so isn't even preprocessed in the first place. I'll have to think about it more. The best thing to do might be nothing.

@aantron
Copy link
Owner Author

aantron commented Aug 13, 2019

Closing this. There is now progress in ocaml/dune#57. We will update the Bisect docs afterwards.

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

No branches or pull requests

2 participants