yi-editor / yi

The Haskell-Scriptable Editor
GNU General Public License v2.0
1.5k stars 199 forks source link

yi-core fails to build with GHC 9.0 (Stackage lts-19) #1125

Closed sternenseemann closed 1 year ago

sternenseemann commented 2 years ago
Configuring yi-core-0.19.2...
Flags chosen: hint=False
Dependency ListLike >=4.5: using ListLike-4.7.6
Dependency array: using array-0.5.4.0
Dependency attoparsec: using attoparsec-0.14.4
Dependency base >=4.9 && <5: using base-4.15.1.0
Dependency binary >=0.7: using binary-0.8.8.0
Dependency bytestring >=0.9.1: using bytestring-0.10.12.1
Dependency containers: using containers-0.6.4.1
Dependency data-default: using data-default-0.7.1.1
Dependency directory: using directory-1.3.6.2
Dependency dlist >=0.4.1: using dlist-1.0
Dependency dynamic-state >=0.1.0.5: using dynamic-state-0.3.1
Dependency exceptions: using exceptions-0.10.4
Dependency filepath >=1.1: using filepath-1.4.2.1
Dependency hashable >=1.1.2.5: using hashable-1.3.5.0
Dependency microlens-platform: using microlens-platform-0.4.2.1
Dependency mtl >=0.1.0.1: using mtl-2.2.2
Dependency old-locale: using old-locale-1.0.0.7
Dependency oo-prototypes: using oo-prototypes-0.1.0.0
Dependency parsec >=3.0: using parsec-3.1.14.0
Dependency pointedlist >=0.5: using pointedlist-0.6.1
Dependency process >=1.0.1.1: using process-1.6.13.2
Dependency process-extras >=0.3.3.8: using process-extras-0.7.4
Dependency split >=0.2: using split-0.2.3.4
Dependency text >=1.1.1.3: using text-1.2.5.0
Dependency time >=1.1: using time-1.9.3
Dependency transformers-base: using transformers-base-0.4.6
Dependency unix: using unix-2.7.2.2
Dependency unix-compat >=0.1: using unix-compat-0.5.4
Dependency unordered-containers >=0.1.3: using unordered-containers-0.2.17.0
Dependency xdg-basedir >=0.2.1: using xdg-basedir-0.2.2
Dependency yi-language >=0.19: using yi-language-0.19.0
Dependency yi-rope >=0.10: using yi-rope-0.11
Dependency attoparsec: using attoparsec-0.14.4
Dependency base >=4.8 && <5: using base-4.15.1.0
Dependency containers: using containers-0.6.4.1
Dependency quickcheck-text: using quickcheck-text-0.1.2.1
Dependency tasty: using tasty-1.4.2.1
Dependency tasty-hunit: using tasty-hunit-0.10.0.3
Dependency tasty-quickcheck: using tasty-quickcheck-0.10.2
Dependency text: using text-1.2.5.0
Dependency yi-core: using yi-core-0.19.2
Dependency yi-rope >=0.10: using yi-rope-0.11
Source component graph:
    component lib
    component test:tasty dependency lib
