Skip to content

Dependency Management #71

Dependency Management

Dependency Management #71

GitHub Actions / Clippy Output succeeded Sep 20, 2024 in 0s

Clippy Output

13 warnings

Details

Results

Message level Amount
Internal compiler error 0
Error 0
Warning 13
Note 0
Help 0

Versions

  • rustc 1.81.0 (eeb90cda1 2024-09-04)
  • cargo 1.81.0 (2dbb1af80 2024-08-20)
  • clippy 0.1.81 (eeb90cd 2024-09-04)

Annotations

Check warning on line 303 in src/package/management.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

this expression creates a reference which is immediately dereferenced by the compiler

warning: this expression creates a reference which is immediately dereferenced by the compiler
   --> src/package/management.rs:303:32
    |
303 |                     value.push(&node);
    |                                ^^^^^ help: change this to: `node`
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow

Check warning on line 271 in src/package/management.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

this lifetime isn't used in the function definition

warning: this lifetime isn't used in the function definition
   --> src/package/management.rs:271:16
    |
271 |     fn flatten<'a>(root_nodes: Vec<DependencyTreeNode>) -> anyhow::Result<Vec<DependencyTreeNode>> {
    |                ^^
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
    = note: `#[warn(clippy::extra_unused_lifetimes)]` on by default

Check warning on line 217 in src/package/management.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

the borrowed expression implements the required traits

warning: the borrowed expression implements the required traits
   --> src/package/management.rs:217:28
    |
217 |         fs::create_dir_all(&library_path)?;
    |                            ^^^^^^^^^^^^^ help: change this to: `library_path`
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args

Check warning on line 111 in src/package/management.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

writing `&PathBuf` instead of `&Path` involves a new object where a slice will do

warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do
   --> src/package/management.rs:111:22
    |
111 |         target_path: &PathBuf,
    |                      ^^^^^^^^
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg
help: change this to
    |
111 ~         target_path: &Path,
112 |     ) -> anyhow::Result<DependencyManager> {
113 |         // create library folder
114 ~         let library_path = target_path.to_path_buf().join(LIBRARY_DIRECTORY);
115 |         fs::create_dir_all(&library_path)?;
...
118 |         let mut lock: DependencyLock;
119 ~         let lock_file = target_path.to_path_buf().join("../Lingo.lock");
120 |
...
128 |             // integrity of the build directory
129 ~             if let Ok(()) = lock.init(&target_path.to_path_buf().join("lfc_include")) {
130 |                 return Ok(DependencyManager {
...
155 |         // moves the selected packages into the include folder
156 ~         let include_folder = target_path.to_path_buf().join("lfc_include");
    |

Check warning on line 87 in src/package/management.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

this expression creates a reference which is immediately dereferenced by the compiler

warning: this expression creates a reference which is immediately dereferenced by the compiler
  --> src/package/management.rs:87:65
   |
87 |                     let (object, reference) = repo.revparse_ext(&name)?;
   |                                                                 ^^^^^ help: change this to: `name`
   |
   = 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

Check warning on line 61 in src/package/management.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

redundant closure

warning: redundant closure
  --> src/package/management.rs:61:44
   |
61 |             git_tag: value.rev.clone().map(|rev| GitLock::Rev(rev)),
   |                                            ^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `GitLock::Rev`
   |
   = 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

Check warning on line 286 in src/package/lock.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

unneeded `return` statement

warning: unneeded `return` statement
   --> src/package/lock.rs:286:9
    |
286 |         return Ok(i);
    |         ^^^^^^^^^^^^
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return
help: remove `return`
    |
286 -         return Ok(i);
286 +         Ok(i)
    |

Check warning on line 266 in src/package/lock.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

writing `&PathBuf` instead of `&Path` involves a new object where a slice will do

warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do
   --> src/package/lock.rs:266:22
    |
266 |         source_path: &PathBuf,
    |                      ^^^^^^^^
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg
    = note: `#[warn(clippy::ptr_arg)]` on by default
help: change this to
    |
266 ~         source_path: &Path,
267 |         target_path: &PathBuf,
...
270 |         for (_, dep) in self.dependencies.iter() {
271 ~             let local_source = source_path.to_path_buf().join(&dep.checksum);
    |

Check warning on line 277 in src/package/lock.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

unneeded `return` statement

warning: unneeded `return` statement
   --> src/package/lock.rs:277:9
    |
277 |         return Ok(());
    |         ^^^^^^^^^^^^^
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return
    = note: `#[warn(clippy::needless_return)]` on by default
help: remove `return`
    |
277 -         return Ok(());
277 +         Ok(())
    |

Check warning on line 223 in src/package/lock.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

the borrowed expression implements the required traits

warning: the borrowed expression implements the required traits
   --> src/package/lock.rs:223:54
    |
223 |             let lingo_toml_text = fs::read_to_string(&temp.join("Lingo.toml"))?;
    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `temp.join("Lingo.toml")`
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
    = note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default

Check warning on line 51 in src/backends/mod.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let`

warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let`
  --> src/backends/mod.rs:26:5
   |
26 | /     match command {
27 | |         CommandSpec::Build(_build) => {
28 | |             let manager = match DependencyManager::from_dependencies(
29 | |                 dependencies.clone(),
...  |
50 | |         _ => {}
51 | |     }
   | |_____^
   |
   = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match
   = note: `#[warn(clippy::single_match)]` on by default
help: try
   |
26 ~     if let CommandSpec::Build(_build) = command {
27 +         let manager = match DependencyManager::from_dependencies(
28 +             dependencies.clone(),
29 +             &PathBuf::from(OUTPUT_DIRECTORY),
30 +         ) {
31 +             Ok(value) => value,
32 +             Err(e) => {
33 +                 error!("failed to create dependency manager because of {e}");
34 +                 return result;
35 +             }
36 +         };
37 + 
38 +         // enriching the apps with the target properties from the libraries
39 +         let library_properties = manager.get_target_properties().expect("lib properties");
40 + 
41 +         // merging app with library target properties
42 +         for app in &mut config.apps {
43 +             if let Err(e) = app.properties.merge(&library_properties) {
44 +                 error!("cannot merge properties from the libraries with the app. error: {e}");
45 +                 return result;
46 +             }
47 +         }
48 +     }
   |

Check warning on line 24 in src/backends/mod.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

explicit call to `.into_iter()` in function argument accepting `IntoIterator`

warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
  --> src/backends/mod.rs:24:39
   |
24 |     let dependencies = Vec::from_iter(config.dependencies.clone().into_iter());
   |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `config.dependencies.clone()`
   |
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
  --> /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/iter/traits/collect.rs:152:21
   = 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

Check warning on line 34 in src/backends/cmake_c.rs

See this annotation in the file changed.

@github-actions github-actions / Clippy Output

deref on an immutable reference

warning: deref on an immutable reference
  --> src/backends/cmake_c.rs:34:16
   |
34 |     content += &*include_statement;
   |                ^^^^^^^^^^^^^^^^^^^ help: if you would like to reborrow, try removing `&*`: `include_statement`
   |
   = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrow_deref_ref
   = note: `#[warn(clippy::borrow_deref_ref)]` on by default