* Add serde to token-2022
* Add tests
* Fix feature syntax
* Formatting, enabling features
* Make CI work, and some naming nit cleanup
* Un-async tests
Co-authored-by: jon wong <j@jnwng.com>
Co-authored-by: Jon Cinque <jon.cinque@gmail.com>
* token-2022: limit incoming transfers for confidential transfer extension
* token-2022: add maximum pending counter for confidential extension in client
* token-2022: update tests for ct configure account
* token-2022: cargo fmt
* divide pending balance into lo and hi
* token-2022: update ct processor for lo and hi pending balances
* token-2022: limit confidential transfer deposit and transfer amount in token client
* token_2022: rename TokenError::IllegalAmount
* token-2022: compare max pending credit as u64
* token-2022: fmt
* token-2022: minor fix error from rebase
* Update token/program-2022/src/extension/confidential_transfer/processor.rs
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* token-2022: update configure account initialization comments
* token-2022: use strict comparison for max pending balance credit counter check
* token-2022: update deposit tests to check `pending_balance_hi` populated
* token-2022: update deposit tests to check that deposit and transfer fails when max pending exceeded
* token-2022: reset pending balance counter on `ApplyPendingBalance`
* token-2022: fix cargo test cases for credit counter
Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
* token-2022: prevent an already configured confidential account to be configured again
* token-2022: add overwrite flag to init extension
* token-2022: clippy
* token-2022: update initialize mint for interest bearing mint
* token-2022: confidential transfer mint init allow overwrite
* token-2022: bumping zk-token-sdk to 1.10.1-pre1 and updating variable names accordingly
* token-2022: updating client and test variables to match newest zk-token-sdk
* token-2022: Make program and crate deployable
* Featurize the syscall usage
* Re-add GenericTokenAccount
* Rebase correctly with GenericTokenAccount
* Add updated valid_account_data implementation
* Allow anyone to burn and close token Accounts owned by the system program and the incinerator
* Require rent from incinerator/system-owned token accounts be burnt when accounts closed
* Add support to OG program
* token: Support both token programs in associated-token-account
* Rename spl-token -> spl-token-2022, spl-token-legacy -> spl-token
* Use spl-token by default
* Check mint in get_account_data_len
* Add checks for either token program
* Rebase fix
* Update version comments in tests
* token-2022: add fee for confidential extension
* token-2022: change receiver to dest for consistency
* token-2022: addressing readability review comments for confidential extension
* Style nits
* Initial MemoTransfer extension
* Stub in check for memo
* Add memo-transfer token-client method
* Add MemoTransfer tests
* Add immutable get_extension, and clean up mod
* Update token/program-2022/src/extension/memo_transfer/instruction.rs
Co-authored-by: Jon Cinque <jon.cinque@gmail.com>
* Update token/rust/src/token.rs
Co-authored-by: Jon Cinque <jon.cinque@gmail.com>
Co-authored-by: Jon Cinque <jon.cinque@gmail.com>
* Pass by ref
* Dedupe ExtensionTypes in length apis
* Depend on deduplication in ExtensionType::get_account_len
* Add Reallocate instruction
* Remove unneeded api
* Add set_account_type helper and remove unneeded StateWithExtensionsMut api