Skip to content
This repository was archived by the owner on Nov 24, 2025. It is now read-only.

Commit b7e817b

Browse files
committed
Add Pact 4 upgrades back in
Change-Id: Id00000003f0e000a1190670dcce027a952183462
1 parent d517ea3 commit b7e817b

File tree

3 files changed

+83
-3
lines changed

3 files changed

+83
-3
lines changed

chainweb.cabal

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -375,6 +375,16 @@ library
375375
, Chainweb.Pact4.TransactionExec
376376
, Chainweb.Pact4.Types
377377
, Chainweb.Pact4.Validations
378+
, Chainweb.Pact.Transactions.Mainnet0Transactions
379+
, Chainweb.Pact.Transactions.Mainnet1Transactions
380+
, Chainweb.Pact.Transactions.Mainnet2Transactions
381+
, Chainweb.Pact.Transactions.Mainnet3Transactions
382+
, Chainweb.Pact.Transactions.Mainnet4Transactions
383+
, Chainweb.Pact.Transactions.Mainnet5Transactions
384+
, Chainweb.Pact.Transactions.Mainnet6Transactions
385+
, Chainweb.Pact.Transactions.Mainnet7Transactions
386+
, Chainweb.Pact.Transactions.Mainnet8Transactions
387+
, Chainweb.Pact.Transactions.Mainnet9Transactions
378388

379389
-- utils
380390
, Utils.Logging

src/Chainweb/Version/Mainnet.hs

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,21 @@ import P2P.BootstrapNodes
2424

2525
import Pact.Core.Gas(Gas(..))
2626
import Pact.Core.Names
27+
import qualified Chainweb.Pact.Transactions.CoinV3Transactions as CoinV3
28+
import qualified Chainweb.Pact.Transactions.CoinV4Transactions as CoinV4
29+
import qualified Chainweb.Pact.Transactions.CoinV5Transactions as CoinV5
30+
import qualified Chainweb.Pact.Transactions.CoinV6Transactions as CoinV6
31+
import qualified Chainweb.Pact.Transactions.Mainnet0Transactions as MN0
32+
import qualified Chainweb.Pact.Transactions.Mainnet1Transactions as MN1
33+
import qualified Chainweb.Pact.Transactions.Mainnet2Transactions as MN2
34+
import qualified Chainweb.Pact.Transactions.Mainnet3Transactions as MN3
35+
import qualified Chainweb.Pact.Transactions.Mainnet4Transactions as MN4
36+
import qualified Chainweb.Pact.Transactions.Mainnet5Transactions as MN5
37+
import qualified Chainweb.Pact.Transactions.Mainnet6Transactions as MN6
38+
import qualified Chainweb.Pact.Transactions.Mainnet7Transactions as MN7
39+
import qualified Chainweb.Pact.Transactions.Mainnet8Transactions as MN8
40+
import qualified Chainweb.Pact.Transactions.Mainnet9Transactions as MN9
41+
import qualified Chainweb.Pact.Transactions.MainnetKADTransactions as MNKAD
2742

2843
-- | Initial hash target for mainnet 20-chain transition. Difficulty on the new
2944
-- chains is 1/4 of the current difficulty. It is based on the following header
@@ -169,7 +184,26 @@ mainnet = withVersion mainnet $ ChainwebVersion
169184
, ( unsafeChainId 19, unsafeFromText "i-MN4AoxsaPds4M_MzwNSUygAkGnPZoCDvahfckowt4")
170185
]
171186
}
172-
, _versionUpgrades = onChains []
187+
, _versionUpgrades = chainZip HM.union
188+
(indexByForkHeights
189+
[ (CoinV2, onChains
190+
[ (unsafeChainId 0, pact4Upgrade MN0.transactions)
191+
, (unsafeChainId 1, pact4Upgrade MN1.transactions)
192+
, (unsafeChainId 2, pact4Upgrade MN2.transactions)
193+
, (unsafeChainId 3, pact4Upgrade MN3.transactions)
194+
, (unsafeChainId 4, pact4Upgrade MN4.transactions)
195+
, (unsafeChainId 5, pact4Upgrade MN5.transactions)
196+
, (unsafeChainId 6, pact4Upgrade MN6.transactions)
197+
, (unsafeChainId 7, pact4Upgrade MN7.transactions)
198+
, (unsafeChainId 8, pact4Upgrade MN8.transactions)
199+
, (unsafeChainId 9, pact4Upgrade MN9.transactions)
200+
])
201+
, (Pact4Coin3, onAllChains $ Pact4Upgrade CoinV3.transactions True)
202+
, (Chainweb214Pact, onAllChains $ Pact4Upgrade CoinV4.transactions True)
203+
, (Chainweb215Pact, onAllChains $ Pact4Upgrade CoinV5.transactions True)
204+
, (Chainweb223Pact, onAllChains $ pact4Upgrade CoinV6.transactions)
205+
])
206+
(onChains [(unsafeChainId 0, HM.singleton to20ChainsMainnet (pact4Upgrade MNKAD.transactions))])
173207
, _versionCheats = VersionCheats
174208
{ _disablePow = False
175209
, _fakeFirstEpochStart = False

src/Chainweb/Version/Testnet04.hs

Lines changed: 38 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
{-# language PatternSynonyms #-}
55
{-# language QuasiQuotes #-}
66
{-# language ViewPatterns #-}
7+
{-# language ImportQualifiedPost #-}
78

89
module Chainweb.Version.Testnet04(testnet04, pattern Testnet04) where
910

@@ -16,6 +17,23 @@ import Chainweb.BlockHeight
1617
import Chainweb.ChainId
1718
import Chainweb.Difficulty
1819
import Chainweb.Graph
20+
import Chainweb.Pact.Transactions.CoinV3Transactions qualified as CoinV3
21+
import Chainweb.Pact.Transactions.CoinV4Transactions qualified as CoinV4
22+
import Chainweb.Pact.Transactions.CoinV5Transactions qualified as CoinV5
23+
import Chainweb.Pact.Transactions.CoinV6Transactions qualified as CoinV6
24+
import Chainweb.Pact.Transactions.Mainnet0Transactions qualified as MN0
25+
import Chainweb.Pact.Transactions.Mainnet1Transactions qualified as MN1
26+
import Chainweb.Pact.Transactions.Mainnet2Transactions qualified as MN2
27+
import Chainweb.Pact.Transactions.Mainnet3Transactions qualified as MN3
28+
import Chainweb.Pact.Transactions.Mainnet4Transactions qualified as MN4
29+
import Chainweb.Pact.Transactions.Mainnet5Transactions qualified as MN5
30+
import Chainweb.Pact.Transactions.Mainnet6Transactions qualified as MN6
31+
import Chainweb.Pact.Transactions.Mainnet7Transactions qualified as MN7
32+
import Chainweb.Pact.Transactions.Mainnet8Transactions qualified as MN8
33+
import Chainweb.Pact.Transactions.Mainnet9Transactions qualified as MN9
34+
import Chainweb.Pact.Transactions.MainnetKADTransactions qualified as MNKAD
35+
import Chainweb.BlockHeader.Genesis.Testnet040Payload qualified as PN0
36+
import Chainweb.BlockHeader.Genesis.Testnet041to19Payload qualified as PNN
1937
import Chainweb.Time
2038
import Chainweb.Utils
2139
import Chainweb.Utils.Rule
@@ -159,8 +177,26 @@ testnet04 = withVersion testnet04 $ ChainwebVersion
159177
, (unsafeChainId 19, unsafeFromText "HU-ZhdfsQCiTrfxjtbkr5MHmjoukOt6INqB2vuYiF3g")
160178
]
161179
}
162-
-- all upgrades have been removed due to the removal of Pact 4
163-
, _versionUpgrades = onChains []
180+
, _versionUpgrades = chainZip HM.union
181+
(indexByForkHeights
182+
[ (CoinV2, onChains $
183+
[ (unsafeChainId 0, pact4Upgrade MN0.transactions)
184+
, (unsafeChainId 1, pact4Upgrade MN1.transactions)
185+
, (unsafeChainId 2, pact4Upgrade MN2.transactions)
186+
, (unsafeChainId 3, pact4Upgrade MN3.transactions)
187+
, (unsafeChainId 4, pact4Upgrade MN4.transactions)
188+
, (unsafeChainId 5, pact4Upgrade MN5.transactions)
189+
, (unsafeChainId 6, pact4Upgrade MN6.transactions)
190+
, (unsafeChainId 7, pact4Upgrade MN7.transactions)
191+
, (unsafeChainId 8, pact4Upgrade MN8.transactions)
192+
, (unsafeChainId 9, pact4Upgrade MN9.transactions)
193+
])
194+
, (Pact4Coin3, onAllChains (Pact4Upgrade CoinV3.transactions True))
195+
, (Chainweb214Pact, onAllChains (Pact4Upgrade CoinV4.transactions True))
196+
, (Chainweb215Pact, onAllChains (Pact4Upgrade CoinV5.transactions True))
197+
, (Chainweb223Pact, onAllChains (pact4Upgrade CoinV6.transactions))
198+
])
199+
(onChains [(unsafeChainId 0, HM.singleton to20ChainsTestnet (pact4Upgrade MNKAD.transactions))])
164200
, _versionCheats = VersionCheats
165201
{ _disablePow = False
166202
, _fakeFirstEpochStart = False

0 commit comments

Comments
 (0)