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

Boxes: Add support for Boxes #348

Merged
merged 35 commits into from Nov 2, 2022
Merged

Boxes: Add support for Boxes #348

merged 35 commits into from Nov 2, 2022

Conversation

algochoi
Copy link
Contributor

@algochoi algochoi commented Jun 15, 2022

Adds SDK support for Boxes introduced in algorand/indexer#1168 and algorand/go-algorand#4149.

Zeph Grunschlag and others added 12 commits June 2, 2022 17:26
* starting to add box support

* Add boxes to atc

* Format files with black

* Add boxes docstring

* Add boxes support for appl creation

* Update cucumber steps for appl txn encoding for boxes

* Formatting

* Point testing branch to box-reference (WIP)

* Sort imports on relevant files and format

* Add translation for foreign apps in box refs and some local unit tests

* Add some invalid cases for box translation

* Check for None when iterating box refs

* Add self app id references and tests

* Minor changes for box support

* Split boxref to separate file

* Change box name type to bytes

* Change docs references from box string to bytes

* Refactor cucumber steps

* Refactoring code and adding docstrings

* Add another comment

* Change test steps to encode box args like app args

* Add safety checks for box references

* Add some detailed errors and refactor

* Format unit test

* Fix foreign index error and revise undictify method

* Finish merging cucumber steps

* Formatting

* Fix box tests again

