修訂 proc macros - 為 @anchorlang 添加了帳戶版本控制。 標記為 #[account(versioned)] 的帳戶現在可以隨著時間演變其架構。字段使用 #[added(vN)] 來指定它們何時被引入。 三種初始化模式: - #[added(v2)] → Default::default() - #[added(v2, init_to = expr)] → 靜態編譯時值 - #[added(v2, init_from = "authority")] → 從上下文進行運行時初始化 優勢 - 無需破壞數據的架構演變。零遷移代碼。自動從上下文初始化字段。跨版本的向後兼容性。 代碼將在經過幾輪測試後很快推出。 @jacobvcreech 先生,您認為這在官方 anchor 中會有用嗎? 這是一個很棒的學習經歷。在修訂 proc macros 的同時,也理解了 #anchor 中帳戶宏的擴展及其各種限制。