-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: update dependencies in sync with node v9.1.0 & Conway support #327
Conversation
Is the remaining work here adding another GYEra, GYConway, then adding a GYConway branch to every place GYBabbage exists and doing the analogous thing? |
Hey @eddiemundo, there are huge number of changes made that I haven't yet pushed to this branch as it's a bit of a mess atm. It's priority on our end to bring Conway support in Atlas asap. |
Migration guideGeneral changes
PrivnetHow to run?To run the privnet tests, first one needs to install cardano-node & cardano-cli like so:
Then the tests can be ran, like for Atlas: How to structure?
ctxRunI :: Ctx -> User -> GYTxBuilderMonadIO (GYTxSkeleton v) -> IO GYTxBody
ctxRunI ctx user act = ctxRunBuilder ctx user $ act >>= buildTxBody
ctxRunC :: Ctx -> User -> GYTxBuilderMonadIO a -> IO a
ctxRunC = ctxRunBuilder
ctxRunF :: Traversable t => Ctx -> User -> GYTxBuilderMonadIO (t (GYTxSkeleton v)) -> IO (t GYTxBody)
ctxRunF ctx user act = ctxRunBuilder ctx user $ act >>= traverse buildTxBody
submitTxCtx :: Ctx -> User -> GYTxBody -> IO GYTxId
submitTxCtx ctx user txBody = ctxRun ctx user $ signAndSubmitConfirmed txBody
submitTxCtx' :: Ctx -> User -> GYTx -> IO GYTxId
submitTxCtx' ctx user tx = ctxRun ctx user $ submitTxConfirmed tx
addRefScriptCtx :: Ctx -> User -> GYScript PlutusV2 -> IO GYTxOutRef
addRefScriptCtx ctx user script = ctxRun ctx user $ addRefScriptToLimbo script
Let us know if you think some of these should be changed! CLB (cardano-ledger-backend, replacement of plutus-simple-model employed earlier) & new testing mechanismNote that we now have unified testing in place, i.e., same test file can be ran against multiple backend interpreters, i.e., either utilising CLB, private testnet machinery or any of cardano network (testnet/mainnet). It is best to see
|
Single test inside |
@@ -105,3 +112,17 @@ hashSimpleScript = scriptHashFromApi . hashSimpleScript' | |||
|
|||
hashSimpleScript' :: GYSimpleScript -> Api.ScriptHash | |||
hashSimpleScript' = Api.hashScript . Api.SimpleScript . simpleScriptToApi | |||
|
|||
-- FIXME: Need to test this. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tracked in this issue.
Good migration guide. I'd add that there is a I think the migration guide should also request people to move to the new tx monad hierarchy design (i.e don't use more powerful monad than needed), before opting for the drop in functions like Could you also put the short brief on the tx monad hierarchy in the migration guide (when creating a new release?) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well done. Most design changes look fine to me.
The conway update specific changes seem fine. However, they require testing to make sure they do indeed follow the protocol. Private testnet running conway is a start. But there ought to be some manual sanity checking transactions submitted to Preprod, and finally to mainnet later on.
The hardcoded PParams related things need to have a tracking issue (so they can be updated later).
…lder.IO.Unsafe`
Co-authored-by: 4TT1L4 <[email protected]>
@TotallyNotChase Thanks for your review! It's highly appreciated. |
Yes, we have been testing these changes with our dapp. |
Yes, this was on radar! I have created issue for it here. |
… update-node-9.1.0
…arison constraints, fixed some signature restrictions to not require PlutusV2
I tried pulling from the branch
which seems to be because How do I get it to use |
Sorry, I just needed to cabal update. |
@eddiemundo Yes, please make use of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice. Excellent work!
LGTM!
Closes #326, closes #334, closes #332, closes #330, closes #314.