* Encoded as bytes unit test (#344)

* Unit test for encoding.py's `encode_as_bytes()`

* Accept AttributeError for foreign apps array if it is referencing its own app id

* Add unit test for empty foreign app array

* Change unit test to pass in None foreign array

* Change undictify method for boxes

* Formatting

* Change test branch

* Change type hints for atc boxes

* Check for int type for box reference id

* Change type ignore annotation

Co-authored-by: Ben Guidarelli <ben.guidarelli@gmail.com>
Co-authored-by: Zeph Grunschlag <tzaffi@users.noreply.github.com>
run_integration.sh Outdated Show resolved Hide resolved
* starting to add box support

* Add boxes to atc

* Format files with black

* Add boxes docstring

* Add boxes support for appl creation

* Update cucumber steps for appl txn encoding for boxes

* Formatting

* Point testing branch to box-reference (WIP)

* Sort imports on relevant files and format

* Add translation for foreign apps in box refs and some local unit tests

* Add some invalid cases for box translation

* Check for None when iterating box refs

* Add self app id references and tests

* Minor changes for box support

* Split boxref to separate file

* Change box name type to bytes

* Change docs references from box string to bytes

* Refactor cucumber steps

* Refactoring code and adding docstrings

* Add another comment

* Change test steps to encode box args like app args

* Add safety checks for box references

* Add some detailed errors and refactor

* Format unit test

* Fix foreign index error and revise undictify method

* Finish merging cucumber steps

* Formatting

* Fix box tests again

* Encoded as bytes unit test (#344)

* Unit test for encoding.py's `encode_as_bytes()`

* Accept AttributeError for foreign apps array if it is referencing its own app id

* Add unit test for empty foreign app array

* Change unit test to pass in None foreign array

* Change undictify method for boxes

* Formatting

* Change test branch

* Change type hints for atc boxes

* Add algod endpoint for getting app box by name

* Add steps test for box application path

* Escape forward slashes in uri

* Formatting

* Finish merging

* Add box integration tests

* Formatting

* Add boxes integration test tag to makefile

* Change step prefix

* Revert step prefix

* Change algod request for box search and test

* Change makefile test

* Formatting

* Remove unused line

* Change wording around box encoding steps

* Try running feature branch tests

Co-authored-by: Ben Guidarelli <ben.guidarelli@gmail.com>
Co-authored-by: Zeph Grunschlag <tzaffi@users.noreply.github.com>
CHANGELOG.md Show resolved Hide resolved
algosdk/v2client/algod.py Outdated Show resolved Hide resolved
algochoi and others added 7 commits July 15, 2022 13:51
* Add GetApplicationBoxes API and add steps

* Temporarily set to list-boxes branch in SDK testing

* Conform to new response format in boxes API

* Change test branch

* Add max params to boxes endpoint

* Fix paths for empty queries

* Change steps to check for query params in boxes request

* Formatting

* Reset test branch

* Remove redundant part in cucumber step

* Minor refactoring for set equality

* Revert "Minor refactoring for set equality"

This reverts commit 0a2b0d7.

* Check list length first, then do set comparison after

* Revert test branch

* Fix branch name
* Merge develop into feature/boxes

* Change testing branch
* add check to desc so we dont output null if undefined (#368)

* Bumped version to v1.16.1

* Enhancement: Trim the indexer images and use the sandbox instead of custom dockers (#367)

Co-authored-by: algochoi <86622919+algochoi@users.noreply.github.com>
Co-authored-by: Michael Diamant <michaeldiamant@users.noreply.github.com>

* Bug-fix: Pass verbosity through to testing harness (#373)

* Enhancement: Add State Proof support (#370)

* add stateproof support

* Enhancement: Deprecating use of langspec  (#371)

* Bumped version to v1.17.0

* Update README.md

Co-authored-by: Zeph Grunschlag <tzaffi@users.noreply.github.com>

* Mergeback: Release v1.17.0b1 (#378)

* Bumped version
* Update README.md

* bumped version to v1.17.0

Co-authored-by: Ben Guidarelli <ben.guidarelli@gmail.com>
Co-authored-by: Barbara Poon <barbara.poon@algorand.com>
Co-authored-by: Zeph Grunschlag <tzaffi@users.noreply.github.com>
Co-authored-by: algochoi <86622919+algochoi@users.noreply.github.com>
Co-authored-by: Michael Diamant <michaeldiamant@users.noreply.github.com>
Co-authored-by: shiqizng <80276844+shiqizng@users.noreply.github.com>
Co-authored-by: Jack Smith <jack.smith@algorand.com>
Co-authored-by: Jack <87339414+algojack@users.noreply.github.com>
Co-authored-by: Lucky Baar <lucky.baar@algorand.com>
@ahangsu ahangsu changed the title [WIP] Box Storage Feature branch Enhancement: [WIP] Box Storage Feature branch Sep 2, 2022
algochoi and others added 2 commits September 6, 2022 15:24
* Add path tests for Indexer boxes

* Add next page param in indexer api

* Formatting

* Modify step to add next token in indexer boxes test

* Update algosdk/v2client/indexer.py

Co-authored-by: Zeph Grunschlag <tzaffi@users.noreply.github.com>

* Update .test-env

Co-authored-by: Hang Su <hang.su@algorand.com>
Co-authored-by: Hang Su <87964331+ahangsu@users.noreply.github.com>
Co-authored-by: Zeph Grunschlag <tzaffi@users.noreply.github.com>
* add indexer impl in sdk

* merge step for indexer

* add indexer confirmed steps

* add indexer confirmed steps

* add indexer confirmed steps

* minor

* change to ms sleep

* per new step expectation

* unify with applications.boxes

* phrasing

* Update .test-env

* Update tests/steps/application_v2_steps.py

Co-authored-by: algochoi <86622919+algochoi@users.noreply.github.com>

* Update tests/steps/application_v2_steps.py

Co-authored-by: algochoi <86622919+algochoi@users.noreply.github.com>

* merge sleep steps

Co-authored-by: algochoi <86622919+algochoi@users.noreply.github.com>
.test-env Outdated Show resolved Hide resolved
algosdk/v2client/algod.py Outdated Show resolved Hide resolved
Copy link
Contributor

@tzaffi tzaffi left a comment

Choose a reason for hiding this comment

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

Some minor suggestions, including more line items to the CHANGELOG.md

@ahangsu ahangsu changed the title Enhancement: [WIP] Box Storage Feature branch Enhancement: Box Storage Feature branch Sep 20, 2022
@ahangsu ahangsu marked this pull request as ready for review September 20, 2022 17:14
Copy link
Contributor

@tzaffi tzaffi left a comment

Choose a reason for hiding this comment

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

Approving as the only remaining discussion is around the CHANGELOG

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.

my approval left for the part I didn't write, i.e. mostly outside tests

algosdk/box_reference.py Outdated Show resolved Hide resolved
algosdk/v2client/algod.py Show resolved Hide resolved
@michaeldiamant michaeldiamant changed the title Enhancement: Box Storage Feature branch Boxes: Add support for Boxes Oct 31, 2022
michaeldiamant and others added 2 commits October 31, 2022 16:42
Co-authored-by: Hang Su <87964331+ahangsu@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants