Skip to content

Commit

Permalink
Update some modules
Browse files Browse the repository at this point in the history
  • Loading branch information
j-mueller committed Apr 6, 2021
1 parent 1518db3 commit d6e60fe
Show file tree
Hide file tree
Showing 16 changed files with 87 additions and 64 deletions.
6 changes: 3 additions & 3 deletions plutus-pab/plutus-pab.cabal
Expand Up @@ -79,12 +79,13 @@ library
Plutus.PAB.Core.ContractInstance.BlockchainEnv
Plutus.PAB.Core.ContractInstance.RequestHandlers
Plutus.PAB.Core.ContractInstance.STM
Plutus.PAB.Core.Projections
Plutus.PAB.Db.Eventful.ContractDefinitionStore
Plutus.PAB.Db.Eventful.ContractStore
Plutus.PAB.Db.Eventful.Projections
Plutus.PAB.Db.Eventful.Query
Plutus.PAB.Effects.Contract
Plutus.PAB.Effects.Contract.ContractTest
Plutus.PAB.Effects.Contract.CLI
Plutus.PAB.Effects.Contract.ContractExe
Plutus.PAB.Effects.ContractRuntime
Plutus.PAB.Effects.ContractTest.AtomicSwap
Plutus.PAB.Effects.ContractTest.PayToWallet
Expand All @@ -106,7 +107,6 @@ library
Plutus.PAB.Events.Contract
Plutus.PAB.Events.ContractInstanceState
Plutus.PAB.ParseStringifiedJSON
Plutus.PAB.Query
Plutus.PAB.Types
other-modules:
Servant.Extra
Expand Down
2 changes: 1 addition & 1 deletion plutus-pab/src/Plutus/PAB/App.hs
Expand Up @@ -53,7 +53,7 @@ import Plutus.PAB.Db.Eventful.ContractDefinitionStore (handleContractD
import Plutus.PAB.Db.Eventful.ContractStore (handleContractStore)
import Plutus.PAB.Effects.Contract (ContractDefinitionStore, ContractEffect (..),
ContractStore)
import Plutus.PAB.Effects.Contract.CLI (ContractExe, ContractExeLogMsg (..),
import Plutus.PAB.Effects.Contract.ContractExe (ContractExe, ContractExeLogMsg (..),
handleContractEffectContractExe)
import Plutus.PAB.Effects.ContractRuntime (handleContractRuntime)
import Plutus.PAB.Effects.EventLog (EventLogEffect (..), handleEventLogSql)
Expand Down
3 changes: 1 addition & 2 deletions plutus-pab/src/Plutus/PAB/Command.hs
Expand Up @@ -26,11 +26,10 @@ module Plutus.PAB.Command
import Eventful (Aggregate (Aggregate), aggregateCommandHandler,
aggregateProjection)
import qualified Ledger
import Plutus.PAB.Db.Eventful.Query (nullProjection)
import Plutus.PAB.Events (PABEvent (InstallContract, SubmitTx, UpdateContractInstanceState))
import qualified Plutus.PAB.Events as Events
import Plutus.PAB.Events.Contract (ContractPABRequest)
import Plutus.PAB.Events.ContractInstanceState (PartiallyDecodedResponse)
import Plutus.PAB.Query (nullProjection)
import Wallet.Types (ContractInstanceId)

-- | An aggregate that just sends a list of events with no state
Expand Down
2 changes: 1 addition & 1 deletion plutus-pab/src/Plutus/PAB/Core.hs
Expand Up @@ -51,6 +51,7 @@ import Eventful.Store.Sql (defaultSqlEventStoreCo
import GHC.Generics (Generic)
import qualified Ledger
import Plutus.PAB.Core.ContractInstance (activateContractSTM)
import qualified Plutus.PAB.Db.Eventful.Query as Query
import Plutus.PAB.Effects.Contract (ContractDefinitionStore, ContractEffect, ContractStore,
PABContract (..), addDefinition, getState)
import Plutus.PAB.Effects.EventLog (Connection (..), EventLogEffect, refreshProjection,
Expand All @@ -60,7 +61,6 @@ import Plutus.PAB.Effects.UUID (UUIDEffect)
import Plutus.PAB.Events (PABEvent)
import Plutus.PAB.Events.Contract (ContractPABRequest)
import Plutus.PAB.Events.ContractInstanceState (PartiallyDecodedResponse)
import qualified Plutus.PAB.Query as Query
import Plutus.PAB.Types (DbConfig (DbConfig), PABError, Source (..), dbConfigFile,
dbConfigPoolSize, toUUID)
import Wallet.Types (ContractInstanceId)
Expand Down
18 changes: 9 additions & 9 deletions plutus-pab/src/Plutus/PAB/Db/Eventful/ContractDefinitionStore.hs
Expand Up @@ -9,15 +9,15 @@ module Plutus.PAB.Db.Eventful.ContractDefinitionStore(
) where


import Control.Monad (void)
import Control.Monad.Freer (Eff, Member, type (~>))
import qualified Data.Set as Set
import qualified Plutus.PAB.Command as Command
import Plutus.PAB.Effects.Contract (ContractDefinitionStore (..), PABContract (..))
import Plutus.PAB.Effects.EventLog (EventLogEffect, runCommand, runGlobalQuery)
import Plutus.PAB.Events (PABEvent)
import qualified Plutus.PAB.Query as Query
import Plutus.PAB.Types (Source (..))
import Control.Monad (void)
import Control.Monad.Freer (Eff, Member, type (~>))
import qualified Data.Set as Set
import qualified Plutus.PAB.Command as Command
import qualified Plutus.PAB.Db.Eventful.Query as Query
import Plutus.PAB.Effects.Contract (ContractDefinitionStore (..), PABContract (..))
import Plutus.PAB.Effects.EventLog (EventLogEffect, runCommand, runGlobalQuery)
import Plutus.PAB.Events (PABEvent)
import Plutus.PAB.Types (Source (..))

-- | Handle the 'ContractDefinitionStore' effect by storing definitions
-- in the eventful database.
Expand Down
2 changes: 1 addition & 1 deletion plutus-pab/src/Plutus/PAB/Db/Eventful/ContractStore.hs
Expand Up @@ -13,12 +13,12 @@ import Control.Monad.Freer (Eff, Member, type (~>)
import Control.Monad.Freer.Error (Error, throwError)
import qualified Data.Map as Map
import qualified Plutus.PAB.Command as Command
import qualified Plutus.PAB.Db.Eventful.Query as Query
import Plutus.PAB.Effects.Contract (ContractStore (..), PABContract (..))
import Plutus.PAB.Effects.EventLog (EventLogEffect, runCommand, runGlobalQuery)
import Plutus.PAB.Events (PABEvent)
import Plutus.PAB.Events.Contract (ContractPABRequest)
import Plutus.PAB.Events.ContractInstanceState (PartiallyDecodedResponse)
import qualified Plutus.PAB.Query as Query
import Plutus.PAB.Types (PABError (..), Source (..))

-- | Handle the 'ContractStore' effect by storing states
Expand Down
@@ -1,19 +1,23 @@
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE MonoLocalBinds #-}
module Plutus.PAB.Core.Projections(
{-
@eventful@ projections for the PAB
-}
module Plutus.PAB.Db.Eventful.Projections(
installedContracts
, installedContractsProjection
) where

import Control.Monad.Freer
import Data.Set (Set)
import Eventful (Projection, StreamEvent (..), projectionMapMaybe)
import Data.Set (Set)
import Eventful (Projection, StreamEvent (..), projectionMapMaybe)

import Plutus.PAB.Effects.EventLog (EventLogEffect, runGlobalQuery)
import Plutus.PAB.Events (PABEvent (..))
import Plutus.PAB.Query (setProjection)
import Plutus.PAB.Db.Eventful.Query (setProjection)
import Plutus.PAB.Effects.EventLog (EventLogEffect, runGlobalQuery)
import Plutus.PAB.Events (PABEvent (..))

-- FIXME: move to Plutus.PAB.Db.Eventful.Projections
installedContracts ::
forall t effs.
( Ord t
Expand Down
Expand Up @@ -15,8 +15,7 @@
-- a memory of the last event they saw, such that if you rerun a
-- projection, it will only process new events, rather than
-- recalculating the fold from scratch.
-- FIXME: Move this to Plutus.PAB.Db.Eventful.XXX namespace
module Plutus.PAB.Query
module Plutus.PAB.Db.Eventful.Query
( nullProjection
, pureProjection
, setProjection
Expand Down
Expand Up @@ -11,12 +11,11 @@
{-# LANGUAGE TypeOperators #-}
{-
'ContractEffect' handler for contracts that use the CLI
'ContractEffect' handler for contracts compiled that use the CLI
interface (see 'Plutus.PAB.ContractCLI').
-}
-- FIXME: Plutus.PAB.Effects.Contract.ContractExe
module Plutus.PAB.Effects.Contract.CLI(
module Plutus.PAB.Effects.Contract.ContractExe(
ContractExe(..)
, handleContractEffectContractExe
, ContractExeLogMsg(..)
Expand Down
2 changes: 1 addition & 1 deletion plutus-pab/src/Plutus/PAB/Events/ContractInstanceState.hs
Expand Up @@ -27,7 +27,7 @@ import Plutus.PAB.Effects.Contract (PABContract (..))
import Plutus.PAB.Events.Contract (ContractPABRequest, ContractResponse (..))
import Wallet.Types (ContractInstanceId)

-- FIXME: ContractResponse Value Value Value h
-- TODO: Replace with type synonym for @ContractResponse Value Value Value h@
data PartiallyDecodedResponse v =
PartiallyDecodedResponse
{ newState :: Contract.State Value
Expand Down
2 changes: 1 addition & 1 deletion plutus-pab/src/Plutus/PAB/Monitoring/PABLogMsg.hs
Expand Up @@ -33,7 +33,7 @@ import Ledger.Tx (Tx)
import Plutus.Contract.State (ContractRequest)
import Plutus.PAB.Core (CoreMsg (..))
import Plutus.PAB.Core.ContractInstance (ContractInstanceMsg (..))
import Plutus.PAB.Effects.Contract.CLI (ContractExe, ContractExeLogMsg (..))
import Plutus.PAB.Effects.Contract.ContractExe (ContractExe, ContractExeLogMsg (..))
import Plutus.PAB.Effects.ContractRuntime (ContractRuntimeMsg)
import Plutus.PAB.Events.Contract (ContractInstanceId, ContractPABRequest)
import Plutus.PAB.Events.ContractInstanceState (PartiallyDecodedResponse)
Expand Down
2 changes: 1 addition & 1 deletion plutus-pab/src/Plutus/PAB/Webserver/Handler.hs
Expand Up @@ -49,7 +49,7 @@ import Plutus.PAB.Core.ContractInstance.STM (InstancesStat
import Plutus.PAB.Effects.Contract (ContractDefinitionStore, ContractEffect,
ContractStore, PABContract (..), exportSchema,
getActiveContracts, getDefinitions, getState)
import Plutus.PAB.Effects.Contract.CLI (ContractExe)
import Plutus.PAB.Effects.Contract.ContractExe (ContractExe)
import Plutus.PAB.Effects.UUID (UUIDEffect)
import Plutus.PAB.Events.Contract (ContractPABRequest)
import Plutus.PAB.Events.ContractInstanceState (PartiallyDecodedResponse)
Expand Down
4 changes: 2 additions & 2 deletions plutus-pab/src/Plutus/PAB/Webserver/Server.hs
Expand Up @@ -44,8 +44,8 @@ import Plutus.PAB.Core.ContractInstance (ContractInstanc
import qualified Plutus.PAB.Core.ContractInstance.BlockchainEnv as BlockchainEnv
import Plutus.PAB.Core.ContractInstance.STM (BlockchainEnv, InstancesState)
import qualified Plutus.PAB.Core.ContractInstance.STM as ContractInstance
import Plutus.PAB.Effects.Contract.CLI (ContractExe)
import qualified Plutus.PAB.Effects.Contract.CLI as LM
import Plutus.PAB.Effects.Contract.ContractExe (ContractExe)
import qualified Plutus.PAB.Effects.Contract.ContractExe as LM
import qualified Plutus.PAB.Monitoring.PABLogMsg as LM
import Plutus.PAB.ParseStringifiedJSON (UnStringifyJSONLog)
import Plutus.PAB.Types (Config (..), PABError (InvalidUUIDError), baseUrl,
Expand Down
5 changes: 2 additions & 3 deletions plutus-pab/src/Plutus/PAB/Webserver/Types.hs
Expand Up @@ -23,11 +23,10 @@ import GHC.Generics (Generic)
import Ledger (Tx, TxId)
import Ledger.Index (UtxoIndex)
import Playground.Types (FunctionSchema)
import Plutus.PAB.Effects.Contract (PABContract (..))
import Plutus.PAB.Effects.Contract.CLI (ContractExe)
import Plutus.PAB.Effects.Contract.ContractExe (ContractExe)
import Plutus.PAB.Events (PABEvent)
import Plutus.PAB.Events.Contract (ContractPABRequest)
import Plutus.PAB.Events.ContractInstanceState (ContractInstanceState, PartiallyDecodedResponse)
import Plutus.PAB.Events.ContractInstanceState (PartiallyDecodedResponse)
import Schema (FormSchema)
import Wallet.Rollup.Types (AnnotatedTx)
import Wallet.Types (ContractInstanceId)
Expand Down
54 changes: 27 additions & 27 deletions plutus-pab/src/Plutus/PAB/Webserver/WebSocket.hs
Expand Up @@ -10,33 +10,33 @@ module Plutus.PAB.Webserver.WebSocket
( handleWS
) where

import qualified Cardano.BM.Configuration.Model as CM
import Cardano.BM.Trace (Trace)
import Cardano.Metadata.Types (MetadataEffect)
import qualified Cardano.Metadata.Types as Metadata
import Control.Concurrent.Async (Async, async, waitAnyCancel)
import Control.Exception (SomeException, handle)
import Control.Monad (forever, void, when)
import Control.Monad.Freer (Eff, LastMember, Member, interpret)
import Control.Monad.Freer.Delay (DelayEffect, delayThread, handleDelayEffect)
import Control.Monad.Freer.Extras.Log (LogMsg, logDebug, logInfo, mapLog)
import Control.Monad.Freer.Reader (Reader, ask)
import Control.Monad.Freer.WebSocket (WebSocketEffect, acceptConnection, receiveJSON, sendJSON)
import Control.Monad.IO.Class (MonadIO, liftIO)
import Data.Aeson (ToJSON)
import Data.Time.Units (Second, TimeUnit)
import Network.WebSockets.Connection (Connection, PendingConnection, withPingThread)
import Plutus.PAB.App (runApp)
import Plutus.PAB.Core.ContractInstance.STM (InstancesState)
import Plutus.PAB.Effects.Contract (ContractDefinitionStore, ContractEffect, ContractStore)
import Plutus.PAB.Effects.Contract.CLI (ContractExe)
import qualified Plutus.PAB.Monitoring.PABLogMsg as LM
import Plutus.PAB.Types (Config, PABError)
import Plutus.PAB.Webserver.Handler (getChainReport, getContractReport)
import Plutus.PAB.Webserver.Types (StreamToClient (ErrorResponse, FetchedProperties, FetchedProperty, NewChainReport, NewContractReport),
StreamToServer (FetchProperties, FetchProperty),
WebSocketLogMsg (ClosedConnection, CreatedConnection, ReceivedWebSocketRequest, SendingWebSocketResponse))
import Wallet.Effects (ChainIndexEffect)
import qualified Cardano.BM.Configuration.Model as CM
import Cardano.BM.Trace (Trace)
import Cardano.Metadata.Types (MetadataEffect)
import qualified Cardano.Metadata.Types as Metadata
import Control.Concurrent.Async (Async, async, waitAnyCancel)
import Control.Exception (SomeException, handle)
import Control.Monad (forever, void, when)
import Control.Monad.Freer (Eff, LastMember, Member, interpret)
import Control.Monad.Freer.Delay (DelayEffect, delayThread, handleDelayEffect)
import Control.Monad.Freer.Extras.Log (LogMsg, logDebug, logInfo, mapLog)
import Control.Monad.Freer.Reader (Reader, ask)
import Control.Monad.Freer.WebSocket (WebSocketEffect, acceptConnection, receiveJSON, sendJSON)
import Control.Monad.IO.Class (MonadIO, liftIO)
import Data.Aeson (ToJSON)
import Data.Time.Units (Second, TimeUnit)
import Network.WebSockets.Connection (Connection, PendingConnection, withPingThread)
import Plutus.PAB.App (runApp)
import Plutus.PAB.Core.ContractInstance.STM (InstancesState)
import Plutus.PAB.Effects.Contract (ContractDefinitionStore, ContractEffect, ContractStore)
import Plutus.PAB.Effects.Contract.ContractExe (ContractExe)
import qualified Plutus.PAB.Monitoring.PABLogMsg as LM
import Plutus.PAB.Types (Config, PABError)
import Plutus.PAB.Webserver.Handler (getChainReport, getContractReport)
import Plutus.PAB.Webserver.Types (StreamToClient (ErrorResponse, FetchedProperties, FetchedProperty, NewChainReport, NewContractReport),
StreamToServer (FetchProperties, FetchProperty),
WebSocketLogMsg (ClosedConnection, CreatedConnection, ReceivedWebSocketRequest, SendingWebSocketResponse))
import Wallet.Effects (ChainIndexEffect)

------------------------------------------------------------
-- Message processors.
Expand Down
23 changes: 23 additions & 0 deletions plutus-pab/test/Plutus/PAB/CoreSpec.hs
Expand Up @@ -30,6 +30,7 @@ import Plutus.Contracts.Currency (SimpleMPS (..))
import qualified Plutus.Contracts.Game as Contracts.Game
import Plutus.PAB.Command ()
import Plutus.PAB.Core
<<<<<<< HEAD
import Plutus.PAB.Core.ContractInstance (ContractInstanceMsg)
import Plutus.PAB.Effects.Contract (ContractEffect)
import Plutus.PAB.Effects.ContractTest (TestContracts (..))
Expand All @@ -47,6 +48,28 @@ import Wallet.API (WalletAPIError, ownPubKey)
import qualified Wallet.Emulator.Chain as Chain
import Wallet.Rollup (doAnnotateBlockchain)
import Wallet.Rollup.Types (DereferencedInput, dereferencedInputs, isFound)
=======
import Plutus.PAB.Core.ContractInstance (ContractInstanceMsg)
import qualified Plutus.PAB.Db.Eventful.Query as Query
import Plutus.PAB.Effects.Contract (ContractEffect)
import Plutus.PAB.Effects.ContractTest (TestContracts (..))
import Plutus.PAB.Effects.EventLog (EventLogEffect)
import Plutus.PAB.Effects.MultiAgent (PABClientEffects, agentAction)
import Plutus.PAB.Events (ChainEvent, ContractInstanceId,
ContractInstanceState (..), hooks)
import Plutus.PAB.MockApp (TestState, TxCounts (..), blockchainNewestFirst,
defaultWallet, processAllMsgBoxes, runScenario,
txCounts, txValidated, valueAt)
import Plutus.PAB.Types (PABError (..), chainOverviewBlockchain,
mkChainOverview)
import Test.QuickCheck.Instances.UUID ()
import Test.Tasty (TestTree, testGroup)
import Test.Tasty.HUnit (testCase)
import Wallet.API (WalletAPIError, ownPubKey)
import qualified Wallet.Emulator.Chain as Chain
import Wallet.Rollup (doAnnotateBlockchain)
import Wallet.Rollup.Types (DereferencedInput, dereferencedInputs, isFound)
>>>>>>> Update some modules

tests :: TestTree
tests = testGroup "Plutus.PAB.Core" [installContractTests, executionTests]
Expand Down

0 comments on commit d6e60fe

Please sign in to comment.