-
Notifications
You must be signed in to change notification settings - Fork 479
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
Force recompilation of some test modules that use the plugin #4590
Conversation
These modules aren't re-compiled if we modify, say, `PlutusIR.Transform.Beta`. But they should, because the plugin depends on it. Alternatively we can change the plugin to `impurePlugin`, but that seems like overkill.
I've never quite got my head around this. We use Also, if we do this we'd need to do this for all the test modules, since they basically all use the plugin (they just mostly don't use the TH way of adding it). In fact... is that why I did it? Does it work if we do what the other modules do and use the |
Yeah these are good questions. I'll have to look into this a bit further. |
So I looked into this, and it has nothing to do with the plugin. What happened is that if we comment out the TyInst case of |
Does that mean that it also won't recompile e.g. the tests for |
I know for sure that it didn't recompile |
That it might be allowed to do, since it'll be doing separate compilation and it should just be able to re-link |
Not sure about that since |
If I comment out both the first and the second cases of |
Ok ignore the previous two comments. I think it is most likely a problem only when we have a plugin using
So there are at least 3 options:
I feel like 1 is the best option. 3 is probably a non-starter since it affects the users. 2 causes those test modules to be re-compiled every time, even if nothing changes. @michaelpj What do you think? By the way I opened a GHC issue about this: https://gitlab.haskell.org/ghc/ghc/-/issues/21543 |
Hmm, so trying to think about this. I think maybe the underlying issue is:
|
But Matthew seems to be saying that this shouldn't happen. |
I commented on the issue. |
This has been open since May 2022. I'm going to close it. |
These modules aren't re-compiled if we modify, say,
PlutusIR.Transform.Beta
. But they should, because the plugin depends on it.Alternatively we can change the plugin to
impurePlugin
, but that seems like overkill.