snoyberg / conduit

A streaming data library
903 stars 196 forks source link

Flaky test suite failure with GHC 9.4.2 / text-2.0.1 #495

Open sternenseemann opened 2 years ago

sternenseemann commented 2 years ago

This happens occasionally, but across architectures. Full build log:

setupCompilerEnvironmentPhase
Build with /nix/store/76ry03j2vqf9kll6k3mdd7bix4jvwwf8-ghc-9.4.2.
unpacking sources
unpacking source archive /nix/store/xngkavb140dl6jgrxk3ndnzq4hzqrzmd-conduit-extra-1.3.6.tar.gz
source root is conduit-extra-1.3.6
setting SOURCE_DATE_EPOCH to timestamp 1652197678 of file conduit-extra-1.3.6/conduit-extra.cabal
patching sources
compileBuildDriverPhase
setupCompileFlags: -package-db=/private/tmp/nix-build-conduit-extra-1.3.6.drv-0/tmp.vcXn6Atypy/setup-package.conf.d -j2 -threaded -rtsopts
[1 of 2] Compiling Main             ( Setup.lhs, /private/tmp/nix-build-conduit-extra-1.3.6.drv-0/tmp.vcXn6Atypy/Main.o )
[2 of 2] Linking Setup
configuring
configureFlags: --verbose --prefix=/nix/store/v18blw187k49p9wk3i01bsl8f3axfx1n-conduit-extra-1.3.6 --libdir=$prefix/lib/$compiler --libsubdir=$abi/$libname --docdir=/nix/store/g340i5mal5n5x99yhs70q42jlxbmvw43-conduit-extra-1.3.6-doc/share/doc/conduit-extra-1.3.6 --with-gcc=clang --package-db=/private/tmp/nix-build-conduit-extra-1.3.6.drv-0/tmp.vcXn6Atypy/package.conf.d --ghc-options=-j2 --disable-split-objs --enable-library-profiling --profiling-detail=exported-functions --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --disable-benchmarks --enable-library-vanilla --disable-library-for-ghci --ghc-options=-haddock --extra-lib-dirs=/nix/store/zgsxw5zfnlzsrb3i3a1pmd9sa91zc9kd-ncurses-6.3-p20220507/lib --extra-lib-dirs=/nix/store/801k8nqfdcq5aj9iny04klxdxhrj371d-libffi-3.4.2/lib --extra-lib-dirs=/nix/store/7dp5alwa1gdz12lssx3hi08fdd2rpw0i-gmp-with-cxx-6.2.1/lib --extra-include-dirs=/nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/include --extra-lib-dirs=/nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib --extra-include-dirs=/nix/store/0ki9x3pv2s233dw0dpgw94bxkrvrvgh7-libcxx-11.1.0-dev/include --extra-lib-dirs=/nix/store/3nfg6yzw4r767a6riwf4jsn2czq635bi-libcxx-11.1.0/lib --extra-include-dirs=/nix/store/n77dvlhz3z3x8kn8xpyxavmdgpdj8cnm-libcxxabi-11.1.0-dev/include --extra-lib-dirs=/nix/store/36grdzp9lha3isiwiagnj1vyr4y10qvd-libcxxabi-11.1.0/lib --extra-include-dirs=/nix/store/nwi2h90q5qkrbwd0dw42lzilx48y0wq9-compiler-rt-libc-11.1.0-dev/include --extra-lib-dirs=/nix/store/4299q6d0bsymv881341bi8vpyjbbl40x-compiler-rt-libc-11.1.0/lib --extra-lib-dirs=/nix/store/76ry03j2vqf9kll6k3mdd7bix4jvwwf8-ghc-9.4.2/lib --extra-framework-dirs=/nix/store/xyz62c6zq856w1ci1mmasz4bb3wjgx13-swift-corefoundation-unstable-2018-09-14/Library/Frameworks
Using Parsec parser
Configuring conduit-extra-1.3.6...
Dependency async: using async-2.2.4
Dependency attoparsec >=0.10: using attoparsec-0.14.4
Dependency base >=4.12 && <5: using base-4.17.0.0
Dependency bytestring >=0.10.2: using bytestring-0.11.3.1
Dependency conduit >=1.3 && <1.4: using conduit-1.3.4.2
Dependency directory: using directory-1.3.7.1
Dependency filepath: using filepath-1.4.2.2
Dependency network >=2.3: using network-3.1.2.7
Dependency primitive >=0.5: using primitive-0.7.4.0
Dependency process: using process-1.6.15.0
Dependency resourcet >=1.1: using resourcet-1.2.6
Dependency stm: using stm-2.5.1.0
Dependency streaming-commons >=0.1.16: using streaming-commons-0.2.2.4
Dependency text: using text-2.0.1
Dependency transformers: using transformers-0.5.6.2
Dependency typed-process >=0.2.6: using typed-process-0.2.10.1
Dependency unliftio-core: using unliftio-core-0.2.0.1
Dependency QuickCheck: using QuickCheck-2.14.2
Dependency async: using async-2.2.4
Dependency attoparsec: using attoparsec-0.14.4
Dependency base: using base-4.17.0.0
Dependency bytestring: using bytestring-0.11.3.1
Dependency conduit: using conduit-1.3.4.2
Dependency conduit-extra: using conduit-extra-1.3.6
Dependency directory: using directory-1.3.7.1
Dependency exceptions: using exceptions-0.10.5
Dependency filepath: using filepath-1.4.2.2
Dependency hspec >=1.3: using hspec-2.10.6
Dependency process: using process-1.6.15.0
Dependency resourcet: using resourcet-1.2.6
Dependency stm: using stm-2.5.1.0
Dependency streaming-commons: using streaming-commons-0.2.2.4
Dependency text: using text-2.0.1
Dependency transformers: using transformers-0.5.6.2
Dependency transformers-base: using transformers-base-0.4.6
Source component graph:
    component lib
    component test:test dependency lib