Configured component graph:
    component yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y
        include ListLike-4.7.6-HFoZVJ3tvlIGRDPpqR201I
        include array-0.5.4.0
        include attoparsec-0.14.4-EDXDG8uWPjtKHxqrYPx9Kh
        include base-4.15.1.0
        include binary-0.8.8.0
        include bytestring-0.10.12.1
        include containers-0.6.4.1
        include data-default-0.7.1.1-2oomw3KKtyj2e0GcZqJJjo
        include directory-1.3.6.2
        include dlist-1.0-9xW5LAwZRkJL6y4M05H3am
        include dynamic-state-0.3.1-2X1QWjoFEPJ2uDSVvioZmq
        include exceptions-0.10.4
        include filepath-1.4.2.1
        include hashable-1.3.5.0-Hd8HSYZ7DN8KsO4HNlPmYP
        include microlens-platform-0.4.2.1-5HuTc9469fJPlfFCiZxn8
        include mtl-2.2.2
        include old-locale-1.0.0.7-B94o3sNLYrV8oE3WO2rqHh
        include oo-prototypes-0.1.0.0-9jkLhGCrUUVFT2xlZyS4zA
        include parsec-3.1.14.0
        include pointedlist-0.6.1-1x20IVtiBqA7eAgcNYaMda
        include process-1.6.13.2
        include process-extras-0.7.4-3m4MOkKqu8IEwSveGRk2vi
        include split-0.2.3.4-70eK5bsEqU3BVaMS1aWMyh
        include text-1.2.5.0
        include time-1.9.3
        include transformers-base-0.4.6-DNEPe1n49zF11LzesleFOa
        include unix-2.7.2.2
        include unix-compat-0.5.4-FTzJDG4psNuKZpJlJ2Zo5B
        include unordered-containers-0.2.17.0-5tsTUc3qaP8lsa0vPeGcq
        include xdg-basedir-0.2.2-DeGg1ryr7ndmwRYCQYweT
        include yi-language-0.19.0-2rstqDx49P772JkvQ2jVVu
        include yi-rope-0.11-IW5YsRZw34A3n7RyGUYqkQ
    component yi-core-0.19.2-IlwcAfKsvzKK9xOOi0q7HF-tasty
        include attoparsec-0.14.4-EDXDG8uWPjtKHxqrYPx9Kh
        include base-4.15.1.0
        include containers-0.6.4.1
        include quickcheck-text-0.1.2.1-CNbh4lX6ej53vFwQBnqSuq
        include tasty-1.4.2.1-40Y4moSTErDJMxTw0OyFqx
        include tasty-hunit-0.10.0.3-LJ0hrnvsLDz9Qd3Z9dCfAx
        include tasty-quickcheck-0.10.2-LAiy4xH1m928VYZvcwNIbn
        include text-1.2.5.0
        include yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y
        include yi-rope-0.11-IW5YsRZw34A3n7RyGUYqkQ
