Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
4ccf619
feat: app client and initial batch of tests transpiled from py
aorumbayev Sep 2, 2025
07d6863
chore: fix merge conflicts against main; refine common fixture usage
aorumbayev Sep 2, 2025
46871f7
feat: config singleton and event emitter
aorumbayev Sep 2, 2025
0c04a92
chore: minor comments
aorumbayev Sep 2, 2025
78abbb6
chore: pr comments
aorumbayev Sep 2, 2025
9c577ae
refactor: addressing pr comments
aorumbayev Sep 3, 2025
9406350
refactor: add native struct support to abi crate; refine abi handling…
aorumbayev Sep 4, 2025
e626e98
refactor: PR feedback (#252)
PatrickDinh Sep 11, 2025
092606d
chore: merge conflicts and clippy warning fixes
aorumbayev Sep 11, 2025
d33f36d
tests: app client state access tests;
aorumbayev Sep 12, 2025
18323a0
fix(composer): propagate method-level signer to transaction args and …
aorumbayev Sep 14, 2025
0253ba6
fix: add missing signer fields to app call params
aorumbayev Sep 14, 2025
06e8ec6
chore: wip more tests
aorumbayev Sep 14, 2025
b69acb1
chore: wip
aorumbayev Sep 15, 2025
4646499
chore: refining logic error handling; additional app client tests
aorumbayev Sep 15, 2025
e57c4e8
refactor: async trait for sate accessor; descriptive lifetime names
aorumbayev Sep 15, 2025
e459ca4
chore: moving remaining tests from transpiled ref tests; minor refine…
aorumbayev Sep 15, 2025
fec24a9
feat: app factory rebase
aorumbayev Sep 15, 2025
12d6102
Merge remote-tracking branch 'origin/main' into feat/app-factory
aorumbayev Sep 18, 2025
226315d
chore: merge conflicts wip
aorumbayev Sep 18, 2025
94dc537
chore: refining appfactory
aorumbayev Sep 19, 2025
29cef4c
chore: remove panic statements from factory tests
aorumbayev Sep 19, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
{
"arcs": [
22,
28
],
"bareActions": {
"call": [
"UpdateApplication"
],
"create": [
"NoOp"
]
},
"methods": [
{
"actions": {
"call": [
"NoOp"
],
"create": []
},
"args": [
{
"type": "string",
"name": "name"
}
],
"name": "hello",
"returns": {
"type": "string"
},
"events": [],
"readonly": false,
"recommendations": {}
}
],
"name": "HelloWorld",
"state": {
"keys": {
"box": {},
"global": {},
"local": {}
},
"maps": {
"box": {},
"global": {},
"local": {}
},
"schema": {
"global": {
"bytes": 0,
"ints": 0
},
"local": {
"bytes": 0,
"ints": 0
}
}
},
"structs": {},
"byteCode": {
"approval": "CiADAQAAMRtBADKABAK+zhE2GgCOAQACI0MxGRREMRhENhoBVwIAiAAvSRUWVwYCTFCABBUffHVMULAiQ4EEIzEZjgIACQADQv/NMRgURCJDMRhEiAASIkOKAQGAB0hlbGxvLCCL/1CJigAAJESJ",
"clear": "CoEBQw=="
},
"compilerInfo": {
"compiler": "puya",
"compilerVersion": {
"major": 4,
"minor": 3,
"patch": 3
}
},
"events": [],
"networks": {},
"source": {
"approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuYXBwcm92YWxfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIGludGNibG9jayAxIDAgVE1QTF9VUERBVEFCTEUKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9oZWxsb193b3JsZC9jb250cmFjdC5weTo1CiAgICAvLyBjbGFzcyBIZWxsb1dvcmxkKEFSQzRDb250cmFjdCk6CiAgICB0eG4gTnVtQXBwQXJncwogICAgYnogbWFpbl9iYXJlX3JvdXRpbmdANgogICAgcHVzaGJ5dGVzIDB4MDJiZWNlMTEgLy8gbWV0aG9kICJoZWxsbyhzdHJpbmcpc3RyaW5nIgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAogICAgbWF0Y2ggbWFpbl9oZWxsb19yb3V0ZUAzCgptYWluX2FmdGVyX2lmX2Vsc2VAMTE6CiAgICAvLyBzbWFydF9jb250cmFjdHMvaGVsbG9fd29ybGQvY29udHJhY3QucHk6NQogICAgLy8gY2xhc3MgSGVsbG9Xb3JsZChBUkM0Q29udHJhY3QpOgogICAgaW50Y18xIC8vIDAKICAgIHJldHVybgoKbWFpbl9oZWxsb19yb3V0ZUAzOgogICAgLy8gc21hcnRfY29udHJhY3RzL2hlbGxvX3dvcmxkL2NvbnRyYWN0LnB5OjYKICAgIC8vIEBhYmltZXRob2QoKQogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0IC8vIE9uQ29tcGxldGlvbiBpcyBub3QgTm9PcAogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGFzc2VydCAvLyBjYW4gb25seSBjYWxsIHdoZW4gbm90IGNyZWF0aW5nCiAgICAvLyBzbWFydF9jb250cmFjdHMvaGVsbG9fd29ybGQvY29udHJhY3QucHk6NQogICAgLy8gY2xhc3MgSGVsbG9Xb3JsZChBUkM0Q29udHJhY3QpOgogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgZXh0cmFjdCAyIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9oZWxsb193b3JsZC9jb250cmFjdC5weTo2CiAgICAvLyBAYWJpbWV0aG9kKCkKICAgIGNhbGxzdWIgaGVsbG8KICAgIGR1cAogICAgbGVuCiAgICBpdG9iCiAgICBleHRyYWN0IDYgMgogICAgc3dhcAogICAgY29uY2F0CiAgICBwdXNoYnl0ZXMgMHgxNTFmN2M3NQogICAgc3dhcAogICAgY29uY2F0CiAgICBsb2cKICAgIGludGNfMCAvLyAxCiAgICByZXR1cm4KCm1haW5fYmFyZV9yb3V0aW5nQDY6CiAgICAvLyBzbWFydF9jb250cmFjdHMvaGVsbG9fd29ybGQvY29udHJhY3QucHk6NQogICAgLy8gY2xhc3MgSGVsbG9Xb3JsZChBUkM0Q29udHJhY3QpOgogICAgcHVzaGludCA0IC8vIDQKICAgIGludGNfMSAvLyAwCiAgICB0eG4gT25Db21wbGV0aW9uCiAgICBtYXRjaCBtYWluX3VwZGF0ZUA3IG1haW5fX19hbGdvcHlfZGVmYXVsdF9jcmVhdGVAOAogICAgYiBtYWluX2FmdGVyX2lmX2Vsc2VAMTEKCm1haW5fX19hbGdvcHlfZGVmYXVsdF9jcmVhdGVAODoKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICAhCiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIGNyZWF0aW5nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgptYWluX3VwZGF0ZUA3OgogICAgLy8gc21hcnRfY29udHJhY3RzL2hlbGxvX3dvcmxkL2NvbnRyYWN0LnB5OjIwNgogICAgLy8gQGJhcmVtZXRob2QoYWxsb3dfYWN0aW9ucz1bIlVwZGF0ZUFwcGxpY2F0aW9uIl0pCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0IC8vIGNhbiBvbmx5IGNhbGwgd2hlbiBub3QgY3JlYXRpbmcKICAgIGNhbGxzdWIgdXBkYXRlCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzLmhlbGxvX3dvcmxkLmNvbnRyYWN0LkhlbGxvV29ybGQuaGVsbG8obmFtZTogYnl0ZXMpIC0+IGJ5dGVzOgpoZWxsbzoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9oZWxsb193b3JsZC9jb250cmFjdC5weTo2LTcKICAgIC8vIEBhYmltZXRob2QoKQogICAgLy8gZGVmIGhlbGxvKHNlbGYsIG5hbWU6IFN0cmluZykgLT4gU3RyaW5nOgogICAgcHJvdG8gMSAxCiAgICAvLyBzbWFydF9jb250cmFjdHMvaGVsbG9fd29ybGQvY29udHJhY3QucHk6OAogICAgLy8gcmV0dXJuICJIZWxsbywgIiArIG5hbWUKICAgIHB1c2hieXRlcyAiSGVsbG8sICIKICAgIGZyYW1lX2RpZyAtMQogICAgY29uY2F0CiAgICByZXRzdWIKCgovLyBzbWFydF9jb250cmFjdHMuaGVsbG9fd29ybGQuY29udHJhY3QuSGVsbG9Xb3JsZC51cGRhdGUoKSAtPiB2b2lkOgp1cGRhdGU6CiAgICAvLyBzbWFydF9jb250cmFjdHMvaGVsbG9fd29ybGQvY29udHJhY3QucHk6MjA2LTIwNwogICAgLy8gQGJhcmVtZXRob2QoYWxsb3dfYWN0aW9ucz1bIlVwZGF0ZUFwcGxpY2F0aW9uIl0pCiAgICAvLyBkZWYgdXBkYXRlKHNlbGYpIC0+IE5vbmU6CiAgICBwcm90byAwIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9oZWxsb193b3JsZC9jb250cmFjdC5weToyMDgKICAgIC8vIGFzc2VydCBUZW1wbGF0ZVZhcltib29sXSgiVVBEQVRBQkxFIiksICJDaGVjayBhcHAgaXMgdXBkYXRhYmxlIgogICAgaW50Y18yIC8vIFRNUExfVVBEQVRBQkxFCiAgICBhc3NlcnQgLy8gQ2hlY2sgYXBwIGlzIHVwZGF0YWJsZQogICAgcmV0c3ViCg==",
"clear": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBhbGdvcHkuYXJjNC5BUkM0Q29udHJhY3QuY2xlYXJfc3RhdGVfcHJvZ3JhbSgpIC0+IHVpbnQ2NDoKbWFpbjoKICAgIHB1c2hpbnQgMSAvLyAxCiAgICByZXR1cm4K"
},
"sourceInfo": {
"approval": {
"pcOffsetMethod": "cblocks",
"sourceInfo": [
{
"pc": [
103
],
"errorMessage": "Check app is updatable"
},
{
"pc": [
23
],
"errorMessage": "OnCompletion is not NoOp"
},
{
"pc": [
72
],
"errorMessage": "can only call when creating"
},
{
"pc": [
26,
77
],
"errorMessage": "can only call when not creating"
}
]
},
"clear": {
"pcOffsetMethod": "none",
"sourceInfo": []
}
},
"templateVariables": {
"UPDATABLE": {
"type": "AVMUint64"
}
}
}
Loading
Loading