-
Notifications
You must be signed in to change notification settings - Fork 84
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
The qualified use of Prelude
introduced in 2.1.1 breaks Agda
#325
Comments
Thanks. Indeed that sounds like a breaking change, but it is pretty much unavoidable. (And even permissible according to the PVP, even if unintended. 2.0->2.1 is a major bump.)
That won't work due to the way the implicit In short, there is no backwards-compatible way for Happy to use any Prelude functions other than the ones it is currently using. If you were to write e.g. I would be happy to deprecate Happy 2.1.1 and openly announce the breaking change in 2.1.2 if you could help me come up with a better story. For example, we could generate import qualified Prelude
import Prelude hiding (a,b,c) where |
Perhaps we can provide a backwards compatible solution by not relying on |
I think not qualifying by Concerning the PVP concerns: Agda worked fine with 2.1 but broke with 2.1.1, which is a situation not compatible with the spirit of the PVP. If 2.1.1 were 2.2 that would not be a PVP problem. Maybe I should have written more clearly:
But I see now that 2.1 has been deprecated, that makes it no PVP violation over 2.0.2 (non-deprecated). Would deprecating 2.1.1 be a valid hotfix of the situation? |
I'm not sure if a deprecated version such as 2.1 is considered a release according to the PVP, but I'm fine with deprecating 2.1.1 for the time being. |
This is in order to undo a breaking change caused by users writing `import Prelude hiding (null)`. Fixes #325.
This is in order to undo a breaking change caused by users writing `import Prelude hiding (null)`. Fixes #325.
Thanks, that will save me from revising tons of Agda versions with a bound on |
This is in order to undo a breaking change caused by users writing `import Prelude hiding (null)`. Fixes #325.
I just released 2.1.2. I hope that fixes your issues building Agda. |
Happy 2.1.1 broke Agda:
Because our parser has
import Prelude hiding (null)
anotherimport qualified Prelude
has to be omitted by the generator to havePrelude.null
in scope.I think 2.1.1 should be deprecated as it pretends to be a minor bump but breaks user's code.
A new happy should be released including the fix: Emit
import qualified Prelude
in the generated code.The text was updated successfully, but these errors were encountered: