From a320d56a45004c9b0bac754b1aba843de695a0e4 Mon Sep 17 00:00:00 2001 From: glihm Date: Wed, 4 Sep 2024 08:18:51 -0600 Subject: [PATCH] refactor(katana): move predeployedAccounts under DevApi and remove KatanaApi (#2310) fix: move predeployedAccounts under DevApi and remove KatanaApi --- bin/katana/src/cli/node.rs | 2 +- crates/dojo-test-utils/src/sequencer.rs | 8 +------- crates/katana/node/src/lib.rs | 5 ----- crates/katana/rpc/rpc-api/src/dev.rs | 4 ++++ crates/katana/rpc/rpc-api/src/katana.rs | 10 ---------- crates/katana/rpc/rpc-api/src/lib.rs | 2 -- crates/katana/rpc/rpc/src/dev.rs | 6 ++++++ crates/katana/rpc/rpc/src/katana.rs | 26 ------------------------- crates/katana/rpc/rpc/src/lib.rs | 1 - crates/katana/runner/src/lib.rs | 1 + crates/sozo/ops/src/migration/mod.rs | 2 +- 11 files changed, 14 insertions(+), 53 deletions(-) delete mode 100644 crates/katana/rpc/rpc-api/src/katana.rs delete mode 100644 crates/katana/rpc/rpc/src/katana.rs diff --git a/bin/katana/src/cli/node.rs b/bin/katana/src/cli/node.rs index 07bad6f844..63055b068b 100644 --- a/bin/katana/src/cli/node.rs +++ b/bin/katana/src/cli/node.rs @@ -271,7 +271,7 @@ impl NodeArgs { } fn server_config(&self) -> ServerConfig { - let mut apis = vec![ApiKind::Starknet, ApiKind::Katana, ApiKind::Torii, ApiKind::Saya]; + let mut apis = vec![ApiKind::Starknet, ApiKind::Torii, ApiKind::Saya]; // only enable `katana` API in dev mode if self.dev { apis.push(ApiKind::Dev); diff --git a/crates/dojo-test-utils/src/sequencer.rs b/crates/dojo-test-utils/src/sequencer.rs index 0158bb064a..534794623d 100644 --- a/crates/dojo-test-utils/src/sequencer.rs +++ b/crates/dojo-test-utils/src/sequencer.rs @@ -43,13 +43,7 @@ impl TestSequencer { host: "127.0.0.1".into(), max_connections: 100, allowed_origins: None, - apis: vec![ - ApiKind::Starknet, - ApiKind::Katana, - ApiKind::Dev, - ApiKind::Saya, - ApiKind::Torii, - ], + apis: vec![ApiKind::Starknet, ApiKind::Dev, ApiKind::Saya, ApiKind::Torii], }; let (handle, backend) = katana_node::start(server_config, config, starknet_config) diff --git a/crates/katana/node/src/lib.rs b/crates/katana/node/src/lib.rs index 7b7a73c716..4b2f7c5221 100644 --- a/crates/katana/node/src/lib.rs +++ b/crates/katana/node/src/lib.rs @@ -32,13 +32,11 @@ use katana_provider::providers::fork::ForkedProvider; use katana_provider::providers::in_memory::InMemoryProvider; use katana_rpc::config::ServerConfig; use katana_rpc::dev::DevApi; -use katana_rpc::katana::KatanaApi; use katana_rpc::metrics::RpcServerMetrics; use katana_rpc::saya::SayaApi; use katana_rpc::starknet::StarknetApi; use katana_rpc::torii::ToriiApi; use katana_rpc_api::dev::DevApiServer; -use katana_rpc_api::katana::KatanaApiServer; use katana_rpc_api::saya::SayaApiServer; use katana_rpc_api::starknet::{StarknetApiServer, StarknetTraceApiServer, StarknetWriteApiServer}; use katana_rpc_api::torii::ToriiApiServer; @@ -243,9 +241,6 @@ pub async fn spawn( methods.merge(StarknetWriteApiServer::into_rpc(server.clone()))?; methods.merge(StarknetTraceApiServer::into_rpc(server))?; } - ApiKind::Katana => { - methods.merge(KatanaApi::new(backend.clone()).into_rpc())?; - } ApiKind::Dev => { methods.merge(DevApi::new(backend.clone(), block_producer.clone()).into_rpc())?; } diff --git a/crates/katana/rpc/rpc-api/src/dev.rs b/crates/katana/rpc/rpc-api/src/dev.rs index 5d0202981e..3de14ac807 100644 --- a/crates/katana/rpc/rpc-api/src/dev.rs +++ b/crates/katana/rpc/rpc-api/src/dev.rs @@ -1,6 +1,7 @@ use jsonrpsee::core::RpcResult; use jsonrpsee::proc_macros::rpc; use katana_primitives::FieldElement; +use katana_rpc_types::account::Account; #[cfg_attr(not(feature = "client"), rpc(server, namespace = "dev"))] #[cfg_attr(feature = "client", rpc(client, server, namespace = "dev"))] @@ -24,4 +25,7 @@ pub trait DevApi { key: FieldElement, value: FieldElement, ) -> RpcResult<()>; + + #[method(name = "predeployedAccounts")] + async fn predeployed_accounts(&self) -> RpcResult>; } diff --git a/crates/katana/rpc/rpc-api/src/katana.rs b/crates/katana/rpc/rpc-api/src/katana.rs deleted file mode 100644 index bff9cb0e07..0000000000 --- a/crates/katana/rpc/rpc-api/src/katana.rs +++ /dev/null @@ -1,10 +0,0 @@ -use jsonrpsee::core::RpcResult; -use jsonrpsee::proc_macros::rpc; -use katana_rpc_types::account::Account; - -#[cfg_attr(not(feature = "client"), rpc(server, namespace = "katana"))] -#[cfg_attr(feature = "client", rpc(client, server, namespace = "katana"))] -pub trait KatanaApi { - #[method(name = "predeployedAccounts")] - async fn predeployed_accounts(&self) -> RpcResult>; -} diff --git a/crates/katana/rpc/rpc-api/src/lib.rs b/crates/katana/rpc/rpc-api/src/lib.rs index 198766158b..5f138a3d29 100644 --- a/crates/katana/rpc/rpc-api/src/lib.rs +++ b/crates/katana/rpc/rpc-api/src/lib.rs @@ -1,5 +1,4 @@ pub mod dev; -pub mod katana; pub mod saya; pub mod starknet; pub mod torii; @@ -8,7 +7,6 @@ pub mod torii; #[derive(Debug, Copy, Clone)] pub enum ApiKind { Starknet, - Katana, Torii, Dev, Saya, diff --git a/crates/katana/rpc/rpc/src/dev.rs b/crates/katana/rpc/rpc/src/dev.rs index 1d3d98df7e..afe4e80023 100644 --- a/crates/katana/rpc/rpc/src/dev.rs +++ b/crates/katana/rpc/rpc/src/dev.rs @@ -6,6 +6,7 @@ use katana_core::service::block_producer::{BlockProducer, BlockProducerMode, Pen use katana_executor::ExecutorFactory; use katana_primitives::FieldElement; use katana_rpc_api::dev::DevApiServer; +use katana_rpc_types::account::Account; use katana_rpc_types::error::dev::DevApiError; #[allow(missing_debug_implementations)] @@ -90,4 +91,9 @@ impl DevApiServer for DevApi { // .map_err(|_| Error::from(KatanaApiError::FailedToUpdateStorage)) Ok(()) } + + #[allow(deprecated)] + async fn predeployed_accounts(&self) -> Result, Error> { + Ok(self.backend.config.genesis.accounts().map(|e| Account::new(*e.0, e.1)).collect()) + } } diff --git a/crates/katana/rpc/rpc/src/katana.rs b/crates/katana/rpc/rpc/src/katana.rs deleted file mode 100644 index e263a8ded5..0000000000 --- a/crates/katana/rpc/rpc/src/katana.rs +++ /dev/null @@ -1,26 +0,0 @@ -use std::sync::Arc; - -use jsonrpsee::core::{async_trait, Error}; -use katana_core::backend::Backend; -use katana_executor::ExecutorFactory; -use katana_rpc_api::katana::KatanaApiServer; -use katana_rpc_types::account::Account; - -#[allow(missing_debug_implementations)] -pub struct KatanaApi { - backend: Arc>, -} - -impl KatanaApi { - pub fn new(backend: Arc>) -> Self { - Self { backend } - } -} - -#[async_trait] -impl KatanaApiServer for KatanaApi { - #[allow(deprecated)] - async fn predeployed_accounts(&self) -> Result, Error> { - Ok(self.backend.config.genesis.accounts().map(|e| Account::new(*e.0, e.1)).collect()) - } -} diff --git a/crates/katana/rpc/rpc/src/lib.rs b/crates/katana/rpc/rpc/src/lib.rs index 163ff90a10..6abe5d449e 100644 --- a/crates/katana/rpc/rpc/src/lib.rs +++ b/crates/katana/rpc/rpc/src/lib.rs @@ -5,7 +5,6 @@ pub mod config; pub mod dev; -pub mod katana; pub mod metrics; pub mod saya; pub mod starknet; diff --git a/crates/katana/runner/src/lib.rs b/crates/katana/runner/src/lib.rs index 6004ddd203..45c3d38785 100644 --- a/crates/katana/runner/src/lib.rs +++ b/crates/katana/runner/src/lib.rs @@ -102,6 +102,7 @@ impl KatanaRunner { .accounts(n_accounts) .json_log(true) .max_connections(10000) + .dev(config.dev) .fee(!config.disable_fee); if let Some(block_time_ms) = config.block_time { diff --git a/crates/sozo/ops/src/migration/mod.rs b/crates/sozo/ops/src/migration/mod.rs index 678e5421b5..f4e87da088 100644 --- a/crates/sozo/ops/src/migration/mod.rs +++ b/crates/sozo/ops/src/migration/mod.rs @@ -66,7 +66,7 @@ async fn get_declarers_accounts( .post(rpc_url) .json(&serde_json::json!({ "jsonrpc": "2.0", - "method": "katana_predeployedAccounts", + "method": "dev_predeployedAccounts", "params": [], "id": 1 }))