Skip to content

Commit 2039d7c

Browse files
authored
Use PlutusScriptSerialised consistently instead of fromPlutusScript (#1776)
2 parents 6a0f3e3 + 527cc21 commit 2039d7c

File tree

26 files changed

+64
-86
lines changed

26 files changed

+64
-86
lines changed

hydra-cardano-api/hydra-cardano-api.cabal

-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,6 @@ library
5151
Hydra.Cardano.Api.Hash
5252
Hydra.Cardano.Api.Network
5353
Hydra.Cardano.Api.NetworkId
54-
Hydra.Cardano.Api.PlutusScript
5554
Hydra.Cardano.Api.PolicyId
5655
Hydra.Cardano.Api.Prelude
5756
Hydra.Cardano.Api.Pretty

hydra-cardano-api/src/Hydra/Cardano/Api.hs

-1
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,6 @@ import Hydra.Cardano.Api.CtxTx as Extras
129129
import Hydra.Cardano.Api.ExecutionUnits as Extras
130130
import Hydra.Cardano.Api.Hash as Extras
131131
import Hydra.Cardano.Api.NetworkId ()
132-
import Hydra.Cardano.Api.PlutusScript as Extras
133132
import Hydra.Cardano.Api.PolicyId as Extras
134133
import Hydra.Cardano.Api.ReferenceScript as Extras
135134
import Hydra.Cardano.Api.ScriptData as Extras

hydra-cardano-api/src/Hydra/Cardano/Api/PlutusScript.hs

-14
This file was deleted.

hydra-cardano-api/src/Hydra/Cardano/Api/ReferenceScript.hs

+2-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ module Hydra.Cardano.Api.ReferenceScript where
22

33
import Hydra.Cardano.Api.Prelude
44

5-
import Hydra.Cardano.Api.PlutusScript (fromPlutusScript)
65
import PlutusLedgerApi.V3 qualified as Plutus
76

87
-- | Construct a 'ReferenceScript' from any given Plutus script.
@@ -13,12 +12,12 @@ mkScriptRef =
1312
ReferenceScript babbageBasedEra
1413
. toScriptInAnyLang
1514
. PlutusScript PlutusScriptV3
16-
. fromPlutusScript
15+
. PlutusScriptSerialised
1716

1817
-- | Construct a PlutusV3 'ReferenceScript' from any given Plutus script.
1918
mkScriptRefV3 :: Plutus.SerialisedScript -> ReferenceScript Era
2019
mkScriptRefV3 =
2120
ReferenceScript babbageBasedEra
2221
. toScriptInAnyLang
2322
. PlutusScript PlutusScriptV3
24-
. fromPlutusScript
23+
. PlutusScriptSerialised

hydra-cardano-api/src/Hydra/Cardano/Api/ScriptHash.hs

-2
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ module Hydra.Cardano.Api.ScriptHash where
44

55
import Hydra.Cardano.Api.Prelude
66

7-
import Hydra.Cardano.Api.PlutusScript ()
8-
97
-- * Extras
108

119
-- | Like 'hashScript', but for a 'ScriptInAnyLang'.

hydra-node/src/Hydra/Chain/Direct/State.hs

+13-14
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ import Hydra.Cardano.Api (
2222
NetworkId (Mainnet, Testnet),
2323
NetworkMagic (NetworkMagic),
2424
PaymentKey,
25-
PlutusScriptV3,
2625
PolicyId,
2726
Quantity (..),
2827
SerialiseAsRawBytes (serialiseToRawBytes),
@@ -35,7 +34,6 @@ import Hydra.Cardano.Api (
3534
UTxO,
3635
UTxO' (UTxO),
3736
chainPointToSlotNo,
38-
fromPlutusScript,
3937
fromScriptData,
4038
genTxIn,
4139
getTxBody,
@@ -52,6 +50,7 @@ import Hydra.Cardano.Api (
5250
txOutValue,
5351
txSpendingUTxO,
5452
pattern ByronAddressInEra,
53+
pattern PlutusScriptSerialised,
5554
pattern ShelleyAddressInEra,
5655
pattern TxIn,
5756
pattern TxOut,
@@ -407,11 +406,11 @@ abort ctx seedTxIn spendableUTxO committedUTxO = do
407406
commits =
408407
UTxO.toMap $ UTxO.filter (isScriptTxOut commitScript) utxoOfThisHead'
409408

410-
commitScript = fromPlutusScript @PlutusScriptV3 commitValidatorScript
409+
commitScript = PlutusScriptSerialised commitValidatorScript
411410

412-
headScript = fromPlutusScript @PlutusScriptV3 Head.validatorScript
411+
headScript = PlutusScriptSerialised Head.validatorScript
413412

414-
initialScript = fromPlutusScript @PlutusScriptV3 initialValidatorScript
413+
initialScript = PlutusScriptSerialised initialValidatorScript
415414

416415
headTokenScript = mkHeadTokenScript seedTxIn
417416

@@ -443,9 +442,9 @@ collect ctx headId headParameters utxoToCollect spendableUTxO = do
443442
pure $
444443
collectComTx networkId scriptRegistry ownVerificationKey headId headParameters headUTxO commits utxoToCollect
445444
where
446-
headScript = fromPlutusScript @PlutusScriptV3 Head.validatorScript
445+
headScript = PlutusScriptSerialised Head.validatorScript
447446

448-
commitScript = fromPlutusScript @PlutusScriptV3 commitValidatorScript
447+
commitScript = PlutusScriptSerialised commitValidatorScript
449448

450449
ChainContext{networkId, ownVerificationKey, scriptRegistry} = ctx
451450

@@ -490,8 +489,8 @@ increment ctx spendableUTxO headId headParameters incrementingSnapshot depositTx
490489
Left SnapshotIncrementUTxOIsNull
491490
| otherwise -> Right $ incrementTx scriptRegistry ownVerificationKey headId headParameters headUTxO sn (UTxO.singleton (depositedIn, depositedOut)) upperValiditySlot sigs
492491
where
493-
headScript = fromPlutusScript @PlutusScriptV3 Head.validatorScript
494-
depositScript = fromPlutusScript @PlutusScriptV3 depositValidatorScript
492+
headScript = PlutusScriptSerialised Head.validatorScript
493+
depositScript = PlutusScriptSerialised depositValidatorScript
495494

496495
Snapshot{utxoToCommit} = sn
497496

@@ -530,7 +529,7 @@ decrement ctx spendableUTxO headId headParameters decrementingSnapshot = do
530529
Left DecrementValueNegative
531530
Right $ decrementTx scriptRegistry ownVerificationKey headId headParameters headUTxO sn sigs
532531
where
533-
headScript = fromPlutusScript @PlutusScriptV3 Head.validatorScript
532+
headScript = PlutusScriptSerialised Head.validatorScript
534533

535534
decommitValue = foldMap txOutValue $ fromMaybe mempty $ utxoToDecommit sn
536535

@@ -584,7 +583,7 @@ recover ctx headId depositedTxId spendableUTxO lowerValiditySlot = do
584583
then Left InvalidHeadIdInRecover{headId}
585584
else Right $ recoverTx depositedTxId deposited lowerValiditySlot
586585
where
587-
depositScript = fromPlutusScript @PlutusScriptV3 depositValidatorScript
586+
depositScript = PlutusScriptSerialised depositValidatorScript
588587
ChainContext{networkId} = ctx
589588

590589
-- | Construct a close transaction spending the head output in given 'UTxO',
@@ -627,7 +626,7 @@ close ctx spendableUTxO headId HeadParameters{parties, contestationPeriod} openV
627626
where
628627
Snapshot{utxoToCommit, utxoToDecommit} = getSnapshot confirmedSnapshot
629628

630-
headScript = fromPlutusScript @PlutusScriptV3 Head.validatorScript
629+
headScript = PlutusScriptSerialised Head.validatorScript
631630

632631
ChainContext{ownVerificationKey, scriptRegistry} = ctx
633632

@@ -699,7 +698,7 @@ contest ctx spendableUTxO headId contestationPeriod openVersion contestingSnapsh
699698

700699
ChainContext{ownVerificationKey, scriptRegistry} = ctx
701700

702-
headScript = fromPlutusScript @PlutusScriptV3 Head.validatorScript
701+
headScript = PlutusScriptSerialised Head.validatorScript
703702

704703
data FanoutTxError
705704
= CannotFindHeadOutputToFanout
@@ -738,7 +737,7 @@ fanout ctx spendableUTxO seedTxIn utxo utxoToCommit utxoToDecommit deadlineSlotN
738737

739738
ChainContext{scriptRegistry} = ctx
740739

741-
headScript = fromPlutusScript @PlutusScriptV3 Head.validatorScript
740+
headScript = PlutusScriptSerialised Head.validatorScript
742741

743742
checkHeadDatum headUTxO@(_, headOutput) = do
744743
headDatum <-

hydra-node/src/Hydra/Chain/Direct/Tx.hs

+12-12
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ observeInitTx tx = do
171171
guard $ isScriptTxOut headScript out
172172
(ix,out,) <$> (fromScriptData =<< txOutScriptData out)
173173

174-
headScript = fromPlutusScript @PlutusScriptV3 Head.validatorScript
174+
headScript = PlutusScriptSerialised Head.validatorScript
175175

176176
indexedOutputs = zip [0 ..] (txOuts' tx)
177177

@@ -184,7 +184,7 @@ observeInitTx tx = do
184184

185185
isInitial = isScriptTxOut initialScript
186186

187-
initialScript = fromPlutusScript @PlutusScriptV3 initialValidatorScript
187+
initialScript = PlutusScriptSerialised initialValidatorScript
188188

189189
mintedTokenNames pid =
190190
[ assetName
@@ -262,11 +262,11 @@ observeCommitTx networkId utxo tx = do
262262

263263
initialAddress = mkScriptAddress @PlutusScriptV3 networkId initialScript
264264

265-
initialScript = fromPlutusScript @PlutusScriptV3 initialValidatorScript
265+
initialScript = PlutusScriptSerialised initialValidatorScript
266266

267267
commitAddress = mkScriptAddress networkId commitScript
268268

269-
commitScript = fromPlutusScript @PlutusScriptV3 commitValidatorScript
269+
commitScript = PlutusScriptSerialised commitValidatorScript
270270

271271
data CollectComObservation = CollectComObservation
272272
{ threadOutput :: OpenThreadOutput
@@ -307,7 +307,7 @@ observeCollectComTx utxo tx = do
307307
}
308308
_ -> Nothing
309309
where
310-
headScript = fromPlutusScript Head.validatorScript
310+
headScript = PlutusScriptSerialised Head.validatorScript
311311
decodeUtxoHash datum =
312312
case fromScriptData datum of
313313
Just (Head.Open Head.OpenDatum{utxoHash}) -> Just $ fromBuiltin utxoHash
@@ -350,8 +350,8 @@ observeIncrementTx utxo tx = do
350350
_ -> Nothing
351351
_ -> Nothing
352352
where
353-
depositScript = fromPlutusScript depositValidatorScript
354-
headScript = fromPlutusScript Head.validatorScript
353+
depositScript = PlutusScriptSerialised depositValidatorScript
354+
headScript = PlutusScriptSerialised Head.validatorScript
355355

356356
data DecrementObservation = DecrementObservation
357357
{ headId :: HeadId
@@ -389,7 +389,7 @@ observeDecrementTx utxo tx = do
389389
_ -> Nothing
390390
_ -> Nothing
391391
where
392-
headScript = fromPlutusScript Head.validatorScript
392+
headScript = PlutusScriptSerialised Head.validatorScript
393393

394394
data CloseObservation = CloseObservation
395395
{ threadOutput :: ClosedThreadOutput
@@ -434,7 +434,7 @@ observeCloseTx utxo tx = do
434434
}
435435
_ -> Nothing
436436
where
437-
headScript = fromPlutusScript Head.validatorScript
437+
headScript = PlutusScriptSerialised Head.validatorScript
438438

439439
data ContestObservation = ContestObservation
440440
{ contestedThreadOutput :: (TxIn, TxOut CtxUTxO)
@@ -474,7 +474,7 @@ observeContestTx utxo tx = do
474474
}
475475
_ -> Nothing
476476
where
477-
headScript = fromPlutusScript Head.validatorScript
477+
headScript = PlutusScriptSerialised Head.validatorScript
478478

479479
decodeDatum headDatum =
480480
case fromScriptData headDatum of
@@ -500,7 +500,7 @@ observeFanoutTx utxo tx = do
500500
Head.Fanout{} -> pure FanoutObservation{headId}
501501
_ -> Nothing
502502
where
503-
headScript = fromPlutusScript Head.validatorScript
503+
headScript = PlutusScriptSerialised Head.validatorScript
504504

505505
newtype AbortObservation = AbortObservation {headId :: HeadId} deriving stock (Eq, Show, Generic)
506506

@@ -519,7 +519,7 @@ observeAbortTx utxo tx = do
519519
Head.Abort -> pure $ AbortObservation headId
520520
_ -> Nothing
521521
where
522-
headScript = fromPlutusScript Head.validatorScript
522+
headScript = PlutusScriptSerialised Head.validatorScript
523523

524524
-- * Cardano specific identifiers
525525

hydra-node/test/Hydra/Chain/Direct/StateSpec.hs

+2-3
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ import Hydra.Cardano.Api (
1919
TxOut,
2020
UTxO,
2121
findRedeemerSpending,
22-
fromPlutusScript,
2322
genTxIn,
2423
hashScript,
2524
isScriptTxOut,
@@ -427,11 +426,11 @@ genCommitTxMutation utxo tx =
427426
fromMaybe (error "not found redeemer") $
428427
findRedeemerSpending @Initial.RedeemerType tx initialTxIn
429428

430-
initialScript = fromPlutusScript @PlutusScriptV3 initialValidatorScript
429+
initialScript = PlutusScriptSerialised initialValidatorScript
431430

432431
fakeScriptAddress = mkScriptAddress @PlutusScriptV3 testNetworkId fakeScript
433432

434-
fakeScript = fromPlutusScript dummyValidatorScript
433+
fakeScript = PlutusScriptSerialised dummyValidatorScript
435434

436435
genAdaOnlyUTxOOnMainnetWithAmountBiggerThanOutLimit :: Gen UTxO
437436
genAdaOnlyUTxOOnMainnetWithAmountBiggerThanOutLimit = do

hydra-plutus/exe/inspect-script/Main.hs

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ main = do
5555
serialised =
5656
Aeson.encode $
5757
serialiseToTextEnvelope (Just $ fromString itemName) $
58-
fromPlutusScript @PlutusScriptV3 item
58+
PlutusScriptSerialised item
5959
BL.writeFile itemFile serialised
6060
putTextLn $ " " <> pack itemFile <> ": " <> sizeInKb (serialise item)
6161

hydra-plutus/src/Hydra/Contract.hs

+5-5
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import Data.ByteString.Lazy qualified as BSL
99
import Hydra.Cardano.Api (
1010
PlutusScriptVersion (PlutusScriptV3),
1111
ScriptHash,
12-
fromPlutusScript,
1312
hashScript,
1413
pattern PlutusScript,
14+
pattern PlutusScriptSerialised,
1515
)
1616
import Hydra.Cardano.Api.Prelude qualified as Api
1717
import Hydra.Contract.Head qualified as Head
@@ -44,18 +44,18 @@ scriptInfo =
4444
ScriptInfo
4545
{ mintingScriptHash = plutusScriptHash $ HeadTokens.mintingPolicyScript defaultOutRef
4646
, mintingScriptSize = scriptSize $ HeadTokens.mintingPolicyScript defaultOutRef
47-
, initialScriptHash = hashScript $ Api.PlutusScript PlutusScriptV3 $ fromPlutusScript initialValidatorScript
47+
, initialScriptHash = hashScript $ Api.PlutusScript PlutusScriptV3 $ PlutusScriptSerialised initialValidatorScript
4848
, initialScriptSize = scriptSize initialValidatorScript
49-
, commitScriptHash = hashScript $ Api.PlutusScript PlutusScriptV3 $ fromPlutusScript commitValidatorScript
49+
, commitScriptHash = hashScript $ Api.PlutusScript PlutusScriptV3 $ PlutusScriptSerialised commitValidatorScript
5050
, commitScriptSize = scriptSize commitValidatorScript
5151
, headScriptHash = plutusScriptHash Head.validatorScript
5252
, headScriptSize = scriptSize Head.validatorScript
53-
, depositScriptHash = hashScript $ Api.PlutusScript PlutusScriptV3 $ fromPlutusScript depositValidatorScript
53+
, depositScriptHash = hashScript $ Api.PlutusScript PlutusScriptV3 $ PlutusScriptSerialised depositValidatorScript
5454
, depositScriptSize = scriptSize depositValidatorScript
5555
}
5656
where
5757
plutusScriptHash =
58-
hashScript . PlutusScript . fromPlutusScript
58+
hashScript . PlutusScript . PlutusScriptSerialised
5959

6060
scriptSize = BSL.length . serialise
6161

hydra-plutus/src/Hydra/Contract/HeadTokens.hs

+2-3
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,12 @@ module Hydra.Contract.HeadTokens where
1616
import PlutusTx.Prelude
1717

1818
import Hydra.Cardano.Api (
19-
PlutusScriptV3,
2019
PolicyId,
2120
TxIn,
22-
fromPlutusScript,
2321
scriptPolicyId,
2422
toPlutusTxOutRef,
2523
pattern PlutusScript,
24+
pattern PlutusScriptSerialised,
2625
)
2726
import Hydra.Cardano.Api qualified as Api
2827

@@ -206,4 +205,4 @@ headPolicyId =
206205
-- | Get the applied head minting policy script given a seed 'TxIn'.
207206
mkHeadTokenScript :: TxIn -> Api.PlutusScript
208207
mkHeadTokenScript =
209-
fromPlutusScript @PlutusScriptV3 . mintingPolicyScript . toPlutusTxOutRef
208+
PlutusScriptSerialised . mintingPolicyScript . toPlutusTxOutRef

hydra-plutus/test/Hydra/Plutus/GoldenSpec.hs

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ import Hydra.Cardano.Api (
1717
AsType (AsPlutusScriptV3, AsScript),
1818
File (..),
1919
Script,
20-
fromPlutusScript,
2120
hashScript,
2221
readFileTextEnvelope,
2322
writeFileTextEnvelope,
2423
pattern PlutusScript,
24+
pattern PlutusScriptSerialised,
2525
)
2626
import Hydra.Contract.Head qualified as Head
2727
import Hydra.Contract.HeadTokens qualified as HeadTokens
@@ -49,7 +49,7 @@ spec = do
4949
goldenScript :: String -> Plutus.SerialisedScript -> Golden Script
5050
goldenScript name plutusScript =
5151
Golden
52-
{ output = PlutusScript $ fromPlutusScript plutusScript
52+
{ output = PlutusScript $ PlutusScriptSerialised plutusScript
5353
, encodePretty = show . hashScript
5454
, writeToFile
5555
, readFromFile

0 commit comments

Comments
 (0)