Skip to content

Update to 0.2.0-beta11 #23

Update to 0.2.0-beta11

Update to 0.2.0-beta11 #23

Triggered via push December 17, 2023 12:11
Status Failure
Total duration 3m 27s
Artifacts

build.yml

on: push
Matrix: build
Matrix: test
Fit to window
Zoom out
Zoom in

Annotations

2 errors and 101 warnings
build (macos-latest)
Process completed with exit code 101.
build (windows-latest)
The operation was canceled.
this expression creates a reference which is immediately dereferenced by the compiler: scanflow-cli/src/main.rs#L35
warning: this expression creates a reference which is immediately dereferenced by the compiler --> scanflow-cli/src/main.rs:35:43 | 35 | let process = os.into_process_by_name(&target)?; | ^^^^^^^ help: change this to: `target` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` on by default
this expression creates a reference which is immediately dereferenced by the compiler: scanflow-cli/src/main.rs#L35
warning: this expression creates a reference which is immediately dereferenced by the compiler --> scanflow-cli/src/main.rs:35:43 | 35 | let process = os.into_process_by_name(&target)?; | ^^^^^^^ help: change this to: `target` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` on by default
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L523
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:523:13 | 523 | let b = TYPES | _____________^ 524 | | .iter() 525 | | .filter(|Type(name, _, _, _)| name == &typename) 526 | | .next()? | |_______________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next help: try | 523 ~ let b = TYPES 524 ~ .iter().find(|Type(name, _, _, _)| name == &typename)? |
single-character string constant used as pattern: scanflow-cli/src/cli.rs#L519
warning: single-character string constant used as pattern --> scanflow-cli/src/cli.rs:519:41 | 519 | let mut words = input.splitn(2, " "); | ^^^ help: try using a `char` instead: `' '` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L523
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:523:13 | 523 | let b = TYPES | _____________^ 524 | | .iter() 525 | | .filter(|Type(name, _, _, _)| name == &typename) 526 | | .next()? | |_______________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next help: try | 523 ~ let b = TYPES 524 ~ .iter().find(|Type(name, _, _, _)| name == &typename)? |
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L508
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:508:5 | 508 | / TYPES 509 | | .iter() 510 | | .filter(|Type(name, _, _, _)| name == &typename) 511 | | .next() | |_______________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next help: try | 508 ~ TYPES 509 + .iter().find(|Type(name, _, _, _)| name == &typename) |
single-character string constant used as pattern: scanflow-cli/src/cli.rs#L519
warning: single-character string constant used as pattern --> scanflow-cli/src/cli.rs:519:41 | 519 | let mut words = input.splitn(2, " "); | ^^^ help: try using a `char` instead: `' '` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L508
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:508:5 | 508 | / TYPES 509 | | .iter() 510 | | .filter(|Type(name, _, _, _)| name == &typename) 511 | | .next() | |_______________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next help: try | 508 ~ TYPES 509 + .iter().find(|Type(name, _, _, _)| name == &typename) |
useless use of `format!`: scanflow-cli/src/cli.rs#L423
warning: useless use of `format!` --> scanflow-cli/src/cli.rs:423:18 | 423 | Some(format!("{}", String::from_utf16_lossy(&vec))) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `String::from_utf16_lossy(&vec).to_string()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format = note: `#[warn(clippy::useless_format)]` on by default
useless use of `format!`: scanflow-cli/src/cli.rs#L423
warning: useless use of `format!` --> scanflow-cli/src/cli.rs:423:18 | 423 | Some(format!("{}", String::from_utf16_lossy(&vec))) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `String::from_utf16_lossy(&vec).to_string()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format = note: `#[warn(clippy::useless_format)]` on by default
`to_string` applied to a type that implements `Display` in `println!` args: scanflow-cli/src/cli.rs#L388
warning: `to_string` applied to a type that implements `Display` in `println!` args --> scanflow-cli/src/cli.rs:388:57 | 388 | println!("Error reading line: {}", e.to_string()); | ^^^^^^^^^^^^ help: remove this | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args = note: `#[warn(clippy::to_string_in_format_args)]` on by default
`to_string` applied to a type that implements `Display` in `println!` args: scanflow-cli/src/cli.rs#L388
warning: `to_string` applied to a type that implements `Display` in `println!` args --> scanflow-cli/src/cli.rs:388:57 | 388 | println!("Error reading line: {}", e.to_string()); | ^^^^^^^^^^^^ help: remove this | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args = note: `#[warn(clippy::to_string_in_format_args)]` on by default
single-character string constant used as pattern: scanflow-cli/src/cli.rs#L353
warning: single-character string constant used as pattern --> scanflow-cli/src/cli.rs:353:36 | 353 | let mut words = args.splitn(3, " "); | ^^^ help: try using a `char` instead: `' '` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern = note: `#[warn(clippy::single_char_pattern)]` on by default
single-character string constant used as pattern: scanflow-cli/src/cli.rs#L353
warning: single-character string constant used as pattern --> scanflow-cli/src/cli.rs:353:36 | 353 | let mut words = args.splitn(3, " "); | ^^^ help: try using a `char` instead: `' '` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern = note: `#[warn(clippy::single_char_pattern)]` on by default
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L104
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:104:48 | 104 | if let Some(Type(_, size, _, _)) = TYPES.iter().filter(|Type(name, _, _, _)| name == &arg).next() { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `TYPES.iter().find(|Type(name, _, _, _)| name == &arg)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next = note: `#[warn(clippy::filter_next)]` on by default
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L104
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:104:48 | 104 | if let Some(Type(_, size, _, _)) = TYPES.iter().filter(|Type(name, _, _, _)| name == &arg).next() { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `TYPES.iter().find(|Type(name, _, _, _)| name == &arg)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next = note: `#[warn(clippy::filter_next)]` on by default
this `else { if .. }` block can be collapsed: scanflow-cli/src/cli.rs#L293
warning: this `else { if .. }` block can be collapsed --> scanflow-cli/src/cli.rs:293:24 | 293 | } else { | ________________________^ 294 | | if let Some((buf, t)) = parse_input(line, &ctx.typename) { 295 | | ctx.buf_len = buf.len(); 296 | | ctx.value_scanner.scan_for(&mut ctx.process, &buf)?; ... | 301 | | } 302 | | } | |_________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_else_if = note: `#[warn(clippy::collapsible_else_if)]` on by default help: collapse nested if block | 293 ~ } else if let Some((buf, t)) = parse_input(line, &ctx.typename) { 294 + ctx.buf_len = buf.len(); 295 + ctx.value_scanner.scan_for(&mut ctx.process, &buf)?; 296 + print_matches(&ctx.value_scanner, &mut ctx.process, ctx.buf_len, &t)?; 297 + ctx.typename = Some(t); 298 + } else { 299 + println!("Invalid input! Use `help` for command reference."); 300 + } |
this `else { if .. }` block can be collapsed: scanflow-cli/src/cli.rs#L293
warning: this `else { if .. }` block can be collapsed --> scanflow-cli/src/cli.rs:293:24 | 293 | } else { | ________________________^ 294 | | if let Some((buf, t)) = parse_input(line, &ctx.typename) { 295 | | ctx.buf_len = buf.len(); 296 | | ctx.value_scanner.scan_for(&mut ctx.process, &buf)?; ... | 301 | | } 302 | | } | |_________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_else_if = note: `#[warn(clippy::collapsible_else_if)]` on by default help: collapse nested if block | 293 ~ } else if let Some((buf, t)) = parse_input(line, &ctx.typename) { 294 + ctx.buf_len = buf.len(); 295 + ctx.value_scanner.scan_for(&mut ctx.process, &buf)?; 296 + print_matches(&ctx.value_scanner, &mut ctx.process, ctx.buf_len, &t)?; 297 + ctx.typename = Some(t); 298 + } else { 299 + println!("Invalid input! Use `help` for command reference."); 300 + } |
replacing a value of type `T` with `T::default()` is better expressed using `std::mem::take`: scanflow/src/value_scanner.rs#L102
warning: replacing a value of type `T` with `T::default()` is better expressed using `std::mem::take` --> scanflow/src/value_scanner.rs:102:31 | 102 | let old_matches = std::mem::replace(&mut self.matches, vec![]); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `std::mem::take(&mut self.matches)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mem_replace_with_default = note: `#[warn(clippy::mem_replace_with_default)]` on by default
useless conversion to the same type: `std::ops::Range<u64>`: scanflow/src/value_scanner.rs#L62
warning: useless conversion to the same type: `std::ops::Range<u64>` --> scanflow/src/value_scanner.rs:62:21 | 62 | / (0..size) 63 | | .into_iter() | |____________________________________^ help: consider removing `.into_iter()`: `(0..size)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/value_scanner.rs#L52
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/value_scanner.rs:52:46 | 52 | .map(|CTup3(size, _, _)| size.to_umem() as u64) | ^^^^^^^^^^^^^^^^^^^^^ help: try: `size.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
replacing a value of type `T` with `T::default()` is better expressed using `std::mem::take`: scanflow/src/value_scanner.rs#L102
warning: replacing a value of type `T` with `T::default()` is better expressed using `std::mem::take` --> scanflow/src/value_scanner.rs:102:31 | 102 | let old_matches = std::mem::replace(&mut self.matches, vec![]); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `std::mem::take(&mut self.matches)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mem_replace_with_default = note: `#[warn(clippy::mem_replace_with_default)]` on by default
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/sigmaker.rs#L207
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/sigmaker.rs:207:32 | 207 | decoder.set_ip(start_ip.to_umem() as u64); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `start_ip.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
useless conversion to the same type: `std::ops::Range<u64>`: scanflow/src/value_scanner.rs#L62
warning: useless conversion to the same type: `std::ops::Range<u64>` --> scanflow/src/value_scanner.rs:62:21 | 62 | / (0..size) 63 | | .into_iter() | |____________________________________^ help: consider removing `.into_iter()`: `(0..size)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/value_scanner.rs#L52
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/value_scanner.rs:52:46 | 52 | .map(|CTup3(size, _, _)| size.to_umem() as u64) | ^^^^^^^^^^^^^^^^^^^^^ help: try: `size.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/sigmaker.rs#L207
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/sigmaker.rs:207:32 | 207 | decoder.set_ip(start_ip.to_umem() as u64); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `start_ip.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
this expression creates a reference which is immediately dereferenced by the compiler: scanflow/src/sigmaker.rs#L58
warning: this expression creates a reference which is immediately dereferenced by the compiler --> scanflow/src/sigmaker.rs:58:31 | 58 | Self::mask_branch(&offsets, mask, 1); | ^^^^^^^^ help: change this to: `offsets` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` on by default
this expression creates a reference which is immediately dereferenced by the compiler: scanflow/src/sigmaker.rs#L58
warning: this expression creates a reference which is immediately dereferenced by the compiler --> scanflow/src/sigmaker.rs:58:31 | 58 | Self::mask_branch(&offsets, mask, 1); | ^^^^^^^^ help: change this to: `offsets` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` on by default
this function has too many arguments (10/7): scanflow/src/pointer_map.rs#L135
warning: this function has too many arguments (10/7) --> scanflow/src/pointer_map.rs:135:5 | 135 | / fn walk_down_range( 136 | | &self, 137 | | addr: Address, 138 | | (lrange, urange): (usize, usize), ... | 145 | | (pb_start, pb_end): (f32, f32), 146 | | ) { | |______^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments = note: `#[warn(clippy::too_many_arguments)]` on by default
this function has too many arguments (10/7): scanflow/src/pointer_map.rs#L135
warning: this function has too many arguments (10/7) --> scanflow/src/pointer_map.rs:135:5 | 135 | / fn walk_down_range( 136 | | &self, 137 | | addr: Address, 138 | | (lrange, urange): (usize, usize), ... | 145 | | (pb_start, pb_end): (f32, f32), 146 | | ) { | |______^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments = note: `#[warn(clippy::too_many_arguments)]` on by default
useless conversion to the same type: `std::ops::Range<u64>`: scanflow/src/pointer_map.rs#L61
warning: useless conversion to the same type: `std::ops::Range<u64>` --> scanflow/src/pointer_map.rs:61:17 | 61 | / (0..size) 62 | | .into_iter() | |________________________________^ help: consider removing `.into_iter()`: `(0..size)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion = note: `#[warn(clippy::useless_conversion)]` on by default
useless conversion to the same type: `std::ops::Range<u64>`: scanflow/src/pointer_map.rs#L61
warning: useless conversion to the same type: `std::ops::Range<u64>` --> scanflow/src/pointer_map.rs:61:17 | 61 | / (0..size) 62 | | .into_iter() | |________________________________^ help: consider removing `.into_iter()`: `(0..size)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion = note: `#[warn(clippy::useless_conversion)]` on by default
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/pointer_map.rs#L51
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/pointer_map.rs:51:42 | 51 | .map(|CTup3(_, size, _)| size.to_umem() as u64) | ^^^^^^^^^^^^^^^^^^^^^ help: try: `size.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/pointer_map.rs#L51
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/pointer_map.rs:51:42 | 51 | .map(|CTup3(_, size, _)| size.to_umem() as u64) | ^^^^^^^^^^^^^^^^^^^^^ help: try: `size.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L122
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:122:28 | 122 | pb.add(m.size as u64); | ^^^^^^^^^^^^^ help: try: `m.size` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L122
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:122:28 | 122 | pb.add(m.size as u64); | ^^^^^^^^^^^^^ help: try: `m.size` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L94
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:94:52 | 94 | ... decoder.set_ip(addr as u64); | ^^^^^^^^^^^ help: try: `addr` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L94
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:94:52 | 94 | ... decoder.set_ip(addr as u64); | ^^^^^^^^^^^ help: try: `addr` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L47
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:47:51 | 47 | let pb = PBar::new(modules.iter().map(|m| m.size as u64).sum::<u64>(), true); | ^^^^^^^^^^^^^ help: try: `m.size` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast = note: `#[warn(clippy::unnecessary_cast)]` on by default
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L47
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:47:51 | 47 | let pb = PBar::new(modules.iter().map(|m| m.size as u64).sum::<u64>(), true); | ^^^^^^^^^^^^^ help: try: `m.size` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast = note: `#[warn(clippy::unnecessary_cast)]` on by default
redundant closure: scanflow/src/disasm.rs#L45
warning: redundant closure --> scanflow/src/disasm.rs:45:44 | 45 | let sections = ThreadLocalCtx::new(|| Vec::<SectionInfo>::new()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `Vec::<SectionInfo>::new` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure = note: `#[warn(clippy::redundant_closure)]` on by default
redundant closure: scanflow/src/disasm.rs#L45
warning: redundant closure --> scanflow/src/disasm.rs:45:44 | 45 | let sections = ThreadLocalCtx::new(|| Vec::<SectionInfo>::new()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `Vec::<SectionInfo>::new` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure = note: `#[warn(clippy::redundant_closure)]` on by default
lint
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
build (ubuntu-latest)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
test (ubuntu-latest)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
build (macos-latest)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
build (windows-latest)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
this expression creates a reference which is immediately dereferenced by the compiler: scanflow-cli/src/main.rs#L35
warning: this expression creates a reference which is immediately dereferenced by the compiler --> scanflow-cli/src/main.rs:35:43 | 35 | let process = os.into_process_by_name(&target)?; | ^^^^^^^ help: change this to: `target` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` on by default
this expression creates a reference which is immediately dereferenced by the compiler: scanflow-cli/src/main.rs#L35
warning: this expression creates a reference which is immediately dereferenced by the compiler --> scanflow-cli/src/main.rs:35:43 | 35 | let process = os.into_process_by_name(&target)?; | ^^^^^^^ help: change this to: `target` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` on by default
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L523
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:523:13 | 523 | let b = TYPES | _____________^ 524 | | .iter() 525 | | .filter(|Type(name, _, _, _)| name == &typename) 526 | | .next()? | |_______________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next help: try | 523 ~ let b = TYPES 524 ~ .iter().find(|Type(name, _, _, _)| name == &typename)? |
single-character string constant used as pattern: scanflow-cli/src/cli.rs#L519
warning: single-character string constant used as pattern --> scanflow-cli/src/cli.rs:519:41 | 519 | let mut words = input.splitn(2, " "); | ^^^ help: try using a `char` instead: `' '` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L508
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:508:5 | 508 | / TYPES 509 | | .iter() 510 | | .filter(|Type(name, _, _, _)| name == &typename) 511 | | .next() | |_______________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next help: try | 508 ~ TYPES 509 + .iter().find(|Type(name, _, _, _)| name == &typename) |
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L523
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:523:13 | 523 | let b = TYPES | _____________^ 524 | | .iter() 525 | | .filter(|Type(name, _, _, _)| name == &typename) 526 | | .next()? | |_______________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next help: try | 523 ~ let b = TYPES 524 ~ .iter().find(|Type(name, _, _, _)| name == &typename)? |
single-character string constant used as pattern: scanflow-cli/src/cli.rs#L519
warning: single-character string constant used as pattern --> scanflow-cli/src/cli.rs:519:41 | 519 | let mut words = input.splitn(2, " "); | ^^^ help: try using a `char` instead: `' '` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L508
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:508:5 | 508 | / TYPES 509 | | .iter() 510 | | .filter(|Type(name, _, _, _)| name == &typename) 511 | | .next() | |_______________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next help: try | 508 ~ TYPES 509 + .iter().find(|Type(name, _, _, _)| name == &typename) |
useless use of `format!`: scanflow-cli/src/cli.rs#L423
warning: useless use of `format!` --> scanflow-cli/src/cli.rs:423:18 | 423 | Some(format!("{}", String::from_utf16_lossy(&vec))) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `String::from_utf16_lossy(&vec).to_string()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format = note: `#[warn(clippy::useless_format)]` on by default
useless use of `format!`: scanflow-cli/src/cli.rs#L423
warning: useless use of `format!` --> scanflow-cli/src/cli.rs:423:18 | 423 | Some(format!("{}", String::from_utf16_lossy(&vec))) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `String::from_utf16_lossy(&vec).to_string()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format = note: `#[warn(clippy::useless_format)]` on by default
`to_string` applied to a type that implements `Display` in `println!` args: scanflow-cli/src/cli.rs#L388
warning: `to_string` applied to a type that implements `Display` in `println!` args --> scanflow-cli/src/cli.rs:388:57 | 388 | println!("Error reading line: {}", e.to_string()); | ^^^^^^^^^^^^ help: remove this | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args = note: `#[warn(clippy::to_string_in_format_args)]` on by default
`to_string` applied to a type that implements `Display` in `println!` args: scanflow-cli/src/cli.rs#L388
warning: `to_string` applied to a type that implements `Display` in `println!` args --> scanflow-cli/src/cli.rs:388:57 | 388 | println!("Error reading line: {}", e.to_string()); | ^^^^^^^^^^^^ help: remove this | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args = note: `#[warn(clippy::to_string_in_format_args)]` on by default
single-character string constant used as pattern: scanflow-cli/src/cli.rs#L353
warning: single-character string constant used as pattern --> scanflow-cli/src/cli.rs:353:36 | 353 | let mut words = args.splitn(3, " "); | ^^^ help: try using a `char` instead: `' '` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern = note: `#[warn(clippy::single_char_pattern)]` on by default
single-character string constant used as pattern: scanflow-cli/src/cli.rs#L353
warning: single-character string constant used as pattern --> scanflow-cli/src/cli.rs:353:36 | 353 | let mut words = args.splitn(3, " "); | ^^^ help: try using a `char` instead: `' '` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern = note: `#[warn(clippy::single_char_pattern)]` on by default
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L104
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:104:48 | 104 | if let Some(Type(_, size, _, _)) = TYPES.iter().filter(|Type(name, _, _, _)| name == &arg).next() { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `TYPES.iter().find(|Type(name, _, _, _)| name == &arg)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next = note: `#[warn(clippy::filter_next)]` on by default
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead: scanflow-cli/src/cli.rs#L104
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead --> scanflow-cli/src/cli.rs:104:48 | 104 | if let Some(Type(_, size, _, _)) = TYPES.iter().filter(|Type(name, _, _, _)| name == &arg).next() { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `TYPES.iter().find(|Type(name, _, _, _)| name == &arg)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next = note: `#[warn(clippy::filter_next)]` on by default
this `else { if .. }` block can be collapsed: scanflow-cli/src/cli.rs#L293
warning: this `else { if .. }` block can be collapsed --> scanflow-cli/src/cli.rs:293:24 | 293 | } else { | ________________________^ 294 | | if let Some((buf, t)) = parse_input(line, &ctx.typename) { 295 | | ctx.buf_len = buf.len(); 296 | | ctx.value_scanner.scan_for(&mut ctx.process, &buf)?; ... | 301 | | } 302 | | } | |_________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_else_if = note: `#[warn(clippy::collapsible_else_if)]` on by default help: collapse nested if block | 293 ~ } else if let Some((buf, t)) = parse_input(line, &ctx.typename) { 294 + ctx.buf_len = buf.len(); 295 + ctx.value_scanner.scan_for(&mut ctx.process, &buf)?; 296 + print_matches(&ctx.value_scanner, &mut ctx.process, ctx.buf_len, &t)?; 297 + ctx.typename = Some(t); 298 + } else { 299 + println!("Invalid input! Use `help` for command reference."); 300 + } |
this `else { if .. }` block can be collapsed: scanflow-cli/src/cli.rs#L293
warning: this `else { if .. }` block can be collapsed --> scanflow-cli/src/cli.rs:293:24 | 293 | } else { | ________________________^ 294 | | if let Some((buf, t)) = parse_input(line, &ctx.typename) { 295 | | ctx.buf_len = buf.len(); 296 | | ctx.value_scanner.scan_for(&mut ctx.process, &buf)?; ... | 301 | | } 302 | | } | |_________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_else_if = note: `#[warn(clippy::collapsible_else_if)]` on by default help: collapse nested if block | 293 ~ } else if let Some((buf, t)) = parse_input(line, &ctx.typename) { 294 + ctx.buf_len = buf.len(); 295 + ctx.value_scanner.scan_for(&mut ctx.process, &buf)?; 296 + print_matches(&ctx.value_scanner, &mut ctx.process, ctx.buf_len, &t)?; 297 + ctx.typename = Some(t); 298 + } else { 299 + println!("Invalid input! Use `help` for command reference."); 300 + } |
replacing a value of type `T` with `T::default()` is better expressed using `std::mem::take`: scanflow/src/value_scanner.rs#L102
warning: replacing a value of type `T` with `T::default()` is better expressed using `std::mem::take` --> scanflow/src/value_scanner.rs:102:31 | 102 | let old_matches = std::mem::replace(&mut self.matches, vec![]); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `std::mem::take(&mut self.matches)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mem_replace_with_default = note: `#[warn(clippy::mem_replace_with_default)]` on by default
useless conversion to the same type: `std::ops::Range<u64>`: scanflow/src/value_scanner.rs#L62
warning: useless conversion to the same type: `std::ops::Range<u64>` --> scanflow/src/value_scanner.rs:62:21 | 62 | / (0..size) 63 | | .into_iter() | |____________________________________^ help: consider removing `.into_iter()`: `(0..size)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/value_scanner.rs#L52
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/value_scanner.rs:52:46 | 52 | .map(|CTup3(size, _, _)| size.to_umem() as u64) | ^^^^^^^^^^^^^^^^^^^^^ help: try: `size.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
replacing a value of type `T` with `T::default()` is better expressed using `std::mem::take`: scanflow/src/value_scanner.rs#L102
warning: replacing a value of type `T` with `T::default()` is better expressed using `std::mem::take` --> scanflow/src/value_scanner.rs:102:31 | 102 | let old_matches = std::mem::replace(&mut self.matches, vec![]); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `std::mem::take(&mut self.matches)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mem_replace_with_default = note: `#[warn(clippy::mem_replace_with_default)]` on by default
useless conversion to the same type: `std::ops::Range<u64>`: scanflow/src/value_scanner.rs#L62
warning: useless conversion to the same type: `std::ops::Range<u64>` --> scanflow/src/value_scanner.rs:62:21 | 62 | / (0..size) 63 | | .into_iter() | |____________________________________^ help: consider removing `.into_iter()`: `(0..size)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/value_scanner.rs#L52
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/value_scanner.rs:52:46 | 52 | .map(|CTup3(size, _, _)| size.to_umem() as u64) | ^^^^^^^^^^^^^^^^^^^^^ help: try: `size.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/sigmaker.rs#L207
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/sigmaker.rs:207:32 | 207 | decoder.set_ip(start_ip.to_umem() as u64); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `start_ip.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/sigmaker.rs#L207
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/sigmaker.rs:207:32 | 207 | decoder.set_ip(start_ip.to_umem() as u64); | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `start_ip.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
this expression creates a reference which is immediately dereferenced by the compiler: scanflow/src/sigmaker.rs#L58
warning: this expression creates a reference which is immediately dereferenced by the compiler --> scanflow/src/sigmaker.rs:58:31 | 58 | Self::mask_branch(&offsets, mask, 1); | ^^^^^^^^ help: change this to: `offsets` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` on by default
this expression creates a reference which is immediately dereferenced by the compiler: scanflow/src/sigmaker.rs#L58
warning: this expression creates a reference which is immediately dereferenced by the compiler --> scanflow/src/sigmaker.rs:58:31 | 58 | Self::mask_branch(&offsets, mask, 1); | ^^^^^^^^ help: change this to: `offsets` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` on by default
this function has too many arguments (10/7): scanflow/src/pointer_map.rs#L135
warning: this function has too many arguments (10/7) --> scanflow/src/pointer_map.rs:135:5 | 135 | / fn walk_down_range( 136 | | &self, 137 | | addr: Address, 138 | | (lrange, urange): (usize, usize), ... | 145 | | (pb_start, pb_end): (f32, f32), 146 | | ) { | |______^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments = note: `#[warn(clippy::too_many_arguments)]` on by default
this function has too many arguments (10/7): scanflow/src/pointer_map.rs#L135
warning: this function has too many arguments (10/7) --> scanflow/src/pointer_map.rs:135:5 | 135 | / fn walk_down_range( 136 | | &self, 137 | | addr: Address, 138 | | (lrange, urange): (usize, usize), ... | 145 | | (pb_start, pb_end): (f32, f32), 146 | | ) { | |______^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments = note: `#[warn(clippy::too_many_arguments)]` on by default
useless conversion to the same type: `std::ops::Range<u64>`: scanflow/src/pointer_map.rs#L61
warning: useless conversion to the same type: `std::ops::Range<u64>` --> scanflow/src/pointer_map.rs:61:17 | 61 | / (0..size) 62 | | .into_iter() | |________________________________^ help: consider removing `.into_iter()`: `(0..size)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion = note: `#[warn(clippy::useless_conversion)]` on by default
useless conversion to the same type: `std::ops::Range<u64>`: scanflow/src/pointer_map.rs#L61
warning: useless conversion to the same type: `std::ops::Range<u64>` --> scanflow/src/pointer_map.rs:61:17 | 61 | / (0..size) 62 | | .into_iter() | |________________________________^ help: consider removing `.into_iter()`: `(0..size)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion = note: `#[warn(clippy::useless_conversion)]` on by default
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/pointer_map.rs#L51
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/pointer_map.rs:51:42 | 51 | .map(|CTup3(_, size, _)| size.to_umem() as u64) | ^^^^^^^^^^^^^^^^^^^^^ help: try: `size.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/pointer_map.rs#L51
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/pointer_map.rs:51:42 | 51 | .map(|CTup3(_, size, _)| size.to_umem() as u64) | ^^^^^^^^^^^^^^^^^^^^^ help: try: `size.to_umem()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L122
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:122:28 | 122 | pb.add(m.size as u64); | ^^^^^^^^^^^^^ help: try: `m.size` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L122
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:122:28 | 122 | pb.add(m.size as u64); | ^^^^^^^^^^^^^ help: try: `m.size` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L94
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:94:52 | 94 | ... decoder.set_ip(addr as u64); | ^^^^^^^^^^^ help: try: `addr` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L94
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:94:52 | 94 | ... decoder.set_ip(addr as u64); | ^^^^^^^^^^^ help: try: `addr` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L47
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:47:51 | 47 | let pb = PBar::new(modules.iter().map(|m| m.size as u64).sum::<u64>(), true); | ^^^^^^^^^^^^^ help: try: `m.size` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast = note: `#[warn(clippy::unnecessary_cast)]` on by default
casting to the same type is unnecessary (`u64` -> `u64`): scanflow/src/disasm.rs#L47
warning: casting to the same type is unnecessary (`u64` -> `u64`) --> scanflow/src/disasm.rs:47:51 | 47 | let pb = PBar::new(modules.iter().map(|m| m.size as u64).sum::<u64>(), true); | ^^^^^^^^^^^^^ help: try: `m.size` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast = note: `#[warn(clippy::unnecessary_cast)]` on by default
redundant closure: scanflow/src/disasm.rs#L45
warning: redundant closure --> scanflow/src/disasm.rs:45:44 | 45 | let sections = ThreadLocalCtx::new(|| Vec::<SectionInfo>::new()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `Vec::<SectionInfo>::new` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure = note: `#[warn(clippy::redundant_closure)]` on by default
redundant closure: scanflow/src/disasm.rs#L45
warning: redundant closure --> scanflow/src/disasm.rs:45:44 | 45 | let sections = ThreadLocalCtx::new(|| Vec::<SectionInfo>::new()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `Vec::<SectionInfo>::new` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure = note: `#[warn(clippy::redundant_closure)]` on by default
test (macos-latest)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
test-cross-aarch64
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions-rs/toolchain@v1, actions-rs/cargo@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
test-cross-aarch64
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
test-cross-aarch64
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
test-cross-aarch64
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
test-cross-aarch64
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
build-cross-aarch64
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions-rs/toolchain@v1, actions-rs/cargo@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
build-cross-aarch64
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
build-cross-aarch64
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
build-cross-aarch64
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
build-cross-aarch64
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
test (windows-latest)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/