Skip to content
This repository was archived by the owner on Aug 3, 2024. It is now read-only.

Relax upper bound of Cabal for haddock-api >= 2.20.0 && <= 2.22.0 #1191

Closed
jneira opened this issue May 12, 2020 · 5 comments
Closed

Relax upper bound of Cabal for haddock-api >= 2.20.0 && <= 2.22.0 #1191

jneira opened this issue May 12, 2020 · 5 comments

Comments

@jneira
Copy link
Member

jneira commented May 12, 2020

  • haddock-api was fixing both base' and Cabal` package versions
  • It makes difficult to use it in build plans that needs a newer Cabal version compatible with an older base one
  • The problem has arised when we tried to use cabal-helper-1.1.0.0 in haskell-ide-engine, that uses in turn haddock-api for several builds plans for ghc >= 8.4.2 and <= 8.6.5
  • The temporary workaround had been enable allow-newer in stack.yaml and cabal.project files
  • It seems that the usage of Cabal in haddock-api is not extensible and in fact allow-newer does not throw any compile error, so maybe no code patch is needed
  • So publish hackage revisions for those haddock-api versions relaxing the upper bound up to 3.0.1.0 could let users remove the always dangerous allow-newer

Thanks in advance!
/cc @DanielG

@harpocrates
Copy link
Collaborator

Thanks for reporting!

I see the issue and I'm checking locally how much we can loosen the bounds (maybe even up to 3.2.0?). As you say, the Cabal dependency in haddock-api was hardly used, hence why it has been removed completely in more recent versions.

@harpocrates
Copy link
Collaborator

An eternity of building Cabal versions 2.4, 3.0, and 3.2 against GHC 8.4 and GHC 8.6, I'm convinced all is well with the proposed revision. Also, I wish I'd removed the Cabal dependency sooner.

Relevant revisions:

Is there anything I missed?

@jneira
Copy link
Member Author

jneira commented May 12, 2020

@harpocrates wow, thank you so much for your quick a helpful response and for take care of this.
Yeah, those are the versions we are using in haskell-ide-engine and haskell-language-server and their hackage revisions will let us get rid of allow-newer's.
I am gonna update the indexes and try it asap.

@jneira
Copy link
Member Author

jneira commented May 13, 2020

Well, we've been able to upgrade Cabal (and use cabal-helper-1.1 in windows) in haskell-ide-engine and haskell-language-server without no allow-newer
Thanks again @harpocrates 🙏

@jneira jneira closed this as completed May 13, 2020
@harpocrates
Copy link
Collaborator

Glad to hear it! I'm very excited about the good work that is happening in those projects. 😄

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

No branches or pull requests

2 participants