-
Notifications
You must be signed in to change notification settings - Fork 9
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
Minification will remove an import that is transitively depended on #211
Comments
Indeed, this is a defect that results from wanting to avoid recompiling the entire project on every change to every file. However, we should probably add a flag |
What would your thoughts be on a possible alternate approach where we basically have two phases of minification:
If I am thinking about it correctly we would not have any need to backtrack and would still end up with a minimal number of imports. |
Yes, this should work. For 1, there is already code in the bug minimizer that adds all transitive Regarding 2, I don't think binary search helps much. We can perhaps do binary search on the transitive Note, however, that Step 1 is not 100% safe because global side effects of |
Some incomplete notes if you (or anyone else) wants to implement this: I believe the first steps are:
|
_CoqProject:
Test1.v:
Test2.v:
Test3.v:
Running
coq-tools/minimize-requires.py --all -f _CoqProject
will modify Test2.v by removing theRequire Import Test1.
However this will cause the project to no longer build asTest1.thing
is no longer available in the environment.The text was updated successfully, but these errors were encountered: