Skip to content

ci: bump GHC versions - #213

Merged
tych0 merged 2 commits into
masterfrom
bump-ghc-versions
Oct 31, 2026
Merged

tych0 merged 2 commits into
masterfrom
bump-ghc-versions

Conversation

@tych0

@tych0 tych0 commented Oct 31, 2026

Copy link
Copy Markdown
Owner

...and drop the -newstyle prefixes for commands, since this style of cabal commands isn't really new any more :)

tych0 added 2 commits October 31, 2026 10:24
...and drop the -newstyle prefixes for commands, since this style of cabal
commands isn't really new any more :)

Signed-off-by: Tycho Andersen <tycho@tycho.pizza>
newer ghc complains about the warnings below. These aren't really fatal,
since they don't crash on the current xcbproto, but at least it makes the
build less noisy.

generator/Data/XCB/Python/PyHelpers.hs:47:25: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Prelude, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
   |
47 |   in foldl mkDot (Var $ head strings) (tail strings)
   |                         ^^^^

generator/Data/XCB/Python/PyHelpers.hs:47:40: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘tail’
    (imported from Prelude, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Replace it with 'drop' 1, or use pattern matching or 'GHC.Internal.Data.List.uncons' instead. Consider refactoring to use "Data.List.NonEmpty"."
   |
47 |   in foldl mkDot (Var $ head strings) (tail strings)
   |                                        ^^^^

[3 of 3] Compiling Data.XCB.Python.Parse ( generator/Data/XCB/Python/Parse.hs, dist-newstyle/build/x86_64-linux/ghc-9.14.1/xcffib-1.13.0/build/Data/XCB/Python/Parse.o, dist-newstyle/build/x86_64-linux/ghc-9.14.1/xcffib-1.13.0/build/Data/XCB/Python/Parse.dyn_o )
generator/Data/XCB/Python/Parse.hs:260:35: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
260 |       let expr' = fromMaybe (Int (head is)) $ fmap exprConv expr
    |                                   ^^^^

generator/Data/XCB/Python/Parse.hs:261:46: warning: [GHC-17335] [-Wincomplete-record-selectors]
    Selecting the record field ‘int_value’ may fail for the following constructors:
      Var, Bool, None, Strings, ...
    |
261 |           is' = dropWhile (<= (fromIntegral (int_value expr'))) is
    |                                              ^^^^^^^^^

generator/Data/XCB/Python/Parse.hs:316:46: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
316 |         let cmpVal = xExpressionToPyExpr id (head bcCmp)
    |                                              ^^^^

generator/Data/XCB/Python/Parse.hs:321:46: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
321 |         let cmpVal = xExpressionToPyExpr id (head bcCmp)
    |                                              ^^^^

generator/Data/XCB/Python/Parse.hs:381:52: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
381 |         let cmpVal = xExpressionToPyExpr accessor (head bcCmp)
    |                                                    ^^^^

generator/Data/XCB/Python/Parse.hs:762:59: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘tail’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Replace it with 'drop' 1, or use pattern matching or 'GHC.Internal.Data.List.uncons' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
762 |         [mkReturn $ mkCall ("self." ++ name) (map mkName (tail baseArgs) ++ [mkName "is_checked=True"])]
    |                                                           ^^^^

generator/Data/XCB/Python/Parse.hs:764:59: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘tail’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Replace it with 'drop' 1, or use pattern matching or 'GHC.Internal.Data.List.uncons' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
764 |         [mkReturn $ mkCall ("self." ++ name) (map mkName (tail baseArgs) ++ [mkName "is_checked=False"])]
    |                                                           ^^^^

generator/Data/XCB/Python/Parse.hs:779:47: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
779 |       pack = mkPackMethod ext name m Nothing [head membs] Nothing
    |                                               ^^^^

