From 42fcac512e2481a12e124b898ef4d95f18bd241f Mon Sep 17 00:00:00 2001 From: BiancaIalangi Date: Mon, 29 Jul 2024 19:54:25 +0300 Subject: [PATCH 1/3] cli code report - compare impl changed --- .github/workflows/actions.yml | 2 +- framework/meta/src/cli/cli_args_standalone.rs | 5 +- framework/meta/src/cmd/code_report.rs | 6 +- framework/meta/src/cmd/code_report/compare.rs | 4 +- .../src/cmd/code_report/generate_report.rs | 44 +- .../src/cmd/code_report/render_code_report.rs | 7 - to_compared_report.json | 2555 +++++++++++++++++ 7 files changed, 2598 insertions(+), 25 deletions(-) create mode 100644 to_compared_report.json diff --git a/.github/workflows/actions.yml b/.github/workflows/actions.yml index 33cce9444b..c0917d3746 100644 --- a/.github/workflows/actions.yml +++ b/.github/workflows/actions.yml @@ -14,7 +14,7 @@ permissions: jobs: contracts: name: Contracts - uses: multiversx/mx-sc-actions/.github/workflows/contracts.yml@f9483a0648e49620f3145a806924ff716c2445fb + uses: multiversx/mx-sc-actions/.github/workflows/contracts.yml@3ccc32c6283f3e7106b324b742d10aae28827c15 with: rust-toolchain: stable path-to-sc-meta: framework/meta diff --git a/framework/meta/src/cli/cli_args_standalone.rs b/framework/meta/src/cli/cli_args_standalone.rs index 9bb5aad9fc..1cdde75cdd 100644 --- a/framework/meta/src/cli/cli_args_standalone.rs +++ b/framework/meta/src/cli/cli_args_standalone.rs @@ -157,9 +157,10 @@ pub struct CodeReportArgs { #[arg(short, long, verbatim_doc_comment)] pub format: Option, - /// Compare two reports. Output available only for Markdown format + /// Compares 2 reports in JSON format and the output is printed in Markdown format. + /// If one argument with JSON format is given then it compares with itself. #[arg(short, long, verbatim_doc_comment)] - pub compare: Option, + pub compare: Vec, } #[derive(Default, Clone, PartialEq, Eq, Debug, Args)] diff --git a/framework/meta/src/cmd/code_report.rs b/framework/meta/src/cmd/code_report.rs index f3c8ff8cbe..8e34fd37bd 100644 --- a/framework/meta/src/cmd/code_report.rs +++ b/framework/meta/src/cmd/code_report.rs @@ -17,6 +17,10 @@ pub fn code_report(args: &CodeReportArgs) { path, args.output.to_str().unwrap(), args.format.as_ref().unwrap_or(&OutputFormat::default()), - args.compare.clone().unwrap_or_default().to_str().unwrap(), + args.compare + .clone() + .into_iter() + .map(|path| path.to_string_lossy().into_owned()) + .collect(), ); } diff --git a/framework/meta/src/cmd/code_report/compare.rs b/framework/meta/src/cmd/code_report/compare.rs index c21aae953e..06b6ea9a4b 100644 --- a/framework/meta/src/cmd/code_report/compare.rs +++ b/framework/meta/src/cmd/code_report/compare.rs @@ -37,10 +37,10 @@ pub(crate) fn parse_into_code_report_json( pub(crate) fn size_status_after_comparing(size: usize, compared_size: usize) -> String { match size.cmp(&compared_size) { std::cmp::Ordering::Greater => { - format!("{} :arrow-right: {} :red-circle:", compared_size, size) + format!("{} :arrow_right: {} :red_circle:", compared_size, size) }, std::cmp::Ordering::Less => { - format!("{} :arrow-right: {} :green-circle:", compared_size, size) + format!("{} :arrow_right: {} :green_circle:", compared_size, size) }, std::cmp::Ordering::Equal => { format!("{}", size) diff --git a/framework/meta/src/cmd/code_report/generate_report.rs b/framework/meta/src/cmd/code_report/generate_report.rs index c92ae712ab..bb7baccde6 100644 --- a/framework/meta/src/cmd/code_report/generate_report.rs +++ b/framework/meta/src/cmd/code_report/generate_report.rs @@ -1,6 +1,6 @@ use std::{ fs::{read_dir, File}, - io::Write, + io::{BufReader, Write}, path::PathBuf, process::Command, }; @@ -13,16 +13,31 @@ use multiversx_sc_meta_lib::{ use super::render_code_report::CodeReportRender; -pub fn run_code_report(path: &str, output_path: &str, output_format: &OutputFormat, compare: &str) { - let directors = RelevantDirectories::find_all(path, &["".to_owned()]); +pub fn run_code_report( + path: &str, + output_path: &str, + output_format: &OutputFormat, + compare: Vec, +) { + let reports = if compare.is_empty() { + generate_new_report(path) + } else { + let file = File::open(&compare[0]).expect("file not found"); + let reader = BufReader::new(file); + + serde_json::from_reader(reader).expect("Cannot deserialize") + }; - let reports = extract_report(directors); + let mut compared_to = String::new(); + if compare.len() == 2 { + compare[1].clone_into(&mut compared_to); + } let mut file = create_file(output_path); match output_format { OutputFormat::Markdown => { - let mut render_code_report = CodeReportRender::new(&mut file, compare, &reports); + let mut render_code_report = CodeReportRender::new(&mut file, &compared_to, &reports); render_code_report.render_report(); }, OutputFormat::Json => { @@ -32,6 +47,12 @@ pub fn run_code_report(path: &str, output_path: &str, output_format: &OutputForm }; } +fn generate_new_report(path: &str) -> Vec { + let directors = RelevantDirectories::find_all(path, &["".to_owned()]); + + extract_report(directors) +} + fn extract_report(directors: RelevantDirectories) -> Vec { let mut reports: Vec = Vec::new(); @@ -99,14 +120,13 @@ fn create_file(file_path: &str) -> File { File::create(file_path).expect("could not write report file") } -fn sanitize_output_path_from_report(reports: &mut Vec) { - for report in reports { - let new_path = report +fn sanitize_output_path_from_report(reports: &mut [CodeReportJson]) { + reports.iter_mut().for_each(|report| { + report.path = report .path .split('/') .last() - .unwrap_or_else(|| &report.path); - - report.path = new_path.to_owned(); - } + .unwrap_or(&report.path) + .to_string(); + }) } diff --git a/framework/meta/src/cmd/code_report/render_code_report.rs b/framework/meta/src/cmd/code_report/render_code_report.rs index 7b87a29493..6f4a66618c 100644 --- a/framework/meta/src/cmd/code_report/render_code_report.rs +++ b/framework/meta/src/cmd/code_report/render_code_report.rs @@ -60,13 +60,6 @@ impl<'a> CodeReportRender<'a> { } fn render_header(&mut self) { - if !self.compared_path_file.is_empty() { - self.writeln(format!( - "Contract comparison with {}", - self.compared_path_file - )) - } - self.writeln("| Path                                                         |                                     size |                  has-allocator |                     has-format |"); self.writeln("| :-- | --: | --: | --: |"); } diff --git a/to_compared_report.json b/to_compared_report.json new file mode 100644 index 0000000000..8f66650dff --- /dev/null +++ b/to_compared_report.json @@ -0,0 +1,2555 @@ +{ + "features": [ + "size", + "has-allocator", + "has-format" + ], + "folders": [ + { + "root_path": "mx-sdk-rs/contracts/benchmarks", + "projects": [ + { + "project_path": "large-storage", + "wasm_reports": [ + { + "wasm_name": "large-storage.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "2160" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "send-tx-repeat", + "wasm_reports": [ + { + "wasm_name": "send-tx-repeat.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "899" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "str-repeat", + "wasm_reports": [ + { + "wasm_name": "str-repeat.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "2326" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "str-repeat-mb-builder-basic.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "754" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "str-repeat-mb-builder-cached.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "1134" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + }, + { + "root_path": "mx-sdk-rs/contracts/benchmarks/mappers", + "projects": [ + { + "project_path": "linked-list-repeat", + "wasm_reports": [ + { + "wasm_name": "linked-list-repeat.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "6473" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "map-repeat", + "wasm_reports": [ + { + "wasm_name": "map-repeat.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "7178" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "queue-repeat", + "wasm_reports": [ + { + "wasm_name": "queue-repeat.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "5789" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "set-repeat", + "wasm_reports": [ + { + "wasm_name": "set-repeat.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "6943" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "single-value-repeat", + "wasm_reports": [ + { + "wasm_name": "single-value-repeat.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "4435" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "vec-repeat", + "wasm_reports": [ + { + "wasm_name": "vec-repeat.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "5223" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + }, + { + "root_path": "mx-sdk-rs/contracts/core", + "projects": [ + { + "project_path": "price-aggregator", + "wasm_reports": [ + { + "wasm_name": "multiversx-price-aggregator-sc.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "19314" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "wegld-swap", + "wasm_reports": [ + { + "wasm_name": "multiversx-wegld-swap-sc.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "3550" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + }, + { + "root_path": "mx-sdk-rs/contracts/examples", + "projects": [ + { + "project_path": "adder", + "wasm_reports": [ + { + "wasm_name": "adder.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "696" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "bonding-curve-contract", + "wasm_reports": [ + { + "wasm_name": "bonding-curve-contract.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "14725" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "check-pause", + "wasm_reports": [ + { + "wasm_name": "check-pause.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "1228" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "crowdfunding-esdt", + "wasm_reports": [ + { + "wasm_name": "crowdfunding-esdt.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "3984" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "crypto-bubbles", + "wasm_reports": [ + { + "wasm_name": "crypto-bubbles.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "2345" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "crypto-zombies", + "wasm_reports": [ + { + "wasm_name": "crypto-zombies.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "10296" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "digital-cash", + "wasm_reports": [ + { + "wasm_name": "digital-cash.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "10039" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "empty", + "wasm_reports": [ + { + "wasm_name": "empty.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "241" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "esdt-transfer-with-fee", + "wasm_reports": [ + { + "wasm_name": "esdt-transfer-with-fee.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "7764" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "factorial", + "wasm_reports": [ + { + "wasm_name": "factorial.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "576" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "fractional-nfts", + "wasm_reports": [ + { + "wasm_name": "fractional-nfts.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "8440" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "lottery-esdt", + "wasm_reports": [ + { + "wasm_name": "lottery-esdt.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "10978" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "multisig", + "wasm_reports": [ + { + "wasm_name": "multisig.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "14223" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "multisig-full.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "15812" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "multisig-view.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "6241" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "nft-minter", + "wasm_reports": [ + { + "wasm_name": "nft-minter.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "10018" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "nft-storage-prepay", + "wasm_reports": [ + { + "wasm_name": "nft-storage-prepay.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "2290" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "nft-subscription", + "wasm_reports": [ + { + "wasm_name": "nft-subscription.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "8782" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "ping-pong-egld", + "wasm_reports": [ + { + "wasm_name": "ping-pong-egld.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "6021" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "proxy-pause", + "wasm_reports": [ + { + "wasm_name": "proxy-pause.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "4616" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "rewards-distribution", + "wasm_reports": [ + { + "wasm_name": "rewards-distribution.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "10227" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "seed-nft-minter", + "wasm_reports": [ + { + "wasm_name": "seed-nft-minter.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "15106" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "token-release", + "wasm_reports": [ + { + "wasm_name": "token-release.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "7767" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + }, + { + "root_path": "mx-sdk-rs/contracts/examples/crypto-kitties", + "projects": [ + { + "project_path": "kitty-auction", + "wasm_reports": [ + { + "wasm_name": "kitty-auction.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "10054" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "kitty-genetic-alg", + "wasm_reports": [ + { + "wasm_name": "kitty-genetic-alg.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "3143" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "kitty-ownership", + "wasm_reports": [ + { + "wasm_name": "kitty-ownership.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "12723" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + }, + { + "root_path": "mx-sdk-rs/contracts/examples/order-book", + "projects": [ + { + "project_path": "factory", + "wasm_reports": [ + { + "wasm_name": "order-book-factory.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "3760" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "pair", + "wasm_reports": [ + { + "wasm_name": "order-book-pair.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "13778" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + }, + { + "root_path": "mx-sdk-rs/contracts/feature-tests", + "projects": [ + { + "project_path": "abi-tester", + "wasm_reports": [ + { + "wasm_name": "abi-tester.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "7128" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "abi-tester-ev.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "757" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "alloc-features", + "wasm_reports": [ + { + "wasm_name": "alloc-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "16468" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "alloc-mem-fail.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "16421" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "alloc-mem-leaking.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "16580" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "basic-features", + "wasm_reports": [ + { + "wasm_name": "basic-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "64827" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "basic-features-storage-bytes.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "538" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "big-float-features", + "wasm_reports": [ + { + "wasm_name": "big-float-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "6463" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "esdt-system-sc-mock", + "wasm_reports": [ + { + "wasm_name": "esdt-system-sc-mock.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "3794" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "exchange-features", + "wasm_reports": [ + { + "wasm_name": "exchange-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "1575" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "formatted-message-features", + "wasm_reports": [ + { + "wasm_name": "formatted-message-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "3462" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "managed-map-features", + "wasm_reports": [ + { + "wasm_name": "managed-map-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "1315" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "multi-contract-features", + "wasm_reports": [ + { + "wasm_name": "multi-contract-alt-impl.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "360" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "multi-contract-example-feature.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "677" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "multi-contract-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "678" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "multi-contract-features-view.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "1115" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "panic-message-features", + "wasm_reports": [ + { + "wasm_name": "panic-message-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "12613" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "True" + ] + } + ] + } + ] + }, + { + "project_path": "payable-features", + "wasm_reports": [ + { + "wasm_name": "payable-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "4368" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "rust-snippets-generator-test", + "wasm_reports": [ + { + "wasm_name": "rust-snippets-generator-test.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "4971" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "rust-testing-framework-tester", + "wasm_reports": [ + { + "wasm_name": "rust-testing-framework-tester.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "8596" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "scenario-tester", + "wasm_reports": [ + { + "wasm_name": "scenario-tester.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "1114" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "use-module", + "wasm_reports": [ + { + "wasm_name": "use-module.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "33392" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "True" + ] + } + ] + }, + { + "wasm_name": "use-module-view.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "733" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + }, + { + "root_path": "mx-sdk-rs/contracts/feature-tests/composability", + "projects": [ + { + "project_path": "builtin-func-features", + "wasm_reports": [ + { + "wasm_name": "builtin-func-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "1099" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "forwarder", + "wasm_reports": [ + { + "wasm_name": "forwarder.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "32628" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "forwarder-legacy", + "wasm_reports": [ + { + "wasm_name": "forwarder-legacy.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "32296" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "forwarder-queue", + "wasm_reports": [ + { + "wasm_name": "forwarder-queue.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "12091" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "forwarder-queue-promises.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "13004" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "forwarder-raw", + "wasm_reports": [ + { + "wasm_name": "forwarder-raw.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "15261" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "forwarder-raw-init-async-call.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "3058" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "forwarder-raw-init-sync-call.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "3328" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "local-esdt-and-nft", + "wasm_reports": [ + { + "wasm_name": "local-esdt-and-nft.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "12016" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "promises-features", + "wasm_reports": [ + { + "wasm_name": "promises-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "12885" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "proxy-test-first", + "wasm_reports": [ + { + "wasm_name": "proxy-test-first.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "6024" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "proxy-test-second", + "wasm_reports": [ + { + "wasm_name": "proxy-test-second.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "2112" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "recursive-caller", + "wasm_reports": [ + { + "wasm_name": "recursive-caller.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "5459" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "transfer-role-features", + "wasm_reports": [ + { + "wasm_name": "transfer-role-features.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "8758" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "vault", + "wasm_reports": [ + { + "wasm_name": "vault.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "7821" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "vault-promises.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "8514" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + }, + { + "wasm_name": "vault-upgrade.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "697" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + }, + { + "root_path": "mx-sdk-rs/contracts/feature-tests/composability/esdt-contract-pair", + "projects": [ + { + "project_path": "first-contract", + "wasm_reports": [ + { + "wasm_name": "first-contract.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "3083" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "second-contract", + "wasm_reports": [ + { + "wasm_name": "second-contract.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "1355" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + }, + { + "root_path": "mx-sdk-rs/contracts/feature-tests/composability/execute-on-dest-esdt-issue-callback", + "projects": [ + { + "project_path": "child", + "wasm_reports": [ + { + "wasm_name": "child.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "4051" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "parent", + "wasm_reports": [ + { + "wasm_name": "parent.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "1673" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + }, + { + "root_path": "mx-sdk-rs/contracts/feature-tests/erc-style-contracts", + "projects": [ + { + "project_path": "crowdfunding-erc20", + "wasm_reports": [ + { + "wasm_name": "crowdfunding-erc20.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "5323" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "erc1155", + "wasm_reports": [ + { + "wasm_name": "erc1155.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "12180" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "erc1155-marketplace", + "wasm_reports": [ + { + "wasm_name": "erc1155-marketplace.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "11144" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "erc1155-user-mock", + "wasm_reports": [ + { + "wasm_name": "erc1155-user-mock.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "1358" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "erc20", + "wasm_reports": [ + { + "wasm_name": "erc20.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "2130" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "erc721", + "wasm_reports": [ + { + "wasm_name": "erc721.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "2573" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + }, + { + "project_path": "lottery-erc20", + "wasm_reports": [ + { + "wasm_name": "lottery-erc20.wasm", + "extracted_features": [ + { + "feature_name": "size", + "results": [ + "12764" + ] + }, + { + "feature_name": "has-allocator", + "results": [ + "False" + ] + }, + { + "feature_name": "has-format", + "results": [ + "False" + ] + } + ] + } + ] + } + ] + } + ] +} \ No newline at end of file From 3c1b1b9a3824a17348ed8acfdbc97cb7a8427758 Mon Sep 17 00:00:00 2001 From: BiancaIalangi Date: Mon, 5 Aug 2024 16:10:19 +0300 Subject: [PATCH 2/3] code report cli - cleanup --- .../src/cmd/code_report/render_code_report.rs | 8 +- to_compared_report.json | 2555 ----------------- 2 files changed, 6 insertions(+), 2557 deletions(-) delete mode 100644 to_compared_report.json diff --git a/framework/meta/src/cmd/code_report/render_code_report.rs b/framework/meta/src/cmd/code_report/render_code_report.rs index 6f4a66618c..b176aa374a 100644 --- a/framework/meta/src/cmd/code_report/render_code_report.rs +++ b/framework/meta/src/cmd/code_report/render_code_report.rs @@ -88,8 +88,12 @@ impl<'a> CodeReportRender<'a> { // TODO this is only one time compared. Decide whether to exist or not parse_into_code_report_json(&mut compared_file_reader) } else { - serde_json::from_reader(compared_file_reader) - .unwrap_or_else(|_| panic!("Cannot deserialize into code report structure.")) + serde_json::from_reader(compared_file_reader).unwrap_or_else(|_| { + self.render_reports(); + self.writeln(":warning: Could not compare the 2 versions because the deserialization process into the code report structure failed. :warning:"); + + Vec::new() + }) }; for report in self.reports.iter() { diff --git a/to_compared_report.json b/to_compared_report.json deleted file mode 100644 index 8f66650dff..0000000000 --- a/to_compared_report.json +++ /dev/null @@ -1,2555 +0,0 @@ -{ - "features": [ - "size", - "has-allocator", - "has-format" - ], - "folders": [ - { - "root_path": "mx-sdk-rs/contracts/benchmarks", - "projects": [ - { - "project_path": "large-storage", - "wasm_reports": [ - { - "wasm_name": "large-storage.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "2160" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "send-tx-repeat", - "wasm_reports": [ - { - "wasm_name": "send-tx-repeat.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "899" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "str-repeat", - "wasm_reports": [ - { - "wasm_name": "str-repeat.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "2326" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "str-repeat-mb-builder-basic.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "754" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "str-repeat-mb-builder-cached.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "1134" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - }, - { - "root_path": "mx-sdk-rs/contracts/benchmarks/mappers", - "projects": [ - { - "project_path": "linked-list-repeat", - "wasm_reports": [ - { - "wasm_name": "linked-list-repeat.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "6473" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "map-repeat", - "wasm_reports": [ - { - "wasm_name": "map-repeat.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "7178" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "queue-repeat", - "wasm_reports": [ - { - "wasm_name": "queue-repeat.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "5789" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "set-repeat", - "wasm_reports": [ - { - "wasm_name": "set-repeat.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "6943" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "single-value-repeat", - "wasm_reports": [ - { - "wasm_name": "single-value-repeat.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "4435" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "vec-repeat", - "wasm_reports": [ - { - "wasm_name": "vec-repeat.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "5223" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - }, - { - "root_path": "mx-sdk-rs/contracts/core", - "projects": [ - { - "project_path": "price-aggregator", - "wasm_reports": [ - { - "wasm_name": "multiversx-price-aggregator-sc.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "19314" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "wegld-swap", - "wasm_reports": [ - { - "wasm_name": "multiversx-wegld-swap-sc.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "3550" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - }, - { - "root_path": "mx-sdk-rs/contracts/examples", - "projects": [ - { - "project_path": "adder", - "wasm_reports": [ - { - "wasm_name": "adder.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "696" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "bonding-curve-contract", - "wasm_reports": [ - { - "wasm_name": "bonding-curve-contract.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "14725" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "check-pause", - "wasm_reports": [ - { - "wasm_name": "check-pause.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "1228" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "crowdfunding-esdt", - "wasm_reports": [ - { - "wasm_name": "crowdfunding-esdt.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "3984" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "crypto-bubbles", - "wasm_reports": [ - { - "wasm_name": "crypto-bubbles.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "2345" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "crypto-zombies", - "wasm_reports": [ - { - "wasm_name": "crypto-zombies.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "10296" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "digital-cash", - "wasm_reports": [ - { - "wasm_name": "digital-cash.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "10039" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "empty", - "wasm_reports": [ - { - "wasm_name": "empty.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "241" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "esdt-transfer-with-fee", - "wasm_reports": [ - { - "wasm_name": "esdt-transfer-with-fee.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "7764" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "factorial", - "wasm_reports": [ - { - "wasm_name": "factorial.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "576" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "fractional-nfts", - "wasm_reports": [ - { - "wasm_name": "fractional-nfts.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "8440" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "lottery-esdt", - "wasm_reports": [ - { - "wasm_name": "lottery-esdt.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "10978" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "multisig", - "wasm_reports": [ - { - "wasm_name": "multisig.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "14223" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "multisig-full.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "15812" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "multisig-view.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "6241" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "nft-minter", - "wasm_reports": [ - { - "wasm_name": "nft-minter.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "10018" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "nft-storage-prepay", - "wasm_reports": [ - { - "wasm_name": "nft-storage-prepay.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "2290" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "nft-subscription", - "wasm_reports": [ - { - "wasm_name": "nft-subscription.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "8782" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "ping-pong-egld", - "wasm_reports": [ - { - "wasm_name": "ping-pong-egld.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "6021" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "proxy-pause", - "wasm_reports": [ - { - "wasm_name": "proxy-pause.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "4616" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "rewards-distribution", - "wasm_reports": [ - { - "wasm_name": "rewards-distribution.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "10227" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "seed-nft-minter", - "wasm_reports": [ - { - "wasm_name": "seed-nft-minter.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "15106" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "token-release", - "wasm_reports": [ - { - "wasm_name": "token-release.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "7767" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - }, - { - "root_path": "mx-sdk-rs/contracts/examples/crypto-kitties", - "projects": [ - { - "project_path": "kitty-auction", - "wasm_reports": [ - { - "wasm_name": "kitty-auction.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "10054" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "kitty-genetic-alg", - "wasm_reports": [ - { - "wasm_name": "kitty-genetic-alg.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "3143" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "kitty-ownership", - "wasm_reports": [ - { - "wasm_name": "kitty-ownership.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "12723" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - }, - { - "root_path": "mx-sdk-rs/contracts/examples/order-book", - "projects": [ - { - "project_path": "factory", - "wasm_reports": [ - { - "wasm_name": "order-book-factory.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "3760" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "pair", - "wasm_reports": [ - { - "wasm_name": "order-book-pair.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "13778" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - }, - { - "root_path": "mx-sdk-rs/contracts/feature-tests", - "projects": [ - { - "project_path": "abi-tester", - "wasm_reports": [ - { - "wasm_name": "abi-tester.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "7128" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "abi-tester-ev.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "757" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "alloc-features", - "wasm_reports": [ - { - "wasm_name": "alloc-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "16468" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "alloc-mem-fail.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "16421" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "alloc-mem-leaking.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "16580" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "basic-features", - "wasm_reports": [ - { - "wasm_name": "basic-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "64827" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "basic-features-storage-bytes.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "538" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "big-float-features", - "wasm_reports": [ - { - "wasm_name": "big-float-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "6463" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "esdt-system-sc-mock", - "wasm_reports": [ - { - "wasm_name": "esdt-system-sc-mock.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "3794" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "exchange-features", - "wasm_reports": [ - { - "wasm_name": "exchange-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "1575" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "formatted-message-features", - "wasm_reports": [ - { - "wasm_name": "formatted-message-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "3462" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "managed-map-features", - "wasm_reports": [ - { - "wasm_name": "managed-map-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "1315" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "multi-contract-features", - "wasm_reports": [ - { - "wasm_name": "multi-contract-alt-impl.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "360" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "multi-contract-example-feature.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "677" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "multi-contract-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "678" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "multi-contract-features-view.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "1115" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "panic-message-features", - "wasm_reports": [ - { - "wasm_name": "panic-message-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "12613" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "True" - ] - } - ] - } - ] - }, - { - "project_path": "payable-features", - "wasm_reports": [ - { - "wasm_name": "payable-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "4368" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "rust-snippets-generator-test", - "wasm_reports": [ - { - "wasm_name": "rust-snippets-generator-test.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "4971" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "rust-testing-framework-tester", - "wasm_reports": [ - { - "wasm_name": "rust-testing-framework-tester.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "8596" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "scenario-tester", - "wasm_reports": [ - { - "wasm_name": "scenario-tester.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "1114" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "use-module", - "wasm_reports": [ - { - "wasm_name": "use-module.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "33392" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "True" - ] - } - ] - }, - { - "wasm_name": "use-module-view.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "733" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - }, - { - "root_path": "mx-sdk-rs/contracts/feature-tests/composability", - "projects": [ - { - "project_path": "builtin-func-features", - "wasm_reports": [ - { - "wasm_name": "builtin-func-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "1099" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "forwarder", - "wasm_reports": [ - { - "wasm_name": "forwarder.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "32628" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "forwarder-legacy", - "wasm_reports": [ - { - "wasm_name": "forwarder-legacy.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "32296" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "forwarder-queue", - "wasm_reports": [ - { - "wasm_name": "forwarder-queue.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "12091" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "forwarder-queue-promises.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "13004" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "forwarder-raw", - "wasm_reports": [ - { - "wasm_name": "forwarder-raw.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "15261" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "forwarder-raw-init-async-call.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "3058" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "forwarder-raw-init-sync-call.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "3328" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "local-esdt-and-nft", - "wasm_reports": [ - { - "wasm_name": "local-esdt-and-nft.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "12016" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "promises-features", - "wasm_reports": [ - { - "wasm_name": "promises-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "12885" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "proxy-test-first", - "wasm_reports": [ - { - "wasm_name": "proxy-test-first.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "6024" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "proxy-test-second", - "wasm_reports": [ - { - "wasm_name": "proxy-test-second.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "2112" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "recursive-caller", - "wasm_reports": [ - { - "wasm_name": "recursive-caller.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "5459" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "transfer-role-features", - "wasm_reports": [ - { - "wasm_name": "transfer-role-features.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "8758" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "vault", - "wasm_reports": [ - { - "wasm_name": "vault.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "7821" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "vault-promises.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "8514" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - }, - { - "wasm_name": "vault-upgrade.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "697" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - }, - { - "root_path": "mx-sdk-rs/contracts/feature-tests/composability/esdt-contract-pair", - "projects": [ - { - "project_path": "first-contract", - "wasm_reports": [ - { - "wasm_name": "first-contract.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "3083" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "second-contract", - "wasm_reports": [ - { - "wasm_name": "second-contract.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "1355" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - }, - { - "root_path": "mx-sdk-rs/contracts/feature-tests/composability/execute-on-dest-esdt-issue-callback", - "projects": [ - { - "project_path": "child", - "wasm_reports": [ - { - "wasm_name": "child.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "4051" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "parent", - "wasm_reports": [ - { - "wasm_name": "parent.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "1673" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - }, - { - "root_path": "mx-sdk-rs/contracts/feature-tests/erc-style-contracts", - "projects": [ - { - "project_path": "crowdfunding-erc20", - "wasm_reports": [ - { - "wasm_name": "crowdfunding-erc20.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "5323" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "erc1155", - "wasm_reports": [ - { - "wasm_name": "erc1155.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "12180" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "erc1155-marketplace", - "wasm_reports": [ - { - "wasm_name": "erc1155-marketplace.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "11144" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "erc1155-user-mock", - "wasm_reports": [ - { - "wasm_name": "erc1155-user-mock.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "1358" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "erc20", - "wasm_reports": [ - { - "wasm_name": "erc20.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "2130" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "erc721", - "wasm_reports": [ - { - "wasm_name": "erc721.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "2573" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - }, - { - "project_path": "lottery-erc20", - "wasm_reports": [ - { - "wasm_name": "lottery-erc20.wasm", - "extracted_features": [ - { - "feature_name": "size", - "results": [ - "12764" - ] - }, - { - "feature_name": "has-allocator", - "results": [ - "False" - ] - }, - { - "feature_name": "has-format", - "results": [ - "False" - ] - } - ] - } - ] - } - ] - } - ] -} \ No newline at end of file From 7bd2b5774775b57eddd6776a508abded630bbfba Mon Sep 17 00:00:00 2001 From: BiancaIalangi Date: Mon, 5 Aug 2024 17:17:18 +0300 Subject: [PATCH 3/3] cli code report - format error --- framework/meta/src/cmd/code_report/render_code_report.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/meta/src/cmd/code_report/render_code_report.rs b/framework/meta/src/cmd/code_report/render_code_report.rs index b176aa374a..54b0a5d9c9 100644 --- a/framework/meta/src/cmd/code_report/render_code_report.rs +++ b/framework/meta/src/cmd/code_report/render_code_report.rs @@ -90,7 +90,7 @@ impl<'a> CodeReportRender<'a> { } else { serde_json::from_reader(compared_file_reader).unwrap_or_else(|_| { self.render_reports(); - self.writeln(":warning: Could not compare the 2 versions because the deserialization process into the code report structure failed. :warning:"); + self.writeln("\n:warning: Could not compare the 2 versions because the deserialization process into the code report structure failed. :warning:"); Vec::new() })