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

Edited: network-3.1.2.3 doesn't compile on Windows with cabal 3.4.0 #513

Closed
Mikolaj opened this issue Oct 7, 2021 · 9 comments
Closed

Comments

@Mikolaj
Copy link
Member

Mikolaj commented Oct 7, 2021

Please see haskell/cabal#7707

@hasufell
Copy link
Member

hasufell commented Oct 7, 2021

correction: 3.1.2.3 works on cabal-3.6.0.0, 3.6 branch and master, but not on cabal-3.4.0.0. So this is a regression.

@Mikolaj
Copy link
Member Author

Mikolaj commented Oct 7, 2021

Phew. But we are almost ready to handle this regression, namely 3.6.2 is about to be released.

@hasufell
Copy link
Member

hasufell commented Oct 7, 2021

I don't think it's acceptable to leave 3.4.0.0 broken. It's still the recommended version in ghcup, because 3.6.0.0 broke network package and I'll leave it as recommended for a while, until I'm confident 3.6.0.0+ doesn't break again.

@Mikolaj
Copy link
Member Author

Mikolaj commented Oct 7, 2021

Fair enough. Regardless, we'll try to publish cabal 3.6.2 RSN so that you can start building the confidence, in particular seeing how cabal 3.6.2 handles network 3.1.2.3, even as network 3.1.2.4 is brought back to compatibility with cabal 3.4 (if that's what the network maintainers decide).

@Mikolaj Mikolaj changed the title network-3.1.2.3 doesn't compile on Windows with cabal 3.6.2-rc1 (current branch 3.6.) containing a dedicated fix for autoconf problems network-3.1.2.3 doesn't compile on Windows with cabal 3.4.0 Oct 7, 2021
@Mikolaj Mikolaj changed the title network-3.1.2.3 doesn't compile on Windows with cabal 3.4.0 Edited: network-3.1.2.3 doesn't compile on Windows with cabal 3.4.0 Oct 7, 2021
@Mistuke
Copy link
Collaborator

Mistuke commented Oct 7, 2021

I don't think it's acceptable to leave 3.4.0.0 broken. It's still the recommended version in ghcup, because 3.6.0.0 broke network package and I'll leave it as recommended for a while, until I'm confident 3.6.0.0+ doesn't break again.

Sure, but while this stance looks and sounds reasonable on the surface, it's far from practical. cabal 3.4 will simply not work with any configure file generated on autoconf >= 2.70. While you are focusing on network here, any package, including public and private ones will not work with cabal 3.4.

For network @kazu-yamamoto can fix it by making the release on a system with autoconf <= 2.69. But again, this only fixes network and you're still left with the other broken packages in the ecosystem.

@hasufell
Copy link
Member

hasufell commented Oct 7, 2021

@Mistuke something like that needs to be announced, so people have a migration plan.

@Mistuke
Copy link
Collaborator

Mistuke commented Oct 7, 2021

@Mistuke something like that needs to be announced, so people have a migration plan.

Yes agreed, but the breaking change was caused by autoconf not network. Again, you're focusing on network, but this isn't a network problem.

As I said, we can temporarily "fix" network, but how do you suppose we fix every other package people may be using with configure based scripts? If you're taking the principled stance that you want no regressions for users, you need to address the underlying problem, not the single package we control.

@hasufell
Copy link
Member

hasufell commented Oct 7, 2021

Again, you're focusing on network, but this isn't a network problem.

Yes, the immediate problem right now is failing CIs in the wild, not other packages.

My hypothesis is:

  1. we can make M1 work with configure generated by autoconf-2.69
  2. then we can mark network-3.1.2.3 release as broken on hackage
  3. then we can do a point-release fixing the configure script
  4. then we can make an announcement and explain upgrade-path to the community
  5. optional: make a cabal-3.4.1.0 release containing the backported fix

Unfortunately, I'm unable to test point 1 right now, because nix on gitlab CI is broken (as always), see #510 (comment)


Edit: configure script generated with autoconf-2.69 confirmed to be working on M1

@Bekalex
Copy link

Bekalex commented Oct 25, 2021

O

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

No branches or pull requests

4 participants