Configuring executable 'xcffibgen' for xcffib-1.13.0...
Preprocessing executable 'xcffibgen' for xcffib-1.13.0...
Building executable 'xcffibgen' for xcffib-1.13.0...
[1 of 4] Compiling Data.XCB.Python.AST ( generator/Data/XCB/Python/AST.hs, dist-newstyle/build/x86_64-linux/ghc-9.14.1/xcffib-1.13.0/x/xcffibgen/build/xcffibgen/xcffibgen-tmp/Data/XCB/Python/AST.o )
[2 of 4] Compiling Data.XCB.Python.PyHelpers ( generator/Data/XCB/Python/PyHelpers.hs, dist-newstyle/build/x86_64-linux/ghc-9.14.1/xcffib-1.13.0/x/xcffibgen/build/xcffibgen/xcffibgen-tmp/Data/XCB/Python/PyHelpers.o )
generator/Data/XCB/Python/PyHelpers.hs:47:25: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Prelude, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
   |
47 |   in foldl mkDot (Var $ head strings) (tail strings)
   |                         ^^^^

generator/Data/XCB/Python/PyHelpers.hs:47:40: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘tail’
    (imported from Prelude, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Replace it with 'drop' 1, or use pattern matching or 'GHC.Internal.Data.List.uncons' instead. Consider refactoring to use "Data.List.NonEmpty"."
   |
47 |   in foldl mkDot (Var $ head strings) (tail strings)
   |                                        ^^^^

[3 of 4] Compiling Data.XCB.Python.Parse ( generator/Data/XCB/Python/Parse.hs, dist-newstyle/build/x86_64-linux/ghc-9.14.1/xcffib-1.13.0/x/xcffibgen/build/xcffibgen/xcffibgen-tmp/Data/XCB/Python/Parse.o )
generator/Data/XCB/Python/Parse.hs:260:35: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
260 |       let expr' = fromMaybe (Int (head is)) $ fmap exprConv expr
    |                                   ^^^^

generator/Data/XCB/Python/Parse.hs:261:46: warning: [GHC-17335] [-Wincomplete-record-selectors]
    Selecting the record field ‘int_value’ may fail for the following constructors:
      Var, Bool, None, Strings, ...
    |
261 |           is' = dropWhile (<= (fromIntegral (int_value expr'))) is
    |                                              ^^^^^^^^^

generator/Data/XCB/Python/Parse.hs:316:46: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
316 |         let cmpVal = xExpressionToPyExpr id (head bcCmp)
    |                                              ^^^^

generator/Data/XCB/Python/Parse.hs:321:46: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
321 |         let cmpVal = xExpressionToPyExpr id (head bcCmp)
    |                                              ^^^^

generator/Data/XCB/Python/Parse.hs:381:52: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
381 |         let cmpVal = xExpressionToPyExpr accessor (head bcCmp)
    |                                                    ^^^^

generator/Data/XCB/Python/Parse.hs:762:59: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘tail’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Replace it with 'drop' 1, or use pattern matching or 'GHC.Internal.Data.List.uncons' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
762 |         [mkReturn $ mkCall ("self." ++ name) (map mkName (tail baseArgs) ++ [mkName "is_checked=True"])]
    |                                                           ^^^^

generator/Data/XCB/Python/Parse.hs:764:59: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘tail’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Replace it with 'drop' 1, or use pattern matching or 'GHC.Internal.Data.List.uncons' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
764 |         [mkReturn $ mkCall ("self." ++ name) (map mkName (tail baseArgs) ++ [mkName "is_checked=False"])]
    |                                                           ^^^^

generator/Data/XCB/Python/Parse.hs:779:47: warning: [GHC-63394] [-Wx-partial]
    In the use of ‘head’
    (imported from Data.List, but defined in GHC.Internal.List):
    "This is a partial function, it throws an error on empty lists. Use pattern matching, 'Data.List.uncons' or 'Data.Maybe.listToMaybe' instead. Consider refactoring to use "Data.List.NonEmpty"."
    |
779 |       pack = mkPackMethod ext name m Nothing [head membs] Nothing

Signed-off-by: Tycho Andersen <tycho@tycho.pizza>
@tych0
tych0 merged commit 163bcb7 into master Oct 31, 2026
24 checks passed
@tych0
tych0 deleted the bump-ghc-versions branch October 31, 2026 19:14
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

Successfully merging this pull request may close these issues.

1 participant