Configured component graph:
    component conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE
        include async-2.2.4-7lULGXIvwpjKOvGzFiyfbU
        include attoparsec-0.14.4-8v4Fv7fqcp0KM3bazlGLHe
        include base-4.17.0.0
        include bytestring-0.11.3.1
        include conduit-1.3.4.2-BDnvk3oPqUSK1QPZkVnB74
        include directory-1.3.7.1
        include filepath-1.4.2.2
        include network-3.1.2.7-2MbWZ0sPCcgLKfag0hDsy
        include primitive-0.7.4.0-F0fP468f3Bl6qhcpC3mefe
        include process-1.6.15.0
        include resourcet-1.2.6-J3MhOQibMZC22OnF5FleJS
        include stm-2.5.1.0
        include streaming-commons-0.2.2.4-3mQ8ca8r7x6H03xJNOfQY3
        include text-2.0.1
        include transformers-0.5.6.2
        include typed-process-0.2.10.1-ImdSOIBXILJ7fgVe62AmJ5
        include unliftio-core-0.2.0.1-Kd7IyaAwS5V4BppR0qwIai
    component conduit-extra-1.3.6-8qybOuHdQP16SW2ofN1HPC-test
        include QuickCheck-2.14.2-3tClwZe1MDbLIlIgpxfKkC
        include async-2.2.4-7lULGXIvwpjKOvGzFiyfbU
        include attoparsec-0.14.4-8v4Fv7fqcp0KM3bazlGLHe
        include base-4.17.0.0
        include bytestring-0.11.3.1
        include conduit-1.3.4.2-BDnvk3oPqUSK1QPZkVnB74
        include conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE
        include directory-1.3.7.1
        include exceptions-0.10.5
        include filepath-1.4.2.2
        include hspec-2.10.6-J6VKzVB1drZ3rF6uX89sqd
        include process-1.6.15.0
        include resourcet-1.2.6-J3MhOQibMZC22OnF5FleJS
        include stm-2.5.1.0
        include streaming-commons-0.2.2.4-3mQ8ca8r7x6H03xJNOfQY3
        include text-2.0.1
        include transformers-0.5.6.2
        include transformers-base-0.4.6-DTBK5LkGUGWEOJag03zqCr
Linked component graph:
    unit conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE
        include async-2.2.4-7lULGXIvwpjKOvGzFiyfbU
        include attoparsec-0.14.4-8v4Fv7fqcp0KM3bazlGLHe
        include base-4.17.0.0
        include bytestring-0.11.3.1
        include conduit-1.3.4.2-BDnvk3oPqUSK1QPZkVnB74
        include directory-1.3.7.1
        include filepath-1.4.2.2
        include network-3.1.2.7-2MbWZ0sPCcgLKfag0hDsy
        include primitive-0.7.4.0-F0fP468f3Bl6qhcpC3mefe
        include process-1.6.15.0
        include resourcet-1.2.6-J3MhOQibMZC22OnF5FleJS
        include stm-2.5.1.0
        include streaming-commons-0.2.2.4-3mQ8ca8r7x6H03xJNOfQY3
        include text-2.0.1
        include transformers-0.5.6.2
        include typed-process-0.2.10.1-ImdSOIBXILJ7fgVe62AmJ5
        include unliftio-core-0.2.0.1-Kd7IyaAwS5V4BppR0qwIai
        Data.Conduit.Attoparsec=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Attoparsec,Data.Conduit.Binary=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Binary,Data.Conduit.ByteString.Builder=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.ByteString.Builder,Data.Conduit.Filesystem=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Filesystem,Data.Conduit.Foldl=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Foldl,Data.Conduit.Lazy=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Lazy,Data.Conduit.Network=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Network,Data.Conduit.Network.UDP=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Network.UDP,Data.Conduit.Network.Unix=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Network.Unix,Data.Conduit.Process=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Process,Data.Conduit.Process.Typed=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Process.Typed,Data.Conduit.Text=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Text,Data.Conduit.Zlib=conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE:Data.Conduit.Zlib
    unit conduit-extra-1.3.6-8qybOuHdQP16SW2ofN1HPC-test
        include QuickCheck-2.14.2-3tClwZe1MDbLIlIgpxfKkC
        include async-2.2.4-7lULGXIvwpjKOvGzFiyfbU
        include attoparsec-0.14.4-8v4Fv7fqcp0KM3bazlGLHe
        include base-4.17.0.0
        include bytestring-0.11.3.1
        include conduit-1.3.4.2-BDnvk3oPqUSK1QPZkVnB74
        include conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE
        include directory-1.3.7.1
        include exceptions-0.10.5
        include filepath-1.4.2.2
        include hspec-2.10.6-J6VKzVB1drZ3rF6uX89sqd
        include process-1.6.15.0
        include resourcet-1.2.6-J3MhOQibMZC22OnF5FleJS
        include stm-2.5.1.0
        include streaming-commons-0.2.2.4-3mQ8ca8r7x6H03xJNOfQY3
        include text-2.0.1
        include transformers-0.5.6.2
        include transformers-base-0.4.6-DTBK5LkGUGWEOJag03zqCr
