haskell / haskell/cabal

Cached dist-newstyle breaks ci (reproduced in appveyor) for non-master branches

Open
#5,681 7 comments 0 reactions 0 assignees View on GitHub
blocked: info-needed cabal-install: v2-build system Cabal: cmd/build continuous-integration
Dominant language
Haskell
Stars
1.7k
Forks
750
Avg merge
4d 3h
Merged PRs (30d)
28

Description

See e.g. https://ci.appveyor.com/project/23Skidoo/cabal/builds/20225441

Due to `2.5.0.0` build products being present in `dist-newstyle`, the `2.4` branch build fails on AppVeyor until I manually clear the cache:

```
Configuring executable 'cabal' for cabal-install-2.4.0.1..
Warning:
This package indirectly depends on multiple versions of the same package. This is very likely to cause a compile failure.
package hackage-security (hackage-security-0.5.3.0-inplace) requires Cabal-2.4.1.0-inplace
package cabal-install (cabal-install-2.4.0.1) requires Cabal-2.4.1.0-inplace
package cabal-install (cabal-install-2.5.0.0-inplace-cabal-lib-client) requires Cabal-2.5.0.0-inplace
```

`dist-newstyle` is cached on AppVeyor to speed up VCS tests, see 076c966a0567851696c55a3bb5114a80efd0130a. Perhaps this is no longer needed? Or maybe we can have a per-branch cache?

There seems to be a Cabal/`new-build` bug here as well, since 2.5.0.0 files shouldn't have been picked up by the build process in the first place.

/cc @quasicomputational @Mistuke @typedrat

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.