Skip to content

[demos] Add info "tab" to GUI, and show in it the names of the object… #248

[demos] Add info "tab" to GUI, and show in it the names of the object…

[demos] Add info "tab" to GUI, and show in it the names of the object… #248

Triggered via push May 20, 2024 15:44
Status Success
Total duration 17m 42s
Artifacts

ci.yml

on: push
Matrix: Tests
Update Docs and Demos in GitHub Pages
14m 42s
Update Docs and Demos in GitHub Pages
Rustfmt
4s
Rustfmt
Fit to window
Zoom out
Zoom in

Annotations

178 warnings
Rustfmt
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, actions-rs/toolchain@v1, actions-rs/cargo@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Rustfmt
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/
Rustfmt
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/
Rustfmt
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/
Rustfmt
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/
Rustfmt
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/
using `clone` on type `ThingToShow` which implements the `Copy` trait: demos/src/ui/mod.rs#L216
warning: using `clone` on type `ThingToShow` which implements the `Copy` trait --> demos/src/ui/mod.rs:216:57 | 216 | let mut thing_to_show = ui.memory_mut(|mem| mem.data.get_temp_mut_or_default::<ThingToShow>(thing_to_show_id).clone()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*mem.data.get_temp_mut_or_default::<ThingToShow>(thing_to_show_id)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy = note: `#[warn(clippy::clone_on_copy)]` on by default
associated function `make_system` is never used: demos/src/moving_platform.rs#L63
warning: associated function `make_system` is never used --> demos/src/moving_platform.rs:63:8 | 54 | impl MovingPlatform { | ------------------- associated function in this implementation ... 63 | fn make_system<V: Component>( | ^^^^^^^^^^^ | = note: `#[warn(dead_code)]` on by default
unused variable: `setting_from_ui`: demos/src/ui/mod.rs#L292
warning: unused variable: `setting_from_ui` --> demos/src/ui/mod.rs:292:5 | 292 | setting_from_ui: Res<DemoUiPhysicsBackendActive>, | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_setting_from_ui`
unused variable: `app`: demos/src/moving_platform.rs#L7
warning: unused variable: `app` --> demos/src/moving_platform.rs:7:21 | 7 | fn build(&self, app: &mut App) { | ^^^ help: if this is intentional, prefix it with an underscore: `_app` | = note: `#[warn(unused_variables)]` on by default
returning the result of a `let` binding from a block: demos/src/bin/shooter_like.rs#L362
warning: returning the result of a `let` binding from a block --> demos/src/bin/shooter_like.rs:362:9 | 245 | / let command_altering_selectors = CommandAlteringSelectors::default() 246 | | // By default Tnua uses a raycast, but this could be a problem if the character stands 247 | | // just past the edge while part of its body is above the platform. To solve this, we 248 | | // need to cast a shape - which is physics-engine specific. We set the shape using a ... | 342 | | }, 343 | | ); | |______________- unnecessary `let` binding ... 362 | command_altering_selectors | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return = note: `#[warn(clippy::let_and_return)]` on by default help: return the expression directly | 245 ~ 246 | #[cfg(feature = "rapier3d")] ... 263 | ); 264 ~ CommandAlteringSelectors::default() 265 + // By default Tnua uses a raycast, but this could be a problem if the character stands 266 + // just past the edge while part of its body is above the platform. To solve this, we 267 + // need to cast a shape - which is physics-engine specific. We set the shape using a 268 + // component. 269 + .with_combo( 270 + "Sensor Shape", 271 + 1, 272 + &[ 273 + ("no", |mut cmd| { 274 + #[cfg(feature = "rapier3d")] 275 + cmd.remove::<TnuaRapier3dSensorShape>(); 276 + #[cfg(feature = "xpbd3d")] 277 + cmd.remove::<TnuaXpbd3dSensorShape>(); 278 + }), 279 + ("flat (underfit)", |mut cmd| { 280 + #[cfg(feature = "rapier3d")] 281 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 282 + 0.0, 0.49, 283 + ))); 284 + #[cfg(feature = "xpbd3d")] 285 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.49))); 286 + }), 287 + ("flat (exact)", |mut cmd| { 288 + #[cfg(feature = "rapier3d")] 289 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 290 + 0.0, 0.5, 291 + ))); 292 + #[cfg(feature = "xpbd3d")] 293 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.5))); 294 + }), 295 + ("flat (overfit)", |mut cmd| { 296 + #[cfg(feature = "rapier3d")] 297 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 298 + 0.0, 0.51, 299 + ))); 300 + #[cfg(feature = "xpbd3d")] 301 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.51))); 302 + }), 303 + ("ball (underfit)", |mut cmd| { 304 + #[cfg(feature = "rapier3d")] 305 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::ball(0.49))); 306 + #[cfg(feature = "xpbd3d")] 307 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::sphere(0.49))); 308 + }), 309 + ("ball (exact)", |mut cmd| { 310 + #[cfg(feature = "rapier3d")] 311 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::ball(0.5))); 312 + #[cfg(feature = "xpbd3d")] 313 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::sphere(0.5))); 314 + }), 315 + ], 316 + ) 317 + .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { 318 + // Tnua will automatically apply angular impulses/forces to fix the tilt and make 319 + // the character stand upward, but it is also possible to just let the physics 320 + // engine prevent rotation (other than around the Y axis, for turning) 321 + if lock_tilt { 322 + #[cfg(feature = "rapier3d")] 323 + cmd.insert( 324 + rapier::LockedAxes::ROTATION_LOCKED_X 325 + | rapier::LockedAxes::ROTATION_LOCKED_Z, 326 + ); 327 + #[cfg(feature = "xpbd3d")] 328 + cmd.insert(xpbd::LockedAxes::new().lock_rotation_x().lock_rotation_z()); 329 + } else { 330 + #[cfg(feature = "rapier3d")] 331 + cmd.insert(rapier::LockedAxes::empty()); 332 + #[cfg(feature = "xpbd3d")] 333 + cmd.insert(xpbd::LockedAxes::new()); 334 + } 335 + }) 336 + .with_checkbox( 337 + "Phase Through Collision Groups", 338 + true, 339 + |mut cmd, use_collision_groups| { 340 + #[cfg(feature = "rapier3d")] 341 + if use_collision_groups { 342 + cmd.insert(CollisionGroups { 343 + memberships: Group::GROUP_2, 344 + filters: Group::GROUP_2, 345 + }); 346 + } else { 347 + cmd.insert(CollisionGroups { 348 + memberships: Group::ALL, 349 + filters: Group::ALL, 350 + }); 351 + } 352 + #[cfg(feature = "xpbd3d")] 353 + { 354 + let player_layers: LayerMask = if use_collision_groups { 355 + [LayerNames::Player].into() 356 + } else { 357 + [LayerNames::Player, LayerNames::PhaseThrough].into() 358 + }; 359 + cmd.insert(CollisionLayers::new(player_layers, player_layers)); 360 + } 361 + }, 362 + ) |
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L320
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:320:18 | 320 | |mut cmd, use_collision_groups| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L298
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:298:48 | 298 | .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L290
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:290:39 | 290 | ("ball (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L284
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:284:42 | 284 | ("ball (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L276
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:276:41 | 276 | ("flat (overfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L268
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:268:39 | 268 | ("flat (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L260
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:260:42 | 260 | ("flat (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L254
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:254:29 | 254 | ("no", |mut cmd| { | ----^^^ | | | help: remove this `mut` | = note: `#[warn(unused_mut)]` on by default
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L366
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:366:59 | 366 | cmd.insert(TnuaCrouchEnforcer::new(0.5 * Vector3::Y, |cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `use_collision_groups`: demos/src/bin/shooter_like.rs#L320
warning: unused variable: `use_collision_groups` --> demos/src/bin/shooter_like.rs:320:27 | 320 | |mut cmd, use_collision_groups| { | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_use_collision_groups`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L320
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:320:22 | 320 | |mut cmd, use_collision_groups| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L298
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:298:52 | 298 | .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L290
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:290:43 | 290 | ("ball (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L284
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:284:46 | 284 | ("ball (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L276
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:276:45 | 276 | ("flat (overfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L268
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:268:43 | 268 | ("flat (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L260
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:260:46 | 260 | ("flat (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L254
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:254:33 | 254 | ("no", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` | = note: `#[warn(unused_variables)]` on by default
unused import: `make_update_plot_data_system`: demos/src/ui/mod.rs#L23
warning: unused import: `make_update_plot_data_system` --> demos/src/ui/mod.rs:23:22 | 23 | use self::plotting::{make_update_plot_data_system, plot_source_rolling_update}; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
returning the result of a `let` binding from a block: demos/src/bin/platformer_2d.rs#L324
warning: returning the result of a `let` binding from a block --> demos/src/bin/platformer_2d.rs:324:9 | 214 | / let command_altering_selectors = CommandAlteringSelectors::default() 215 | | // By default Tnua uses a raycast, but this could be a problem if the character stands 216 | | // just past the edge while part of its body is above the platform. To solve this, we 217 | | // need to cast a shape - which is physics-engine specific. We set the shape using a ... | 302 | | }, 303 | | ); | |______________- unnecessary `let` binding ... 324 | command_altering_selectors | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return = note: `#[warn(clippy::let_and_return)]` on by default help: return the expression directly | 214 ~ 215 | #[cfg(feature = "rapier2d")] ... 234 | ); 235 ~ CommandAlteringSelectors::default() 236 + // By default Tnua uses a raycast, but this could be a problem if the character stands 237 + // just past the edge while part of its body is above the platform. To solve this, we 238 + // need to cast a shape - which is physics-engine specific. We set the shape using a 239 + // component. 240 + .with_combo( 241 + "Sensor Shape", 242 + 1, 243 + &[ 244 + ("Point", |mut cmd| { 245 + #[cfg(feature = "rapier2d")] 246 + cmd.remove::<TnuaRapier2dSensorShape>(); 247 + #[cfg(feature = "xpbd2d")] 248 + cmd.remove::<TnuaXpbd2dSensorShape>(); 249 + }), 250 + ("Flat (underfit)", |mut cmd| { 251 + #[cfg(feature = "rapier2d")] 252 + cmd.insert(TnuaRapier2dSensorShape(rapier::Collider::cuboid(0.49, 0.0))); 253 + #[cfg(feature = "xpbd2d")] 254 + cmd.insert(TnuaXpbd2dSensorShape(xpbd::Collider::rectangle(0.99, 0.0))); 255 + }), 256 + ("Flat (exact)", |mut cmd| { 257 + #[cfg(feature = "rapier2d")] 258 + cmd.insert(TnuaRapier2dSensorShape(rapier::Collider::cuboid(0.5, 0.0))); 259 + #[cfg(feature = "xpbd2d")] 260 + cmd.insert(TnuaXpbd2dSensorShape(xpbd::Collider::rectangle(1.0, 0.0))); 261 + }), 262 + ("flat (overfit)", |mut cmd| { 263 + #[cfg(feature = "rapier2d")] 264 + cmd.insert(TnuaRapier2dSensorShape(rapier::Collider::cuboid(0.51, 0.0))); 265 + #[cfg(feature = "xpbd2d")] 266 + cmd.insert(TnuaXpbd2dSensorShape(xpbd::Collider::rectangle(1.01, 0.0))); 267 + }), 268 + ("Ball (underfit)", |mut cmd| { 269 + #[cfg(feature = "rapier2d")] 270 + cmd.insert(TnuaRapier2dSensorShape(rapier::Collider::ball(0.49))); 271 + #[cfg(feature = "xpbd2d")] 272 + cmd.insert(TnuaXpbd2dSensorShape(xpbd::Collider::circle(0.49))); 273 + }), 274 + ("Ball (exact)", |mut cmd| { 275 + #[cfg(feature = "rapier2d")] 276 + cmd.insert(TnuaRapier2dSensorShape(rapier::Collider::ball(0.5))); 277 + #[cfg(feature = "xpbd2d")] 278 + cmd.insert(TnuaXpbd2dSensorShape(xpbd::Collider::circle(0.5))); 279 + }), 280 + ], 281 + ) 282 + .with_checkbox("Lock Tilt", false, |mut cmd, lock_tilt| { 283 + // Tnua will automatically apply angular impulses/forces to fix the tilt and make 284 + // the character stand upward, but it is also possible to just let the physics 285 + // engine prevent rotation (other than around the Y axis, for turning) 286 + if lock_tilt { 287 + #[cfg(feature = "rapier2d")] 288 + cmd.insert(rapier::LockedAxes::ROTATION_LOCKED); 289 + #[cfg(feature = "xpbd2d")] 290 + cmd.insert(xpbd::LockedAxes::new().lock_rotation()); 291 + } else { 292 + #[cfg(feature = "rapier2d")] 293 + cmd.insert(rapier::LockedAxes::empty()); 294 + #[cfg(feature = "xpbd2d")] 295 + cmd.insert(xpbd::LockedAxes::new()); 296 + } 297 + }) 298 + .with_checkbox( 299 + "Phase Through Collision Groups", 300 + true, 301 + |mut cmd, use_collision_groups| { 302 + #[cfg(feature = "rapier2d")] 303 + if use_collision_groups { 304 + cmd.insert(CollisionGroups { 305 + memberships: Group::GROUP_2, 306 + filters: Group::GROUP_2, 307 + }); 308 + } else { 309 + cmd.insert(CollisionGroups { 310 + memberships: Group::ALL, 311 + filters: Group::ALL, 312 + }); 313 + } 314 + #[cfg(feature = "xpbd2d")] 315 + { 316 + let player_layers: LayerMask = if use_collision_groups { 317 + [LayerNames::Player].into() 318 + } else { 319 + [LayerNames::Player, LayerNames::PhaseThrough].into() 320 + }; 321 + cmd.insert(CollisionLayers::new(player_layers, player_layers)); 322 + } 323 + }, 324 + ) |
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L280
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:280:18 | 280 | |mut cmd, use_collision_groups| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L261
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:261:49 | 261 | .with_checkbox("Lock Tilt", false, |mut cmd, lock_tilt| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L253
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:253:39 | 253 | ("Ball (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L247
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:247:42 | 247 | ("Ball (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L241
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:241:41 | 241 | ("flat (overfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L235
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:235:39 | 235 | ("Flat (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L229
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:229:42 | 229 | ("Flat (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L223
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:223:32 | 223 | ("Point", |mut cmd| { | ----^^^ | | | help: remove this `mut` | = note: `#[warn(unused_mut)]` on by default
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L328
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:328:59 | 328 | cmd.insert(TnuaCrouchEnforcer::new(0.5 * Vector3::Y, |cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `use_collision_groups`: demos/src/bin/platformer_2d.rs#L280
warning: unused variable: `use_collision_groups` --> demos/src/bin/platformer_2d.rs:280:27 | 280 | |mut cmd, use_collision_groups| { | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_use_collision_groups`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L280
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:280:22 | 280 | |mut cmd, use_collision_groups| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L261
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:261:53 | 261 | .with_checkbox("Lock Tilt", false, |mut cmd, lock_tilt| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L253
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:253:43 | 253 | ("Ball (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L247
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:247:46 | 247 | ("Ball (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L241
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:241:45 | 241 | ("flat (overfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L235
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:235:43 | 235 | ("Flat (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L229
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:229:46 | 229 | ("Flat (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L223
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:223:36 | 223 | ("Point", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` | = note: `#[warn(unused_variables)]` on by default
returning the result of a `let` binding from a block: demos/src/bin/platformer_2d.rs#L324
warning: returning the result of a `let` binding from a block --> demos/src/bin/platformer_2d.rs:324:9 | 214 | / let command_altering_selectors = CommandAlteringSelectors::default() 215 | | // By default Tnua uses a raycast, but this could be a problem if the character stands 216 | | // just past the edge while part of its body is above the platform. To solve this, we 217 | | // need to cast a shape - which is physics-engine specific. We set the shape using a ... | 302 | | }, 303 | | ); | |______________- unnecessary `let` binding ... 324 | command_altering_selectors | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return = note: `#[warn(clippy::let_and_return)]` on by default help: return the expression directly | 214 ~ 215 | #[cfg(feature = "rapier2d")] ... 234 | ); 235 ~ CommandAlteringSelectors::default() 236 + // By default Tnua uses a raycast, but this could be a problem if the character stands 237 + // just past the edge while part of its body is above the platform. To solve this, we 238 + // need to cast a shape - which is physics-engine specific. We set the shape using a 239 + // component. 240 + .with_combo( 241 + "Sensor Shape", 242 + 1, 243 + &[ 244 + ("Point", |mut cmd| { 245 + #[cfg(feature = "rapier2d")] 246 + cmd.remove::<TnuaRapier2dSensorShape>(); 247 + #[cfg(feature = "xpbd2d")] 248 + cmd.remove::<TnuaXpbd2dSensorShape>(); 249 + }), 250 + ("Flat (underfit)", |mut cmd| { 251 + #[cfg(feature = "rapier2d")] 252 + cmd.insert(TnuaRapier2dSensorShape(rapier::Collider::cuboid(0.49, 0.0))); 253 + #[cfg(feature = "xpbd2d")] 254 + cmd.insert(TnuaXpbd2dSensorShape(xpbd::Collider::rectangle(0.99, 0.0))); 255 + }), 256 + ("Flat (exact)", |mut cmd| { 257 + #[cfg(feature = "rapier2d")] 258 + cmd.insert(TnuaRapier2dSensorShape(rapier::Collider::cuboid(0.5, 0.0))); 259 + #[cfg(feature = "xpbd2d")] 260 + cmd.insert(TnuaXpbd2dSensorShape(xpbd::Collider::rectangle(1.0, 0.0))); 261 + }), 262 + ("flat (overfit)", |mut cmd| { 263 + #[cfg(feature = "rapier2d")] 264 + cmd.insert(TnuaRapier2dSensorShape(rapier::Collider::cuboid(0.51, 0.0))); 265 + #[cfg(feature = "xpbd2d")] 266 + cmd.insert(TnuaXpbd2dSensorShape(xpbd::Collider::rectangle(1.01, 0.0))); 267 + }), 268 + ("Ball (underfit)", |mut cmd| { 269 + #[cfg(feature = "rapier2d")] 270 + cmd.insert(TnuaRapier2dSensorShape(rapier::Collider::ball(0.49))); 271 + #[cfg(feature = "xpbd2d")] 272 + cmd.insert(TnuaXpbd2dSensorShape(xpbd::Collider::circle(0.49))); 273 + }), 274 + ("Ball (exact)", |mut cmd| { 275 + #[cfg(feature = "rapier2d")] 276 + cmd.insert(TnuaRapier2dSensorShape(rapier::Collider::ball(0.5))); 277 + #[cfg(feature = "xpbd2d")] 278 + cmd.insert(TnuaXpbd2dSensorShape(xpbd::Collider::circle(0.5))); 279 + }), 280 + ], 281 + ) 282 + .with_checkbox("Lock Tilt", false, |mut cmd, lock_tilt| { 283 + // Tnua will automatically apply angular impulses/forces to fix the tilt and make 284 + // the character stand upward, but it is also possible to just let the physics 285 + // engine prevent rotation (other than around the Y axis, for turning) 286 + if lock_tilt { 287 + #[cfg(feature = "rapier2d")] 288 + cmd.insert(rapier::LockedAxes::ROTATION_LOCKED); 289 + #[cfg(feature = "xpbd2d")] 290 + cmd.insert(xpbd::LockedAxes::new().lock_rotation()); 291 + } else { 292 + #[cfg(feature = "rapier2d")] 293 + cmd.insert(rapier::LockedAxes::empty()); 294 + #[cfg(feature = "xpbd2d")] 295 + cmd.insert(xpbd::LockedAxes::new()); 296 + } 297 + }) 298 + .with_checkbox( 299 + "Phase Through Collision Groups", 300 + true, 301 + |mut cmd, use_collision_groups| { 302 + #[cfg(feature = "rapier2d")] 303 + if use_collision_groups { 304 + cmd.insert(CollisionGroups { 305 + memberships: Group::GROUP_2, 306 + filters: Group::GROUP_2, 307 + }); 308 + } else { 309 + cmd.insert(CollisionGroups { 310 + memberships: Group::ALL, 311 + filters: Group::ALL, 312 + }); 313 + } 314 + #[cfg(feature = "xpbd2d")] 315 + { 316 + let player_layers: LayerMask = if use_collision_groups { 317 + [LayerNames::Player].into() 318 + } else { 319 + [LayerNames::Player, LayerNames::PhaseThrough].into() 320 + }; 321 + cmd.insert(CollisionLayers::new(player_layers, player_layers)); 322 + } 323 + }, 324 + ) |
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L280
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:280:18 | 280 | |mut cmd, use_collision_groups| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L261
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:261:49 | 261 | .with_checkbox("Lock Tilt", false, |mut cmd, lock_tilt| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L253
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:253:39 | 253 | ("Ball (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L247
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:247:42 | 247 | ("Ball (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L241
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:241:41 | 241 | ("flat (overfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L235
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:235:39 | 235 | ("Flat (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L229
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:229:42 | 229 | ("Flat (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_2d.rs#L223
warning: variable does not need to be mutable --> demos/src/bin/platformer_2d.rs:223:32 | 223 | ("Point", |mut cmd| { | ----^^^ | | | help: remove this `mut` | = note: `#[warn(unused_mut)]` on by default
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L328
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:328:59 | 328 | cmd.insert(TnuaCrouchEnforcer::new(0.5 * Vector3::Y, |cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `use_collision_groups`: demos/src/bin/platformer_2d.rs#L280
warning: unused variable: `use_collision_groups` --> demos/src/bin/platformer_2d.rs:280:27 | 280 | |mut cmd, use_collision_groups| { | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_use_collision_groups`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L280
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:280:22 | 280 | |mut cmd, use_collision_groups| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L261
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:261:53 | 261 | .with_checkbox("Lock Tilt", false, |mut cmd, lock_tilt| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L253
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:253:43 | 253 | ("Ball (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L247
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:247:46 | 247 | ("Ball (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L241
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:241:45 | 241 | ("flat (overfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L235
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:235:43 | 235 | ("Flat (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L229
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:229:46 | 229 | ("Flat (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_2d.rs#L223
warning: unused variable: `cmd` --> demos/src/bin/platformer_2d.rs:223:36 | 223 | ("Point", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` | = note: `#[warn(unused_variables)]` on by default
returning the result of a `let` binding from a block: demos/src/bin/shooter_like.rs#L362
warning: returning the result of a `let` binding from a block --> demos/src/bin/shooter_like.rs:362:9 | 245 | / let command_altering_selectors = CommandAlteringSelectors::default() 246 | | // By default Tnua uses a raycast, but this could be a problem if the character stands 247 | | // just past the edge while part of its body is above the platform. To solve this, we 248 | | // need to cast a shape - which is physics-engine specific. We set the shape using a ... | 342 | | }, 343 | | ); | |______________- unnecessary `let` binding ... 362 | command_altering_selectors | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return = note: `#[warn(clippy::let_and_return)]` on by default help: return the expression directly | 245 ~ 246 | #[cfg(feature = "rapier3d")] ... 263 | ); 264 ~ CommandAlteringSelectors::default() 265 + // By default Tnua uses a raycast, but this could be a problem if the character stands 266 + // just past the edge while part of its body is above the platform. To solve this, we 267 + // need to cast a shape - which is physics-engine specific. We set the shape using a 268 + // component. 269 + .with_combo( 270 + "Sensor Shape", 271 + 1, 272 + &[ 273 + ("no", |mut cmd| { 274 + #[cfg(feature = "rapier3d")] 275 + cmd.remove::<TnuaRapier3dSensorShape>(); 276 + #[cfg(feature = "xpbd3d")] 277 + cmd.remove::<TnuaXpbd3dSensorShape>(); 278 + }), 279 + ("flat (underfit)", |mut cmd| { 280 + #[cfg(feature = "rapier3d")] 281 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 282 + 0.0, 0.49, 283 + ))); 284 + #[cfg(feature = "xpbd3d")] 285 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.49))); 286 + }), 287 + ("flat (exact)", |mut cmd| { 288 + #[cfg(feature = "rapier3d")] 289 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 290 + 0.0, 0.5, 291 + ))); 292 + #[cfg(feature = "xpbd3d")] 293 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.5))); 294 + }), 295 + ("flat (overfit)", |mut cmd| { 296 + #[cfg(feature = "rapier3d")] 297 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 298 + 0.0, 0.51, 299 + ))); 300 + #[cfg(feature = "xpbd3d")] 301 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.51))); 302 + }), 303 + ("ball (underfit)", |mut cmd| { 304 + #[cfg(feature = "rapier3d")] 305 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::ball(0.49))); 306 + #[cfg(feature = "xpbd3d")] 307 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::sphere(0.49))); 308 + }), 309 + ("ball (exact)", |mut cmd| { 310 + #[cfg(feature = "rapier3d")] 311 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::ball(0.5))); 312 + #[cfg(feature = "xpbd3d")] 313 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::sphere(0.5))); 314 + }), 315 + ], 316 + ) 317 + .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { 318 + // Tnua will automatically apply angular impulses/forces to fix the tilt and make 319 + // the character stand upward, but it is also possible to just let the physics 320 + // engine prevent rotation (other than around the Y axis, for turning) 321 + if lock_tilt { 322 + #[cfg(feature = "rapier3d")] 323 + cmd.insert( 324 + rapier::LockedAxes::ROTATION_LOCKED_X 325 + | rapier::LockedAxes::ROTATION_LOCKED_Z, 326 + ); 327 + #[cfg(feature = "xpbd3d")] 328 + cmd.insert(xpbd::LockedAxes::new().lock_rotation_x().lock_rotation_z()); 329 + } else { 330 + #[cfg(feature = "rapier3d")] 331 + cmd.insert(rapier::LockedAxes::empty()); 332 + #[cfg(feature = "xpbd3d")] 333 + cmd.insert(xpbd::LockedAxes::new()); 334 + } 335 + }) 336 + .with_checkbox( 337 + "Phase Through Collision Groups", 338 + true, 339 + |mut cmd, use_collision_groups| { 340 + #[cfg(feature = "rapier3d")] 341 + if use_collision_groups { 342 + cmd.insert(CollisionGroups { 343 + memberships: Group::GROUP_2, 344 + filters: Group::GROUP_2, 345 + }); 346 + } else { 347 + cmd.insert(CollisionGroups { 348 + memberships: Group::ALL, 349 + filters: Group::ALL, 350 + }); 351 + } 352 + #[cfg(feature = "xpbd3d")] 353 + { 354 + let player_layers: LayerMask = if use_collision_groups { 355 + [LayerNames::Player].into() 356 + } else { 357 + [LayerNames::Player, LayerNames::PhaseThrough].into() 358 + }; 359 + cmd.insert(CollisionLayers::new(player_layers, player_layers)); 360 + } 361 + }, 362 + ) |
returning the result of a `let` binding from a block: demos/src/bin/platformer_3d.rs#L348
warning: returning the result of a `let` binding from a block --> demos/src/bin/platformer_3d.rs:348:9 | 231 | / let command_altering_selectors = CommandAlteringSelectors::default() 232 | | // By default Tnua uses a raycast, but this could be a problem if the character stands 233 | | // just past the edge while part of its body is above the platform. To solve this, we 234 | | // need to cast a shape - which is physics-engine specific. We set the shape using a ... | 328 | | }, 329 | | ); | |______________- unnecessary `let` binding ... 348 | command_altering_selectors | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return = note: `#[warn(clippy::let_and_return)]` on by default help: return the expression directly | 231 ~ 232 | #[cfg(feature = "rapier3d")] ... 249 | ); 250 ~ CommandAlteringSelectors::default() 251 + // By default Tnua uses a raycast, but this could be a problem if the character stands 252 + // just past the edge while part of its body is above the platform. To solve this, we 253 + // need to cast a shape - which is physics-engine specific. We set the shape using a 254 + // component. 255 + .with_combo( 256 + "Sensor Shape", 257 + 1, 258 + &[ 259 + ("no", |mut cmd| { 260 + #[cfg(feature = "rapier3d")] 261 + cmd.remove::<TnuaRapier3dSensorShape>(); 262 + #[cfg(feature = "xpbd3d")] 263 + cmd.remove::<TnuaXpbd3dSensorShape>(); 264 + }), 265 + ("flat (underfit)", |mut cmd| { 266 + #[cfg(feature = "rapier3d")] 267 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 268 + 0.0, 0.49, 269 + ))); 270 + #[cfg(feature = "xpbd3d")] 271 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.49))); 272 + }), 273 + ("flat (exact)", |mut cmd| { 274 + #[cfg(feature = "rapier3d")] 275 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 276 + 0.0, 0.5, 277 + ))); 278 + #[cfg(feature = "xpbd3d")] 279 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.5))); 280 + }), 281 + ("flat (overfit)", |mut cmd| { 282 + #[cfg(feature = "rapier3d")] 283 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 284 + 0.0, 0.51, 285 + ))); 286 + #[cfg(feature = "xpbd3d")] 287 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.51))); 288 + }), 289 + ("ball (underfit)", |mut cmd| { 290 + #[cfg(feature = "rapier3d")] 291 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::ball(0.49))); 292 + #[cfg(feature = "xpbd3d")] 293 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::sphere(0.49))); 294 + }), 295 + ("ball (exact)", |mut cmd| { 296 + #[cfg(feature = "rapier3d")] 297 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::ball(0.5))); 298 + #[cfg(feature = "xpbd3d")] 299 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::sphere(0.5))); 300 + }), 301 + ], 302 + ) 303 + .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { 304 + // Tnua will automatically apply angular impulses/forces to fix the tilt and make 305 + // the character stand upward, but it is also possible to just let the physics 306 + // engine prevent rotation (other than around the Y axis, for turning) 307 + if lock_tilt { 308 + #[cfg(feature = "rapier3d")] 309 + cmd.insert( 310 + rapier::LockedAxes::ROTATION_LOCKED_X 311 + | rapier::LockedAxes::ROTATION_LOCKED_Z, 312 + ); 313 + #[cfg(feature = "xpbd3d")] 314 + cmd.insert(xpbd::LockedAxes::new().lock_rotation_x().lock_rotation_z()); 315 + } else { 316 + #[cfg(feature = "rapier3d")] 317 + cmd.insert(rapier::LockedAxes::empty()); 318 + #[cfg(feature = "xpbd3d")] 319 + cmd.insert(xpbd::LockedAxes::new()); 320 + } 321 + }) 322 + .with_checkbox( 323 + "Phase Through Collision Groups", 324 + true, 325 + |mut cmd, use_collision_groups| { 326 + #[cfg(feature = "rapier3d")] 327 + if use_collision_groups { 328 + cmd.insert(CollisionGroups { 329 + memberships: Group::GROUP_2, 330 + filters: Group::GROUP_2, 331 + }); 332 + } else { 333 + cmd.insert(CollisionGroups { 334 + memberships: Group::ALL, 335 + filters: Group::ALL, 336 + }); 337 + } 338 + #[cfg(feature = "xpbd3d")] 339 + { 340 + let player_layers: LayerMask = if use_collision_groups { 341 + [LayerNames::Player].into() 342 + } else { 343 + [LayerNames::Player, LayerNames::PhaseThrough].into() 344 + }; 345 + cmd.insert(CollisionLayers::new(player_layers, player_layers)); 346 + } 347 + }, 348 + ) |
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L320
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:320:18 | 320 | |mut cmd, use_collision_groups| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L298
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:298:48 | 298 | .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L290
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:290:39 | 290 | ("ball (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L284
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:284:42 | 284 | ("ball (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L276
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:276:41 | 276 | ("flat (overfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L268
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:268:39 | 268 | ("flat (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L260
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:260:42 | 260 | ("flat (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/shooter_like.rs#L254
warning: variable does not need to be mutable --> demos/src/bin/shooter_like.rs:254:29 | 254 | ("no", |mut cmd| { | ----^^^ | | | help: remove this `mut` | = note: `#[warn(unused_mut)]` on by default
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L366
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:366:59 | 366 | cmd.insert(TnuaCrouchEnforcer::new(0.5 * Vector3::Y, |cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `use_collision_groups`: demos/src/bin/shooter_like.rs#L320
warning: unused variable: `use_collision_groups` --> demos/src/bin/shooter_like.rs:320:27 | 320 | |mut cmd, use_collision_groups| { | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_use_collision_groups`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L320
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:320:22 | 320 | |mut cmd, use_collision_groups| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L298
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:298:52 | 298 | .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L290
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:290:43 | 290 | ("ball (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L284
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:284:46 | 284 | ("ball (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L276
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:276:45 | 276 | ("flat (overfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L268
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:268:43 | 268 | ("flat (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L260
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:260:46 | 260 | ("flat (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/shooter_like.rs#L254
warning: unused variable: `cmd` --> demos/src/bin/shooter_like.rs:254:33 | 254 | ("no", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` | = note: `#[warn(unused_variables)]` on by default
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L306
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:306:18 | 306 | |mut cmd, use_collision_groups| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L284
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:284:48 | 284 | .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L276
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:276:39 | 276 | ("ball (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L270
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:270:42 | 270 | ("ball (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L262
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:262:41 | 262 | ("flat (overfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L254
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:254:39 | 254 | ("flat (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L246
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:246:42 | 246 | ("flat (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L240
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:240:29 | 240 | ("no", |mut cmd| { | ----^^^ | | | help: remove this `mut` | = note: `#[warn(unused_mut)]` on by default
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L352
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:352:59 | 352 | cmd.insert(TnuaCrouchEnforcer::new(0.5 * Vector3::Y, |cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `use_collision_groups`: demos/src/bin/platformer_3d.rs#L306
warning: unused variable: `use_collision_groups` --> demos/src/bin/platformer_3d.rs:306:27 | 306 | |mut cmd, use_collision_groups| { | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_use_collision_groups`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L306
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:306:22 | 306 | |mut cmd, use_collision_groups| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L284
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:284:52 | 284 | .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L276
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:276:43 | 276 | ("ball (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L270
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:270:46 | 270 | ("ball (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L262
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:262:45 | 262 | ("flat (overfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L254
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:254:43 | 254 | ("flat (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L246
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:246:46 | 246 | ("flat (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L240
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:240:33 | 240 | ("no", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` | = note: `#[warn(unused_variables)]` on by default
returning the result of a `let` binding from a block: demos/src/bin/platformer_3d.rs#L348
warning: returning the result of a `let` binding from a block --> demos/src/bin/platformer_3d.rs:348:9 | 231 | / let command_altering_selectors = CommandAlteringSelectors::default() 232 | | // By default Tnua uses a raycast, but this could be a problem if the character stands 233 | | // just past the edge while part of its body is above the platform. To solve this, we 234 | | // need to cast a shape - which is physics-engine specific. We set the shape using a ... | 328 | | }, 329 | | ); | |______________- unnecessary `let` binding ... 348 | command_altering_selectors | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return = note: `#[warn(clippy::let_and_return)]` on by default help: return the expression directly | 231 ~ 232 | #[cfg(feature = "rapier3d")] ... 249 | ); 250 ~ CommandAlteringSelectors::default() 251 + // By default Tnua uses a raycast, but this could be a problem if the character stands 252 + // just past the edge while part of its body is above the platform. To solve this, we 253 + // need to cast a shape - which is physics-engine specific. We set the shape using a 254 + // component. 255 + .with_combo( 256 + "Sensor Shape", 257 + 1, 258 + &[ 259 + ("no", |mut cmd| { 260 + #[cfg(feature = "rapier3d")] 261 + cmd.remove::<TnuaRapier3dSensorShape>(); 262 + #[cfg(feature = "xpbd3d")] 263 + cmd.remove::<TnuaXpbd3dSensorShape>(); 264 + }), 265 + ("flat (underfit)", |mut cmd| { 266 + #[cfg(feature = "rapier3d")] 267 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 268 + 0.0, 0.49, 269 + ))); 270 + #[cfg(feature = "xpbd3d")] 271 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.49))); 272 + }), 273 + ("flat (exact)", |mut cmd| { 274 + #[cfg(feature = "rapier3d")] 275 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 276 + 0.0, 0.5, 277 + ))); 278 + #[cfg(feature = "xpbd3d")] 279 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.5))); 280 + }), 281 + ("flat (overfit)", |mut cmd| { 282 + #[cfg(feature = "rapier3d")] 283 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::cylinder( 284 + 0.0, 0.51, 285 + ))); 286 + #[cfg(feature = "xpbd3d")] 287 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::cylinder(0.0, 0.51))); 288 + }), 289 + ("ball (underfit)", |mut cmd| { 290 + #[cfg(feature = "rapier3d")] 291 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::ball(0.49))); 292 + #[cfg(feature = "xpbd3d")] 293 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::sphere(0.49))); 294 + }), 295 + ("ball (exact)", |mut cmd| { 296 + #[cfg(feature = "rapier3d")] 297 + cmd.insert(TnuaRapier3dSensorShape(rapier::Collider::ball(0.5))); 298 + #[cfg(feature = "xpbd3d")] 299 + cmd.insert(TnuaXpbd3dSensorShape(xpbd::Collider::sphere(0.5))); 300 + }), 301 + ], 302 + ) 303 + .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { 304 + // Tnua will automatically apply angular impulses/forces to fix the tilt and make 305 + // the character stand upward, but it is also possible to just let the physics 306 + // engine prevent rotation (other than around the Y axis, for turning) 307 + if lock_tilt { 308 + #[cfg(feature = "rapier3d")] 309 + cmd.insert( 310 + rapier::LockedAxes::ROTATION_LOCKED_X 311 + | rapier::LockedAxes::ROTATION_LOCKED_Z, 312 + ); 313 + #[cfg(feature = "xpbd3d")] 314 + cmd.insert(xpbd::LockedAxes::new().lock_rotation_x().lock_rotation_z()); 315 + } else { 316 + #[cfg(feature = "rapier3d")] 317 + cmd.insert(rapier::LockedAxes::empty()); 318 + #[cfg(feature = "xpbd3d")] 319 + cmd.insert(xpbd::LockedAxes::new()); 320 + } 321 + }) 322 + .with_checkbox( 323 + "Phase Through Collision Groups", 324 + true, 325 + |mut cmd, use_collision_groups| { 326 + #[cfg(feature = "rapier3d")] 327 + if use_collision_groups { 328 + cmd.insert(CollisionGroups { 329 + memberships: Group::GROUP_2, 330 + filters: Group::GROUP_2, 331 + }); 332 + } else { 333 + cmd.insert(CollisionGroups { 334 + memberships: Group::ALL, 335 + filters: Group::ALL, 336 + }); 337 + } 338 + #[cfg(feature = "xpbd3d")] 339 + { 340 + let player_layers: LayerMask = if use_collision_groups { 341 + [LayerNames::Player].into() 342 + } else { 343 + [LayerNames::Player, LayerNames::PhaseThrough].into() 344 + }; 345 + cmd.insert(CollisionLayers::new(player_layers, player_layers)); 346 + } 347 + }, 348 + ) |
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L306
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:306:18 | 306 | |mut cmd, use_collision_groups| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L284
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:284:48 | 284 | .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L276
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:276:39 | 276 | ("ball (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L270
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:270:42 | 270 | ("ball (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L262
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:262:41 | 262 | ("flat (overfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L254
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:254:39 | 254 | ("flat (exact)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L246
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:246:42 | 246 | ("flat (underfit)", |mut cmd| { | ----^^^ | | | help: remove this `mut`
variable does not need to be mutable: demos/src/bin/platformer_3d.rs#L240
warning: variable does not need to be mutable --> demos/src/bin/platformer_3d.rs:240:29 | 240 | ("no", |mut cmd| { | ----^^^ | | | help: remove this `mut` | = note: `#[warn(unused_mut)]` on by default
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L352
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:352:59 | 352 | cmd.insert(TnuaCrouchEnforcer::new(0.5 * Vector3::Y, |cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `use_collision_groups`: demos/src/bin/platformer_3d.rs#L306
warning: unused variable: `use_collision_groups` --> demos/src/bin/platformer_3d.rs:306:27 | 306 | |mut cmd, use_collision_groups| { | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_use_collision_groups`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L306
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:306:22 | 306 | |mut cmd, use_collision_groups| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L284
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:284:52 | 284 | .with_checkbox("Lock Tilt", true, |mut cmd, lock_tilt| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L276
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:276:43 | 276 | ("ball (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L270
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:270:46 | 270 | ("ball (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L262
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:262:45 | 262 | ("flat (overfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L254
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:254:43 | 254 | ("flat (exact)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L246
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:246:46 | 246 | ("flat (underfit)", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
unused variable: `cmd`: demos/src/bin/platformer_3d.rs#L240
warning: unused variable: `cmd` --> demos/src/bin/platformer_3d.rs:240:33 | 240 | ("no", |mut cmd| { | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` | = note: `#[warn(unused_variables)]` on by default
using `clone` on type `ThingToShow` which implements the `Copy` trait: demos/src/ui/mod.rs#L216
warning: using `clone` on type `ThingToShow` which implements the `Copy` trait --> demos/src/ui/mod.rs:216:57 | 216 | let mut thing_to_show = ui.memory_mut(|mem| mem.data.get_temp_mut_or_default::<ThingToShow>(thing_to_show_id).clone()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*mem.data.get_temp_mut_or_default::<ThingToShow>(thing_to_show_id)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy = note: `#[warn(clippy::clone_on_copy)]` on by default
associated function `make_system` is never used: demos/src/moving_platform.rs#L63
warning: associated function `make_system` is never used --> demos/src/moving_platform.rs:63:8 | 54 | impl MovingPlatform { | ------------------- associated function in this implementation ... 63 | fn make_system<V: Component>( | ^^^^^^^^^^^ | = note: `#[warn(dead_code)]` on by default
unused variable: `setting_from_ui`: demos/src/ui/mod.rs#L292
warning: unused variable: `setting_from_ui` --> demos/src/ui/mod.rs:292:5 | 292 | setting_from_ui: Res<DemoUiPhysicsBackendActive>, | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_setting_from_ui`
unused variable: `app`: demos/src/moving_platform.rs#L7
warning: unused variable: `app` --> demos/src/moving_platform.rs:7:21 | 7 | fn build(&self, app: &mut App) { | ^^^ help: if this is intentional, prefix it with an underscore: `_app` | = note: `#[warn(unused_variables)]` on by default
unused import: `make_update_plot_data_system`: demos/src/ui/mod.rs#L23
warning: unused import: `make_update_plot_data_system` --> demos/src/ui/mod.rs:23:22 | 23 | use self::plotting::{make_update_plot_data_system, plot_source_rolling_update}; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
Clippy
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, actions-rs/toolchain@v1, actions/cache@v1, actions-rs/clippy-check@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Clippy
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions-rs/toolchain@v1, actions/cache@v1, 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/
Clippy
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/
Clippy
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/
Clippy
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/
Clippy
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/
Tests (ubuntu-latest, nightly)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, actions-rs/toolchain@v1, actions/cache@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Tests (ubuntu-latest, nightly)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions-rs/toolchain@v1, actions/cache@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Tests (ubuntu-latest, nightly)
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/
Tests (ubuntu-latest, nightly)
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/
Tests (ubuntu-latest, nightly)
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/
Tests (ubuntu-latest, nightly)
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/
Tests (ubuntu-latest, 1.76.0)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, actions-rs/toolchain@v1, actions/cache@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Tests (ubuntu-latest, 1.76.0)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions-rs/toolchain@v1, actions/cache@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Tests (ubuntu-latest, 1.76.0)
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/
Tests (ubuntu-latest, 1.76.0)
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/
Tests (ubuntu-latest, 1.76.0)
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/
Tests (ubuntu-latest, 1.76.0)
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/
Docs
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, actions-rs/toolchain@v1, actions/cache@v1, actions-rs/cargo@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Docs
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions-rs/toolchain@v1, actions/cache@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/
Docs
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/
Docs
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/
Docs
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/
Docs
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/
Docs: demos/src/ui/mod.rs#L23
unused import: `make_update_plot_data_system`
Docs: demos/src/moving_platform.rs#L7
unused variable: `app`
Docs: demos/src/ui/mod.rs#L292
unused variable: `setting_from_ui`
Docs: demos/src/moving_platform.rs#L63
associated function `make_system` is never used
Docs
`tnua-demos-crate` (lib) generated 4 warnings (run `cargo fix --lib -p tnua-demos-crate` to apply 3 suggestions)
Docs: src/builtins/walk.rs#L29
unresolved link to `Self::up`
Docs: src/builtins/walk.rs#L33
unresolved link to `Self::up`
Docs: src/builtins/walk.rs#L46
unresolved link to `Self::up`
Docs: src/builtins/walk.rs#L52
unresolved link to `Self::up`
Docs: src/builtins/walk.rs#L523
unresolved link to `TnuaBuiltinWalk::up`
Docs: demos/src/ui/mod.rs#L23
unused import: `make_update_plot_data_system`
Docs: demos/src/moving_platform.rs#L7
unused variable: `app`
Docs: demos/src/ui/mod.rs#L292
unused variable: `setting_from_ui`
Docs: demos/src/moving_platform.rs#L63
associated function `make_system` is never used
Docs
`tnua-demos-crate` (lib) generated 4 warnings (run `cargo fix --lib -p tnua-demos-crate` to apply 3 suggestions)
Update Docs and Demos in GitHub Pages
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, jetli/wasm-bindgen-action@v0.1.0, actions-rs/toolchain@v1, actions/upload-artifact@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Update Docs and Demos in GitHub Pages
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, jetli/wasm-bindgen-action@v0.1.0, actions-rs/toolchain@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Update Docs and Demos in GitHub Pages
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/
Update Docs and Demos in GitHub Pages
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/
Update Docs and Demos in GitHub Pages
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/
Update Docs and Demos in GitHub Pages
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/
deploy-ghpages
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/deploy-pages@v2. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
deploy-ghpages
Uploaded artifact size of 1934848000 bytes exceeds the allowed size of 1 GB. Deployment might fail.
Deprecation notice: v1, v2, and v3 of the artifact actions
The following artifacts were uploaded using a version of actions/upload-artifact that is scheduled for deprecation: "github-pages". Please update your workflow to use v4 of the artifact actions. Learn more: https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/