Skip to content
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

Support Foreign objects as ABI arguments and address ARC-4 changes #251

Merged
merged 45 commits into from
Dec 28, 2021

Conversation

algochoi
Copy link
Contributor

@algochoi algochoi commented Nov 17, 2021

This PR adds support for Foreign accounts, apps, and assets as ABI arguments. In addition, it includes some

Closes #250

algosdk/atomic_transaction_composer.py Outdated Show resolved Hide resolved
algosdk/atomic_transaction_composer.py Outdated Show resolved Hide resolved
@algochoi algochoi assigned algochoi and unassigned jasonpaulos Dec 22, 2021
Copy link
Contributor

@ahangsu ahangsu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks largely good to me, just some polishing here and there

Copy link
Contributor

@ahangsu ahangsu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Look largely good to me. My bad, ignore this, should leave this to go-sdk...

algosdk/atomic_transaction_composer.py Outdated Show resolved Hide resolved
algosdk/abi/contract.py Outdated Show resolved Hide resolved
algosdk/abi/reference.py Outdated Show resolved Hide resolved
algosdk/atomic_transaction_composer.py Outdated Show resolved Hide resolved
algosdk/abi/contract.py Outdated Show resolved Hide resolved
algosdk/atomic_transaction_composer.py Outdated Show resolved Hide resolved
Copy link
Contributor

@jasonpaulos jasonpaulos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pending tests, looks good!

@algochoi algochoi merged commit 6ed0817 into develop Dec 28, 2021
@algochoi algochoi deleted the algochoi/foreign-types branch December 28, 2021 20:21
aldur pushed a commit that referenced this pull request Feb 8, 2022
)

* Start ABI JSON interaction

* Add static annoation

* Fix Method argument parsing

* Add ABI Typing to Method arguments

* [WIP] Add AtomicTransactionComposer build functions

* [WIP] Sign and send atomic transaction groups

* Add unit tests for object parsing

* Clean up method calls

* Address PR comments on JSON objects

* Refactor ABI Type to ABIType so it can be exposed to outside world

* Add cucumber steps for ABI tests and update existing implementation so it can pass these tests

* Refactor TransactionSigner to Abstract class and merge signatures when signing

* Update testing to reflect json unit tests and composer tests

* Formatting and docstring fixes

* Add foreign types for method arguments

* Clean up imports

* Fix unit test for appId

* Add unit test for foreign array

* Refactor some names and add txn as an arg type

* Partially address PR comments

* Fix encoding args for foreign types

* Add some additional checks for safety

* Fix a step so we check for empty string instead of None

* Correct foreign app and account indices accounting for the implicit argument

* Resolve formatting

* Fix unit tests

* Fix foreign objects to compact duplicates and special values

* Refactor foreign objects, transactions, and address some new ABI changes

* ABI composer modifications and test updates

* Change Interface and Contract to newest ABI changes

* Fix some integration tests for composer

* Fix remaining composer tests

* Formatting changes

* Fix method json tests

* Address PR Comments, clean up and refactor composer and contract

* Create helper function for populating foreign objects

* Change type hints on reference and transaction checks

* Add generics and fix dictifying network info

* Fix step for cucumber test contract parsing
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implement ABI changes Support foreign objects as ABI arguments
4 participants