Linked component graph:
    unit yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y
        include ListLike-4.7.6-HFoZVJ3tvlIGRDPpqR201I
        include array-0.5.4.0
        include attoparsec-0.14.4-EDXDG8uWPjtKHxqrYPx9Kh
        include base-4.15.1.0
        include binary-0.8.8.0
        include bytestring-0.10.12.1
        include containers-0.6.4.1
        include data-default-0.7.1.1-2oomw3KKtyj2e0GcZqJJjo
        include directory-1.3.6.2
        include dlist-1.0-9xW5LAwZRkJL6y4M05H3am
        include dynamic-state-0.3.1-2X1QWjoFEPJ2uDSVvioZmq
        include exceptions-0.10.4
        include filepath-1.4.2.1
        include hashable-1.3.5.0-Hd8HSYZ7DN8KsO4HNlPmYP
        include microlens-platform-0.4.2.1-5HuTc9469fJPlfFCiZxn8
        include mtl-2.2.2
        include old-locale-1.0.0.7-B94o3sNLYrV8oE3WO2rqHh
        include oo-prototypes-0.1.0.0-9jkLhGCrUUVFT2xlZyS4zA
        include parsec-3.1.14.0
        include pointedlist-0.6.1-1x20IVtiBqA7eAgcNYaMda
        include process-1.6.13.2
        include process-extras-0.7.4-3m4MOkKqu8IEwSveGRk2vi
        include split-0.2.3.4-70eK5bsEqU3BVaMS1aWMyh
        include text-1.2.5.0
        include time-1.9.3
        include transformers-base-0.4.6-DNEPe1n49zF11LzesleFOa
        include unix-2.7.2.2
        include unix-compat-0.5.4-FTzJDG4psNuKZpJlJ2Zo5B
        include unordered-containers-0.2.17.0-5tsTUc3qaP8lsa0vPeGcq
        include xdg-basedir-0.2.2-DeGg1ryr7ndmwRYCQYweT
        include yi-language-0.19.0-2rstqDx49P772JkvQ2jVVu
        include yi-rope-0.11-IW5YsRZw34A3n7RyGUYqkQ
        Parser.Incremental=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Parser.Incremental,Paths_yi_core=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Paths_yi_core,System.FriendlyPath=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:System.FriendlyPath,Yi=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi,Yi.Buffer=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Buffer,Yi.Buffer.HighLevel=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Buffer.HighLevel,Yi.Buffer.Indent=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Buffer.Indent,Yi.Buffer.Misc=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Buffer.Misc,Yi.Buffer.Normal=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Buffer.Normal,Yi.Buffer.Region=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Buffer.Region,Yi.Buffer.TextUnit=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Buffer.TextUnit,Yi.Buffer.Undo=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Buffer.Undo,Yi.Command=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Command,Yi.Command.Help=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Command.Help,Yi.Completion=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Completion,Yi.CompletionTree=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.CompletionTree,Yi.Config=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Config,Yi.Config.Default=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Config.Default,Yi.Config.Lens=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Config.Lens,Yi.Config.Misc=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Config.Misc,Yi.Config.Simple=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Config.Simple,Yi.Config.Simple.Types=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Config.Simple.Types,Yi.Core=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Core,Yi.Debug=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Debug,Yi.Dired=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Dired,Yi.Editor=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Editor,Yi.Eval=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Eval,Yi.Event=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Event,Yi.File=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.File,Yi.History=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.History,Yi.Hoogle=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Hoogle,Yi.Hooks=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Hooks,Yi.IncrementalParse=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.IncrementalParse,Yi.Interact=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Interact,Yi.JumpList=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.JumpList,Yi.Keymap=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Keymap,Yi.Keymap.Keys=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Keymap.Keys,Yi.KillRing=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.KillRing,Yi.Layout=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Layout,Yi.MiniBuffer=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.MiniBuffer,Yi.Misc=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Misc,Yi.Mode.Common=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Mode.Common,Yi.Mode.Compilation=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Mode.Compilation,Yi.Mode.Interactive=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Mode.Interactive,Yi.Monad=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Monad,Yi.Paths=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Paths,Yi.PersistentState=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.PersistentState,Yi.Process=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Process,Yi.Rectangle=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Rectangle,Yi.Search=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Search,Yi.Search.Internal=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Search.Internal,Yi.String=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.String,Yi.Syntax.Driver=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Syntax.Driver,Yi.Syntax.Layout=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Syntax.Layout,Yi.Syntax.OnlineTree=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Syntax.OnlineTree,Yi.Syntax.Tree=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Syntax.Tree,Yi.Tab=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Tab,Yi.Tag=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Tag,Yi.TextCompletion=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.TextCompletion,Yi.Types=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Types,Yi.UI.Common=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.UI.Common,Yi.UI.LineNumbers=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.UI.LineNumbers,Yi.UI.SimpleLayout=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.UI.SimpleLayout,Yi.UI.TabBar=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.UI.TabBar,Yi.UI.Utils=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.UI.Utils,Yi.Window=yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y:Yi.Window
    unit yi-core-0.19.2-IlwcAfKsvzKK9xOOi0q7HF-tasty
        include attoparsec-0.14.4-EDXDG8uWPjtKHxqrYPx9Kh
        include base-4.15.1.0
        include containers-0.6.4.1
        include quickcheck-text-0.1.2.1-CNbh4lX6ej53vFwQBnqSuq
        include tasty-1.4.2.1-40Y4moSTErDJMxTw0OyFqx
        include tasty-hunit-0.10.0.3-LJ0hrnvsLDz9Qd3Z9dCfAx
        include tasty-quickcheck-0.10.2-LAiy4xH1m928VYZvcwNIbn
        include text-1.2.5.0
        include yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y
        include yi-rope-0.11-IW5YsRZw34A3n7RyGUYqkQ