Ready component graph:
    definite conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE
        depends async-2.2.4-7lULGXIvwpjKOvGzFiyfbU
        depends attoparsec-0.14.4-8v4Fv7fqcp0KM3bazlGLHe
        depends base-4.17.0.0
        depends bytestring-0.11.3.1
        depends conduit-1.3.4.2-BDnvk3oPqUSK1QPZkVnB74
        depends directory-1.3.7.1
        depends filepath-1.4.2.2
        depends network-3.1.2.7-2MbWZ0sPCcgLKfag0hDsy
        depends primitive-0.7.4.0-F0fP468f3Bl6qhcpC3mefe
        depends process-1.6.15.0
        depends resourcet-1.2.6-J3MhOQibMZC22OnF5FleJS
        depends stm-2.5.1.0
        depends streaming-commons-0.2.2.4-3mQ8ca8r7x6H03xJNOfQY3
        depends text-2.0.1
        depends transformers-0.5.6.2
        depends typed-process-0.2.10.1-ImdSOIBXILJ7fgVe62AmJ5
        depends unliftio-core-0.2.0.1-Kd7IyaAwS5V4BppR0qwIai
    definite conduit-extra-1.3.6-8qybOuHdQP16SW2ofN1HPC-test
        depends QuickCheck-2.14.2-3tClwZe1MDbLIlIgpxfKkC
        depends async-2.2.4-7lULGXIvwpjKOvGzFiyfbU
        depends attoparsec-0.14.4-8v4Fv7fqcp0KM3bazlGLHe
        depends base-4.17.0.0
        depends bytestring-0.11.3.1
        depends conduit-1.3.4.2-BDnvk3oPqUSK1QPZkVnB74
        depends conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE
        depends directory-1.3.7.1
        depends exceptions-0.10.5
        depends filepath-1.4.2.2
        depends hspec-2.10.6-J6VKzVB1drZ3rF6uX89sqd
        depends process-1.6.15.0
        depends resourcet-1.2.6-J3MhOQibMZC22OnF5FleJS
        depends stm-2.5.1.0
        depends streaming-commons-0.2.2.4-3mQ8ca8r7x6H03xJNOfQY3
        depends text-2.0.1
        depends transformers-0.5.6.2
        depends transformers-base-0.4.6-DTBK5LkGUGWEOJag03zqCr
Using Cabal-3.8.1.0 compiled by ghc-9.4
Using compiler: ghc-9.4.2
Using install prefix:
/nix/store/v18blw187k49p9wk3i01bsl8f3axfx1n-conduit-extra-1.3.6
Executables installed in:
/nix/store/v18blw187k49p9wk3i01bsl8f3axfx1n-conduit-extra-1.3.6/bin
Libraries installed in:
/nix/store/v18blw187k49p9wk3i01bsl8f3axfx1n-conduit-extra-1.3.6/lib/ghc-9.4.2/x86_64-osx-ghc-9.4.2/conduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE
Dynamic Libraries installed in:
/nix/store/v18blw187k49p9wk3i01bsl8f3axfx1n-conduit-extra-1.3.6/lib/ghc-9.4.2/x86_64-osx-ghc-9.4.2
Private executables installed in:
/nix/store/v18blw187k49p9wk3i01bsl8f3axfx1n-conduit-extra-1.3.6/libexec/x86_64-osx-ghc-9.4.2/conduit-extra-1.3.6
Data files installed in:
/nix/store/v18blw187k49p9wk3i01bsl8f3axfx1n-conduit-extra-1.3.6/share/x86_64-osx-ghc-9.4.2/conduit-extra-1.3.6
Documentation installed in:
/nix/store/g340i5mal5n5x99yhs70q42jlxbmvw43-conduit-extra-1.3.6-doc/share/doc/conduit-extra-1.3.6
Configuration files installed in:
/nix/store/v18blw187k49p9wk3i01bsl8f3axfx1n-conduit-extra-1.3.6/etc
No alex found
Using ar found on system at:
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ar
No c2hs found
No cpphs found
No doctest found
Using gcc version 11.1.0 given by user at:
/nix/store/f6v6m3zdrqs84llppis8wcz3z3m0ybzl-clang-wrapper-11.1.0/bin/clang
Using ghc version 9.4.2 found on system at:
/nix/store/76ry03j2vqf9kll6k3mdd7bix4jvwwf8-ghc-9.4.2/bin/ghc
Using ghc-pkg version 9.4.2 found on system at:
/nix/store/76ry03j2vqf9kll6k3mdd7bix4jvwwf8-ghc-9.4.2/bin/ghc-pkg-9.4.2
No ghcjs found
No ghcjs-pkg found
No greencard found
Using haddock version 2.27.0 found on system at:
/nix/store/76ry03j2vqf9kll6k3mdd7bix4jvwwf8-ghc-9.4.2/bin/haddock-ghc-9.4.2
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/76ry03j2vqf9kll6k3mdd7bix4jvwwf8-ghc-9.4.2/bin/hpc
Using hsc2hs version 0.68.8 found on system at:
/nix/store/76ry03j2vqf9kll6k3mdd7bix4jvwwf8-ghc-9.4.2/bin/hsc2hs
Using hscolour version 1.24 found on system at:
/nix/store/q43kzq999ca6a5kv5rvgi8fygjgzyjg7-hscolour-1.24.4/bin/HsColour
No jhc found
Using ld found on system at:
/nix/store/3577cldlwvh8f3nqsfdd42xdg0z4n7p7-cctools-binutils-darwin-wrapper-949.0.1/bin/ld
No pkg-config found
Using runghc version 9.4.2 found on system at:
/nix/store/76ry03j2vqf9kll6k3mdd7bix4jvwwf8-ghc-9.4.2/bin/runghc-9.4.2
Using strip found on system at:
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/strip
Using tar found on system at:
/nix/store/chyv2lwsgggwg76xkbam5pa3azfbqm0n-gnutar-1.34/bin/tar
No uhc found
building
Preprocessing library for conduit-extra-1.3.6..
Building library for conduit-extra-1.3.6..
[ 1 of 13] Compiling Data.Conduit.Attoparsec ( Data/Conduit/Attoparsec.hs, dist/build/Data/Conduit/Attoparsec.o, dist/build/Data/Conduit/Attoparsec.dyn_o )
[ 2 of 13] Compiling Data.Conduit.Binary ( Data/Conduit/Binary.hs, dist/build/Data/Conduit/Binary.o, dist/build/Data/Conduit/Binary.dyn_o )
[ 3 of 13] Compiling Data.Conduit.ByteString.Builder ( Data/Conduit/ByteString/Builder.hs, dist/build/Data/Conduit/ByteString/Builder.o, dist/build/Data/Conduit/ByteString/Builder.dyn_o )
[ 4 of 13] Compiling Data.Conduit.Filesystem ( Data/Conduit/Filesystem.hs, dist/build/Data/Conduit/Filesystem.o, dist/build/Data/Conduit/Filesystem.dyn_o )
[ 5 of 13] Compiling Data.Conduit.Foldl ( Data/Conduit/Foldl.hs, dist/build/Data/Conduit/Foldl.o, dist/build/Data/Conduit/Foldl.dyn_o )
[ 6 of 13] Compiling Data.Conduit.Lazy ( Data/Conduit/Lazy.hs, dist/build/Data/Conduit/Lazy.o, dist/build/Data/Conduit/Lazy.dyn_o )
[ 7 of 13] Compiling Data.Conduit.Network ( Data/Conduit/Network.hs, dist/build/Data/Conduit/Network.o, dist/build/Data/Conduit/Network.dyn_o )
[ 8 of 13] Compiling Data.Conduit.Network.UDP ( Data/Conduit/Network/UDP.hs, dist/build/Data/Conduit/Network/UDP.o, dist/build/Data/Conduit/Network/UDP.dyn_o )
[ 9 of 13] Compiling Data.Conduit.Network.Unix ( Data/Conduit/Network/Unix.hs, dist/build/Data/Conduit/Network/Unix.o, dist/build/Data/Conduit/Network/Unix.dyn_o )
[10 of 13] Compiling Data.Conduit.Process ( Data/Conduit/Process.hs, dist/build/Data/Conduit/Process.o, dist/build/Data/Conduit/Process.dyn_o )

