git-mediate icon indicating copy to clipboard operation
git-mediate copied to clipboard

Missing dependency in cabal package

Open Shachar opened this issue 2 years ago • 1 comments

Trying to install on a clean system gets me:

$ cabal install git-mediate
Resolving dependencies...
Build profile: -w ghc-9.0.2 -O1
In order, the following will be built (use -v for more details):
 - Diff-0.5 (lib) (requires download & build)
 - StateVar-1.2.2 (lib) (requires download & build)
 - ap-normalize-0.1.0.1 (lib) (requires download & build)
 - base-compat-0.13.1 (lib) (requires download & build)
 - base-orphans-0.9.1 (lib) (requires download & build)
 - colour-2.3.6 (lib) (requires download & build)
 - prettyprinter-1.7.1 (lib) (requires download & build)
 - show-combinators-0.2.0.0 (lib) (requires download & build)
 - transformers-compat-0.7.2 (lib) (requires download & build)
 - unix-compat-0.7.1 (lib) (requires download & build)
 - contravariant-1.5.5 (lib) (requires download & build)
 - ansi-terminal-types-0.11.5 (lib) (requires download & build)
 - generic-data-1.1.0.0 (lib) (requires download & build)
 - ansi-terminal-1.0 (lib) (requires download & build)
 - prettyprinter-ansi-terminal-1.1.3 (lib) (requires download & build)
 - optparse-applicative-0.18.1.0 (lib) (requires download & build)
 - git-mediate-1.0.9 (exe:git-mediate) (requires download & build)
Downloading  base-orphans-0.9.1
Downloaded   base-orphans-0.9.1
Downloading  colour-2.3.6
Starting     base-orphans-0.9.1 (lib)
Downloaded   colour-2.3.6
Downloading  show-combinators-0.2.0.0
Starting     colour-2.3.6 (lib)
Building     base-orphans-0.9.1 (lib)
Building     colour-2.3.6 (lib)
Downloaded   show-combinators-0.2.0.0
Downloading  transformers-compat-0.7.2
Starting     show-combinators-0.2.0.0 (lib)
Downloaded   transformers-compat-0.7.2
Downloading  base-compat-0.13.1
Building     show-combinators-0.2.0.0 (lib)
Downloaded   base-compat-0.13.1
Downloading  unix-compat-0.7.1
Starting     base-compat-0.13.1 (lib)
Installing   show-combinators-0.2.0.0 (lib)
Completed    show-combinators-0.2.0.0 (lib)
Starting     transformers-compat-0.7.2 (lib)
Installing   base-orphans-0.9.1 (lib)
Building     base-compat-0.13.1 (lib)
Completed    base-orphans-0.9.1 (lib)
Downloaded   unix-compat-0.7.1
Downloading  prettyprinter-1.7.1
Starting     unix-compat-0.7.1 (lib)
Building     transformers-compat-0.7.2 (lib)
Building     unix-compat-0.7.1 (lib)
Downloaded   prettyprinter-1.7.1
Downloading  ap-normalize-0.1.0.1
Starting     prettyprinter-1.7.1 (lib)
Building     prettyprinter-1.7.1 (lib)
Downloaded   ap-normalize-0.1.0.1
Downloading  ansi-terminal-types-0.11.5
Starting     ap-normalize-0.1.0.1 (lib)
Installing   unix-compat-0.7.1 (lib)
Building     ap-normalize-0.1.0.1 (lib)
Downloaded   ansi-terminal-types-0.11.5
Downloading  ansi-terminal-1.0
Completed    unix-compat-0.7.1 (lib)
Downloaded   ansi-terminal-1.0
Downloading  prettyprinter-ansi-terminal-1.1.3
Installing   base-compat-0.13.1 (lib)
Installing   ap-normalize-0.1.0.1 (lib)
Completed    ap-normalize-0.1.0.1 (lib)
Completed    base-compat-0.13.1 (lib)
Downloaded   prettyprinter-ansi-terminal-1.1.3
Downloading  optparse-applicative-0.18.1.0
Installing   colour-2.3.6 (lib)
Completed    colour-2.3.6 (lib)
Starting     ansi-terminal-types-0.11.5 (lib)
Building     ansi-terminal-types-0.11.5 (lib)
Installing   transformers-compat-0.7.2 (lib)
Downloaded   optparse-applicative-0.18.1.0
Downloading  StateVar-1.2.2
Completed    transformers-compat-0.7.2 (lib)
Downloaded   StateVar-1.2.2
Downloading  contravariant-1.5.5
Starting     StateVar-1.2.2 (lib)
Downloaded   contravariant-1.5.5
Downloading  generic-data-1.1.0.0
Building     StateVar-1.2.2 (lib)
Downloaded   generic-data-1.1.0.0
Downloading  Diff-0.5
Installing   StateVar-1.2.2 (lib)
Completed    StateVar-1.2.2 (lib)
Starting     contravariant-1.5.5 (lib)
Building     contravariant-1.5.5 (lib)
Downloaded   Diff-0.5
Downloading  git-mediate-1.0.9
Starting     Diff-0.5 (lib)
Building     Diff-0.5 (lib)
Downloaded   git-mediate-1.0.9
Installing   ansi-terminal-types-0.11.5 (lib)
Installing   contravariant-1.5.5 (lib)
Completed    ansi-terminal-types-0.11.5 (lib)
Starting     ansi-terminal-1.0 (lib)
Completed    contravariant-1.5.5 (lib)
Starting     generic-data-1.1.0.0 (lib)
Building     ansi-terminal-1.0 (lib)
Building     generic-data-1.1.0.0 (lib)
Installing   Diff-0.5 (lib)
Completed    Diff-0.5 (lib)
Installing   ansi-terminal-1.0 (lib)
Completed    ansi-terminal-1.0 (lib)
Installing   prettyprinter-1.7.1 (lib)
Completed    prettyprinter-1.7.1 (lib)
Starting     prettyprinter-ansi-terminal-1.1.3 (lib)
Building     prettyprinter-ansi-terminal-1.1.3 (lib)
Installing   generic-data-1.1.0.0 (lib)
Installing   prettyprinter-ansi-terminal-1.1.3 (lib)
Completed    prettyprinter-ansi-terminal-1.1.3 (lib)
Starting     optparse-applicative-0.18.1.0 (lib)
Completed    generic-data-1.1.0.0 (lib)
Building     optparse-applicative-0.18.1.0 (lib)
Installing   optparse-applicative-0.18.1.0 (lib)
Completed    optparse-applicative-0.18.1.0 (lib)
Starting     git-mediate-1.0.9 (exe:git-mediate)
Building     git-mediate-1.0.9 (exe:git-mediate)