Ready component graph:
    definite yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y
        depends ListLike-4.7.6-HFoZVJ3tvlIGRDPpqR201I
        depends array-0.5.4.0
        depends attoparsec-0.14.4-EDXDG8uWPjtKHxqrYPx9Kh
        depends base-4.15.1.0
        depends binary-0.8.8.0
        depends bytestring-0.10.12.1
        depends containers-0.6.4.1
        depends data-default-0.7.1.1-2oomw3KKtyj2e0GcZqJJjo
        depends directory-1.3.6.2
        depends dlist-1.0-9xW5LAwZRkJL6y4M05H3am
        depends dynamic-state-0.3.1-2X1QWjoFEPJ2uDSVvioZmq
        depends exceptions-0.10.4
        depends filepath-1.4.2.1
        depends hashable-1.3.5.0-Hd8HSYZ7DN8KsO4HNlPmYP
        depends microlens-platform-0.4.2.1-5HuTc9469fJPlfFCiZxn8
        depends mtl-2.2.2
        depends old-locale-1.0.0.7-B94o3sNLYrV8oE3WO2rqHh
        depends oo-prototypes-0.1.0.0-9jkLhGCrUUVFT2xlZyS4zA
        depends parsec-3.1.14.0
        depends pointedlist-0.6.1-1x20IVtiBqA7eAgcNYaMda
        depends process-1.6.13.2
        depends process-extras-0.7.4-3m4MOkKqu8IEwSveGRk2vi
        depends split-0.2.3.4-70eK5bsEqU3BVaMS1aWMyh
        depends text-1.2.5.0
        depends time-1.9.3
        depends transformers-base-0.4.6-DNEPe1n49zF11LzesleFOa
        depends unix-2.7.2.2
        depends unix-compat-0.5.4-FTzJDG4psNuKZpJlJ2Zo5B
        depends unordered-containers-0.2.17.0-5tsTUc3qaP8lsa0vPeGcq
        depends xdg-basedir-0.2.2-DeGg1ryr7ndmwRYCQYweT
        depends yi-language-0.19.0-2rstqDx49P772JkvQ2jVVu
        depends yi-rope-0.11-IW5YsRZw34A3n7RyGUYqkQ
    definite yi-core-0.19.2-IlwcAfKsvzKK9xOOi0q7HF-tasty
        depends attoparsec-0.14.4-EDXDG8uWPjtKHxqrYPx9Kh
        depends base-4.15.1.0
        depends containers-0.6.4.1
        depends quickcheck-text-0.1.2.1-CNbh4lX6ej53vFwQBnqSuq
        depends tasty-1.4.2.1-40Y4moSTErDJMxTw0OyFqx
        depends tasty-hunit-0.10.0.3-LJ0hrnvsLDz9Qd3Z9dCfAx
        depends tasty-quickcheck-0.10.2-LAiy4xH1m928VYZvcwNIbn
        depends text-1.2.5.0
        depends yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y
        depends yi-rope-0.11-IW5YsRZw34A3n7RyGUYqkQ
