diff --git a/ipfs-node/build.sh b/ipfs-node/build.sh index 8bade72..f758a91 100755 --- a/ipfs-node/build.sh +++ b/ipfs-node/build.sh @@ -3,13 +3,15 @@ set -o errexit -o nounset -o pipefail # This script builds all subprojects and puts all created Wasm modules in one dir cd effector -cargo update -fce build --release +cargo update --aggressive +marine build --release + cd ../pure -cargo update -fce build --release +cargo update --aggressive +marine build --release cd .. -rm artifacts/* -cp ../../target/wasm32-wasi/release/ipfs_effector.wasm artifacts/ -cp ../../target/wasm32-wasi/release/ipfs_pure.wasm artifacts/ +mkdir -p artifacts +rm -f artifacts/*.wasm +cp effector/target/wasm32-wasi/release/ipfs_effector.wasm artifacts/ +cp pure/target/wasm32-wasi/release/ipfs_pure.wasm artifacts/ diff --git a/ipfs-node/effector/Cargo.toml b/ipfs-node/effector/Cargo.toml index 0ce45df..04115af 100644 --- a/ipfs-node/effector/Cargo.toml +++ b/ipfs-node/effector/Cargo.toml @@ -10,5 +10,5 @@ name = "ipfs_effector" path = "src/main.rs" [dependencies] -fluence = { version = "=0.5.0", features = ["logger"] } -log = "0.4.14" +fluence = { version = "0.6.9", features = ["logger"] } +log = "0.4.14" \ No newline at end of file diff --git a/ipfs-node/effector/src/main.rs b/ipfs-node/effector/src/main.rs index dcea1e4..e02ae88 100644 --- a/ipfs-node/effector/src/main.rs +++ b/ipfs-node/effector/src/main.rs @@ -20,10 +20,10 @@ mod path; use crate::path::to_full_path; -use fluence::fce; +use fluence::marine; use fluence::module_manifest; -use fluence::WasmLoggerBuilder; use fluence::MountedBinaryResult; +use fluence::WasmLoggerBuilder; const RESULT_FILE_PATH: &str = "/tmp/ipfs_rpc_file"; const IPFS_ADDR_ENV_NAME: &str = "IPFS_ADDR"; @@ -39,7 +39,7 @@ pub fn main() { } /// Put file from specified path to IPFS and return its hash. -#[fce] +#[marine] pub fn put(file_path: String) -> String { log::info!("put called with file path {}", file_path); @@ -54,7 +54,7 @@ pub fn put(file_path: String) -> String { file_path, ]; - let ipfs_result = unsafe { ipfs(cmd) }; + let ipfs_result = ipfs(cmd); ipfs_result .into_std() .unwrap() @@ -62,7 +62,7 @@ pub fn put(file_path: String) -> String { } /// Get file by provided hash from IPFS, saves it to a temporary file and returns a path to it. -#[fce] +#[marine] pub fn get(hash: String) -> String { log::info!("get called with hash {}", hash); @@ -78,11 +78,11 @@ pub fn get(hash: String) -> String { hash, ]; - unsafe { ipfs(cmd) }; + ipfs(cmd); RESULT_FILE_PATH.to_string() } -#[fce] +#[marine] pub fn get_address() -> String { match std::env::var(IPFS_ADDR_ENV_NAME) { Ok(addr) => addr, @@ -93,7 +93,7 @@ pub fn get_address() -> String { } } -#[fce] +#[marine] #[link(wasm_import_module = "host")] extern "C" { /// Execute provided cmd as a parameters of ipfs cli, return result. diff --git a/ipfs-node/effector/src/path.rs b/ipfs-node/effector/src/path.rs index 4f7d0d5..3fa025d 100644 --- a/ipfs-node/effector/src/path.rs +++ b/ipfs-node/effector/src/path.rs @@ -18,8 +18,8 @@ pub(super) fn to_full_path(cmd: S) -> String where S: Into, { - use std::path::Path; use std::path::Component; + use std::path::Path; let cmd = cmd.into(); let path = Path::new(&cmd); diff --git a/ipfs-node/pure/Cargo.toml b/ipfs-node/pure/Cargo.toml index 4712c7c..c335012 100644 --- a/ipfs-node/pure/Cargo.toml +++ b/ipfs-node/pure/Cargo.toml @@ -10,5 +10,5 @@ name = "ipfs_pure" path = "src/main.rs" [dependencies] -fluence = { version = "=0.5.0", features = ["logger"] } -log = "0.4.14" +fluence = { version = "0.6.9", features = ["logger"] } +log = "0.4.14" \ No newline at end of file diff --git a/ipfs-node/pure/src/main.rs b/ipfs-node/pure/src/main.rs index 98c0c68..af70777 100644 --- a/ipfs-node/pure/src/main.rs +++ b/ipfs-node/pure/src/main.rs @@ -16,7 +16,7 @@ #![allow(improper_ctypes)] -use fluence::fce; +use fluence::marine; use fluence::module_manifest; use fluence::WasmLoggerBuilder; @@ -34,12 +34,12 @@ pub fn main() { .unwrap(); } -#[fce] +#[marine] pub fn invoke() -> String { "IPFS_RPC wasm example, it allows to:\ninvoke\nput\nget".to_string() } -#[fce] +#[marine] pub fn put(file_content: Vec) -> String { log::info!("put called with {:?}", file_content); @@ -50,18 +50,18 @@ pub fn put(file_content: Vec) -> String { return format!("file can't be written: {}", e); } - unsafe { ipfs_put(rpc_tmp_filepath) } + ipfs_put(rpc_tmp_filepath) } -#[fce] +#[marine] pub fn get(hash: String) -> Vec { log::info!("get called with hash: {}", hash); - let file_path = unsafe { ipfs_get(hash) }; + let file_path = ipfs_get(hash); fs::read(file_path).unwrap_or_else(|_| b"error while reading file".to_vec()) } -#[fce] +#[marine] #[link(wasm_import_module = "ipfs_effector")] extern "C" { /// Put provided file to ipfs, return ipfs hash of the file.