Failed to build exe:git-mediate from git-mediate-1.0.9.
Build log (
/home/shachar/.cabal/logs/ghc-9.0.2/git-mediate-1.0.9-e-git-mediate-3d8502d5f1a161f5ba034a4e18fd758f658769ea810b4cb99ea52d2c44e59f1a.log
):
Configuring executable 'git-mediate' for git-mediate-1.0.9..
Preprocessing executable 'git-mediate' for git-mediate-1.0.9..
Building executable 'git-mediate' for git-mediate-1.0.9..

src/Conflict.hs:1:114: error:
    Unsupported extension: OverloadedRecordDot
  |
1 | {-# LANGUAGE FlexibleContexts, NoImplicitPrelude, DeriveTraversable, NamedFieldPuns, DerivingVia, DeriveGeneric, OverloadedRecordDot #-}
  |                                                                                                                  ^^^^^^^^^^^^^^^^^^^

src/Environment.hs:1:33: error:
    Unsupported extension: OverloadedRecordDot
  |
1 | {-# LANGUAGE NoImplicitPrelude, OverloadedRecordDot #-}
  |                                 ^^^^^^^^^^^^^^^^^^^

src/Main.hs:1:33: error: Unsupported extension: OverloadedRecordDot
  |
1 | {-# LANGUAGE NoImplicitPrelude, OverloadedRecordDot, FlexibleContexts #-}
  |                                 ^^^^^^^^^^^^^^^^^^^

src/Resolution.hs:1:75: error:
    Unsupported extension: OverloadedRecordDot
  |
1 | {-# LANGUAGE NoImplicitPrelude, BangPatterns, DerivingVia, DeriveGeneric, OverloadedRecordDot #-}
  |                                                                           ^^^^^^^^^^^^^^^^^^^

src/SideDiff.hs:1:33: error:
    Unsupported extension: OverloadedRecordDot
  |
1 | {-# LANGUAGE NoImplicitPrelude, OverloadedRecordDot #-}
  |                                 ^^^^^^^^^^^^^^^^^^^
cabal: Failed to build exe:git-mediate from git-mediate-1.0.9. See the build
log above for details.

Shachar avatar Jan 05 '24 18:01 Shachar

I just installed cabal and tried to run the same command and it worked. The difference was that it used Build profile: -w ghc-9.2.5 -O1 rather than Build profile: -w ghc-9.0.2 -O1 as in your output.

The OverloadedRecordDot feature was added to GHC in version 9.2.0. I'll update the .cabal file to reflect the dependency on a new GHC version.

yairchu avatar Feb 20 '24 13:02 yairchu

Dependency on GHC >= 9.2 explicit since c21dc0d6fc2896fe8fe7eb37dda624962f4c7e4b, considering this fixed

yairchu avatar Aug 05 '24 13:08 yairchu