Using Cabal-3.4.1.0 compiled by ghc-9.0
Using compiler: ghc-9.0.2
Using install prefix:
/nix/store/5z2gv44z8dynpvhw93xfcxv4f1nidy09-yi-core-0.19.2
Executables installed in:
/nix/store/5z2gv44z8dynpvhw93xfcxv4f1nidy09-yi-core-0.19.2/bin
Libraries installed in:
/nix/store/5z2gv44z8dynpvhw93xfcxv4f1nidy09-yi-core-0.19.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2/yi-core-0.19.2-APK9LiCUSK8B6Br7mYkX5Y
Dynamic Libraries installed in:
/nix/store/5z2gv44z8dynpvhw93xfcxv4f1nidy09-yi-core-0.19.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2
Private executables installed in:
/nix/store/5z2gv44z8dynpvhw93xfcxv4f1nidy09-yi-core-0.19.2/libexec/x86_64-linux-ghc-9.0.2/yi-core-0.19.2
Data files installed in:
/nix/store/5z2gv44z8dynpvhw93xfcxv4f1nidy09-yi-core-0.19.2/share/x86_64-linux-ghc-9.0.2/yi-core-0.19.2
Documentation installed in:
/nix/store/3qaa50gbg47qs99088z52qi81d5g3fds-yi-core-0.19.2-doc/share/doc/yi-core-0.19.2
Configuration files installed in:
/nix/store/5z2gv44z8dynpvhw93xfcxv4f1nidy09-yi-core-0.19.2/etc
No alex found
Using ar found on system at:
/nix/store/x2zbyl2l4xayv4d5is0b31plfq8xjjym-binutils-2.35.2/bin/ar
No c2hs found
No cpphs found
No doctest found
Using gcc version 10.3.0 given by user at:
/nix/store/jz10kjr0lnhynwxnrzv4kcwbjs5s0ri8-gcc-wrapper-10.3.0/bin/gcc
Using ghc version 9.0.2 found on system at:
/nix/store/2zfhlbjpxwzarkxfbddj52ksbzkavblv-ghc-9.0.2/bin/ghc
Using ghc-pkg version 9.0.2 found on system at:
/nix/store/2zfhlbjpxwzarkxfbddj52ksbzkavblv-ghc-9.0.2/bin/ghc-pkg
No ghcjs found
No ghcjs-pkg found
No greencard found
Using haddock version 2.25.1 found on system at:
/nix/store/2zfhlbjpxwzarkxfbddj52ksbzkavblv-ghc-9.0.2/bin/haddock
No happy found
Using haskell-suite found on system at: haskell-suite-dummy-location
Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
No hmake found
Using hpc version 0.68 found on system at:
/nix/store/2zfhlbjpxwzarkxfbddj52ksbzkavblv-ghc-9.0.2/bin/hpc
Using hsc2hs version 0.68.7 found on system at:
/nix/store/2zfhlbjpxwzarkxfbddj52ksbzkavblv-ghc-9.0.2/bin/hsc2hs
Using hscolour version 1.24 found on system at:
/nix/store/imw3kw379vm04i226n54d44jipmhk8lb-hscolour-1.24.4/bin/HsColour
No jhc found
Using ld found on system at:
/nix/store/55ayck4pllh4qallb1dbhbkrzwrrl02r-binutils-wrapper-2.35.2/bin/ld.gold
No pkg-config found
Using runghc version 9.0.2 found on system at:
/nix/store/2zfhlbjpxwzarkxfbddj52ksbzkavblv-ghc-9.0.2/bin/runghc
Using strip version 2.35 found on system at:
/nix/store/jz10kjr0lnhynwxnrzv4kcwbjs5s0ri8-gcc-wrapper-10.3.0/bin/strip
Using tar found on system at:
/nix/store/4rypjibv28cbbg21apsqnnyi3k2glzjd-gnutar-1.34/bin/tar
No uhc found
building
Preprocessing library for yi-core-0.19.2..
Building library for yi-core-0.19.2..
[ 1 of 70] Compiling Control.Exc      ( src/Control/Exc.hs, dist/build/Control/Exc.o, dist/build/Control/Exc.dyn_o )
[ 2 of 70] Compiling Data.DelayList   ( src/Data/DelayList.hs, dist/build/Data/DelayList.o, dist/build/Data/DelayList.dyn_o )
[ 3 of 70] Compiling Parser.Incremental ( src/Parser/Incremental.hs, dist/build/Parser/Incremental.o, dist/build/Parser/Incremental.dyn_o )

src/Parser/Incremental.hs:231:23-34: warning: [-Woverlapping-patterns]
    Pattern match is redundant
    In a case alternative: Just [] -> ...
    |
231 |                       Just [] -> p -- no more info, stop feeding
    |                       ^^^^^^^^^^^^
[ 4 of 70] Compiling Paths_yi_core    ( dist/build/autogen/Paths_yi_core.hs, dist/build/Paths_yi_core.o, dist/build/Paths_yi_core.dyn_o )
[ 5 of 70] Compiling System.CanonicalizePath ( src/System/CanonicalizePath.hs, dist/build/System/CanonicalizePath.o, dist/build/System/CanonicalizePath.dyn_o )

src/System/CanonicalizePath.hs:27:1-48: warning: [-Wunused-imports]
    The import of ‘Data.Monoid’ is redundant
      except perhaps to import instances from ‘Data.Monoid’
    To import instances alone, use: import Data.Monoid()
   |
27 | import           Data.Monoid              ((<>))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ 6 of 70] Compiling System.FriendlyPath ( src/System/FriendlyPath.hs, dist/build/System/FriendlyPath.o, dist/build/System/FriendlyPath.dyn_o )
[ 7 of 70] Compiling Yi.Buffer.Implementation ( src/Yi/Buffer/Implementation.hs, dist/build/Yi/Buffer/Implementation.o, dist/build/Yi/Buffer/Implementation.dyn_o )
[ 8 of 70] Compiling Yi.Buffer.Undo   ( src/Yi/Buffer/Undo.hs, dist/build/Yi/Buffer/Undo.o, dist/build/Yi/Buffer/Undo.dyn_o )
[ 9 of 70] Compiling Yi.CompletionTree ( src/Yi/CompletionTree.hs, dist/build/Yi/CompletionTree.o, dist/build/Yi/CompletionTree.dyn_o )

