迁移到 Agave 2.0 :开发者指南

  • Helius
  • 发布于 2024-11-27 21:33
  • 阅读 23

文章介绍了Agave v2.0在Solana主网上的更新,包括移除的RPC端点、SDK调用、重命名的crates以及验证者参数的移除,并提供了过渡准备的实用建议。

3 分钟阅读 2024 年 11 月 25 日

介绍

Agave v2.0 计划Solana Breakpoint 2024 新加坡之后的几周内在 Solana Mainnet-Beta 上首次亮相。这一重大更新包含了多个破坏性更改、API 端点的移除以及 crate 重命名,所有 Solana 开发者都应该注意。除了本文外,我们建议开发者查看 Anza 最近在 GitHub 上发布的 过渡指南

Agave v2.0 目前已在 Solana 的 Testnet 和 Devnet 集群上线。该版本标志着 Solana 生态系统演变和向多客户端网络过渡的重要里程碑。Anza 团队预计将在发布前发布 Agave 2.0 的全面深入解析。本文将仅限于过渡准备的实际方面。

移除的 RPC 端点和 SDK 调用

多个过时和已弃用的 v1 Agave RPC 端点将被移除。

具体包括:

  • getRecentBlockhash
  • getConfirmedSignatureForAddresses2
  • getConfirmedTransaction
  • getConfirmedBlock
  • getStakeActivation
  • getFees
  • confirmTransaction
  • getSignatureStatus
  • getSignatureConfirmation
  • getTotalSupply
  • getConfirmedSignaturesForAddress
  • getConfirmedBlocks
  • getConfirmedBlocksWithLimit
  • getFeeCalculatorForBlockhash
  • getFeeRateGovernor
  • getSnapshotSlot

Agave v2.0 移除的 RPC 端点和 SDK 调用

基于 Helius 的内部分析,我们认为大多数客户不会受到这些变化的影响。然而,仍有一小部分用户在使用以下端点:

  • getRecentBlockhash
  • getConfirmedSignatureForAddresses2
  • getConfirmedTransaction
  • getConfirmedBlock
  • getStakeActivation
  • getFees
注意:

我们强烈建议所有开发者在 2.0 Mainnet-Beta 客户端发布之前,检查这些调用的引用并适当更新为建议的替代方法。

图中展示的 getAccountInfo 的替代方法可以在这里找到

SDK 的破坏性更改包括:

  • 移除了对 Borsh v0.9 的支持,请使用 v1 或 v0.10 (#1440)
  • Copy trait 不再派生 于 Rent 和 EpochSchedule;请切换到使用 clone()
  • solana-sdk: 已弃用符号) 移除
  • solana-program: 已弃用符号移除

完整的破坏性更改列表可以在 Agave 变更日志 中找到。

重命名的 Crates

多个 crates 正在重命名,以适应多个 Solana 验证者客户端的引入,例如 Firedancer,它们将由不同的团队管理。通过在 crate 名称后添加 "Agave",这些 crates 被标识为由 Anza 专门为 Agave 验证者客户端维护的依赖项。这一变化确保更清晰地区分 Agave 相关依赖项与其他团队管理的依赖项。

受影响的 crates 包括:

  • solana-validator
  • solana-ledger-tool
  • solana-watchtower
  • solana-install
  • solana-geyser-plugin-interface
  • solana-cargo-registry

Agave v2.0 重命名的 crates

开发者应检查任何自动化或脚本中是否有这些 crates 的引用,并适当更新它们。

移除的验证者参数

对于验证者操作者,以下已弃用的验证者参数将在 Agave v2.0 发布时被移除:

  • --enable-rpc-obsolete_v1_7(#1886)
  • --accounts-db-caching-enabled (#2063)
  • --accounts-db-index-hashing (#2063)
  • --no-accounts-db-index-hashing (#2063)
  • --incremental-snapshots (#2148)
  • --halt-on-known-validators-accounts-hash-mismatch (#2157)

Agave v2.0 移除的验证者参数

我们再次建议验证者操作者仔细确保不再使用这些参数。

最后但同样重要的是,原始 Solana Labs GitHub 将在 Agave v2.0 发布后被存档。开发者应将所有活动迁移到 Anza Agave GitHub 仓库。

总结一下,我们将留给你 Solana DevRel 团队 Nick Frostbutter最近的变更日志视频 中的一句话:“如果你正在使用任何有弃用警告的内容,你需要确保你正在升级你的代码。”

以上就是这篇简短的公共服务声明。希望能在 Breakpoint 上见到你们中的许多人!

  • 原文链接: helius.dev/blog/agave-2-...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Helius
Helius
https://www.helius.dev/