Data/Conduit/Process.hs:47:13: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
47 | instance (r ~ (), MonadIO m, i ~ ByteString) => InputSource (ConduitM i o m r) where
   |             ^

Data/Conduit/Process.hs:47:32: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
47 | instance (r ~ (), MonadIO m, i ~ ByteString) => InputSource (ConduitM i o m r) where
   |                                ^

Data/Conduit/Process.hs:48:20: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
48 |     isStdStream = (\(Just h) -> hSetBuffering h NoBuffering $> sinkHandle h, Just CreatePipe)
   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:49:13: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
49 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, i ~ ByteString) => InputSource (ConduitM i o m r, n r') where
   |             ^

Data/Conduit/Process.hs:49:22: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
49 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, i ~ ByteString) => InputSource (ConduitM i o m r, n r') where
   |                      ^

Data/Conduit/Process.hs:49:52: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
49 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, i ~ ByteString) => InputSource (ConduitM i o m r, n r') where
   |                                                    ^

Data/Conduit/Process.hs:50:20: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
50 |     isStdStream = (\(Just h) -> hSetBuffering h NoBuffering $> (sinkHandle h, liftIO $ hClose h), Just CreatePipe)
   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:65:24: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
65 | instance (MonadIO m, r ~ ()) => InputSource (BuilderInput o m r) where
   |                        ^

Data/Conduit/Process.hs:66:18: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
66 |   isStdStream = (\(Just h) -> return $ BuilderInput $ sinkHandleBuilder h, Just CreatePipe)
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:67:35: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
67 | instance (MonadIO m, MonadIO n, r ~ (), r' ~ ()) => InputSource (BuilderInput o m r, n r') where
   |                                   ^

Data/Conduit/Process.hs:67:44: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
67 | instance (MonadIO m, MonadIO n, r ~ (), r' ~ ()) => InputSource (BuilderInput o m r, n r') where
   |                                            ^

Data/Conduit/Process.hs:68:18: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
68 |   isStdStream = (\(Just h) -> return (BuilderInput $ sinkHandleBuilder h, liftIO $ hClose h), Just CreatePipe)
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:69:24: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
69 | instance (MonadIO m, r ~ ()) => InputSource (FlushInput o m r) where
   |                        ^

Data/Conduit/Process.hs:70:18: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
70 |   isStdStream = (\(Just h) -> return $ FlushInput $ sinkHandleFlush h, Just CreatePipe)
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:71:35: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
71 | instance (MonadIO m, MonadIO n, r ~ (), r' ~ ()) => InputSource (FlushInput o m r, n r') where
   |                                   ^

Data/Conduit/Process.hs:71:44: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
71 | instance (MonadIO m, MonadIO n, r ~ (), r' ~ ()) => InputSource (FlushInput o m r, n r') where
   |                                            ^

Data/Conduit/Process.hs:72:18: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
72 |   isStdStream = (\(Just h) -> return (FlushInput $ sinkHandleFlush h, liftIO $ hClose h), Just CreatePipe)
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:74:13: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
74 | instance (r ~ (), MonadIO m, o ~ ByteString) => OutputSink (ConduitM i o m r) where
   |             ^

Data/Conduit/Process.hs:74:32: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
74 | instance (r ~ (), MonadIO m, o ~ ByteString) => OutputSink (ConduitM i o m r) where
   |                                ^

Data/Conduit/Process.hs:75:20: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
75 |     osStdStream = (\(Just h) -> hSetBuffering h NoBuffering $> sourceHandle h, Just CreatePipe)
   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:76:13: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
76 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, o ~ ByteString) => OutputSink (ConduitM i o m r, n r') where
   |             ^

Data/Conduit/Process.hs:76:22: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
76 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, o ~ ByteString) => OutputSink (ConduitM i o m r, n r') where
   |                      ^

Data/Conduit/Process.hs:76:52: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
76 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, o ~ ByteString) => OutputSink (ConduitM i o m r, n r') where
   |                                                    ^

Data/Conduit/Process.hs:77:20: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
77 |     osStdStream = (\(Just h) -> hSetBuffering h NoBuffering $> (sourceHandle h, liftIO $ hClose h), Just CreatePipe)
   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[11 of 13] Compiling Data.Conduit.Process.Typed ( Data/Conduit/Process/Typed.hs, dist/build/Data/Conduit/Process/Typed.o, dist/build/Data/Conduit/Process/Typed.dyn_o )
[12 of 13] Compiling Data.Conduit.Text ( Data/Conduit/Text.hs, dist/build/Data/Conduit/Text.o, dist/build/Data/Conduit/Text.dyn_o )
[13 of 13] Compiling Data.Conduit.Zlib ( Data/Conduit/Zlib.hs, dist/build/Data/Conduit/Zlib.o, dist/build/Data/Conduit/Zlib.dyn_o )
[ 1 of 13] Compiling Data.Conduit.Attoparsec ( Data/Conduit/Attoparsec.hs, dist/build/Data/Conduit/Attoparsec.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[ 2 of 13] Compiling Data.Conduit.Binary ( Data/Conduit/Binary.hs, dist/build/Data/Conduit/Binary.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[ 3 of 13] Compiling Data.Conduit.ByteString.Builder ( Data/Conduit/ByteString/Builder.hs, dist/build/Data/Conduit/ByteString/Builder.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[ 4 of 13] Compiling Data.Conduit.Filesystem ( Data/Conduit/Filesystem.hs, dist/build/Data/Conduit/Filesystem.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[ 5 of 13] Compiling Data.Conduit.Foldl ( Data/Conduit/Foldl.hs, dist/build/Data/Conduit/Foldl.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[ 6 of 13] Compiling Data.Conduit.Lazy ( Data/Conduit/Lazy.hs, dist/build/Data/Conduit/Lazy.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[ 7 of 13] Compiling Data.Conduit.Network ( Data/Conduit/Network.hs, dist/build/Data/Conduit/Network.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[ 8 of 13] Compiling Data.Conduit.Network.UDP ( Data/Conduit/Network/UDP.hs, dist/build/Data/Conduit/Network/UDP.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[ 9 of 13] Compiling Data.Conduit.Network.Unix ( Data/Conduit/Network/Unix.hs, dist/build/Data/Conduit/Network/Unix.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[10 of 13] Compiling Data.Conduit.Process ( Data/Conduit/Process.hs, dist/build/Data/Conduit/Process.p_o )

Data/Conduit/Process.hs:47:13: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
47 | instance (r ~ (), MonadIO m, i ~ ByteString) => InputSource (ConduitM i o m r) where
   |             ^

Data/Conduit/Process.hs:47:32: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
47 | instance (r ~ (), MonadIO m, i ~ ByteString) => InputSource (ConduitM i o m r) where
   |                                ^

Data/Conduit/Process.hs:48:20: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
48 |     isStdStream = (\(Just h) -> hSetBuffering h NoBuffering $> sinkHandle h, Just CreatePipe)
   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:49:13: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
49 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, i ~ ByteString) => InputSource (ConduitM i o m r, n r') where
   |             ^

Data/Conduit/Process.hs:49:22: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
49 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, i ~ ByteString) => InputSource (ConduitM i o m r, n r') where
   |                      ^

Data/Conduit/Process.hs:49:52: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
49 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, i ~ ByteString) => InputSource (ConduitM i o m r, n r') where
   |                                                    ^

Data/Conduit/Process.hs:50:20: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
50 |     isStdStream = (\(Just h) -> hSetBuffering h NoBuffering $> (sinkHandle h, liftIO $ hClose h), Just CreatePipe)
   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:65:24: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
65 | instance (MonadIO m, r ~ ()) => InputSource (BuilderInput o m r) where
   |                        ^

Data/Conduit/Process.hs:66:18: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
66 |   isStdStream = (\(Just h) -> return $ BuilderInput $ sinkHandleBuilder h, Just CreatePipe)
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:67:35: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
67 | instance (MonadIO m, MonadIO n, r ~ (), r' ~ ()) => InputSource (BuilderInput o m r, n r') where
   |                                   ^

Data/Conduit/Process.hs:67:44: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
67 | instance (MonadIO m, MonadIO n, r ~ (), r' ~ ()) => InputSource (BuilderInput o m r, n r') where
   |                                            ^

Data/Conduit/Process.hs:68:18: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
68 |   isStdStream = (\(Just h) -> return (BuilderInput $ sinkHandleBuilder h, liftIO $ hClose h), Just CreatePipe)
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:69:24: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
69 | instance (MonadIO m, r ~ ()) => InputSource (FlushInput o m r) where
   |                        ^

Data/Conduit/Process.hs:70:18: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
70 |   isStdStream = (\(Just h) -> return $ FlushInput $ sinkHandleFlush h, Just CreatePipe)
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:71:35: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
71 | instance (MonadIO m, MonadIO n, r ~ (), r' ~ ()) => InputSource (FlushInput o m r, n r') where
   |                                   ^

Data/Conduit/Process.hs:71:44: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
71 | instance (MonadIO m, MonadIO n, r ~ (), r' ~ ()) => InputSource (FlushInput o m r, n r') where
   |                                            ^

Data/Conduit/Process.hs:72:18: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
72 |   isStdStream = (\(Just h) -> return (FlushInput $ sinkHandleFlush h, liftIO $ hClose h), Just CreatePipe)
   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:74:13: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
74 | instance (r ~ (), MonadIO m, o ~ ByteString) => OutputSink (ConduitM i o m r) where
   |             ^

Data/Conduit/Process.hs:74:32: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
74 | instance (r ~ (), MonadIO m, o ~ ByteString) => OutputSink (ConduitM i o m r) where
   |                                ^

Data/Conduit/Process.hs:75:20: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
75 |     osStdStream = (\(Just h) -> hSetBuffering h NoBuffering $> sourceHandle h, Just CreatePipe)
   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Data/Conduit/Process.hs:76:13: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
76 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, o ~ ByteString) => OutputSink (ConduitM i o m r, n r') where
   |             ^

Data/Conduit/Process.hs:76:22: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
76 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, o ~ ByteString) => OutputSink (ConduitM i o m r, n r') where
   |                      ^

Data/Conduit/Process.hs:76:52: warning: [-Wtype-equality-requires-operators]
    The use of ‘~’ without TypeOperators
    will become an error in a future GHC release.
    Suggested fix: Perhaps you intended to use TypeOperators
   |
76 | instance (r ~ (), r' ~ (), MonadIO m, MonadIO n, o ~ ByteString) => OutputSink (ConduitM i o m r, n r') where
   |                                                    ^

Data/Conduit/Process.hs:77:20: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘Maybe GHC.IO.Handle.Types.Handle’ not matched:
            Nothing
   |
77 |     osStdStream = (\(Just h) -> hSetBuffering h NoBuffering $> (sourceHandle h, liftIO $ hClose h), Just CreatePipe)
   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[11 of 13] Compiling Data.Conduit.Process.Typed ( Data/Conduit/Process/Typed.hs, dist/build/Data/Conduit/Process/Typed.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[12 of 13] Compiling Data.Conduit.Text ( Data/Conduit/Text.hs, dist/build/Data/Conduit/Text.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
[13 of 13] Compiling Data.Conduit.Zlib ( Data/Conduit/Zlib.hs, dist/build/Data/Conduit/Zlib.p_o )
ld: warning: /nix/store/v7jg02akx03xx7z0djyzfpbl2v7dbnrj-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(longlong.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(Disassembler.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(LdvProfile.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(OldARMAtomic.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(ProfilerReport.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(ProfilerReportJson.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(Profiling.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(RetainerProfile.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(RetainerSet.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(RtsDllMain.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(SpinLock.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(TraverseHeap.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(TraverseHeapTest.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(Evac_thr.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(Sanity.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(Scav_thr.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(Elf.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(PEi386.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(elf_got.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(elf_plt.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(elf_plt_aarch64.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(elf_plt_arm.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(elf_reloc.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(elf_reloc_aarch64.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(elf_tlsgd.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(elf_util.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(plt.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(plt_aarch64.o) has no symbols
/nix/store/i8w09x9nmibzsi4mahcwns844x0k2h5g-cctools-binutils-darwin-949.0.1/bin/ranlib: file: dist/build/libHSconduit-extra-1.3.6-F8ohchPGROuKOmCkh1eFqE-ghc9.4.2.a(StgCRunAsm.o) has no symbols
Preprocessing test suite 'test' for conduit-extra-1.3.6..
Building test suite 'test' for conduit-extra-1.3.6..
[ 1 of 12] Compiling Data.Conduit.AttoparsecSpec ( test/Data/Conduit/AttoparsecSpec.hs, dist/build/test/test-tmp/Data/Conduit/AttoparsecSpec.o )

test/Data/Conduit/AttoparsecSpec.hs:10:52: warning: [-Wunused-imports]
    The import of ‘<*’ from module ‘Control.Applicative’ is redundant
   |
10 | import           Control.Applicative              ((<*), (<|>))
   |                                                    ^^^^

test/Data/Conduit/AttoparsecSpec.hs:153:17: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a pattern binding:
        Patterns of type ‘Either
                            ghc-prim:GHC.Types.Any
                            [Either
                               ParseError (PositionRange, Data.Text.Internal.Text)]’ not matched:
            Left _
    |
153 |                 (Right !ea) = runConduit $ CL.sourceList input .| sink
    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

test/Data/Conduit/AttoparsecSpec.hs:159:36: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a lambda abstraction:
        Patterns of type ‘(Either
                             ParseError (PositionRange, Data.Text.Internal.Text),
                           Int)’ not matched:
            ((Left _), _)
    |
159 |             forM_ (zip ea [1..]) $ \ (Right (pos, _), l) -> pos `shouldBe` chkp l
    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ 2 of 12] Compiling Data.Conduit.BinarySpec ( test/Data/Conduit/BinarySpec.hs, dist/build/test/test-tmp/Data/Conduit/BinarySpec.o )

test/Data/Conduit/BinarySpec.hs:30:1: warning: [-Wunused-imports]
    The import of ‘Control.Applicative’ is redundant
      except perhaps to import instances from ‘Control.Applicative’
    To import instances alone, use: import Control.Applicative()
   |
30 | import Control.Applicative ((<$>))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ 3 of 12] Compiling Data.Conduit.ByteString.BuilderSpec ( test/Data/Conduit/ByteString/BuilderSpec.hs, dist/build/test/test-tmp/Data/Conduit/ByteString/BuilderSpec.o )
[ 4 of 12] Compiling Data.Conduit.ExtraSpec ( test/Data/Conduit/ExtraSpec.hs, dist/build/test/test-tmp/Data/Conduit/ExtraSpec.o )
[ 5 of 12] Compiling Data.Conduit.FilesystemSpec ( test/Data/Conduit/FilesystemSpec.hs, dist/build/test/test-tmp/Data/Conduit/FilesystemSpec.o )
[ 6 of 12] Compiling Data.Conduit.LazySpec ( test/Data/Conduit/LazySpec.hs, dist/build/test/test-tmp/Data/Conduit/LazySpec.o )
[ 7 of 12] Compiling Data.Conduit.NetworkSpec ( test/Data/Conduit/NetworkSpec.hs, dist/build/test/test-tmp/Data/Conduit/NetworkSpec.o )
[ 8 of 12] Compiling Data.Conduit.Process.TypedSpec ( test/Data/Conduit/Process/TypedSpec.hs, dist/build/test/test-tmp/Data/Conduit/Process/TypedSpec.o )

test/Data/Conduit/Process/TypedSpec.hs:15:12: warning: [-Wdeprecations]
    In the use of ‘withProcess_’
    (imported from Data.Conduit.Process.Typed, but defined in typed-process-0.2.10.1:System.Process.Typed):
    Deprecated: "Please consider using withProcessWait_, or instead use withProcessTerm_"
   |
15 |     bss <- withProcess_ pc $ \p ->
   |            ^^^^^^^^^^^^

test/Data/Conduit/Process/TypedSpec.hs:30:6: warning: [-Wdeprecations]
    In the use of ‘withProcess_’
    (imported from Data.Conduit.Process.Typed, but defined in typed-process-0.2.10.1:System.Process.Typed):
    Deprecated: "Please consider using withProcessWait_, or instead use withProcessTerm_"
   |
30 |     (withProcess_ (proc "cat" ["does not exist"]) $ const $ return ())
   |      ^^^^^^^^^^^^
[ 9 of 12] Compiling Data.Conduit.ProcessSpec ( test/Data/Conduit/ProcessSpec.hs, dist/build/test/test-tmp/Data/Conduit/ProcessSpec.o )
[10 of 12] Compiling Data.Conduit.TextSpec ( test/Data/Conduit/TextSpec.hs, dist/build/test/test-tmp/Data/Conduit/TextSpec.o )

test/Data/Conduit/TextSpec.hs:125:17: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a pattern binding:
        Patterns of type ‘Either
                            SomeException
                            ([Either SomeException T.Text], [S.ByteString])’ not matched:
            Left _
    |
125 |             let Right res = runIdentity $ runCatchT $ runConduit $ C.yield badBS .| (,)
    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

test/Data/Conduit/TextSpec.hs:142:17: warning: [-Wincomplete-uni-patterns]
    Pattern match(es) are non-exhaustive
    In a pattern binding:
        Patterns of type ‘Either
                            SomeException
                            ([Either SomeException T.Text], [S.ByteString])’ not matched:
            Left _
    |
142 |             let Right res = runIdentity $ runCatchT $ runConduit $
    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
[11 of 12] Compiling Data.Conduit.ZlibSpec ( test/Data/Conduit/ZlibSpec.hs, dist/build/test/test-tmp/Data/Conduit/ZlibSpec.o )
[12 of 12] Compiling Main             ( test/Spec.hs, dist/build/test/test-tmp/Main.o )
[13 of 13] Linking dist/build/test/test
running tests
Running 1 test suites...
Test suite test: RUNNING...

Data.Conduit.Attoparsec
  Data.Conduit.AttoparsecSpec
    error position
      works for text [✔]
      works for bytestring [✔]
      works in last chunk [✔]
      works in last chunk [✔]
      works after new line in text [✔]
      works after new line in bytestring [✔]
      works for first line [✔]
    conduitParser
      parses a repeated stream [✔]
      positions on first line [✔]
Data.Conduit.Binary
  Data.Conduit.Binary
    file access
      read [✔]
      read range [✔]
      write [✔]
      write builder (withSinkFileBuilder) [✔]
      conduit [✔]
    binary isolate
      works [✔]
    properly using binary file reading
      sourceFile [✔]
    binary head
      works [✔]
        +++ OK, passed 100 tests.
    binary takeWhile
      works [✔]
        +++ OK, passed 100 tests.
      leftovers present [✔]
        +++ OK, passed 100 tests.
    binary dropWhile
      works [✔]
        +++ OK, passed 100 tests.
    binary take
      nothing [✔]
      normal [✔]
      all [✔]
      more [✔]
    binary
      lines [✔]
        +++ OK, passed 100 tests.
    sinkCacheLength
      works [✔]
    sinkFileCautious
      success [✔]
      failure [✔]
    sinkSystemTempFile [✔]
    Data.Conduit.Binary.mapM_
      telling works [✔]
        +++ OK, passed 100 tests.
    exception handling
      catchC [✔]
      tryC [✔]
    normalFuseLeft
      does not double close conduit [✔]
    Storable
      sink Maybe
        chunk size 1 [✔]
          +++ OK, passed 100 tests.
        chunk size 5 [✔]
          +++ OK, passed 100 tests.
        chunk size 10 [✔]
          +++ OK, passed 100 tests.
        chunk size 100 [✔]
          +++ OK, passed 100 tests.
      sink exception
        chunk size 1 [✔]
          +++ OK, passed 100 tests.
        chunk size 5 [✔]
          +++ OK, passed 100 tests.
        chunk size 10 [✔]
          +++ OK, passed 100 tests.
        chunk size 100 [✔]
          +++ OK, passed 100 tests.
      insufficient bytes are leftovers, one chunk [✔]
      insufficient bytes are leftovers, multiple chunks [✔]
Data.Conduit.ByteString.Builder
  Data.Conduit.ByteString.Builder
    idempotent to toLazyByteString [✔]
      +++ OK, passed 100 tests.
    works for large input [✔]
    works for lazy bytestring insertion [✔]
    flush shouldn't bring in empty strings. [✔]
    flushing [✔]
      +++ OK, passed 100 tests.
    large flush input [✔]
Data.Conduit.Extra
  Data.Conduit.Extra
    basic test [✔]
    get leftovers [✔]
    multiple values [✔]
    more complex [✔]
      +++ OK, passed 100 tests.
Data.Conduit.Filesystem
  Data.Conduit.Filesystem
    sourceDirectory [✔]
    sourceDirectoryDeep [✔]
Data.Conduit.Lazy
  Data.Conduit.Lazy
    lazy
      works inside a ResourceT [✔]
      returns nothing outside ResourceT [✔]
      works with pure sources [✔]
Data.Conduit.Network
  Data.Conduit.Network
    run general server
      running tcp server [✔]
    fork server
      can connect to server [✔]
      fork server also executes custom afterBind [✔]
      fork server really waits for server to be finalized before returning [✔]
Data.Conduit.Process
  Data.Conduit.Process
    cat [✔]
      +++ OK, passed 100 tests.
    closed stream [✔]
    handles sub-process exit code [✔]
    consumes stdout [✔]
    consumes stderr [✔]
    feeds stdin [✔]
    blocking vs non-blocking [✔]
Data.Conduit.Process.Typed
  cat works [✔]
  cat works with withLoggedProcess_ [✔]
  failing process throws [✔]
  failing process throws [✔]
Data.Conduit.Text
  Data.Conduit.Text
    text
      utf8
        single chunk [✔]
          +++ OK, passed 100 tests.
        many chunks [✔]
          +++ OK, passed 100 tests.
        raw bytes [✘]
        encoding [✔]
          +++ OK, passed 100 tests.
        valid then invalid [✔]
          +++ OK, passed 100 tests.
      utf16_le
        single chunk [✔]
          +++ OK, passed 100 tests.
        many chunks [✔]
          +++ OK, passed 100 tests.
        raw bytes [✔]
          +++ OK, passed 100 tests.
        encoding [✔]
          +++ OK, passed 100 tests.
        valid then invalid [✔]
          +++ OK, passed 100 tests.
      utf16_be
        single chunk [✔]
          +++ OK, passed 100 tests.
        many chunks [✔]
          +++ OK, passed 100 tests.
        raw bytes [✔]
          +++ OK, passed 100 tests.
        encoding [✔]
          +++ OK, passed 100 tests.
        valid then invalid [✔]
          +++ OK, passed 100 tests.
      utf32_le
        single chunk [✔]
          +++ OK, passed 100 tests.
        many chunks [✔]
          +++ OK, passed 100 tests.
        raw bytes [✔]
          +++ OK, passed 100 tests.
        encoding [✔]
          +++ OK, passed 100 tests.
        valid then invalid [✔]
          +++ OK, passed 100 tests.
      utf32_be
        single chunk [✔]
          +++ OK, passed 100 tests.
        many chunks [✔]
          +++ OK, passed 100 tests.
        raw bytes [✔]
          +++ OK, passed 100 tests.
        encoding [✔]
          +++ OK, passed 100 tests.
        valid then invalid [✔]
          +++ OK, passed 100 tests.
      mixed utf16 and utf8 [✔]
      invalid utf8 [✔]
      catch UTF8 exceptions [✔]
      catch UTF8 exceptions, pure [✔]
      catch UTF8 exceptions, catchExceptionC [✔]
      catch UTF8 exceptions, catchExceptionC, decodeUtf8 [✔]
      lenient UTF8 decoding [✔]
        +++ OK, passed 100 tests.
    text lines
      yields nothing given nothing [✔]
      yields nothing given only empty text [✔]
      works across split lines [✔]
      works with multiple lines in an item [✔]
      works with ending on a newline [✔]
      works with ending a middle item on a newline [✔]
      works with empty text [✔]
      works with empty lines [✔]
    text lines bounded
      yields nothing given nothing [✔]
      yields nothing given only empty text [✔]
      works across split lines [✔]
      works with multiple lines in an item [✔]
      works with ending on a newline [✔]
      works with ending a middle item on a newline [✔]
      works with empty text [✔]
      works with empty lines [✔]
      throws an exception when lines are too long [✔]
      works with infinite input [✔]
    text decode
      doesn't throw runtime exceptions [✔]
      is not too eager [✔]
Data.Conduit.Zlib
  Data.Conduit.Zlib
    idempotent [✔]
      +++ OK, passed 100 tests.
    flush [✔]
      +++ OK, passed 100 tests.
    compressFlush large data [✔]
    uncompressed after compressed [✔]
    multiple compressed values [✔]
    single compressed, multiple uncompressed chunks [✔]
    multiple, over 32k [✔]

Failures:

  test/Data/Conduit/TextSpec.hs:44:17: 
  1) Data.Conduit.Text.Data.Conduit.Text.text.utf8 raw bytes
       uncaught exception: UnicodeException
       Cannot decode byte '\xc2': Data.Text.Lazy.Encoding.decodeUtf8With: Invalid UTF-8 stream
       (after 28 tests and 1 shrink)
         [194]

  To rerun use: --match "/Data.Conduit.Text/Data.Conduit.Text/text/utf8/raw bytes/"

Randomized with seed 1407887965

Finished in 6.9473 seconds
132 examples, 1 failure
Test suite test: FAIL
Test suite logged to: dist/test/conduit-extra-1.3.6-test.log
0 of 1 test suites (0 of 1 test cases) passed.
parsonsmatt commented 2 years ago

problem comes from the test cases made by go "utf8" TLE.encodeUtf8 TLE.decodeUtf8 CT.utf8 in the test suite

and the error is coming from TLE.decodeUtf8, not the conduit-extras code

So conduit-extra's CT.utf8 is succeeding while TLE.decodeUtf8 is failing.

The \xc2 is pretty consistent. This StackOverflow post. Calling TLE.decodeUtf8 pretty consistently fails with `"\xc2".

Building conduit-extra with text-1.2.5.0 and I cannot trigger the bug. That makes me suspect the implementation of Data.Streaming.Text.decodeUtf8

parsonsmatt commented 2 years ago

Seems to be related to this: https://github.com/fpco/streaming-commons/issues/70

yoricksijsling commented 1 year ago

The seemingly related issue https://github.com/fpco/streaming-commons/issues/70 was fixed in https://github.com/fpco/streaming-commons/pull/71. Does that mean that this issue is fixed as well?

The PR does refer to a flaky test, but I don't know if it's this one.

ysangkok commented 1 year ago

Could this be related to

? Because I see mentions of UTF8 above.

SamB commented 1 year ago

Yeah, [194] (aka [0xc2]) is supposed to fail to decode that way.

We can also write this byte as 0b11000010, which makes it more obvious that it has the form of a leading byte for a 2-byte sequence, but there is no trailing 0b10xxxxxx byte, so it's impossible to decode correctly. It appears that conduit-extra's UTF-8 decoder is NOT failing when it should.

ysangkok commented 1 year ago

@SamB I am not sure whether you are implying that conduit-extra has UTF-8 decoding separate from the text package? If the issue was fixed in text-2.0.2, does that also fix the issue with conduit-extra?