src/Yi/CompletionTree.hs:42:1-48: warning: [-Wunused-imports]
    The import of ‘Data.Semigroup’ is redundant
      except perhaps to import instances from ‘Data.Semigroup’
    To import instances alone, use: import Data.Semigroup()
   |
42 | import           Data.Semigroup      (Semigroup)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[10 of 70] Compiling Yi.Config.Misc   ( src/Yi/Config/Misc.hs, dist/build/Yi/Config/Misc.o, dist/build/Yi/Config/Misc.dyn_o )
[11 of 70] Compiling Yi.Debug         ( src/Yi/Debug.hs, dist/build/Yi/Debug.o, dist/build/Yi/Debug.dyn_o )

src/Yi/Debug.hs:23:1-27: warning: [-Wunused-imports]
    The import of ‘Data.Monoid’ is redundant
      except perhaps to import instances from ‘Data.Monoid’
    To import instances alone, use: import Data.Monoid()
   |
23 | import Data.Monoid ( (<>) )
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[12 of 70] Compiling Yi.Event         ( src/Yi/Event.hs, dist/build/Yi/Event.o, dist/build/Yi/Event.dyn_o )
[13 of 70] Compiling Yi.IncrementalParse ( src/Yi/IncrementalParse.hs, dist/build/Yi/IncrementalParse.o, dist/build/Yi/IncrementalParse.dyn_o )
[14 of 70] Compiling Yi.Interact      ( src/Yi/Interact.hs, dist/build/Yi/Interact.o, dist/build/Yi/Interact.dyn_o )
[15 of 70] Compiling Yi.JumpList      ( src/Yi/JumpList.hs, dist/build/Yi/JumpList.o, dist/build/Yi/JumpList.dyn_o )
[16 of 70] Compiling Yi.KillRing      ( src/Yi/KillRing.hs, dist/build/Yi/KillRing.o, dist/build/Yi/KillRing.dyn_o )

src/Yi/KillRing.hs:32:1-43: warning: [-Wunused-imports]
    The import of ‘Data.Monoid’ is redundant
      except perhaps to import instances from ‘Data.Monoid’
    To import instances alone, use: import Data.Monoid()
   |
32 | import           Data.Monoid         ((<>))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[17 of 70] Compiling Yi.Layout        ( src/Yi/Layout.hs, dist/build/Yi/Layout.o, dist/build/Yi/Layout.dyn_o )
[18 of 70] Compiling Yi.Monad         ( src/Yi/Monad.hs, dist/build/Yi/Monad.o, dist/build/Yi/Monad.dyn_o )
[19 of 70] Compiling Yi.Paths         ( src/Yi/Paths.hs, dist/build/Yi/Paths.o, dist/build/Yi/Paths.dyn_o )
[20 of 70] Compiling Yi.Process       ( src/Yi/Process.hs, dist/build/Yi/Process.o, dist/build/Yi/Process.dyn_o )
[21 of 70] Compiling Yi.String        ( src/Yi/String.hs, dist/build/Yi/String.o, dist/build/Yi/String.dyn_o )

src/Yi/String.hs:34:1-35: warning: [-Wunused-imports]
    The import of ‘Data.Monoid’ is redundant
      except perhaps to import instances from ‘Data.Monoid’
    To import instances alone, use: import Data.Monoid()
   |
34 | import           Data.Monoid ((<>))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[22 of 70] Compiling Yi.Syntax.Layout ( src/Yi/Syntax/Layout.hs, dist/build/Yi/Syntax/Layout.o, dist/build/Yi/Syntax/Layout.dyn_o )

src/Yi/Syntax/Layout.hs:73:33: error:
    Found a binding for the ‘@’ operator in a pattern position.
    Perhaps you meant an as-pattern, which must not be surrounded by whitespace
   |
