diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 0d2b1019..e476f78a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -61,8 +61,8 @@ jobs: - name: Lint run: pnpm programs:lint - format_and_lint_interface: - name: Format & Lint Interface + format_and_lint_pinterface: + name: Format & Lint P-Interface runs-on: ubuntu-latest steps: - name: Git Checkout @@ -75,10 +75,10 @@ jobs: rustfmt: true - name: Format - run: pnpm interface:format + run: pnpm p-interface:format - name: Lint - run: pnpm interface:lint + run: pnpm p-interface:lint format_and_lint_ptoken: name: Format & Lint p-token @@ -98,7 +98,7 @@ jobs: - name: Lint run: pnpm p-token:lint - + audit_rust: name: Audit Rust runs-on: ubuntu-latest @@ -192,7 +192,7 @@ jobs: build_ptoken: name: Build p-token runs-on: ubuntu-latest - needs: [format_and_lint_interface, format_and_lint_ptoken] + needs: [format_and_lint_pinterface, format_and_lint_ptoken] steps: - name: Git Checkout uses: actions/checkout@v4 diff --git a/.github/workflows/publish-rust.yml b/.github/workflows/publish-rust.yml index fbe4f69f..be057362 100644 --- a/.github/workflows/publish-rust.yml +++ b/.github/workflows/publish-rust.yml @@ -10,7 +10,7 @@ on: type: choice options: - clients/rust - - interface + - p-interface - program - p-token level: diff --git a/Cargo.lock b/Cargo.lock index d430a495..d16fad20 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3057,6 +3057,16 @@ dependencies = [ "sha2-const-stable", ] +[[package]] +name = "pinocchio-token-interface" +version = "0.0.0" +dependencies = [ + "pinocchio", + "pinocchio-pubkey", + "strum 0.27.1", + "strum_macros 0.27.1", +] + [[package]] name = "pinocchio-token-program" version = "0.0.0" @@ -3065,6 +3075,7 @@ dependencies = [ "num-traits", "pinocchio", "pinocchio-log", + "pinocchio-token-interface", "solana-instruction", "solana-keypair", "solana-program-error", @@ -3079,7 +3090,6 @@ dependencies = [ "solana-transaction-error", "spl-token 8.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "spl-token-2022", - "spl-token-interface", ] [[package]] @@ -7412,16 +7422,6 @@ dependencies = [ "thiserror 2.0.12", ] -[[package]] -name = "spl-token-interface" -version = "0.0.0" -dependencies = [ - "pinocchio", - "pinocchio-pubkey", - "strum 0.27.1", - "strum_macros 0.27.1", -] - [[package]] name = "spl-token-metadata-interface" version = "0.7.0" diff --git a/Cargo.toml b/Cargo.toml index e78bb57f..6f4fe5e2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [workspace] resolver = "2" -members = ["interface", "p-token", "program"] +members = ["p-interface", "p-token", "program"] [workspace.package] authors = ["Anza Maintainers "] diff --git a/interface/Cargo.toml b/p-interface/Cargo.toml similarity index 73% rename from interface/Cargo.toml rename to p-interface/Cargo.toml index c63ca09c..20a49ed3 100644 --- a/interface/Cargo.toml +++ b/p-interface/Cargo.toml @@ -1,7 +1,7 @@ [package] -name = "spl-token-interface" +name = "pinocchio-token-interface" version = "0.0.0" -description = "Instructions and types for interacting with SPL Token program" +description = "Pinocchio instructions and types for interacting with SPL Token program" authors = { workspace = true} repository = { workspace = true} license = { workspace = true} diff --git a/interface/README.md b/p-interface/README.md similarity index 100% rename from interface/README.md rename to p-interface/README.md diff --git a/interface/src/error.rs b/p-interface/src/error.rs similarity index 100% rename from interface/src/error.rs rename to p-interface/src/error.rs diff --git a/interface/src/instruction.rs b/p-interface/src/instruction.rs similarity index 100% rename from interface/src/instruction.rs rename to p-interface/src/instruction.rs diff --git a/interface/src/lib.rs b/p-interface/src/lib.rs similarity index 100% rename from interface/src/lib.rs rename to p-interface/src/lib.rs diff --git a/interface/src/native_mint.rs b/p-interface/src/native_mint.rs similarity index 100% rename from interface/src/native_mint.rs rename to p-interface/src/native_mint.rs diff --git a/interface/src/state/account.rs b/p-interface/src/state/account.rs similarity index 100% rename from interface/src/state/account.rs rename to p-interface/src/state/account.rs diff --git a/interface/src/state/account_state.rs b/p-interface/src/state/account_state.rs similarity index 100% rename from interface/src/state/account_state.rs rename to p-interface/src/state/account_state.rs diff --git a/interface/src/state/mint.rs b/p-interface/src/state/mint.rs similarity index 100% rename from interface/src/state/mint.rs rename to p-interface/src/state/mint.rs diff --git a/interface/src/state/mod.rs b/p-interface/src/state/mod.rs similarity index 100% rename from interface/src/state/mod.rs rename to p-interface/src/state/mod.rs diff --git a/interface/src/state/multisig.rs b/p-interface/src/state/multisig.rs similarity index 100% rename from interface/src/state/multisig.rs rename to p-interface/src/state/multisig.rs diff --git a/p-token/Cargo.toml b/p-token/Cargo.toml index 06464df0..6a6c938a 100644 --- a/p-token/Cargo.toml +++ b/p-token/Cargo.toml @@ -17,7 +17,7 @@ logging = [] [dependencies] pinocchio = { workspace = true } pinocchio-log = { version = "0.5", default-features = false } -spl-token-interface = { version = "^0", path = "../interface" } +pinocchio-token-interface = { version = "^0", path = "../p-interface" } [dev-dependencies] assert_matches = "1.5.0" diff --git a/p-token/src/entrypoint.rs b/p-token/src/entrypoint.rs index 290e26a9..2a483822 100644 --- a/p-token/src/entrypoint.rs +++ b/p-token/src/entrypoint.rs @@ -7,7 +7,7 @@ use { pubkey::Pubkey, ProgramResult, }, - spl_token_interface::error::TokenError, + pinocchio_token_interface::error::TokenError, }; program_entrypoint!(process_instruction); diff --git a/p-token/src/processor/amount_to_ui_amount.rs b/p-token/src/processor/amount_to_ui_amount.rs index d0aff7e5..57f2fcc5 100644 --- a/p-token/src/processor/amount_to_ui_amount.rs +++ b/p-token/src/processor/amount_to_ui_amount.rs @@ -6,7 +6,7 @@ use { ProgramResult, }, pinocchio_log::logger::{Argument, Logger}, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{load, mint::Mint}, }, diff --git a/p-token/src/processor/batch.rs b/p-token/src/processor/batch.rs index 1a95f82f..65407a1f 100644 --- a/p-token/src/processor/batch.rs +++ b/p-token/src/processor/batch.rs @@ -1,7 +1,7 @@ use { crate::entrypoint::inner_process_instruction, pinocchio::{account_info::AccountInfo, program_error::ProgramError, ProgramResult}, - spl_token_interface::error::TokenError, + pinocchio_token_interface::error::TokenError, }; /// The size of the batch instruction header. diff --git a/p-token/src/processor/close_account.rs b/p-token/src/processor/close_account.rs index d611205f..2156a6c5 100644 --- a/p-token/src/processor/close_account.rs +++ b/p-token/src/processor/close_account.rs @@ -1,7 +1,7 @@ use { super::validate_owner, pinocchio::{account_info::AccountInfo, program_error::ProgramError, ProgramResult}, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{ account::{Account, INCINERATOR_ID}, diff --git a/p-token/src/processor/get_account_data_size.rs b/p-token/src/processor/get_account_data_size.rs index 08502a11..3b49d7d8 100644 --- a/p-token/src/processor/get_account_data_size.rs +++ b/p-token/src/processor/get_account_data_size.rs @@ -4,7 +4,7 @@ use { account_info::AccountInfo, program::set_return_data, program_error::ProgramError, ProgramResult, }, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{account::Account, load, mint::Mint, Transmutable}, }, diff --git a/p-token/src/processor/initialize_account2.rs b/p-token/src/processor/initialize_account2.rs index d2b30d27..5e7e0d9a 100644 --- a/p-token/src/processor/initialize_account2.rs +++ b/p-token/src/processor/initialize_account2.rs @@ -5,7 +5,7 @@ use { pubkey::{Pubkey, PUBKEY_BYTES}, ProgramResult, }, - spl_token_interface::error::TokenError, + pinocchio_token_interface::error::TokenError, }; #[inline(always)] diff --git a/p-token/src/processor/initialize_account3.rs b/p-token/src/processor/initialize_account3.rs index 8e86d9ea..dfba155e 100644 --- a/p-token/src/processor/initialize_account3.rs +++ b/p-token/src/processor/initialize_account3.rs @@ -5,7 +5,7 @@ use { pubkey::{Pubkey, PUBKEY_BYTES}, ProgramResult, }, - spl_token_interface::error::TokenError, + pinocchio_token_interface::error::TokenError, }; #[inline(always)] diff --git a/p-token/src/processor/initialize_immutable_owner.rs b/p-token/src/processor/initialize_immutable_owner.rs index 4c485194..39900eda 100644 --- a/p-token/src/processor/initialize_immutable_owner.rs +++ b/p-token/src/processor/initialize_immutable_owner.rs @@ -1,6 +1,6 @@ use { pinocchio::{account_info::AccountInfo, program_error::ProgramError, ProgramResult}, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{account::Account, load_unchecked, Initializable}, }, diff --git a/p-token/src/processor/initialize_multisig.rs b/p-token/src/processor/initialize_multisig.rs index 183c2af0..fdb851d2 100644 --- a/p-token/src/processor/initialize_multisig.rs +++ b/p-token/src/processor/initialize_multisig.rs @@ -1,7 +1,7 @@ use { super::shared, pinocchio::{account_info::AccountInfo, ProgramResult}, - spl_token_interface::error::TokenError, + pinocchio_token_interface::error::TokenError, }; #[inline(always)] diff --git a/p-token/src/processor/initialize_multisig2.rs b/p-token/src/processor/initialize_multisig2.rs index 377aa200..1840db7e 100644 --- a/p-token/src/processor/initialize_multisig2.rs +++ b/p-token/src/processor/initialize_multisig2.rs @@ -1,7 +1,7 @@ use { super::shared, pinocchio::{account_info::AccountInfo, ProgramResult}, - spl_token_interface::error::TokenError, + pinocchio_token_interface::error::TokenError, }; pub fn process_initialize_multisig2( diff --git a/p-token/src/processor/mod.rs b/p-token/src/processor/mod.rs index c26262a8..3e626264 100644 --- a/p-token/src/processor/mod.rs +++ b/p-token/src/processor/mod.rs @@ -4,7 +4,7 @@ use { account_info::AccountInfo, program_error::ProgramError, pubkey::Pubkey, syscalls::sol_memcpy_, ProgramResult, }, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, program::ID as TOKEN_PROGRAM_ID, state::{ diff --git a/p-token/src/processor/revoke.rs b/p-token/src/processor/revoke.rs index fd97d76e..20ddc648 100644 --- a/p-token/src/processor/revoke.rs +++ b/p-token/src/processor/revoke.rs @@ -1,7 +1,7 @@ use { super::validate_owner, pinocchio::{account_info::AccountInfo, program_error::ProgramError, ProgramResult}, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{account::Account, load_mut}, }, diff --git a/p-token/src/processor/set_authority.rs b/p-token/src/processor/set_authority.rs index 000c1a56..ade89ac0 100644 --- a/p-token/src/processor/set_authority.rs +++ b/p-token/src/processor/set_authority.rs @@ -3,7 +3,7 @@ use { pinocchio::{ account_info::AccountInfo, program_error::ProgramError, pubkey::Pubkey, ProgramResult, }, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, instruction::AuthorityType, state::{account::Account, load_mut, mint::Mint, Transmutable}, diff --git a/p-token/src/processor/shared/approve.rs b/p-token/src/processor/shared/approve.rs index 1f2f68bf..06129528 100644 --- a/p-token/src/processor/shared/approve.rs +++ b/p-token/src/processor/shared/approve.rs @@ -1,7 +1,7 @@ use { crate::processor::validate_owner, pinocchio::{account_info::AccountInfo, program_error::ProgramError, ProgramResult}, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{account::Account, load, load_mut, mint::Mint}, }, diff --git a/p-token/src/processor/shared/burn.rs b/p-token/src/processor/shared/burn.rs index 28537c1a..b4375ec6 100644 --- a/p-token/src/processor/shared/burn.rs +++ b/p-token/src/processor/shared/burn.rs @@ -1,7 +1,7 @@ use { crate::processor::{check_account_owner, validate_owner}, pinocchio::{account_info::AccountInfo, program_error::ProgramError, ProgramResult}, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{account::Account, load_mut, mint::Mint}, }, diff --git a/p-token/src/processor/shared/initialize_account.rs b/p-token/src/processor/shared/initialize_account.rs index 7d3f858a..cfba145d 100644 --- a/p-token/src/processor/shared/initialize_account.rs +++ b/p-token/src/processor/shared/initialize_account.rs @@ -7,7 +7,7 @@ use { sysvars::{rent::Rent, Sysvar}, ProgramResult, }, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, native_mint::is_native_mint, state::{ diff --git a/p-token/src/processor/shared/initialize_mint.rs b/p-token/src/processor/shared/initialize_mint.rs index c7145d2f..3dff60b0 100644 --- a/p-token/src/processor/shared/initialize_mint.rs +++ b/p-token/src/processor/shared/initialize_mint.rs @@ -6,7 +6,7 @@ use { sysvars::{rent::Rent, Sysvar}, ProgramResult, }, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{load_mut_unchecked, mint::Mint, Initializable}, }, diff --git a/p-token/src/processor/shared/initialize_multisig.rs b/p-token/src/processor/shared/initialize_multisig.rs index e1285c58..84d1945c 100644 --- a/p-token/src/processor/shared/initialize_multisig.rs +++ b/p-token/src/processor/shared/initialize_multisig.rs @@ -5,7 +5,7 @@ use { sysvars::{rent::Rent, Sysvar}, ProgramResult, }, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{load_mut_unchecked, multisig::Multisig, Initializable}, }, diff --git a/p-token/src/processor/shared/mint_to.rs b/p-token/src/processor/shared/mint_to.rs index c4dbe41b..7f205c0e 100644 --- a/p-token/src/processor/shared/mint_to.rs +++ b/p-token/src/processor/shared/mint_to.rs @@ -1,7 +1,7 @@ use { crate::processor::{check_account_owner, validate_owner}, pinocchio::{account_info::AccountInfo, program_error::ProgramError, ProgramResult}, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{account::Account, load_mut, mint::Mint}, }, diff --git a/p-token/src/processor/shared/toggle_account_state.rs b/p-token/src/processor/shared/toggle_account_state.rs index 8ae3deca..e09c7118 100644 --- a/p-token/src/processor/shared/toggle_account_state.rs +++ b/p-token/src/processor/shared/toggle_account_state.rs @@ -1,7 +1,7 @@ use { crate::processor::validate_owner, pinocchio::{account_info::AccountInfo, program_error::ProgramError, ProgramResult}, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{account::Account, account_state::AccountState, load, load_mut, mint::Mint}, }, diff --git a/p-token/src/processor/shared/transfer.rs b/p-token/src/processor/shared/transfer.rs index 3848f7e9..db96776a 100644 --- a/p-token/src/processor/shared/transfer.rs +++ b/p-token/src/processor/shared/transfer.rs @@ -1,7 +1,7 @@ use { crate::processor::{check_account_owner, validate_owner}, pinocchio::{account_info::AccountInfo, program_error::ProgramError, ProgramResult}, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{account::Account, load, load_mut, load_mut_unchecked, mint::Mint}, }, diff --git a/p-token/src/processor/sync_native.rs b/p-token/src/processor/sync_native.rs index 4a9b7ebf..0ec210d1 100644 --- a/p-token/src/processor/sync_native.rs +++ b/p-token/src/processor/sync_native.rs @@ -1,7 +1,7 @@ use { super::check_account_owner, pinocchio::{account_info::AccountInfo, program_error::ProgramError, ProgramResult}, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{account::Account, load_mut}, }, diff --git a/p-token/src/processor/ui_amount_to_amount.rs b/p-token/src/processor/ui_amount_to_amount.rs index cadcf620..1ade739e 100644 --- a/p-token/src/processor/ui_amount_to_amount.rs +++ b/p-token/src/processor/ui_amount_to_amount.rs @@ -5,7 +5,7 @@ use { account_info::AccountInfo, program::set_return_data, program_error::ProgramError, ProgramResult, }, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{load, mint::Mint}, }, diff --git a/p-token/src/processor/withdraw_excess_lamports.rs b/p-token/src/processor/withdraw_excess_lamports.rs index ca326382..0ee7dfc3 100644 --- a/p-token/src/processor/withdraw_excess_lamports.rs +++ b/p-token/src/processor/withdraw_excess_lamports.rs @@ -6,7 +6,7 @@ use { sysvars::{rent::Rent, Sysvar}, ProgramResult, }, - spl_token_interface::{ + pinocchio_token_interface::{ error::TokenError, state::{account::Account, load, mint::Mint, multisig::Multisig, Transmutable}, }, diff --git a/p-token/tests/initialize_mint.rs b/p-token/tests/initialize_mint.rs index f6f9f5ac..63dd7649 100644 --- a/p-token/tests/initialize_mint.rs +++ b/p-token/tests/initialize_mint.rs @@ -1,6 +1,7 @@ mod setup; use { + pinocchio_token_interface::state::mint::Mint, setup::TOKEN_PROGRAM_ID, solana_keypair::Keypair, solana_program_option::COption, @@ -10,7 +11,6 @@ use { solana_signer::Signer, solana_system_interface::instruction::create_account, solana_transaction::Transaction, - spl_token_interface::state::mint::Mint, std::mem::size_of, }; diff --git a/p-token/tests/initialize_mint2.rs b/p-token/tests/initialize_mint2.rs index 2b177b21..881e8e1f 100644 --- a/p-token/tests/initialize_mint2.rs +++ b/p-token/tests/initialize_mint2.rs @@ -1,6 +1,7 @@ mod setup; use { + pinocchio_token_interface::state::mint::Mint, setup::TOKEN_PROGRAM_ID, solana_keypair::Keypair, solana_program_option::COption, @@ -10,7 +11,6 @@ use { solana_signer::Signer, solana_system_interface::instruction::create_account, solana_transaction::Transaction, - spl_token_interface::state::mint::Mint, std::mem::size_of, }; diff --git a/p-token/tests/setup/mint.rs b/p-token/tests/setup/mint.rs index 2269032f..afc9a44d 100644 --- a/p-token/tests/setup/mint.rs +++ b/p-token/tests/setup/mint.rs @@ -1,4 +1,5 @@ use { + pinocchio_token_interface::state::mint::Mint, solana_keypair::Keypair, solana_program_error::ProgramError, solana_program_test::{BanksClientError, ProgramTestContext}, @@ -6,7 +7,6 @@ use { solana_signer::Signer, solana_system_interface::instruction::create_account, solana_transaction::Transaction, - spl_token_interface::state::mint::Mint, std::mem::size_of, }; diff --git a/p-token/tests/setup/mod.rs b/p-token/tests/setup/mod.rs index 461dc27e..495520c3 100644 --- a/p-token/tests/setup/mod.rs +++ b/p-token/tests/setup/mod.rs @@ -5,4 +5,4 @@ pub mod account; #[allow(dead_code)] pub mod mint; -pub const TOKEN_PROGRAM_ID: Pubkey = Pubkey::new_from_array(spl_token_interface::program::ID); +pub const TOKEN_PROGRAM_ID: Pubkey = Pubkey::new_from_array(pinocchio_token_interface::program::ID); diff --git a/p-token/tests/withdraw_excess_lamports.rs b/p-token/tests/withdraw_excess_lamports.rs index ca60f026..2ed9cb9a 100644 --- a/p-token/tests/withdraw_excess_lamports.rs +++ b/p-token/tests/withdraw_excess_lamports.rs @@ -4,6 +4,7 @@ mod setup; use { assert_matches::assert_matches, + pinocchio_token_interface::state::{account::Account, mint::Mint, multisig::Multisig}, setup::{mint, TOKEN_PROGRAM_ID}, solana_instruction::error::InstructionError, solana_keypair::Keypair, @@ -14,7 +15,6 @@ use { solana_system_interface::instruction::create_account, solana_transaction::Transaction, solana_transaction_error::TransactionError, - spl_token_interface::state::{account::Account, mint::Mint, multisig::Multisig}, std::mem::size_of, }; diff --git a/package.json b/package.json index c77ef064..773f36a0 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "fixtures:clean": "zx ./scripts/rust/fixtures.mjs clean", "fixtures:generate": "zx ./scripts/rust/fixtures.mjs generate", "fixtures:run": "zx ./scripts/rust/fixtures.mjs run", - "interface:format": "zx ./scripts/rust/format.mjs interface", - "interface:lint": "zx ./scripts/rust/lint.mjs interface" + "p-interface:format": "zx ./scripts/rust/format.mjs p-interface", + "p-interface:lint": "zx ./scripts/rust/lint.mjs p-interface" }, "devDependencies": { "@codama/renderers-js": "^1.2.7",