on master help sign in
Build streamly with ghc-9.6.1
8d7b837Ranjeet Ranjan
.github/workflows/haskell.yml+8
@@ -74,6 +74,14 @@ jobs:
74 cabal_project: cabal.project.ghc-head
74 cabal_project: cabal.project.ghc-head
75 disable_sdist_build: "y"
75 disable_sdist_build: "y"
76 ignore_error: true
76 ignore_error: true
77+ - name: 9.6.1
78+ ghc_version: 9.6.1
79+ runner: ubuntu-latest
80+ build: cabal
81+ cabal_version: 3.10.1.0
82+ disable_sdist_build: "y"
83+ cabal_project: cabal.project
84+ ignore_error: true
77 - name: 9.4.4-Werror
85 - name: 9.4.4-Werror
78 ghc_version: 9.4.4
86 ghc_version: 9.4.4
79 runner: ubuntu-latest
87 runner: ubuntu-latest
benchmark/streamly-benchmarks.cabal+3−3
@@ -174,9 +174,9 @@ common bench-depends
174 -- Core libraries shipped with ghc, the min and max
174 -- Core libraries shipped with ghc, the min and max
175 -- constraints of these libraries should match with
175 -- constraints of these libraries should match with
176 -- the GHC versions we support
176 -- the GHC versions we support
177− base >= 4.9 && < 4.18
177+ base >= 4.9 && < 4.19
178 , deepseq >= 1.4.1 && < 1.5
178 , deepseq >= 1.4.1 && < 1.5
179− , mtl >= 2.2 && < 2.3
179+ , mtl >= 2.2 && < 2.3.2
180
180
181 -- other libraries
181 -- other libraries
182 , random >= 1.0 && < 2.0
182 , random >= 1.0 && < 2.0
@@ -187,7 +187,7 @@ common bench-depends
187 , process >= 1.4 && < 1.7
187 , process >= 1.4 && < 1.7
188 , directory >= 1.2.2 && < 1.4
188 , directory >= 1.2.2 && < 1.4
189 , filepath >= 1.4.1 && < 1.5
189 , filepath >= 1.4.1 && < 1.5
190− , ghc-prim >= 0.4 && < 0.10
190+ , ghc-prim >= 0.4 && < 0.11
191
191
192 if flag(use-streamly-core)
192 if flag(use-streamly-core)
193 build-depends: streamly-core
193 build-depends: streamly-core
core/streamly-core.cabal+2−2
@@ -452,7 +452,7 @@ library
452 -- packages depending on the "ghc" package (packages
452 -- packages depending on the "ghc" package (packages
453 -- depending on doctest is a common example) can
453 -- depending on doctest is a common example) can
454 -- depend on streamly.
454 -- depend on streamly.
455− ghc-prim >= 0.5.3 && < 0.10
455+ ghc-prim >= 0.5.3 && < 0.11
456 , fusion-plugin-types >= 0.1 && < 0.2
456 , fusion-plugin-types >= 0.1 && < 0.2
457 , base >= 4.12 && < 4.19
457 , base >= 4.12 && < 4.19
458 , exceptions >= 0.8.0 && < 0.11
458 , exceptions >= 0.8.0 && < 0.11
@@ -460,7 +460,7 @@ library
460 , filepath >= 1.4.2 && < 1.5
460 , filepath >= 1.4.2 && < 1.5
461
461
462 -- streamly-unicode-core
462 -- streamly-unicode-core
463− , template-haskell >= 2.14 && < 2.20
463+ , template-haskell >= 2.14 && < 2.21
464
464
465 -- streamly-filesystem-core
465 -- streamly-filesystem-core
466 , directory >= 1.3.3 && < 1.4
466 , directory >= 1.3.3 && < 1.4
docs/streamly-docs.cabal+2−2
@@ -43,7 +43,7 @@ library
43 User.Tutorials.ReactiveProgramming
43 User.Tutorials.ReactiveProgramming
44
44
45 build-depends:
45 build-depends:
46− base >= 4.9 && < 4.18
46+ base >= 4.9 && < 4.19
47− , transformers >= 0.4 && < 0.6
47+ , transformers >= 0.4 && < 0.6.2
48 , streamly
48 , streamly
49 , streamly-core
49 , streamly-core
streamly.cabal+20−17
@@ -401,12 +401,25 @@ library
401 , Streamly.Network.Socket
401 , Streamly.Network.Socket
402 , Streamly.Network.Inet.TCP
402 , Streamly.Network.Inet.TCP
403
403
404− -- Deprecated
404+ -- Deprecated modules
405− , Streamly
406− , Streamly.Data.Unicode.Stream
407 , Streamly.Memory.Array
405 , Streamly.Memory.Array
408 , Streamly.Data.Array.Foreign
406 , Streamly.Data.Array.Foreign
407+
408+ if !impl(ghcjs) && flag(dev)
409+ exposed-modules:
410+ Streamly.Internal.System.IOVec.Type
411+ , Streamly.Internal.System.IOVec
412+ , Streamly.Internal.FileSystem.FDIO
413+ , Streamly.Internal.FileSystem.FD
414+
415+ if impl(ghc <= 9.4.5)
416+ exposed-modules:
417+ Streamly
418+ , Streamly.Data.Unicode.Stream
409 , Streamly.Prelude
419 , Streamly.Prelude
420+ , Streamly.Internal.Data.Stream.Async
421+ , Streamly.Internal.Data.Stream.Parallel
422+ , Streamly.Internal.Data.Stream.Ahead
410
423
411 -- Deprecated Internal modules
424 -- Deprecated Internal modules
412 , Streamly.Internal.Data.SVar.Worker
425 , Streamly.Internal.Data.SVar.Worker
@@ -422,9 +435,6 @@ library
422
435
423 , Streamly.Internal.Data.Stream.Serial
436 , Streamly.Internal.Data.Stream.Serial
424 , Streamly.Internal.Data.Stream.Zip
437 , Streamly.Internal.Data.Stream.Zip
425− , Streamly.Internal.Data.Stream.Async
426− , Streamly.Internal.Data.Stream.Parallel
427− , Streamly.Internal.Data.Stream.Ahead
428 , Streamly.Internal.Data.Stream.ZipAsync
438 , Streamly.Internal.Data.Stream.ZipAsync
429
439
430 , Streamly.Internal.Data.Stream.IsStream.Type
440 , Streamly.Internal.Data.Stream.IsStream.Type
@@ -441,13 +451,6 @@ library
441 , Streamly.Internal.Data.Stream.IsStream.Top
451 , Streamly.Internal.Data.Stream.IsStream.Top
442 , Streamly.Internal.Data.Stream.IsStream
452 , Streamly.Internal.Data.Stream.IsStream
443
453
444− if !impl(ghcjs) && flag(dev)
445− exposed-modules:
446− Streamly.Internal.System.IOVec.Type
447− , Streamly.Internal.System.IOVec
448− , Streamly.Internal.FileSystem.FDIO
449− , Streamly.Internal.FileSystem.FD
450−
451 if flag(dev)
454 if flag(dev)
452 exposed-modules: Streamly.Data.SmallArray
455 exposed-modules: Streamly.Data.SmallArray
453 , Streamly.Internal.Data.SmallArray
456 , Streamly.Internal.Data.SmallArray
@@ -485,16 +488,13 @@ library
485 , exceptions >= 0.8.0 && < 0.11
488 , exceptions >= 0.8.0 && < 0.11
486 , mtl >= 2.2.2 && < 2.4
489 , mtl >= 2.2.2 && < 2.4
487 , transformers >= 0.5.5 && < 0.7
490 , transformers >= 0.5.5 && < 0.7
488− , template-haskell >= 2.14 && < 2.20
491+ , template-haskell >= 2.14 && < 2.21
489
492
490 -- The core streamly package
493 -- The core streamly package
491 , streamly-core == 0.1.0
494 , streamly-core == 0.1.0
492
495
493 , hashable >= 1.3 && < 1.5
496 , hashable >= 1.3 && < 1.5
494 , unordered-containers >= 0.2 && < 0.3
497 , unordered-containers >= 0.2 && < 0.3
495−
496− -- XXX to be removed
497− , transformers-base >= 0.4 && < 0.5
498 , heaps >= 0.3 && < 0.5
498 , heaps >= 0.3 && < 0.5
499
499
500 -- concurrency
500 -- concurrency
@@ -506,6 +506,9 @@ library
506 -- Network
506 -- Network
507 , network >= 2.6 && < 3.2
507 , network >= 2.6 && < 3.2
508
508
509+ if impl(ghc <= 9.4.5)
510+ build-depends: transformers-base >= 0.4 && < 0.5
511+
509 if flag(use-unliftio)
512 if flag(use-unliftio)
510 build-depends: unliftio-core >= 0.2 && < 0.3
513 build-depends: unliftio-core >= 0.2 && < 0.3
511 else
514 else
test/streamly-tests.cabal+15−15
@@ -145,12 +145,12 @@ common optimization-options
145common test-dependencies
145common test-dependencies
146 build-depends:
146 build-depends:
147 streamly-core
147 streamly-core
148− , base >= 4.9 && < 4.18
148+ , base >= 4.9 && < 4.19
149 , containers >= 0.5 && < 0.7
149 , containers >= 0.5 && < 0.7
150 , exceptions >= 0.8 && < 0.11
150 , exceptions >= 0.8 && < 0.11
151 , ghc
151 , ghc
152 , hspec >= 2.0 && < 2.10
152 , hspec >= 2.0 && < 2.10
153− , mtl >= 2.2 && < 2.3
153+ , mtl >= 2.2 && < 2.3.2
154 , random >= 1.0.0 && < 1.3
154 , random >= 1.0.0 && < 1.3
155 , transformers >= 0.4 && < 0.7
155 , transformers >= 0.4 && < 0.7
156 , QuickCheck >= 2.13 && < 2.15
156 , QuickCheck >= 2.13 && < 2.15
@@ -180,7 +180,7 @@ library
180 import: lib-options, test-dependencies
180 import: lib-options, test-dependencies
181 hs-source-dirs: lib
181 hs-source-dirs: lib
182 exposed-modules: Streamly.Test.Common
182 exposed-modules: Streamly.Test.Common
183− if !flag(use-streamly-core)
183+ if !flag(use-streamly-core) && impl(ghc < 9.4.5)
184 exposed-modules: Streamly.Test.Prelude.Common
184 exposed-modules: Streamly.Test.Prelude.Common
185 if flag(limit-build-mem)
185 if flag(limit-build-mem)
186 ghc-options: +RTS -M1500M -RTS
186 ghc-options: +RTS -M1500M -RTS
@@ -386,7 +386,7 @@ test-suite Prelude
386 type: exitcode-stdio-1.0
386 type: exitcode-stdio-1.0
387 main-is: Streamly/Test/Prelude.hs
387 main-is: Streamly/Test/Prelude.hs
388 ghc-options: -main-is Streamly.Test.Prelude.main
388 ghc-options: -main-is Streamly.Test.Prelude.main
389− if flag(use-streamly-core)
389+ if flag(use-streamly-core) || impl(ghc >= 9.6)
390 buildable: False
390 buildable: False
391
391
392test-suite Prelude.Ahead
392test-suite Prelude.Ahead
@@ -394,7 +394,7 @@ test-suite Prelude.Ahead
394 type: exitcode-stdio-1.0
394 type: exitcode-stdio-1.0
395 main-is: Streamly/Test/Prelude/Ahead.hs
395 main-is: Streamly/Test/Prelude/Ahead.hs
396 ghc-options: -main-is Streamly.Test.Prelude.Ahead.main
396 ghc-options: -main-is Streamly.Test.Prelude.Ahead.main
397− if flag(use-streamly-core)
397+ if flag(use-streamly-core) || impl(ghc >= 9.6)
398 buildable: False
398 buildable: False
399
399
400test-suite Prelude.Async
400test-suite Prelude.Async
@@ -402,7 +402,7 @@ test-suite Prelude.Async
402 type: exitcode-stdio-1.0
402 type: exitcode-stdio-1.0
403 main-is: Streamly/Test/Prelude/Async.hs
403 main-is: Streamly/Test/Prelude/Async.hs
404 ghc-options: -main-is Streamly.Test.Prelude.Async.main
404 ghc-options: -main-is Streamly.Test.Prelude.Async.main
405− if flag(use-streamly-core)
405+ if flag(use-streamly-core) || impl(ghc >= 9.6)
406 buildable: False
406 buildable: False
407
407
408test-suite Data.Stream.Concurrent
408test-suite Data.Stream.Concurrent
@@ -420,7 +420,7 @@ test-suite Prelude.Concurrent
420 ghc-options: -main-is Streamly.Test.Prelude.Concurrent.main
420 ghc-options: -main-is Streamly.Test.Prelude.Concurrent.main
421 if flag(limit-build-mem)
421 if flag(limit-build-mem)
422 ghc-options: +RTS -M2000M -RTS
422 ghc-options: +RTS -M2000M -RTS
423− if flag(use-streamly-core)
423+ if flag(use-streamly-core) || impl(ghc >= 9.6)
424 buildable: False
424 buildable: False
425
425
426test-suite Prelude.Fold
426test-suite Prelude.Fold
@@ -428,7 +428,7 @@ test-suite Prelude.Fold
428 type: exitcode-stdio-1.0
428 type: exitcode-stdio-1.0
429 main-is: Streamly/Test/Prelude/Fold.hs
429 main-is: Streamly/Test/Prelude/Fold.hs
430 ghc-options: -main-is Streamly.Test.Prelude.Fold.main
430 ghc-options: -main-is Streamly.Test.Prelude.Fold.main
431− if flag(use-streamly-core)
431+ if flag(use-streamly-core) || impl(ghc >= 9.6)
432 buildable: False
432 buildable: False
433
433
434test-suite Prelude.Parallel
434test-suite Prelude.Parallel
@@ -436,7 +436,7 @@ test-suite Prelude.Parallel
436 type: exitcode-stdio-1.0
436 type: exitcode-stdio-1.0
437 main-is: Streamly/Test/Prelude/Parallel.hs
437 main-is: Streamly/Test/Prelude/Parallel.hs
438 ghc-options: -main-is Streamly.Test.Prelude.Parallel.main
438 ghc-options: -main-is Streamly.Test.Prelude.Parallel.main
439− if flag(use-streamly-core)
439+ if flag(use-streamly-core) || impl(ghc >= 9.6)
440 buildable: False
440 buildable: False
441
441
442test-suite Prelude.Rate
442test-suite Prelude.Rate
@@ -458,14 +458,14 @@ test-suite Prelude.Serial
458 ghc-options: -main-is Streamly.Test.Prelude.Serial.main
458 ghc-options: -main-is Streamly.Test.Prelude.Serial.main
459 if flag(limit-build-mem)
459 if flag(limit-build-mem)
460 ghc-options: +RTS -M1500M -RTS
460 ghc-options: +RTS -M1500M -RTS
461− if flag(use-streamly-core)
461+ if flag(use-streamly-core) || impl(ghc >= 9.6)
462 buildable: False
462 buildable: False
463
463
464test-suite Prelude.Top
464test-suite Prelude.Top
465 import: test-options
465 import: test-options
466 type: exitcode-stdio-1.0
466 type: exitcode-stdio-1.0
467 main-is: Streamly/Test/Prelude/Top.hs
467 main-is: Streamly/Test/Prelude/Top.hs
468− if flag(use-streamly-core)
468+ if flag(use-streamly-core) || impl(ghc >= 9.6)
469 buildable: False
469 buildable: False
470
470
471test-suite Prelude.WAsync
471test-suite Prelude.WAsync
@@ -473,7 +473,7 @@ test-suite Prelude.WAsync
473 type: exitcode-stdio-1.0
473 type: exitcode-stdio-1.0
474 main-is: Streamly/Test/Prelude/WAsync.hs
474 main-is: Streamly/Test/Prelude/WAsync.hs
475 ghc-options: -main-is Streamly.Test.Prelude.WAsync.main
475 ghc-options: -main-is Streamly.Test.Prelude.WAsync.main
476− if flag(use-streamly-core)
476+ if flag(use-streamly-core) || impl(ghc >= 9.6)
477 buildable: False
477 buildable: False
478
478
479test-suite Prelude.WSerial
479test-suite Prelude.WSerial
@@ -481,7 +481,7 @@ test-suite Prelude.WSerial
481 type: exitcode-stdio-1.0
481 type: exitcode-stdio-1.0
482 main-is: Streamly/Test/Prelude/WSerial.hs
482 main-is: Streamly/Test/Prelude/WSerial.hs
483 ghc-options: -main-is Streamly.Test.Prelude.WSerial.main
483 ghc-options: -main-is Streamly.Test.Prelude.WSerial.main
484− if flag(use-streamly-core)
484+ if flag(use-streamly-core) || impl(ghc >= 9.6)
485 buildable: False
485 buildable: False
486
486
487test-suite Prelude.ZipAsync
487test-suite Prelude.ZipAsync
@@ -491,7 +491,7 @@ test-suite Prelude.ZipAsync
491 ghc-options: -main-is Streamly.Test.Prelude.ZipAsync.main
491 ghc-options: -main-is Streamly.Test.Prelude.ZipAsync.main
492 if flag(limit-build-mem)
492 if flag(limit-build-mem)
493 ghc-options: +RTS -M750M -RTS
493 ghc-options: +RTS -M750M -RTS
494− if flag(use-streamly-core)
494+ if flag(use-streamly-core) || impl(ghc >= 9.6)
495 buildable: False
495 buildable: False
496
496
497test-suite Prelude.ZipSerial
497test-suite Prelude.ZipSerial
@@ -499,7 +499,7 @@ test-suite Prelude.ZipSerial
499 type: exitcode-stdio-1.0
499 type: exitcode-stdio-1.0
500 main-is: Streamly/Test/Prelude/ZipSerial.hs
500 main-is: Streamly/Test/Prelude/ZipSerial.hs
501 ghc-options: -main-is Streamly.Test.Prelude.ZipSerial.main
501 ghc-options: -main-is Streamly.Test.Prelude.ZipSerial.main
502− if flag(use-streamly-core)
502+ if flag(use-streamly-core) || impl(ghc >= 9.6)
503 buildable: False
503 buildable: False
504
504
505test-suite Unicode.Stream
505test-suite Unicode.Stream