73 |                 toks@((aSt, tok @ Tok {tokPosn = Posn _nextOfs line col}) : tokss)
   |                                 ^
[23 of 70] Compiling Yi.Syntax.Tree   ( src/Yi/Syntax/Tree.hs, dist/build/Yi/Syntax/Tree.o, dist/build/Yi/Syntax/Tree.dyn_o )

src/Yi/Syntax/Tree.hs:41:86-89: warning: [-Wunused-imports]
    The import of ‘<>’ from module ‘Data.Monoid’ is redundant
   |
41 | import           Data.Monoid         (First (First, getFirst), Last (Last, getLast), (<>))
   |                                                                                      ^^^^
[24 of 70] Compiling Yi.Syntax.OnlineTree ( src/Yi/Syntax/OnlineTree.hs, dist/build/Yi/Syntax/OnlineTree.o, dist/build/Yi/Syntax/OnlineTree.dyn_o )
[25 of 70] Compiling Yi.Syntax.Driver ( src/Yi/Syntax/Driver.hs, dist/build/Yi/Syntax/Driver.o, dist/build/Yi/Syntax/Driver.dyn_o )
[26 of 70] Compiling Yi.UI.Common     ( src/Yi/UI/Common.hs, dist/build/Yi/UI/Common.o, dist/build/Yi/UI/Common.dyn_o )
[27 of 70] Compiling Yi.Window        ( src/Yi/Window.hs, dist/build/Yi/Window.o, dist/build/Yi/Window.dyn_o )
[28 of 70] Compiling Yi.Tab           ( src/Yi/Tab.hs, dist/build/Yi/Tab.o, dist/build/Yi/Tab.dyn_o )
[29 of 70] Compiling Yi.Types         ( src/Yi/Types.hs, dist/build/Yi/Types.o, dist/build/Yi/Types.dyn_o )

src/Yi/Types.hs:34:1-58: warning: [-Wunused-imports]
    The import of ‘Control.Monad’ is redundant
      except perhaps to import instances from ‘Control.Monad’
    To import instances alone, use: import Control.Monad()
   |
34 | import           Control.Monad (ap, liftM3, void, forever)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[30 of 70] Compiling Yi.Config.Lens   ( src/Yi/Config/Lens.hs, dist/build/Yi/Config/Lens.o, dist/build/Yi/Config/Lens.dyn_o )
[31 of 70] Compiling Yi.Config        ( src/Yi/Config.hs, dist/build/Yi/Config.o, dist/build/Yi/Config.dyn_o )
[32 of 70] Compiling Yi.Config.Simple.Types ( src/Yi/Config/Simple/Types.hs, dist/build/Yi/Config/Simple/Types.o, dist/build/Yi/Config/Simple/Types.dyn_o )
[33 of 70] Compiling Yi.Buffer.Misc   ( src/Yi/Buffer/Misc.hs, dist/build/Yi/Buffer/Misc.o, dist/build/Yi/Buffer/Misc.dyn_o )

src/Yi/Buffer/Misc.hs:621:16-25: error:
    • Couldn't match type: forall (f :: * -> *).
                           Functor f =>
                           (Point -> f Point) -> FBuffer -> f FBuffer
                     with: (Point -> Data.Functor.Const.Const Point Point)
                           -> FBuffer -> Data.Functor.Const.Const Point FBuffer
      Expected: Mark
                -> microlens-0.4.12.0:Lens.Micro.Type.Getting Point FBuffer Point
        Actual: Mark -> Lens' FBuffer Point
    • In the second argument of ‘(.)’, namely ‘markPointA’
      In the first argument of ‘(=<<)’, namely ‘use . markPointA’
      In the expression: use . markPointA =<< getInsMark
    |
621 | pointB = use . markPointA =<< getInsMark
    |                ^^^^^^^^^^

src/Yi/Buffer/Misc.hs:650:12-21: error:
    • Couldn't match type: forall (f :: * -> *).
                           Functor f =>
                           (Point -> f Point) -> FBuffer -> f FBuffer
                     with: (a0 -> Data.Functor.Identity.Identity Point)
                           -> FBuffer -> Data.Functor.Identity.Identity FBuffer
      Expected: Mark
                -> microlens-0.4.12.0:Lens.Micro.Type.ASetter
                     FBuffer FBuffer a0 Point
        Actual: Mark -> Lens' FBuffer Point
    • In the second argument of ‘(.)’, namely ‘markPointA’
      In the first argument of ‘(=<<)’, namely ‘(.= p) . markPointA’
      In a stmt of a 'do' block: (.= p) . markPointA =<< getInsMark
    |
650 |   (.= p) . markPointA =<< getInsMark
    |            ^^^^^^^^^^

src/Yi/Buffer/Misc.hs:748:16-25: error:
    • Couldn't match type: forall (f :: * -> *).
                           Functor f =>
                           (Point -> f Point) -> FBuffer -> f FBuffer
                     with: (Point -> Data.Functor.Const.Const Point Point)
                           -> FBuffer -> Data.Functor.Const.Const Point FBuffer
      Expected: Mark
                -> microlens-0.4.12.0:Lens.Micro.Type.Getting Point FBuffer Point
        Actual: Mark -> Lens' FBuffer Point
    • In the second argument of ‘(.)’, namely ‘markPointA’
      In the first argument of ‘(=<<)’, namely ‘use . markPointA’
      In a stmt of a 'do' block:
        p <- use . markPointA =<< fromMark <$> askMarks
    |
748 |     p <- use . markPointA =<< fromMark <$> askMarks
    |                ^^^^^^^^^^

src/Yi/Buffer/Misc.hs:858:39-48: error:
    • Couldn't match type: forall (f :: * -> *).
                           Functor f =>
                           (Point -> f Point) -> FBuffer -> f FBuffer
                     with: (a1 -> Data.Functor.Identity.Identity Point)
                           -> FBuffer -> Data.Functor.Identity.Identity FBuffer
      Expected: Mark
                -> microlens-0.4.12.0:Lens.Micro.Type.ASetter
                     FBuffer FBuffer a1 Point
        Actual: Mark -> Lens' FBuffer Point
    • In the second argument of ‘(.)’, namely ‘markPointA’
      In the second argument of ‘(>>=)’, namely ‘(.= p) . markPointA’
      In a stmt of a 'do' block:
        getMarkB (Just name) >>= (.= p) . markPointA
    |
858 |     getMarkB (Just name) >>= (.= p) . markPointA
    |                                       ^^^^^^^^^^
mfourne commented 1 year ago

1127 should fix this one. I have been maintaining yi for Debian for some time and would like to volunteer to also do this upstream, if someone could give me access.

sebeaumont commented 1 year ago

@mfourne Thanks for the patches. I've rebased this work into my own fork and can confirm this builds ok with ghc-9.4.

Who is maintainer and what's the process for getting stuff merged? What's the support window for ghc versions?

I might have a go a fixing up the many warnings but some of that might not be backward compatible. Should there be ghc version branches here?

mfourne commented 1 year ago

@sebeaumont I think that would currently be me - let's work together on that! I'm currently running ghc-9.0 and mostly care for Debian shipped ghc versions, but I'll first try to find out if there is some support window. Could you put your fork into a PR, so we can work on it for upstreaming? From this, we can either make a branch or merge it directly.

sebeaumont commented 1 year ago

@mfourne Sorry for slow response got hit by covid and new hardware! The latter has been a lot more fun I can confirm that I managed to build and run with ghc-9.4.3 on Mac OS (latest) with M1 (aarch64) toolchain -- lots of warnings which should be easy to fix but might affect backward compatibility I guess. Noticed some weird key behaviour on a cursory OOB test but I'll start looking more deeply now. BTW I tend not to use stack as cabal serves me well for all but big day job mono-rep builds (all x86 plat) and indeed it seems a bit flakey on this platform.

mfourne commented 1 year ago

@sebeaumont I just merged my old PR for this, fixing the titular issue. Can you open a new issue for your fixes up to ghc-9.4.3 and attach a PR there? I'm closing this issue, since the issue with GHC 9.0 from Stackage lts-19 should be fixed now, as some testing in Debian has not brought up new issues with my patches there.