From 25c30d7122f31144b26655e7cd01925fb917373e Mon Sep 17 00:00:00 2001 From: Marcin Szamotulski Date: Tue, 25 Apr 2023 19:15:07 +0200 Subject: [PATCH] Experimental ghc-9.4 support Requires: ``` allow-newer: cardano-binary:base, cardano-slotting:base ``` --- cardano-client/cardano-client.cabal | 2 +- cardano-ping/cardano-ping.cabal | 2 +- .../monoidal-synchronisation.cabal | 4 ++-- network-mux/network-mux.cabal | 6 +++--- ntp-client/ntp-client.cabal | 6 +++--- ouroboros-network-api/ouroboros-network-api.cabal | 4 ++-- .../src/Ouroboros/Network/AnchoredFragment.hs | 2 ++ ouroboros-network-api/src/Ouroboros/Network/Block.hs | 1 + ouroboros-network-framework/demo/connection-manager.hs | 1 + .../ouroboros-network-framework.cabal | 10 +++++----- .../src/Ouroboros/Network/ConnectionHandler.hs | 1 + .../src/Ouroboros/Network/ConnectionManager/Types.hs | 1 + .../src/Ouroboros/Network/InboundGovernor.hs | 3 --- .../src/Ouroboros/Network/MuxMode.hs | 1 + .../src/Ouroboros/Network/Socket.hs | 1 + .../test/Test/Ouroboros/Network/Server2.hs | 1 + ouroboros-network-mock/ouroboros-network-mock.cabal | 2 +- .../src/Ouroboros/Network/Mock/ConcreteBlock.hs | 1 + .../src/Ouroboros/Network/Mock/ProducerState.hs | 1 + .../ouroboros-network-protocols.cabal | 8 ++++---- .../Ouroboros/Network/Protocol/LocalTxMonitor/Codec.hs | 1 + .../test/Test/AnchoredFragment.hs | 1 + .../Ouroboros/Network/Protocol/ChainSync/Examples.hs | 1 + .../testlib/Test/ChainGenerators.hs | 1 + .../testlib/Test/ChainProducerState.hs | 6 ++++++ .../ouroboros-network-testing.cabal | 4 ++-- ouroboros-network/ouroboros-network.cabal | 6 +++--- ouroboros-network/src/Ouroboros/Network/BlockFetch.hs | 1 + .../src/Ouroboros/Network/BlockFetch/Client.hs | 1 + .../src/Ouroboros/Network/BlockFetch/Decision.hs | 1 + .../src/Ouroboros/Network/BlockFetch/State.hs | 1 + .../src/Ouroboros/Network/NodeToClient.hs | 1 + ouroboros-network/src/Ouroboros/Network/NodeToNode.hs | 1 + .../Network/PeerSelection/PeerStateActions.hs | 1 + .../test/Test/Ouroboros/Network/Diffusion/Node.hs | 1 + .../Ouroboros/Network/Diffusion/Node/MiniProtocols.hs | 1 + .../test/Test/Ouroboros/Network/TxSubmission.hs | 1 + 37 files changed, 58 insertions(+), 30 deletions(-) diff --git a/cardano-client/cardano-client.cabal b/cardano-client/cardano-client.cabal index 653214e9fe1..bd18ac12105 100644 --- a/cardano-client/cardano-client.cabal +++ b/cardano-client/cardano-client.cabal @@ -18,7 +18,7 @@ library hs-source-dirs: src exposed-modules: Cardano.Client.Subscription default-language: Haskell2010 - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, bytestring >=0.10 && <0.12, containers, io-classes ^>=1.1, diff --git a/cardano-ping/cardano-ping.cabal b/cardano-ping/cardano-ping.cabal index 15624691de5..1cc1d8e0888 100644 --- a/cardano-ping/cardano-ping.cabal +++ b/cardano-ping/cardano-ping.cabal @@ -22,7 +22,7 @@ flag asserts library hs-source-dirs: src exposed-modules: Cardano.Network.Ping - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, aeson >=2.1.1.0 && <3, cborg >=0.2.8 && <0.3, bytestring >=0.10 && <0.12, diff --git a/monoidal-synchronisation/monoidal-synchronisation.cabal b/monoidal-synchronisation/monoidal-synchronisation.cabal index f255b154050..b5b4a9b350b 100644 --- a/monoidal-synchronisation/monoidal-synchronisation.cabal +++ b/monoidal-synchronisation/monoidal-synchronisation.cabal @@ -15,7 +15,7 @@ extra-source-files: CHANGELOG.md library exposed-modules: Data.Monoid.Synchronisation - build-depends: base >=4.14 && <4.17 + build-depends: base >=4.14 && <4.19 hs-source-dirs: src default-language: Haskell2010 ghc-options: -Wall @@ -32,7 +32,7 @@ test-suite test main-is: Main.hs hs-source-dirs: test other-modules: Test.Data.Monoid.Synchronisation - build-depends: base >=4.14 && <4.17 + build-depends: base >=4.14 && <4.19 , QuickCheck , tasty diff --git a/network-mux/network-mux.cabal b/network-mux/network-mux.cabal index 214918c9499..78977c77dc9 100644 --- a/network-mux/network-mux.cabal +++ b/network-mux/network-mux.cabal @@ -44,7 +44,7 @@ common demo-deps -Wunused-packages library - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, io-classes ^>=1.1, strict-stm, si-timers, @@ -124,7 +124,7 @@ test-suite test Test.Mux.ReqResp Test.Mux.Timeout default-language: Haskell2010 - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, io-classes, si-timers, strict-stm, @@ -167,7 +167,7 @@ executable mux-demo hs-source-dirs: demo, test main-is: mux-demo.hs other-modules: Test.Mux.ReqResp - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, network-mux, io-classes, contra-tracer, diff --git a/ntp-client/ntp-client.cabal b/ntp-client/ntp-client.cabal index a3e6f9c8e9a..26ada7856ce 100644 --- a/ntp-client/ntp-client.cabal +++ b/ntp-client/ntp-client.cabal @@ -24,7 +24,7 @@ library other-modules: Network.NTP.Client.Packet Network.NTP.Client.Query build-depends: async >=2.2 && <2.3 - , base >=4.14 && <4.17 + , base >=4.14 && <4.19 , binary >=0.8 && <0.11 , bytestring >=0.10 && <0.12 , contra-tracer >=0.1 && <0.2 @@ -50,7 +50,7 @@ test-suite test main-is: Test.hs other-modules: Network.NTP.Client.Packet type: exitcode-stdio-1.0 - build-depends: base >=4.14 && <4.17 + build-depends: base >=4.14 && <4.19 , binary >=0.8 && <0.11 , time >=1.9.1 && <1.14 , QuickCheck @@ -68,7 +68,7 @@ executable demo-ntp-client else buildable: False build-depends: async >=2.2 && <2.3 - , base >=4.14 && <4.17 + , base >=4.14 && <4.19 , contra-tracer >=0.1 && <0.2 , Win32-network >=0.1 && <0.2 , ntp-client diff --git a/ouroboros-network-api/ouroboros-network-api.cabal b/ouroboros-network-api/ouroboros-network-api.cabal index bc2ad50e413..f5df8e8db53 100644 --- a/ouroboros-network-api/ouroboros-network-api.cabal +++ b/ouroboros-network-api/ouroboros-network-api.cabal @@ -46,7 +46,7 @@ library Ouroboros.Network.PeerSelection.PeerSharing Ouroboros.Network.PeerSelection.RelayAccessPoint default-language: Haskell2010 - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, aeson, base16-bytestring, bytestring >=0.10 && <0.12, @@ -58,7 +58,7 @@ library network >=3.1.2 && <3.2, nothunks, serialise >=0.2 && <0.3, - text >=1.2 && <1.3, + text >=1.2 && <2.1, cardano-slotting, cardano-strict-containers, diff --git a/ouroboros-network-api/src/Ouroboros/Network/AnchoredFragment.hs b/ouroboros-network-api/src/Ouroboros/Network/AnchoredFragment.hs index 2e01f4084c1..48e7368a48f 100644 --- a/ouroboros-network-api/src/Ouroboros/Network/AnchoredFragment.hs +++ b/ouroboros-network-api/src/Ouroboros/Network/AnchoredFragment.hs @@ -5,6 +5,8 @@ {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE StandaloneDeriving #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} + module Ouroboros.Network.AnchoredFragment ( -- * AnchoredFragment type and fundamental operations AnchoredFragment diff --git a/ouroboros-network-api/src/Ouroboros/Network/Block.hs b/ouroboros-network-api/src/Ouroboros/Network/Block.hs index ed7850010bf..5b95a495134 100644 --- a/ouroboros-network-api/src/Ouroboros/Network/Block.hs +++ b/ouroboros-network-api/src/Ouroboros/Network/Block.hs @@ -13,6 +13,7 @@ {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE StandaloneDeriving #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} -- | Abstract view over blocks diff --git a/ouroboros-network-framework/demo/connection-manager.hs b/ouroboros-network-framework/demo/connection-manager.hs index cd56c4c4fbc..9c771afc9ab 100644 --- a/ouroboros-network-framework/demo/connection-manager.hs +++ b/ouroboros-network-framework/demo/connection-manager.hs @@ -9,6 +9,7 @@ {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TupleSections #-} {-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeOperators #-} -- just to use 'debugTracer' {-# OPTIONS_GHC -Wno-redundant-constraints #-} diff --git a/ouroboros-network-framework/ouroboros-network-framework.cabal b/ouroboros-network-framework/ouroboros-network-framework.cabal index c975b35ec67..ccaf0aef046 100644 --- a/ouroboros-network-framework/ouroboros-network-framework.cabal +++ b/ouroboros-network-framework/ouroboros-network-framework.cabal @@ -67,7 +67,7 @@ library Simulation.Network.Snocket -- other-extensions: - build-depends: base >=4.12 && <4.17 + build-depends: base >=4.12 && <4.19 , async >=2.1 && <2.3 , bytestring >=0.10 && <0.12 , cborg >=0.2.1 && <0.3 @@ -125,7 +125,7 @@ library testlib other-modules: - build-depends: base >=4.14 && <4.17 + build-depends: base >=4.14 && <4.19 , containers , QuickCheck @@ -158,7 +158,7 @@ test-suite test Test.Ouroboros.Network.RateLimiting Test.Simulation.Network.Snocket - build-depends: base >=4.14 && <4.17 + build-depends: base >=4.14 && <4.19 , bytestring , cborg , containers @@ -216,7 +216,7 @@ test-suite test executable demo-ping-pong hs-source-dirs: demo test main-is: ping-pong.hs - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, async, bytestring, directory, @@ -243,7 +243,7 @@ executable demo-ping-pong executable demo-connection-manager hs-source-dirs: demo test main-is: connection-manager.hs - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, bytestring, network, optparse-applicative, diff --git a/ouroboros-network-framework/src/Ouroboros/Network/ConnectionHandler.hs b/ouroboros-network-framework/src/Ouroboros/Network/ConnectionHandler.hs index 6d94fd3c22c..5f84ea76062 100644 --- a/ouroboros-network-framework/src/Ouroboros/Network/ConnectionHandler.hs +++ b/ouroboros-network-framework/src/Ouroboros/Network/ConnectionHandler.hs @@ -7,6 +7,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} +{-# LANGUAGE TypeOperators #-} -- | Implementation of 'ConnectionHandler' -- diff --git a/ouroboros-network-framework/src/Ouroboros/Network/ConnectionManager/Types.hs b/ouroboros-network-framework/src/Ouroboros/Network/ConnectionManager/Types.hs index 46a3649a4d9..2e109059935 100644 --- a/ouroboros-network-framework/src/Ouroboros/Network/ConnectionManager/Types.hs +++ b/ouroboros-network-framework/src/Ouroboros/Network/ConnectionManager/Types.hs @@ -6,6 +6,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} +{-# LANGUAGE TypeOperators #-} -- 'withInitiatorMode' has @HasInitiator muxMode ~ True@ constraint, which is -- not redundant at all! It limits case analysis. diff --git a/ouroboros-network-framework/src/Ouroboros/Network/InboundGovernor.hs b/ouroboros-network-framework/src/Ouroboros/Network/InboundGovernor.hs index 54914205f70..0e31c0abd4e 100644 --- a/ouroboros-network-framework/src/Ouroboros/Network/InboundGovernor.hs +++ b/ouroboros-network-framework/src/Ouroboros/Network/InboundGovernor.hs @@ -4,12 +4,9 @@ {-# LANGUAGE GADTs #-} {-# LANGUAGE KindSignatures #-} {-# LANGUAGE LambdaCase #-} - {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} - - {-# LANGUAGE TypeOperators #-} -- 'runResponder' is using a redundant constraint. diff --git a/ouroboros-network-framework/src/Ouroboros/Network/MuxMode.hs b/ouroboros-network-framework/src/Ouroboros/Network/MuxMode.hs index da6ec1c90b9..f93ade76e76 100644 --- a/ouroboros-network-framework/src/Ouroboros/Network/MuxMode.hs +++ b/ouroboros-network-framework/src/Ouroboros/Network/MuxMode.hs @@ -1,6 +1,7 @@ {-# LANGUAGE DataKinds #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE KindSignatures #-} +{-# LANGUAGE TypeOperators #-} -- 'withInitiatorMode' and 'withResponderMode' are using redundant constraints. {-# OPTIONS_GHC -Wno-redundant-constraints #-} diff --git a/ouroboros-network-framework/src/Ouroboros/Network/Socket.hs b/ouroboros-network-framework/src/Ouroboros/Network/Socket.hs index 8f87cbd031d..f521c964818 100644 --- a/ouroboros-network-framework/src/Ouroboros/Network/Socket.hs +++ b/ouroboros-network-framework/src/Ouroboros/Network/Socket.hs @@ -8,6 +8,7 @@ {-# LANGUAGE RankNTypes #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE ScopedTypeVariables #-} +{-# LANGUAGE TypeOperators #-} -- it is useful to have 'HasInitiator' constraint on 'connectToNode' & friends. {-# OPTIONS_GHC -Wno-redundant-constraints #-} diff --git a/ouroboros-network-framework/test/Test/Ouroboros/Network/Server2.hs b/ouroboros-network-framework/test/Test/Ouroboros/Network/Server2.hs index b37a15100d3..6d593d71dff 100644 --- a/ouroboros-network-framework/test/Test/Ouroboros/Network/Server2.hs +++ b/ouroboros-network-framework/test/Test/Ouroboros/Network/Server2.hs @@ -13,6 +13,7 @@ {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TupleSections #-} {-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeOperators #-} -- for 'debugTracer' {-# OPTIONS_GHC -Wno-redundant-constraints #-} diff --git a/ouroboros-network-mock/ouroboros-network-mock.cabal b/ouroboros-network-mock/ouroboros-network-mock.cabal index e4eb9ec26d6..8fcc46bbea7 100644 --- a/ouroboros-network-mock/ouroboros-network-mock.cabal +++ b/ouroboros-network-mock/ouroboros-network-mock.cabal @@ -32,7 +32,7 @@ library default-language: Haskell2010 - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, bytestring, containers, cborg, diff --git a/ouroboros-network-mock/src/Ouroboros/Network/Mock/ConcreteBlock.hs b/ouroboros-network-mock/src/Ouroboros/Network/Mock/ConcreteBlock.hs index 38095a9ae57..99020e4a991 100644 --- a/ouroboros-network-mock/src/Ouroboros/Network/Mock/ConcreteBlock.hs +++ b/ouroboros-network-mock/src/Ouroboros/Network/Mock/ConcreteBlock.hs @@ -4,6 +4,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE StandaloneDeriving #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} -- This module is for examples and tests (not the library) so orphans are ok diff --git a/ouroboros-network-mock/src/Ouroboros/Network/Mock/ProducerState.hs b/ouroboros-network-mock/src/Ouroboros/Network/Mock/ProducerState.hs index a1d28d8af7c..53c5d18f40f 100644 --- a/ouroboros-network-mock/src/Ouroboros/Network/Mock/ProducerState.hs +++ b/ouroboros-network-mock/src/Ouroboros/Network/Mock/ProducerState.hs @@ -1,6 +1,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} module Ouroboros.Network.Mock.ProducerState where diff --git a/ouroboros-network-protocols/ouroboros-network-protocols.cabal b/ouroboros-network-protocols/ouroboros-network-protocols.cabal index bff87e75ecd..67a3637656a 100644 --- a/ouroboros-network-protocols/ouroboros-network-protocols.cabal +++ b/ouroboros-network-protocols/ouroboros-network-protocols.cabal @@ -94,7 +94,7 @@ library TypeFamilies, TypeInType - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, bytestring >=0.10 && <0.12, cborg >=0.2.1 && <0.3, @@ -156,7 +156,7 @@ library testlib Test.ChainGenerators Test.ChainProducerState Test.Ouroboros.Network.Testing.Utils - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, bytestring, cborg, containers, @@ -194,7 +194,7 @@ test-suite test other-modules: Test.AnchoredFragment Test.Chain default-language: Haskell2010 - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, QuickCheck, tasty, tasty-quickcheck, @@ -216,7 +216,7 @@ test-suite cddl else buildable: False default-language: Haskell2010 - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, bytestring, cborg, containers, diff --git a/ouroboros-network-protocols/src/Ouroboros/Network/Protocol/LocalTxMonitor/Codec.hs b/ouroboros-network-protocols/src/Ouroboros/Network/Protocol/LocalTxMonitor/Codec.hs index 4fadc71a170..504bc7a6e2a 100644 --- a/ouroboros-network-protocols/src/Ouroboros/Network/Protocol/LocalTxMonitor/Codec.hs +++ b/ouroboros-network-protocols/src/Ouroboros/Network/Protocol/LocalTxMonitor/Codec.hs @@ -6,6 +6,7 @@ {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} module Ouroboros.Network.Protocol.LocalTxMonitor.Codec ( codecLocalTxMonitor diff --git a/ouroboros-network-protocols/test/Test/AnchoredFragment.hs b/ouroboros-network-protocols/test/Test/AnchoredFragment.hs index 986556bd84d..188f0f01287 100644 --- a/ouroboros-network-protocols/test/Test/AnchoredFragment.hs +++ b/ouroboros-network-protocols/test/Test/AnchoredFragment.hs @@ -2,6 +2,7 @@ {-# LANGUAGE PatternGuards #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} {-# LANGUAGE ViewPatterns #-} module Test.AnchoredFragment diff --git a/ouroboros-network-protocols/testlib/Ouroboros/Network/Protocol/ChainSync/Examples.hs b/ouroboros-network-protocols/testlib/Ouroboros/Network/Protocol/ChainSync/Examples.hs index 4be5bb58aff..56970e6a6b9 100644 --- a/ouroboros-network-protocols/testlib/Ouroboros/Network/Protocol/ChainSync/Examples.hs +++ b/ouroboros-network-protocols/testlib/Ouroboros/Network/Protocol/ChainSync/Examples.hs @@ -4,6 +4,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} module Ouroboros.Network.Protocol.ChainSync.Examples diff --git a/ouroboros-network-protocols/testlib/Test/ChainGenerators.hs b/ouroboros-network-protocols/testlib/Test/ChainGenerators.hs index d88ab284655..b2403bbc3e4 100644 --- a/ouroboros-network-protocols/testlib/Test/ChainGenerators.hs +++ b/ouroboros-network-protocols/testlib/Test/ChainGenerators.hs @@ -1,6 +1,7 @@ {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE TypeOperators #-} {-# OPTIONS_GHC -Wno-orphans #-} {-# OPTIONS_GHC -Wno-incomplete-uni-patterns #-} diff --git a/ouroboros-network-protocols/testlib/Test/ChainProducerState.hs b/ouroboros-network-protocols/testlib/Test/ChainProducerState.hs index 925ab991610..0682dbf4098 100644 --- a/ouroboros-network-protocols/testlib/Test/ChainProducerState.hs +++ b/ouroboros-network-protocols/testlib/Test/ChainProducerState.hs @@ -124,6 +124,12 @@ prop_producer_sync2 (TestBlockChainAndUpdates chain0 us0) choices = in consumer == producerChain producer where -- apply update to producer + go :: Int + -> ChainProducerState Block + -> Chain Block + -> [Bool] + -> [ChainUpdate Block Block] + -> (ChainProducerState Block, Chain Block) go rid p c (False:bs) (u:us) = let Just p' = applyChainUpdate u p in go rid p' c bs us diff --git a/ouroboros-network-testing/ouroboros-network-testing.cabal b/ouroboros-network-testing/ouroboros-network-testing.cabal index a311009e3db..4f94cfa0047 100644 --- a/ouroboros-network-testing/ouroboros-network-testing.cabal +++ b/ouroboros-network-testing/ouroboros-network-testing.cabal @@ -58,7 +58,7 @@ library TypeApplications, TypeFamilies, TypeInType - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, containers, contra-tracer, deque, @@ -93,7 +93,7 @@ test-suite test hs-source-dirs: test other-modules: Test.Ouroboros.Network.Testing.Data.AbsBearerInfo - build-depends: base >=4.14 && <4.17 + build-depends: base >=4.14 && <4.19 , QuickCheck , tasty diff --git a/ouroboros-network/ouroboros-network.cabal b/ouroboros-network/ouroboros-network.cabal index 5f57c3e8765..458b2a78991 100644 --- a/ouroboros-network/ouroboros-network.cabal +++ b/ouroboros-network/ouroboros-network.cabal @@ -98,7 +98,7 @@ library TypeApplications, TypeFamilies, TypeInType - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, async >=2.2 && <2.3, bytestring >=0.10 && <0.12, cborg >=0.2.1 && <0.3, @@ -180,7 +180,7 @@ test-suite test Test.PeerState Test.Version default-language: Haskell2010 - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, bytestring, QuickCheck, aeson, @@ -241,7 +241,7 @@ test-suite test executable demo-chain-sync hs-source-dirs: demo main-is: chain-sync.hs - build-depends: base >=4.14 && <4.17, + build-depends: base >=4.14 && <4.19, async, bytestring, containers, diff --git a/ouroboros-network/src/Ouroboros/Network/BlockFetch.hs b/ouroboros-network/src/Ouroboros/Network/BlockFetch.hs index f344589bd90..a748d40afc9 100644 --- a/ouroboros-network/src/Ouroboros/Network/BlockFetch.hs +++ b/ouroboros-network/src/Ouroboros/Network/BlockFetch.hs @@ -4,6 +4,7 @@ {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} {-| Let's start with the big picture... diff --git a/ouroboros-network/src/Ouroboros/Network/BlockFetch/Client.hs b/ouroboros-network/src/Ouroboros/Network/BlockFetch/Client.hs index 7191c368cf9..cb73d06fa7e 100644 --- a/ouroboros-network/src/Ouroboros/Network/BlockFetch/Client.hs +++ b/ouroboros-network/src/Ouroboros/Network/BlockFetch/Client.hs @@ -4,6 +4,7 @@ {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} -- hic sunt dracones! {-# OPTIONS_GHC -Wno-incomplete-uni-patterns #-} diff --git a/ouroboros-network/src/Ouroboros/Network/BlockFetch/Decision.hs b/ouroboros-network/src/Ouroboros/Network/BlockFetch/Decision.hs index 66a39528f03..8e865f93a07 100644 --- a/ouroboros-network/src/Ouroboros/Network/BlockFetch/Decision.hs +++ b/ouroboros-network/src/Ouroboros/Network/BlockFetch/Decision.hs @@ -3,6 +3,7 @@ {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} module Ouroboros.Network.BlockFetch.Decision ( -- * Deciding what to fetch diff --git a/ouroboros-network/src/Ouroboros/Network/BlockFetch/State.hs b/ouroboros-network/src/Ouroboros/Network/BlockFetch/State.hs index 1dfa6b2b10a..187b00e3c2d 100644 --- a/ouroboros-network/src/Ouroboros/Network/BlockFetch/State.hs +++ b/ouroboros-network/src/Ouroboros/Network/BlockFetch/State.hs @@ -3,6 +3,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} module Ouroboros.Network.BlockFetch.State ( fetchLogicIterations diff --git a/ouroboros-network/src/Ouroboros/Network/NodeToClient.hs b/ouroboros-network/src/Ouroboros/Network/NodeToClient.hs index a4ec84aa5e9..a16f54c9b92 100644 --- a/ouroboros-network/src/Ouroboros/Network/NodeToClient.hs +++ b/ouroboros-network/src/Ouroboros/Network/NodeToClient.hs @@ -6,6 +6,7 @@ {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} -- | This is the starting point for a module that will bring together the -- overall node to client protocol, as a collection of mini-protocols. diff --git a/ouroboros-network/src/Ouroboros/Network/NodeToNode.hs b/ouroboros-network/src/Ouroboros/Network/NodeToNode.hs index 38282608b61..664877588c1 100644 --- a/ouroboros-network/src/Ouroboros/Network/NodeToNode.hs +++ b/ouroboros-network/src/Ouroboros/Network/NodeToNode.hs @@ -6,6 +6,7 @@ {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} {-# OPTIONS_GHC -Wno-orphans #-} diff --git a/ouroboros-network/src/Ouroboros/Network/PeerSelection/PeerStateActions.hs b/ouroboros-network/src/Ouroboros/Network/PeerSelection/PeerStateActions.hs index eaeb06bdb68..f00f2dd57aa 100644 --- a/ouroboros-network/src/Ouroboros/Network/PeerSelection/PeerStateActions.hs +++ b/ouroboros-network/src/Ouroboros/Network/PeerSelection/PeerStateActions.hs @@ -6,6 +6,7 @@ {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TupleSections #-} +{-# LANGUAGE TypeOperators #-} -- 'startProtocols' is using 'HasInitiator' constraint to limit pattern -- matches. diff --git a/ouroboros-network/test/Test/Ouroboros/Network/Diffusion/Node.hs b/ouroboros-network/test/Test/Ouroboros/Network/Diffusion/Node.hs index 6a01eb22517..f83512577dc 100644 --- a/ouroboros-network/test/Test/Ouroboros/Network/Diffusion/Node.hs +++ b/ouroboros-network/test/Test/Ouroboros/Network/Diffusion/Node.hs @@ -4,6 +4,7 @@ {-# LANGUAGE QuantifiedConstraints #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeOperators #-} {-# LANGUAGE UndecidableInstances #-} module Test.Ouroboros.Network.Diffusion.Node diff --git a/ouroboros-network/test/Test/Ouroboros/Network/Diffusion/Node/MiniProtocols.hs b/ouroboros-network/test/Test/Ouroboros/Network/Diffusion/Node/MiniProtocols.hs index f0b2fdd4d19..8035db6d8e2 100644 --- a/ouroboros-network/test/Test/Ouroboros/Network/Diffusion/Node/MiniProtocols.hs +++ b/ouroboros-network/test/Test/Ouroboros/Network/Diffusion/Node/MiniProtocols.hs @@ -4,6 +4,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TupleSections #-} +{-# LANGUAGE TypeOperators #-} -- orphaned 'ShowProxy PingPong' instance. {-# OPTIONS_GHC -Wno-orphans #-} diff --git a/ouroboros-network/test/Test/Ouroboros/Network/TxSubmission.hs b/ouroboros-network/test/Test/Ouroboros/Network/TxSubmission.hs index 39e12f67785..9c5a8832f3f 100644 --- a/ouroboros-network/test/Test/Ouroboros/Network/TxSubmission.hs +++ b/ouroboros-network/test/Test/Ouroboros/Network/TxSubmission.hs @@ -5,6 +5,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TupleSections #-} +{-# LANGUAGE TypeOperators #-} module Test.Ouroboros.Network.TxSubmission (tests) where