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

Extract solana-account crate #2294

Merged
merged 16 commits into from
Oct 8, 2024
Merged

Conversation

kevinheavey
Copy link

@kevinheavey kevinheavey commented Jul 25, 2024

Problem

Having the contents of solana_sdk::account available outside the SDK would help compile times and dependency hell. The most immediate unlock would be removing the solana-sdk dep from solana-account-decoder-client-types (created in #2872)

Summary of Changes

  • move account.rs to its own crate
  • use the new crate in solana-sdk where applicable
  • re-export with a deprecation notice

edition = { workspace = true }

[dependencies]
bincode = { workspace = true, optional = true }
Copy link
Author

@kevinheavey kevinheavey Oct 3, 2024

Choose a reason for hiding this comment

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

Making serde and bincode optional won't remove those dependencies for now as solana-program still pulls them in, but by feature gating them from the start we avoid any breaking changes. In a later PR we'll remove the solana-program dep from this new crate

Copy link

@febo febo left a comment

Choose a reason for hiding this comment

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

Looks good!

@kevinheavey
Copy link
Author

Great! @yihau I've sent a crate ownership invite to anza-team

@yihau
Copy link
Member

yihau commented Oct 8, 2024

@yihau yihau merged commit 01520c1 into anza-xyz:master Oct 8, 2024
50 checks passed
ray-kast pushed a commit to abklabs/agave that referenced this pull request Nov 27, 2024
* extract account crate

* tpyo in crate name

* update account usage in sdk

* update solana-program examples

* re-export solana_account with deprecation notice

* fix frozen-abi support

* fmt

* update digest

* update lock file

* fix doctests

* update lock file

* remove unnecessary build script

* update lock files

* sort table

* make serde and bincode optional in the new crate

* update digest
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

3 participants