Closed shayne-fletcher closed 1 year ago
Thanks for the PR! I applied some of this in 5447cd1c48226789c79844c97226bf9bc2b55d42 and an alternative to other parts in 173409ff83ca6c0098e313143f58c2edb88fc755. Does that all work for you now?
nearly. the unsnoc
problem remains.
extra > /private/var/folders/rj/q93vlym52875_k7nwz_c3wth0000gn/T/stack-19d020feeadbf370/extra-1.7.13/src/Data/List/Extra.hs:202:24: error: [GHC-87543]
extra > Ambiguous occurrence ‘unsnoc’.
extra > It could refer to
extra > either ‘Data.List.unsnoc’,
extra > imported from ‘Data.List’ at src/Data/List/Extra.hs:41:1-16
extra > (and originally defined in ‘GHC.List’),
extra > or ‘Data.List.Extra.unsnoc’,
extra > defined at src/Data/List/Extra.hs:199:1.
extra > |
extra > 202 | where Just (a,b) = unsnoc xs
extra > | ^^^^^^
Oops. Put the conditions in backwards. Can you try again?
looks good, builds now. there are warnings. confirmed that adding {-# OPTIONS_GHC -Wno-duplicate-exports -Wno-x-partial #-}
to the top of 'Data.List.Extra.hs' suppresses them.
src/Data/List/Extra.hs:21:23: warning: [GHC-47854] [-Wduplicate-exports]
‘!?’ is exported by ‘(!?)’ and ‘module Data.List’
|
21 | headDef, lastDef, (!?), notNull, list, unsnoc, cons, snoc,
| ^^^^
src/Data/List/Extra.hs:21:44: warning: [GHC-47854] [-Wduplicate-exports]
‘unsnoc’ is exported by ‘unsnoc’ and ‘module Data.List’
|
21 | headDef, lastDef, (!?), notNull, list, unsnoc, cons, snoc,
| ^^^^^^
src/Data/List/Extra.hs:498:31: warning: [GHC-63394] [-Wx-partial]
In the use of ‘head’
(imported from Prelude, but defined in GHC.List):
"This is a partial function, it throws an error on empty lists. Use pattern matching or Data.List.uncons instead. Consider refactoring to use Data.List.NonEmpty."
|
498 | groupSort = map (\x -> (fst $ head x, map snd x)) . groupOn fst . sortOn fst
| ^^^^
fixed by a stack starting at 5447cd1c48226789c79844c97226bf9bc2b55d42
Thanks! Just releasing a new extra now
i happened to try building with ghc built from head today (ghc.9.7.20230617) and found it failed with some ambiguities. this seems to fix it. tested with
cabal new-build all