[INFO] cloning repository https://github.com/AkshantLanjewar/vk_rust_learn
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AkshantLanjewar/vk_rust_learn" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAkshantLanjewar%2Fvk_rust_learn", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAkshantLanjewar%2Fvk_rust_learn'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3be6722cd0ad4895847dc7c284222e3a296e3355
[INFO] checking AkshantLanjewar/vk_rust_learn against try#d0ab665d12770dbaae620b539ee4319b83445f45 for pr-133502-24
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAkshantLanjewar%2Fvk_rust_learn" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AkshantLanjewar/vk_rust_learn
[INFO] finished tweaking git repo https://github.com/AkshantLanjewar/vk_rust_learn
[INFO] tweaked toml for git repo https://github.com/AkshantLanjewar/vk_rust_learn written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AkshantLanjewar/vk_rust_learn on toolchain d0ab665d12770dbaae620b539ee4319b83445f45
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d0ab665d12770dbaae620b539ee4319b83445f45" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AkshantLanjewar/vk_rust_learn already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d0ab665d12770dbaae620b539ee4319b83445f45" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 4d551c2c1531f82e3be4d7c06b9f53dc503be9fa2cf0e6765e7b36258a9209e6
[INFO] running `Command { std: "docker" "start" "4d551c2c1531f82e3be4d7c06b9f53dc503be9fa2cf0e6765e7b36258a9209e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4d551c2c1531f82e3be4d7c06b9f53dc503be9fa2cf0e6765e7b36258a9209e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4d551c2c1531f82e3be4d7c06b9f53dc503be9fa2cf0e6765e7b36258a9209e6" "/opt/rustwide/cargo-home/bin/cargo" "+d0ab665d12770dbaae620b539ee4319b83445f45" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4d551c2c1531f82e3be4d7c06b9f53dc503be9fa2cf0e6765e7b36258a9209e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4d551c2c1531f82e3be4d7c06b9f53dc503be9fa2cf0e6765e7b36258a9209e6" "/opt/rustwide/cargo-home/bin/cargo" "+d0ab665d12770dbaae620b539ee4319b83445f45" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling find-msvc-tools v0.1.4
[INFO] [stderr]    Compiling wayland-sys v0.31.7
[INFO] [stderr]    Compiling quick-xml v0.37.5
[INFO] [stderr]    Compiling wayland-client v0.31.11
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking bytemuck v1.24.0
[INFO] [stderr]    Compiling winit v0.29.15
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking rustix v0.38.44
[INFO] [stderr]    Compiling cgmath v0.18.0
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]    Compiling cc v1.2.41
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking approx v0.4.0
[INFO] [stderr]     Checking vulkanalia-sys v0.31.0
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking flate2 v1.1.4
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking memmap2 v0.9.8
[INFO] [stderr]     Checking is-terminal v0.4.16
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]    Compiling wayland-scanner v0.31.7
[INFO] [stderr]    Compiling wayland-backend v0.3.11
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking tobj v3.2.5
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking env_logger v0.10.2
[INFO] [stderr]     Checking pretty_env_logger v0.5.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]     Checking calloop v0.12.4
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking wayland-protocols v0.31.2
[INFO] [stderr]     Checking calloop-wayland-source v0.2.0
[INFO] [stderr]     Checking wayland-cursor v0.31.11
[INFO] [stderr]     Checking wayland-protocols-wlr v0.2.0
[INFO] [stderr]     Checking wayland-protocols-plasma v0.2.0
[INFO] [stderr]     Checking smithay-client-toolkit v0.18.1
[INFO] [stderr]     Checking sctk-adwaita v0.8.3
[INFO] [stderr]     Checking vulkanalia v0.31.0
[INFO] [stderr]     Checking choam v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `window`
[INFO] [stdout]   --> src/app.rs:13:25
[INFO] [stdout]    |
[INFO] [stdout] 13 | use vulkanalia::{Entry, window};
[INFO] [stdout]    |                         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LIBRARY` and `LibloadingLoader`
[INFO] [stdout]  --> src/foundation/instance.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use vulkanalia::loader::{LIBRARY, LibloadingLoader};
[INFO] [stdout]   |                          ^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KhrSurfaceExtensionInstanceCommands`
[INFO] [stdout]   --> src/foundation/instance.rs:13:62
[INFO] [stdout]    |
[INFO] [stdout] 13 | use vulkanalia::vk::{ExtDebugUtilsExtensionInstanceCommands, KhrSurfaceExtensionInstanceCommands};
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DeviceV1_0`
[INFO] [stdout]  --> src/foundation/swapchain.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 |         self, DeviceV1_0, Handle, HasBuilder, KhrSurfaceExtensionInstanceCommands,
[INFO] [stdout]   |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deg` and `vec3`
[INFO] [stdout]  --> src/pipeline/buffers.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cgmath::{Deg, vec3};
[INFO] [stdout]   |              ^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pipeline::descriptors::Mat4`
[INFO] [stdout]  --> src/pipeline/buffers.rs:8:67
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::{app::AppData, foundation::device::QueueFamilyIndices, pipeline::descriptors::Mat4};
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/pipeline/buffers.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 | ) -> Result<(vk::CommandBuffer)> {
[INFO] [stdout]    |             ^                 ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 67 - ) -> Result<(vk::CommandBuffer)> {
[INFO] [stdout] 67 + ) -> Result<vk::CommandBuffer> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `vec2` and `vec3`
[INFO] [stdout]  --> src/pipeline/vertex.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use cgmath::{vec2, vec3};
[INFO] [stdout]   |              ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FormatFeatureFlags`, `Format`, and `Handle`
[INFO] [stdout]  --> src/pipeline/vertex.rs:9:28
[INFO] [stdout]   |
[INFO] [stdout] 9 |     vk::{self, DeviceV1_0, Format, FormatFeatureFlags, Handle, HasBuilder, InstanceV1_0},
[INFO] [stdout]   |                            ^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `window`
[INFO] [stdout]   --> src/app.rs:13:25
[INFO] [stdout]    |
[INFO] [stdout] 13 | use vulkanalia::{Entry, window};
[INFO] [stdout]    |                         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LIBRARY` and `LibloadingLoader`
[INFO] [stdout]  --> src/foundation/instance.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use vulkanalia::loader::{LIBRARY, LibloadingLoader};
[INFO] [stdout]   |                          ^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KhrSurfaceExtensionInstanceCommands`
[INFO] [stdout]   --> src/foundation/instance.rs:13:62
[INFO] [stdout]    |
[INFO] [stdout] 13 | use vulkanalia::vk::{ExtDebugUtilsExtensionInstanceCommands, KhrSurfaceExtensionInstanceCommands};
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DeviceV1_0`
[INFO] [stdout]  --> src/foundation/swapchain.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 |         self, DeviceV1_0, Handle, HasBuilder, KhrSurfaceExtensionInstanceCommands,
[INFO] [stdout]   |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deg` and `vec3`
[INFO] [stdout]  --> src/pipeline/buffers.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use cgmath::{Deg, vec3};
[INFO] [stdout]   |              ^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pipeline::descriptors::Mat4`
[INFO] [stdout]  --> src/pipeline/buffers.rs:8:67
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::{app::AppData, foundation::device::QueueFamilyIndices, pipeline::descriptors::Mat4};
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/pipeline/buffers.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 | ) -> Result<(vk::CommandBuffer)> {
[INFO] [stdout]    |             ^                 ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 67 - ) -> Result<(vk::CommandBuffer)> {
[INFO] [stdout] 67 + ) -> Result<vk::CommandBuffer> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `vec2` and `vec3`
[INFO] [stdout]  --> src/pipeline/vertex.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use cgmath::{vec2, vec3};
[INFO] [stdout]   |              ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FormatFeatureFlags`, `Format`, and `Handle`
[INFO] [stdout]  --> src/pipeline/vertex.rs:9:28
[INFO] [stdout]   |
[INFO] [stdout] 9 |     vk::{self, DeviceV1_0, Format, FormatFeatureFlags, Handle, HasBuilder, InstanceV1_0},
[INFO] [stdout]   |                            ^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::Entry::new` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/app.rs:51:21
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let entry = Entry::new(loader).map_err(|b| anyhow!("{}", b))?;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/app.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub unsafe fn create(window: &Window) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::allocate_command_buffers` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:120:34
[INFO] [stdout]     |
[INFO] [stdout] 120 |             let command_buffer = self.device.allocate_command_buffers(&allocate_info)?[0];
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/app.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 104 | /     unsafe fn update_secondary_command_buffer(
[INFO] [stdout] 105 | |         &mut self,
[INFO] [stdout] 106 | |         image_index: usize,
[INFO] [stdout] 107 | |         model_index: usize,
[INFO] [stdout] 108 | |     ) -> Result<vk::CommandBuffer> {
[INFO] [stdout]     | |__________________________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |             std::slice::from_raw_parts(&model as *const Mat4 as *const u8, size_of::<Mat4>());
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::begin_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         self.device.begin_command_buffer(command_buffer, &info)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_bind_pipeline` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 | /         self.device.cmd_bind_pipeline(
[INFO] [stdout] 150 | |             command_buffer,
[INFO] [stdout] 151 | |             vk::PipelineBindPoint::GRAPHICS,
[INFO] [stdout] 152 | |             self.data.pipeline,
[INFO] [stdout] 153 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_bind_vertex_buffers` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 | /         self.device
[INFO] [stdout] 155 | |             .cmd_bind_vertex_buffers(command_buffer, 0, &[self.data.vertex_buffer], &[0]);
[INFO] [stdout]     | |_________________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_bind_index_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 | /         self.device.cmd_bind_index_buffer(
[INFO] [stdout] 157 | |             command_buffer,
[INFO] [stdout] 158 | |             self.data.index_buffer,
[INFO] [stdout] 159 | |             0,
[INFO] [stdout] 160 | |             vk::IndexType::UINT32,
[INFO] [stdout] 161 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_bind_descriptor_sets` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:162:9
[INFO] [stdout]     |
[INFO] [stdout] 162 | /         self.device.cmd_bind_descriptor_sets(
[INFO] [stdout] 163 | |             command_buffer,
[INFO] [stdout] 164 | |             vk::PipelineBindPoint::GRAPHICS,
[INFO] [stdout] 165 | |             self.data.pipeline_layout,
[INFO] [stdout] ...   |
[INFO] [stdout] 168 | |             &[],
[INFO] [stdout] 169 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_push_constants` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 | /         self.device.cmd_push_constants(
[INFO] [stdout] 171 | |             command_buffer,
[INFO] [stdout] 172 | |             self.data.pipeline_layout,
[INFO] [stdout] 173 | |             vk::ShaderStageFlags::VERTEX,
[INFO] [stdout] 174 | |             0,
[INFO] [stdout] 175 | |             model_bytes,
[INFO] [stdout] 176 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_push_constants` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout] 177 | /         self.device.cmd_push_constants(
[INFO] [stdout] 178 | |             command_buffer,
[INFO] [stdout] 179 | |             self.data.pipeline_layout,
[INFO] [stdout] 180 | |             vk::ShaderStageFlags::FRAGMENT,
[INFO] [stdout] 181 | |             64,
[INFO] [stdout] 182 | |             &0.25f32.to_ne_bytes()[..],
[INFO] [stdout] 183 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_draw_indexed` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 | /         self.device
[INFO] [stdout] 185 | |             .cmd_draw_indexed(command_buffer, self.data.indices.len() as u32, 1, 0, 0, 0);
[INFO] [stdout]     | |_________________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::end_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         self.device.end_command_buffer(command_buffer)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `opacity_bytes`
[INFO] [stdout]    --> src/app.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let opacity_bytes = &opacity.to_ne_bytes()[..];
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opacity_bytes`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::reset_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 | /         self.device
[INFO] [stdout] 197 | |             .reset_command_buffer(command_buffer, vk::CommandBufferResetFlags::empty())?;
[INFO] [stdout]     | |_______________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/app.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 193 |     unsafe fn update_command_buffer(&mut self, image_index: usize) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::begin_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |         self.device.begin_command_buffer(command_buffer, &info)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_begin_render_pass` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 | /         self.device.cmd_begin_render_pass(
[INFO] [stdout] 229 | |             command_buffer,
[INFO] [stdout] 230 | |             &info,
[INFO] [stdout] 231 | |             vk::SubpassContents::SECONDARY_COMMAND_BUFFERS,
[INFO] [stdout] 232 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `app::App::update_secondary_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:235:22
[INFO] [stdout]     |
[INFO] [stdout] 235 |             .map(|i| self.update_secondary_command_buffer(image_index, i))
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_execute_commands` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 | /         self.device
[INFO] [stdout] 239 | |             .cmd_execute_commands(command_buffer, &secondary_command_buffer[..]);
[INFO] [stdout]     | |________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_end_render_pass` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:241:9
[INFO] [stdout]     |
[INFO] [stdout] 241 |         self.device.cmd_end_render_pass(command_buffer);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::end_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         self.device.end_command_buffer(command_buffer)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::wait_for_fences` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 | /         self.device
[INFO] [stdout] 329 | |             .wait_for_fences(&[self.data.in_flight_fences[self.frame]], true, u64::MAX)?;
[INFO] [stdout]     | |_______________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/app.rs:327:5
[INFO] [stdout]     |
[INFO] [stdout] 327 |     pub unsafe fn render(&mut self, window: &Window) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSwapchainExtensionDeviceCommands::acquire_next_image_khr` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:331:28
[INFO] [stdout]     |
[INFO] [stdout] 331 |           let image_result = self.device.acquire_next_image_khr(
[INFO] [stdout]     |  ____________________________^
[INFO] [stdout] 332 | |             self.data.swapchain,
[INFO] [stdout] 333 | |             u64::MAX,
[INFO] [stdout] 334 | |             self.data.image_available_semaphore[self.frame],
[INFO] [stdout] 335 | |             vk::Fence::null(),
[INFO] [stdout] 336 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `app::App::recreate_swapchain` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:340:59
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Err(vk::ErrorCode::OUT_OF_DATE_KHR) => return self.recreate_swapchain(window),
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::wait_for_fences` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:345:13
[INFO] [stdout]     |
[INFO] [stdout] 345 | /             self.device.wait_for_fences(
[INFO] [stdout] 346 | |                 &[self.data.images_in_flight[image_index as usize]],
[INFO] [stdout] 347 | |                 true,
[INFO] [stdout] 348 | |                 u64::MAX,
[INFO] [stdout] 349 | |             )?;
[INFO] [stdout]     | |_____________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `app::App::update_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:354:9
[INFO] [stdout]     |
[INFO] [stdout] 354 |         self.update_command_buffer(image_index)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::descriptors::update_uniform_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:355:9
[INFO] [stdout]     |
[INFO] [stdout] 355 |         update_uniform_buffer(&self.device, &self.start, &self.data, image_index)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::reset_fences` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:367:9
[INFO] [stdout]     |
[INFO] [stdout] 367 | /         self.device
[INFO] [stdout] 368 | |             .reset_fences(&[self.data.in_flight_fences[self.frame]])?;
[INFO] [stdout]     | |____________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::queue_submit` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:370:9
[INFO] [stdout]     |
[INFO] [stdout] 370 | /         self.device.queue_submit(
[INFO] [stdout] 371 | |             self.data.graphics_queue,
[INFO] [stdout] 372 | |             &[submit_info],
[INFO] [stdout] 373 | |             self.data.in_flight_fences[self.frame],
[INFO] [stdout] 374 | |         )?;
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSwapchainExtensionDeviceCommands::queue_present_khr` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:383:22
[INFO] [stdout]     |
[INFO] [stdout] 383 |           let result = self
[INFO] [stdout]     |  ______________________^
[INFO] [stdout] 384 | |             .device
[INFO] [stdout] 385 | |             .queue_present_khr(self.data.present_queue, &present_info);
[INFO] [stdout]     | |______________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `app::App::recreate_swapchain` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:391:13
[INFO] [stdout]     |
[INFO] [stdout] 391 |             self.recreate_swapchain(window)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `app::App::destroy_swapchain` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         self.destroy_swapchain();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/app.rs:402:5
[INFO] [stdout]     |
[INFO] [stdout] 402 |     pub unsafe fn destroy(&mut self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_sampler` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |         self.device.destroy_sampler(self.data.texture_sampler, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_image_view` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:405:9
[INFO] [stdout]     |
[INFO] [stdout] 405 | /         self.device
[INFO] [stdout] 406 | |             .destroy_image_view(self.data.texture_image_view, None);
[INFO] [stdout]     | |___________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_image` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         self.device.destroy_image(self.data.texture_image, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::free_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 | /         self.device
[INFO] [stdout] 410 | |             .free_memory(self.data.texture_image_memory, None);
[INFO] [stdout]     | |______________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_descriptor_set_layout` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:412:9
[INFO] [stdout]     |
[INFO] [stdout] 412 | /         self.device
[INFO] [stdout] 413 | |             .destroy_descriptor_set_layout(self.data.descriptor_set_layout, None);
[INFO] [stdout]     | |_________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:414:9
[INFO] [stdout]     |
[INFO] [stdout] 414 |         self.device.destroy_buffer(self.data.index_buffer, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::free_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:415:9
[INFO] [stdout]     |
[INFO] [stdout] 415 |         self.device.free_memory(self.data.index_buffer_memory, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:416:9
[INFO] [stdout]     |
[INFO] [stdout] 416 |         self.device.destroy_buffer(self.data.vertex_buffer, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::free_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:417:9
[INFO] [stdout]     |
[INFO] [stdout] 417 | /         self.device
[INFO] [stdout] 418 | |             .free_memory(self.data.vertex_buffer_memory, None);
[INFO] [stdout]     | |______________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_fence` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:424:27
[INFO] [stdout]     |
[INFO] [stdout] 424 |             .for_each(|f| self.device.destroy_fence(*f, None));
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_semaphore` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:428:27
[INFO] [stdout]     |
[INFO] [stdout] 428 |             .for_each(|s| self.device.destroy_semaphore(*s, None));
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_semaphore` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:432:27
[INFO] [stdout]     |
[INFO] [stdout] 432 |             .for_each(|s| self.device.destroy_semaphore(*s, None));
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_command_pool` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:435:9
[INFO] [stdout]     |
[INFO] [stdout] 435 | /         self.device
[INFO] [stdout] 436 | |             .destroy_command_pool(self.data.command_pool, None);
[INFO] [stdout]     | |_______________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_device` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:437:9
[INFO] [stdout]     |
[INFO] [stdout] 437 |         self.device.destroy_device(None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::ExtDebugUtilsExtensionInstanceCommands::destroy_debug_utils_messenger_ext` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:440:13
[INFO] [stdout]     |
[INFO] [stdout] 440 | /             self.instance
[INFO] [stdout] 441 | |                 .destroy_debug_utils_messenger_ext(self.data.messenger, None);
[INFO] [stdout]     | |_____________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSurfaceExtensionInstanceCommands::destroy_surface_khr` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:444:9
[INFO] [stdout]     |
[INFO] [stdout] 444 |         self.instance.destroy_surface_khr(self.data.surface, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::destroy_instance` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:445:9
[INFO] [stdout]     |
[INFO] [stdout] 445 |         self.instance.destroy_instance(None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::Entry::new` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/app.rs:51:21
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let entry = Entry::new(loader).map_err(|b| anyhow!("{}", b))?;
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/app.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub unsafe fn create(window: &Window) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::enumerate_physical_devices` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 |     for physical_device in instance.enumerate_physical_devices()? {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/device.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub unsafe fn pick_physical_device(instance: &Instance, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::get_physical_device_properties` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:28:26
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let properties = instance.get_physical_device_properties(physical_device);
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::check_physical_device` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:30:29
[INFO] [stdout]    |
[INFO] [stdout] 30 |         if let Err(error) = check_physical_device(instance, data, physical_device) {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `scenes::sampling::get_max_msaa_samples` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:38:33
[INFO] [stdout]    |
[INFO] [stdout] 38 |             data.msaa_samples = get_max_msaa_samples(instance, data);
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::allocate_command_buffers` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:120:34
[INFO] [stdout]     |
[INFO] [stdout] 120 |             let command_buffer = self.device.allocate_command_buffers(&allocate_info)?[0];
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/app.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 104 | /     unsafe fn update_secondary_command_buffer(
[INFO] [stdout] 105 | |         &mut self,
[INFO] [stdout] 106 | |         image_index: usize,
[INFO] [stdout] 107 | |         model_index: usize,
[INFO] [stdout] 108 | |     ) -> Result<vk::CommandBuffer> {
[INFO] [stdout]     | |__________________________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:133:13
[INFO] [stdout]     |
[INFO] [stdout] 133 |             std::slice::from_raw_parts(&model as *const Mat4 as *const u8, size_of::<Mat4>());
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::begin_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         self.device.begin_command_buffer(command_buffer, &info)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_bind_pipeline` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 | /         self.device.cmd_bind_pipeline(
[INFO] [stdout] 150 | |             command_buffer,
[INFO] [stdout] 151 | |             vk::PipelineBindPoint::GRAPHICS,
[INFO] [stdout] 152 | |             self.data.pipeline,
[INFO] [stdout] 153 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::get_physical_device_queue_family_properties` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:58:26
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let properties = instance.get_physical_device_queue_family_properties(physical_device);
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/device.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | /     pub unsafe fn get(
[INFO] [stdout] 54 | |         instance: &Instance,
[INFO] [stdout] 55 | |         data: &AppData,
[INFO] [stdout] 56 | |         physical_device: vk::PhysicalDevice,
[INFO] [stdout] 57 | |     ) -> Result<Self> {
[INFO] [stdout]    | |_____________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_bind_vertex_buffers` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 | /         self.device
[INFO] [stdout] 155 | |             .cmd_bind_vertex_buffers(command_buffer, 0, &[self.data.vertex_buffer], &[0]);
[INFO] [stdout]     | |_________________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSurfaceExtensionInstanceCommands::get_physical_device_surface_support_khr` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:67:16
[INFO] [stdout]    |
[INFO] [stdout] 67 |               if instance.get_physical_device_surface_support_khr(
[INFO] [stdout]    |  ________________^
[INFO] [stdout] 68 | |                 physical_device,
[INFO] [stdout] 69 | |                 index as u32,
[INFO] [stdout] 70 | |                 data.surface,
[INFO] [stdout] 71 | |             )? {
[INFO] [stdout]    | |_____________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_bind_index_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 | /         self.device.cmd_bind_index_buffer(
[INFO] [stdout] 157 | |             command_buffer,
[INFO] [stdout] 158 | |             self.data.index_buffer,
[INFO] [stdout] 159 | |             0,
[INFO] [stdout] 160 | |             vk::IndexType::UINT32,
[INFO] [stdout] 161 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_bind_descriptor_sets` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:162:9
[INFO] [stdout]     |
[INFO] [stdout] 162 | /         self.device.cmd_bind_descriptor_sets(
[INFO] [stdout] 163 | |             command_buffer,
[INFO] [stdout] 164 | |             vk::PipelineBindPoint::GRAPHICS,
[INFO] [stdout] 165 | |             self.data.pipeline_layout,
[INFO] [stdout] ...   |
[INFO] [stdout] 168 | |             &[],
[INFO] [stdout] 169 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_push_constants` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 | /         self.device.cmd_push_constants(
[INFO] [stdout] 171 | |             command_buffer,
[INFO] [stdout] 172 | |             self.data.pipeline_layout,
[INFO] [stdout] 173 | |             vk::ShaderStageFlags::VERTEX,
[INFO] [stdout] 174 | |             0,
[INFO] [stdout] 175 | |             model_bytes,
[INFO] [stdout] 176 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_push_constants` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout] 177 | /         self.device.cmd_push_constants(
[INFO] [stdout] 178 | |             command_buffer,
[INFO] [stdout] 179 | |             self.data.pipeline_layout,
[INFO] [stdout] 180 | |             vk::ShaderStageFlags::FRAGMENT,
[INFO] [stdout] 181 | |             64,
[INFO] [stdout] 182 | |             &0.25f32.to_ne_bytes()[..],
[INFO] [stdout] 183 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_draw_indexed` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 | /         self.device
[INFO] [stdout] 185 | |             .cmd_draw_indexed(command_buffer, self.data.indices.len() as u32, 1, 0, 0, 0);
[INFO] [stdout]     | |_________________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `properties`
[INFO] [stdout]   --> src/foundation/device.rs:66:21
[INFO] [stdout]    |
[INFO] [stdout] 66 |         for (index, properties) in properties.iter().enumerate() {
[INFO] [stdout]    |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::end_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         self.device.end_command_buffer(command_buffer)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::QueueFamilyIndices::get` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     QueueFamilyIndices::get(instance, data, physical_device)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/device.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | / unsafe fn check_physical_device(
[INFO] [stdout] 86 | |     instance: &Instance,
[INFO] [stdout] 87 | |     data: &AppData,
[INFO] [stdout] 88 | |     physical_device: vk::PhysicalDevice,
[INFO] [stdout] 89 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::check_physical_device_extensions` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 |     check_physical_device_extensions(instance, physical_device)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::swapchain::SwapchainSupport::get` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:94:19
[INFO] [stdout]    |
[INFO] [stdout] 94 |     let support = SwapchainSupport::get(instance, data, physical_device)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::get_physical_device_features` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:100:20
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let features = instance.get_physical_device_features(physical_device);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `opacity_bytes`
[INFO] [stdout]    --> src/app.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let opacity_bytes = &opacity.to_ne_bytes()[..];
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_opacity_bytes`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::enumerate_device_extension_properties` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:112:22
[INFO] [stdout]     |
[INFO] [stdout] 112 |       let extensions = instance
[INFO] [stdout]     |  ______________________^
[INFO] [stdout] 113 | |         .enumerate_device_extension_properties(physical_device, None)?
[INFO] [stdout]     | |_____________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/foundation/device.rs:108:1
[INFO] [stdout]     |
[INFO] [stdout] 108 | / unsafe fn check_physical_device_extensions(
[INFO] [stdout] 109 | |     instance: &Instance,
[INFO] [stdout] 110 | |     physical_device: vk::PhysicalDevice,
[INFO] [stdout] 111 | | ) -> Result<()> {
[INFO] [stdout]     | |_______________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::QueueFamilyIndices::get` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:132:19
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let indices = QueueFamilyIndices::get(instance, data, data.physical_device)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/foundation/device.rs:127:1
[INFO] [stdout]     |
[INFO] [stdout] 127 | / pub unsafe fn create_logical_device(
[INFO] [stdout] 128 | |     entry: &Entry,
[INFO] [stdout] 129 | |     instance: &Instance,
[INFO] [stdout] 130 | |     data: &mut AppData,
[INFO] [stdout] 131 | | ) -> Result<Device> {
[INFO] [stdout]     | |___________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::Instance::create_device` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:171:18
[INFO] [stdout]     |
[INFO] [stdout] 171 |     let device = instance.create_device(data.physical_device, &info, None)?;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::get_device_queue` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:172:27
[INFO] [stdout]     |
[INFO] [stdout] 172 |     data.graphics_queue = device.get_device_queue(indices.graphics, 0);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::get_device_queue` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:173:26
[INFO] [stdout]     |
[INFO] [stdout] 173 |     data.present_queue = device.get_device_queue(indices.present, 0);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::reset_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 | /         self.device
[INFO] [stdout] 197 | |             .reset_command_buffer(command_buffer, vk::CommandBufferResetFlags::empty())?;
[INFO] [stdout]     | |_______________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/app.rs:193:5
[INFO] [stdout]     |
[INFO] [stdout] 193 |     unsafe fn update_command_buffer(&mut self, image_index: usize) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::begin_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |         self.device.begin_command_buffer(command_buffer, &info)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_begin_render_pass` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 | /         self.device.cmd_begin_render_pass(
[INFO] [stdout] 229 | |             command_buffer,
[INFO] [stdout] 230 | |             &info,
[INFO] [stdout] 231 | |             vk::SubpassContents::SECONDARY_COMMAND_BUFFERS,
[INFO] [stdout] 232 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `app::App::update_secondary_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:235:22
[INFO] [stdout]     |
[INFO] [stdout] 235 |             .map(|i| self.update_secondary_command_buffer(image_index, i))
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_execute_commands` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 | /         self.device
[INFO] [stdout] 239 | |             .cmd_execute_commands(command_buffer, &secondary_command_buffer[..]);
[INFO] [stdout]     | |________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_end_render_pass` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:241:9
[INFO] [stdout]     |
[INFO] [stdout] 241 |         self.device.cmd_end_render_pass(command_buffer);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::end_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         self.device.end_command_buffer(command_buffer)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::EntryV1_0::enumerate_instance_layer_properties` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/instance.rs:87:28
[INFO] [stdout]    |
[INFO] [stdout] 87 |       let available_layers = entry
[INFO] [stdout]    |  ____________________________^
[INFO] [stdout] 88 | |         .enumerate_instance_layer_properties()?
[INFO] [stdout]    | |______________________________________________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/instance.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 | / pub unsafe fn create_instance(
[INFO] [stdout] 48 | |     window: &Window,
[INFO] [stdout] 49 | |     entry: &Entry,
[INFO] [stdout] 50 | |     data: &mut AppData,
[INFO] [stdout] 51 | | ) -> Result<Instance> {
[INFO] [stdout]    | |_____________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::Entry::create_instance` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/instance.rs:123:20
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let instance = entry.create_instance(&info, None)?;
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::ExtDebugUtilsExtensionInstanceCommands::create_debug_utils_messenger_ext` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/instance.rs:135:26
[INFO] [stdout]     |
[INFO] [stdout] 135 |         data.messenger = instance.create_debug_utils_messenger_ext(&debug_info, None)?;
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSurfaceExtensionInstanceCommands::get_physical_device_surface_capabilities_khr` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/swapchain.rs:29:27
[INFO] [stdout]    |
[INFO] [stdout] 29 |               capabilities: instance
[INFO] [stdout]    |  ___________________________^
[INFO] [stdout] 30 | |                 .get_physical_device_surface_capabilities_khr(physical_device, data.surface)?,
[INFO] [stdout]    | |____________________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/swapchain.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | /     pub unsafe fn get(
[INFO] [stdout] 24 | |         instance: &Instance,
[INFO] [stdout] 25 | |         data: &AppData,
[INFO] [stdout] 26 | |         physical_device: vk::PhysicalDevice,
[INFO] [stdout] 27 | |     ) -> Result<Self> {
[INFO] [stdout]    | |_____________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSurfaceExtensionInstanceCommands::get_physical_device_surface_formats_khr` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/swapchain.rs:31:22
[INFO] [stdout]    |
[INFO] [stdout] 31 |               formats: instance
[INFO] [stdout]    |  ______________________^
[INFO] [stdout] 32 | |                 .get_physical_device_surface_formats_khr(physical_device, data.surface)?,
[INFO] [stdout]    | |_______________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSurfaceExtensionInstanceCommands::get_physical_device_surface_present_modes_khr` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/swapchain.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 |               present_modes: instance
[INFO] [stdout]    |  ____________________________^
[INFO] [stdout] 34 | |                 .get_physical_device_surface_present_modes_khr(physical_device, data.surface)?,
[INFO] [stdout]    | |_____________________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::wait_for_fences` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 | /         self.device
[INFO] [stdout] 329 | |             .wait_for_fences(&[self.data.in_flight_fences[self.frame]], true, u64::MAX)?;
[INFO] [stdout]     | |_______________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/app.rs:327:5
[INFO] [stdout]     |
[INFO] [stdout] 327 |     pub unsafe fn render(&mut self, window: &Window) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSwapchainExtensionDeviceCommands::acquire_next_image_khr` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:331:28
[INFO] [stdout]     |
[INFO] [stdout] 331 |           let image_result = self.device.acquire_next_image_khr(
[INFO] [stdout]     |  ____________________________^
[INFO] [stdout] 332 | |             self.data.swapchain,
[INFO] [stdout] 333 | |             u64::MAX,
[INFO] [stdout] 334 | |             self.data.image_available_semaphore[self.frame],
[INFO] [stdout] 335 | |             vk::Fence::null(),
[INFO] [stdout] 336 | |         );
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `app::App::recreate_swapchain` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:340:59
[INFO] [stdout]     |
[INFO] [stdout] 340 |             Err(vk::ErrorCode::OUT_OF_DATE_KHR) => return self.recreate_swapchain(window),
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::wait_for_fences` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:345:13
[INFO] [stdout]     |
[INFO] [stdout] 345 | /             self.device.wait_for_fences(
[INFO] [stdout] 346 | |                 &[self.data.images_in_flight[image_index as usize]],
[INFO] [stdout] 347 | |                 true,
[INFO] [stdout] 348 | |                 u64::MAX,
[INFO] [stdout] 349 | |             )?;
[INFO] [stdout]     | |_____________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `app::App::update_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:354:9
[INFO] [stdout]     |
[INFO] [stdout] 354 |         self.update_command_buffer(image_index)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::descriptors::update_uniform_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:355:9
[INFO] [stdout]     |
[INFO] [stdout] 355 |         update_uniform_buffer(&self.device, &self.start, &self.data, image_index)?;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::reset_fences` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:367:9
[INFO] [stdout]     |
[INFO] [stdout] 367 | /         self.device
[INFO] [stdout] 368 | |             .reset_fences(&[self.data.in_flight_fences[self.frame]])?;
[INFO] [stdout]     | |____________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::queue_submit` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:370:9
[INFO] [stdout]     |
[INFO] [stdout] 370 | /         self.device.queue_submit(
[INFO] [stdout] 371 | |             self.data.graphics_queue,
[INFO] [stdout] 372 | |             &[submit_info],
[INFO] [stdout] 373 | |             self.data.in_flight_fences[self.frame],
[INFO] [stdout] 374 | |         )?;
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSwapchainExtensionDeviceCommands::queue_present_khr` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:383:22
[INFO] [stdout]     |
[INFO] [stdout] 383 |           let result = self
[INFO] [stdout]     |  ______________________^
[INFO] [stdout] 384 | |             .device
[INFO] [stdout] 385 | |             .queue_present_khr(self.data.present_queue, &present_info);
[INFO] [stdout]     | |______________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `app::App::recreate_swapchain` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:391:13
[INFO] [stdout]     |
[INFO] [stdout] 391 |             self.recreate_swapchain(window)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `app::App::destroy_swapchain` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         self.destroy_swapchain();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/app.rs:402:5
[INFO] [stdout]     |
[INFO] [stdout] 402 |     pub unsafe fn destroy(&mut self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::QueueFamilyIndices::get` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/swapchain.rs:81:19
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let indices = QueueFamilyIndices::get(instance, data, data.physical_device)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/swapchain.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / pub unsafe fn create_swapchain(
[INFO] [stdout] 76 | |     window: &Window,
[INFO] [stdout] 77 | |     instance: &Instance,
[INFO] [stdout] 78 | |     device: &Device,
[INFO] [stdout] 79 | |     data: &mut AppData,
[INFO] [stdout] 80 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_sampler` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |         self.device.destroy_sampler(self.data.texture_sampler, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::swapchain::SwapchainSupport::get` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/swapchain.rs:82:19
[INFO] [stdout]    |
[INFO] [stdout] 82 |     let support = SwapchainSupport::get(instance, data, data.physical_device)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSwapchainExtensionDeviceCommands::create_swapchain_khr` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/swapchain.rs:120:22
[INFO] [stdout]     |
[INFO] [stdout] 120 |     data.swapchain = device.create_swapchain_khr(&info, None)?;
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_image_view` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:405:9
[INFO] [stdout]     |
[INFO] [stdout] 405 | /         self.device
[INFO] [stdout] 406 | |             .destroy_image_view(self.data.texture_image_view, None);
[INFO] [stdout]     | |___________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSwapchainExtensionDeviceCommands::get_swapchain_images_khr` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/swapchain.rs:121:29
[INFO] [stdout]     |
[INFO] [stdout] 121 |     data.swapchain_images = device.get_swapchain_images_khr(data.swapchain)?;
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_image` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         self.device.destroy_image(self.data.texture_image, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::free_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 | /         self.device
[INFO] [stdout] 410 | |             .free_memory(self.data.texture_image_memory, None);
[INFO] [stdout]     | |______________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_descriptor_set_layout` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:412:9
[INFO] [stdout]     |
[INFO] [stdout] 412 | /         self.device
[INFO] [stdout] 413 | |             .destroy_descriptor_set_layout(self.data.descriptor_set_layout, None);
[INFO] [stdout]     | |_________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:414:9
[INFO] [stdout]     |
[INFO] [stdout] 414 |         self.device.destroy_buffer(self.data.index_buffer, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::free_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:415:9
[INFO] [stdout]     |
[INFO] [stdout] 415 |         self.device.free_memory(self.data.index_buffer_memory, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:416:9
[INFO] [stdout]     |
[INFO] [stdout] 416 |         self.device.destroy_buffer(self.data.vertex_buffer, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::free_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:417:9
[INFO] [stdout]     |
[INFO] [stdout] 417 | /         self.device
[INFO] [stdout] 418 | |             .free_memory(self.data.vertex_buffer_memory, None);
[INFO] [stdout]     | |______________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_fence` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:424:27
[INFO] [stdout]     |
[INFO] [stdout] 424 |             .for_each(|f| self.device.destroy_fence(*f, None));
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_semaphore` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:428:27
[INFO] [stdout]     |
[INFO] [stdout] 428 |             .for_each(|s| self.device.destroy_semaphore(*s, None));
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_semaphore` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:432:27
[INFO] [stdout]     |
[INFO] [stdout] 432 |             .for_each(|s| self.device.destroy_semaphore(*s, None));
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_command_pool` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:435:9
[INFO] [stdout]     |
[INFO] [stdout] 435 | /         self.device
[INFO] [stdout] 436 | |             .destroy_command_pool(self.data.command_pool, None);
[INFO] [stdout]     | |_______________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_device` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:437:9
[INFO] [stdout]     |
[INFO] [stdout] 437 |         self.device.destroy_device(None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::ExtDebugUtilsExtensionInstanceCommands::destroy_debug_utils_messenger_ext` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:440:13
[INFO] [stdout]     |
[INFO] [stdout] 440 | /             self.instance
[INFO] [stdout] 441 | |                 .destroy_debug_utils_messenger_ext(self.data.messenger, None);
[INFO] [stdout]     | |_____________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_framebuffer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             device.create_framebuffer(&create_info, None)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/buffers.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub unsafe fn create_framebuffers(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSurfaceExtensionInstanceCommands::destroy_surface_khr` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:444:9
[INFO] [stdout]     |
[INFO] [stdout] 444 |         self.instance.destroy_surface_khr(self.data.surface, None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::destroy_instance` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/app.rs:445:9
[INFO] [stdout]     |
[INFO] [stdout] 445 |         self.instance.destroy_instance(None);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::QueueFamilyIndices::get` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let indices = QueueFamilyIndices::get(instance, data, data.physical_device)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/buffers.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / pub unsafe fn create_command_pool(
[INFO] [stdout] 35 | |     instance: &Instance,
[INFO] [stdout] 36 | |     device: &Device,
[INFO] [stdout] 37 | |     data: &mut AppData,
[INFO] [stdout] 38 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_command_pool` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |     data.command_pool = device.create_command_pool(&info, None)?;
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::allocate_command_buffers` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:73:26
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let command_buffer = device.allocate_command_buffers(&info)?[0];
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/buffers.rs:64:1
[INFO] [stdout]    |
[INFO] [stdout] 64 | / pub unsafe fn begin_onetime_command(
[INFO] [stdout] 65 | |     device: &Device,
[INFO] [stdout] 66 | |     data: &AppData,
[INFO] [stdout] 67 | | ) -> Result<(vk::CommandBuffer)> {
[INFO] [stdout]    | |________________________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::begin_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     device.begin_command_buffer(command_buffer, &info)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::end_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     device.end_command_buffer(command_buffer)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/buffers.rs:82:1
[INFO] [stdout]    |
[INFO] [stdout] 82 | / pub unsafe fn end_onetime_command(
[INFO] [stdout] 83 | |     device: &Device,
[INFO] [stdout] 84 | |     data: &AppData,
[INFO] [stdout] 85 | |     command_buffer: vk::CommandBuffer,
[INFO] [stdout] 86 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::queue_submit` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:92:5
[INFO] [stdout]    |
[INFO] [stdout] 92 |     device.queue_submit(data.graphics_queue, &[info], vk::Fence::null())?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::queue_wait_idle` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     device.queue_wait_idle(data.graphics_queue)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::free_command_buffers` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     device.free_command_buffers(data.command_pool, &[command_buffer]);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_descriptor_set_layout` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/descriptors.rs:36:34
[INFO] [stdout]    |
[INFO] [stdout] 36 |     data.descriptor_set_layout = device.create_descriptor_set_layout(&info, None)?;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/descriptors.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub unsafe fn create_descriptor_set_layout(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::vertex::create_buffer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/descriptors.rs:50:55
[INFO] [stdout]    |
[INFO] [stdout] 50 |           let (uniform_buffer, uniform_buffer_memory) = create_buffer(
[INFO] [stdout]    |  _______________________________________________________^
[INFO] [stdout] 51 | |             instance,
[INFO] [stdout] 52 | |             device,
[INFO] [stdout] 53 | |             data,
[INFO] [stdout] ...  |
[INFO] [stdout] 56 | |             vk::MemoryPropertyFlags::HOST_COHERENT | vk::MemoryPropertyFlags::HOST_VISIBLE,
[INFO] [stdout] 57 | |         )?;
[INFO] [stdout]    | |_________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/descriptors.rs:41:1
[INFO] [stdout]    |
[INFO] [stdout] 41 | / pub unsafe fn create_uniform_buffers(
[INFO] [stdout] 42 | |     instance: &Instance,
[INFO] [stdout] 43 | |     device: &Device,
[INFO] [stdout] 44 | |     data: &mut AppData,
[INFO] [stdout] 45 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::enumerate_physical_devices` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 |     for physical_device in instance.enumerate_physical_devices()? {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/device.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub unsafe fn pick_physical_device(instance: &Instance, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::get_physical_device_properties` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:28:26
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let properties = instance.get_physical_device_properties(physical_device);
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::check_physical_device` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:30:29
[INFO] [stdout]    |
[INFO] [stdout] 30 |         if let Err(error) = check_physical_device(instance, data, physical_device) {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `scenes::sampling::get_max_msaa_samples` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:38:33
[INFO] [stdout]    |
[INFO] [stdout] 38 |             data.msaa_samples = get_max_msaa_samples(instance, data);
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_descriptor_pool` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/descriptors.rs:80:28
[INFO] [stdout]    |
[INFO] [stdout] 80 |     data.descriptor_pool = device.create_descriptor_pool(&info, None)?;
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/descriptors.rs:66:1
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub unsafe fn create_descriptor_pool(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::get_physical_device_queue_family_properties` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:58:26
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let properties = instance.get_physical_device_queue_family_properties(physical_device);
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/device.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | /     pub unsafe fn get(
[INFO] [stdout] 54 | |         instance: &Instance,
[INFO] [stdout] 55 | |         data: &AppData,
[INFO] [stdout] 56 | |         physical_device: vk::PhysicalDevice,
[INFO] [stdout] 57 | |     ) -> Result<Self> {
[INFO] [stdout]    | |_____________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSurfaceExtensionInstanceCommands::get_physical_device_surface_support_khr` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:67:16
[INFO] [stdout]    |
[INFO] [stdout] 67 |               if instance.get_physical_device_surface_support_khr(
[INFO] [stdout]    |  ________________^
[INFO] [stdout] 68 | |                 physical_device,
[INFO] [stdout] 69 | |                 index as u32,
[INFO] [stdout] 70 | |                 data.surface,
[INFO] [stdout] 71 | |             )? {
[INFO] [stdout]    | |_____________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::allocate_descriptor_sets` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/descriptors.rs:91:28
[INFO] [stdout]    |
[INFO] [stdout] 91 |     data.descriptor_sets = device.allocate_descriptor_sets(&info)?;
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/descriptors.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub unsafe fn create_descriptor_sets(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::update_descriptor_sets` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/descriptors.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |         device.update_descriptor_sets(&[ubo_write, sampler_write], &[] as &[vk::CopyDescriptorSet]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `properties`
[INFO] [stdout]   --> src/foundation/device.rs:66:21
[INFO] [stdout]    |
[INFO] [stdout] 66 |         for (index, properties) in properties.iter().enumerate() {
[INFO] [stdout]    |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::QueueFamilyIndices::get` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     QueueFamilyIndices::get(instance, data, physical_device)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/device.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | / unsafe fn check_physical_device(
[INFO] [stdout] 86 | |     instance: &Instance,
[INFO] [stdout] 87 | |     data: &AppData,
[INFO] [stdout] 88 | |     physical_device: vk::PhysicalDevice,
[INFO] [stdout] 89 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::map_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/descriptors.rs:172:18
[INFO] [stdout]     |
[INFO] [stdout] 172 |       let memory = device.map_memory(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 173 | |         data.uniform_buffers_memory[image_index],
[INFO] [stdout] 174 | |         0,
[INFO] [stdout] 175 | |         size_of::<UniformBufferObject>() as u64,
[INFO] [stdout] 176 | |         vk::MemoryMapFlags::empty(),
[INFO] [stdout] 177 | |     )?;
[INFO] [stdout]     | |_____^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/pipeline/descriptors.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | / pub unsafe fn update_uniform_buffer(
[INFO] [stdout] 126 | |     device: &Device,
[INFO] [stdout] 127 | |     start: &Instant,
[INFO] [stdout] 128 | |     data: &AppData,
[INFO] [stdout] 129 | |     image_index: usize,
[INFO] [stdout] 130 | | ) -> Result<()> {
[INFO] [stdout]     | |_______________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::check_physical_device_extensions` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 |     check_physical_device_extensions(instance, physical_device)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::swapchain::SwapchainSupport::get` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/device.rs:94:19
[INFO] [stdout]    |
[INFO] [stdout] 94 |     let support = SwapchainSupport::get(instance, data, physical_device)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::get_physical_device_features` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:100:20
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let features = instance.get_physical_device_features(physical_device);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/descriptors.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     memcpy(&ubo, memory.cast(), 1);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::unmap_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/descriptors.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     device.unmap_memory(data.uniform_buffers_memory[image_index]);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::enumerate_device_extension_properties` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:112:22
[INFO] [stdout]     |
[INFO] [stdout] 112 |       let extensions = instance
[INFO] [stdout]     |  ______________________^
[INFO] [stdout] 113 | |         .enumerate_device_extension_properties(physical_device, None)?
[INFO] [stdout]     | |_____________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/foundation/device.rs:108:1
[INFO] [stdout]     |
[INFO] [stdout] 108 | / unsafe fn check_physical_device_extensions(
[INFO] [stdout] 109 | |     instance: &Instance,
[INFO] [stdout] 110 | |     physical_device: vk::PhysicalDevice,
[INFO] [stdout] 111 | | ) -> Result<()> {
[INFO] [stdout]     | |_______________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pipeline/descriptors.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let mut proj = correction
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/pipeline/descriptors.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |     let time = start.elapsed().as_secs_f32();
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_image` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/image.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let image = device.create_image(&info, None)?;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/image.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / pub unsafe fn create_image(
[INFO] [stdout] 22 | |     instance: &Instance,
[INFO] [stdout] 23 | |     device: &Device,
[INFO] [stdout] 24 | |     data: &AppData,
[INFO] [stdout] ...  |
[INFO] [stdout] 32 | |     properties: vk::MemoryPropertyFlags,
[INFO] [stdout] 33 | | ) -> Result<(vk::Image, vk::DeviceMemory)> {
[INFO] [stdout]    | |__________________________________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::get_image_memory_requirements` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/image.rs:52:24
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let requirements = device.get_image_memory_requirements(image);
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::vertex::get_memory_type_index` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/image.rs:55:28
[INFO] [stdout]    |
[INFO] [stdout] 55 |           .memory_type_index(get_memory_type_index(
[INFO] [stdout]    |  ____________________________^
[INFO] [stdout] 56 | |             instance,
[INFO] [stdout] 57 | |             data,
[INFO] [stdout] 58 | |             properties,
[INFO] [stdout] 59 | |             requirements,
[INFO] [stdout] 60 | |         )?);
[INFO] [stdout]    | |_________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::allocate_memory` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/image.rs:62:24
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let image_memory = device.allocate_memory(&info, None)?;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::bind_image_memory` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/image.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     device.bind_image_memory(image, image_memory, 0)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::QueueFamilyIndices::get` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:132:19
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let indices = QueueFamilyIndices::get(instance, data, data.physical_device)?;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/foundation/device.rs:127:1
[INFO] [stdout]     |
[INFO] [stdout] 127 | / pub unsafe fn create_logical_device(
[INFO] [stdout] 128 | |     entry: &Entry,
[INFO] [stdout] 129 | |     instance: &Instance,
[INFO] [stdout] 130 | |     data: &mut AppData,
[INFO] [stdout] 131 | | ) -> Result<Device> {
[INFO] [stdout]     | |___________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::Instance::create_device` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:171:18
[INFO] [stdout]     |
[INFO] [stdout] 171 |     let device = instance.create_device(data.physical_device, &info, None)?;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::get_device_queue` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:172:27
[INFO] [stdout]     |
[INFO] [stdout] 172 |     data.graphics_queue = device.get_device_queue(indices.graphics, 0);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::get_device_queue` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/device.rs:173:26
[INFO] [stdout]     |
[INFO] [stdout] 173 |     data.present_queue = device.get_device_queue(indices.present, 0);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::buffers::begin_onetime_command` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/image.rs:247:26
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let command_buffer = begin_onetime_command(device, data)?;
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/pipeline/image.rs:214:1
[INFO] [stdout]     |
[INFO] [stdout] 214 | / pub unsafe fn transition_image_layout(
[INFO] [stdout] 215 | |     device: &Device,
[INFO] [stdout] 216 | |     data: &AppData,
[INFO] [stdout] 217 | |     image: vk::Image,
[INFO] [stdout] ...   |
[INFO] [stdout] 221 | |     mip_levels: u32,
[INFO] [stdout] 222 | | ) -> Result<()> {
[INFO] [stdout]     | |_______________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_pipeline_barrier` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/image.rs:277:5
[INFO] [stdout]     |
[INFO] [stdout] 277 | /     device.cmd_pipeline_barrier(
[INFO] [stdout] 278 | |         command_buffer,
[INFO] [stdout] 279 | |         src_stage_mask,
[INFO] [stdout] 280 | |         dst_stage_mask,
[INFO] [stdout] ...   |
[INFO] [stdout] 284 | |         &[barrier],
[INFO] [stdout] 285 | |     );
[INFO] [stdout]     | |_____^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::EntryV1_0::enumerate_instance_layer_properties` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/instance.rs:87:28
[INFO] [stdout]    |
[INFO] [stdout] 87 |       let available_layers = entry
[INFO] [stdout]    |  ____________________________^
[INFO] [stdout] 88 | |         .enumerate_instance_layer_properties()?
[INFO] [stdout]    | |______________________________________________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/instance.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 | / pub unsafe fn create_instance(
[INFO] [stdout] 48 | |     window: &Window,
[INFO] [stdout] 49 | |     entry: &Entry,
[INFO] [stdout] 50 | |     data: &mut AppData,
[INFO] [stdout] 51 | | ) -> Result<Instance> {
[INFO] [stdout]    | |_____________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::buffers::end_onetime_command` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/image.rs:287:5
[INFO] [stdout]     |
[INFO] [stdout] 287 |     end_onetime_command(device, data, command_buffer)?;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::Entry::create_instance` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/instance.rs:123:20
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let instance = entry.create_instance(&info, None)?;
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::ExtDebugUtilsExtensionInstanceCommands::create_debug_utils_messenger_ext` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/instance.rs:135:26
[INFO] [stdout]     |
[INFO] [stdout] 135 |         data.messenger = instance.create_debug_utils_messenger_ext(&debug_info, None)?;
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_semaphore` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/render.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |             .push(device.create_semaphore(&semaphore_info, None)?);
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/render.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub unsafe fn create_sync_objects(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_semaphore` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/render.rs:17:19
[INFO] [stdout]    |
[INFO] [stdout] 17 |             .push(device.create_semaphore(&semaphore_info, None)?);
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSurfaceExtensionInstanceCommands::get_physical_device_surface_capabilities_khr` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/swapchain.rs:29:27
[INFO] [stdout]    |
[INFO] [stdout] 29 |               capabilities: instance
[INFO] [stdout]    |  ___________________________^
[INFO] [stdout] 30 | |                 .get_physical_device_surface_capabilities_khr(physical_device, data.surface)?,
[INFO] [stdout]    | |____________________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/swapchain.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | /     pub unsafe fn get(
[INFO] [stdout] 24 | |         instance: &Instance,
[INFO] [stdout] 25 | |         data: &AppData,
[INFO] [stdout] 26 | |         physical_device: vk::PhysicalDevice,
[INFO] [stdout] 27 | |     ) -> Result<Self> {
[INFO] [stdout]    | |_____________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSurfaceExtensionInstanceCommands::get_physical_device_surface_formats_khr` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/swapchain.rs:31:22
[INFO] [stdout]    |
[INFO] [stdout] 31 |               formats: instance
[INFO] [stdout]    |  ______________________^
[INFO] [stdout] 32 | |                 .get_physical_device_surface_formats_khr(physical_device, data.surface)?,
[INFO] [stdout]    | |_______________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSurfaceExtensionInstanceCommands::get_physical_device_surface_present_modes_khr` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/swapchain.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 |               present_modes: instance
[INFO] [stdout]    |  ____________________________^
[INFO] [stdout] 34 | |                 .get_physical_device_surface_present_modes_khr(physical_device, data.surface)?,
[INFO] [stdout]    | |_____________________________________________________________________________________________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_fence` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/render.rs:20:19
[INFO] [stdout]    |
[INFO] [stdout] 20 |             .push(device.create_fence(&fence_info, None)?);
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_shader_module` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/shader.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Ok(device.create_shader_module(&info, None)?)
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/shader.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub unsafe fn create_shader_module(device: &Device, bytecode: &[u8]) -> Result<vk::ShaderModule> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_sampler` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/texture.rs:29:28
[INFO] [stdout]    |
[INFO] [stdout] 29 |     data.texture_sampler = device.create_sampler(&info, None)?;
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/texture.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub unsafe fn create_texture_sampler(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::QueueFamilyIndices::get` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/swapchain.rs:81:19
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let indices = QueueFamilyIndices::get(instance, data, data.physical_device)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/foundation/swapchain.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / pub unsafe fn create_swapchain(
[INFO] [stdout] 76 | |     window: &Window,
[INFO] [stdout] 77 | |     instance: &Instance,
[INFO] [stdout] 78 | |     device: &Device,
[INFO] [stdout] 79 | |     data: &mut AppData,
[INFO] [stdout] 80 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::swapchain::SwapchainSupport::get` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/foundation/swapchain.rs:82:19
[INFO] [stdout]    |
[INFO] [stdout] 82 |     let support = SwapchainSupport::get(instance, data, data.physical_device)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSwapchainExtensionDeviceCommands::create_swapchain_khr` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/swapchain.rs:120:22
[INFO] [stdout]     |
[INFO] [stdout] 120 |     data.swapchain = device.create_swapchain_khr(&info, None)?;
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::KhrSwapchainExtensionDeviceCommands::get_swapchain_images_khr` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/foundation/swapchain.rs:121:29
[INFO] [stdout]     |
[INFO] [stdout] 121 |     data.swapchain_images = device.get_swapchain_images_khr(data.swapchain)?;
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_framebuffer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:25:13
[INFO] [stdout]    |
[INFO] [stdout] 25 |             device.create_framebuffer(&create_info, None)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/buffers.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub unsafe fn create_framebuffers(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `foundation::device::QueueFamilyIndices::get` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:39:19
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let indices = QueueFamilyIndices::get(instance, data, data.physical_device)?;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/buffers.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / pub unsafe fn create_command_pool(
[INFO] [stdout] 35 | |     instance: &Instance,
[INFO] [stdout] 36 | |     device: &Device,
[INFO] [stdout] 37 | |     data: &mut AppData,
[INFO] [stdout] 38 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_command_pool` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |     data.command_pool = device.create_command_pool(&info, None)?;
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::allocate_command_buffers` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:73:26
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let command_buffer = device.allocate_command_buffers(&info)?[0];
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/buffers.rs:64:1
[INFO] [stdout]    |
[INFO] [stdout] 64 | / pub unsafe fn begin_onetime_command(
[INFO] [stdout] 65 | |     device: &Device,
[INFO] [stdout] 66 | |     data: &AppData,
[INFO] [stdout] 67 | | ) -> Result<(vk::CommandBuffer)> {
[INFO] [stdout]    | |________________________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::begin_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     device.begin_command_buffer(command_buffer, &info)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::get_physical_device_memory_properties` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/vertex.rs:98:18
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let memory = instance.get_physical_device_memory_properties(data.physical_device);
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/vertex.rs:92:1
[INFO] [stdout]    |
[INFO] [stdout] 92 | / pub unsafe fn get_memory_type_index(
[INFO] [stdout] 93 | |     instance: &Instance,
[INFO] [stdout] 94 | |     data: &AppData,
[INFO] [stdout] 95 | |     properties: vk::MemoryPropertyFlags,
[INFO] [stdout] 96 | |     requirements: vk::MemoryRequirements,
[INFO] [stdout] 97 | | ) -> Result<u32> {
[INFO] [stdout]    | |________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::end_command_buffer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     device.end_command_buffer(command_buffer)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/buffers.rs:82:1
[INFO] [stdout]    |
[INFO] [stdout] 82 | / pub unsafe fn end_onetime_command(
[INFO] [stdout] 83 | |     device: &Device,
[INFO] [stdout] 84 | |     data: &AppData,
[INFO] [stdout] 85 | |     command_buffer: vk::CommandBuffer,
[INFO] [stdout] 86 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::queue_submit` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:92:5
[INFO] [stdout]    |
[INFO] [stdout] 92 |     device.queue_submit(data.graphics_queue, &[info], vk::Fence::null())?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::queue_wait_idle` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     device.queue_wait_idle(data.graphics_queue)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::free_command_buffers` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/buffers.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     device.free_command_buffers(data.command_pool, &[command_buffer]);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:121:18
[INFO] [stdout]     |
[INFO] [stdout] 121 |     let buffer = device.create_buffer(&buffer_info, None)?;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/pipeline/vertex.rs:108:1
[INFO] [stdout]     |
[INFO] [stdout] 108 | / pub unsafe fn create_buffer(
[INFO] [stdout] 109 | |     instance: &Instance,
[INFO] [stdout] 110 | |     device: &Device,
[INFO] [stdout] 111 | |     data: &AppData,
[INFO] [stdout] ...   |
[INFO] [stdout] 114 | |     properties: vk::MemoryPropertyFlags,
[INFO] [stdout] 115 | | ) -> Result<(vk::Buffer, vk::DeviceMemory)> {
[INFO] [stdout]     | |___________________________________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::get_buffer_memory_requirements` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:123:24
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let requirements = device.get_buffer_memory_requirements(buffer);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::vertex::get_memory_type_index` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:126:28
[INFO] [stdout]     |
[INFO] [stdout] 126 |           .memory_type_index(get_memory_type_index(
[INFO] [stdout]     |  ____________________________^
[INFO] [stdout] 127 | |             instance,
[INFO] [stdout] 128 | |             data,
[INFO] [stdout] 129 | |             properties,
[INFO] [stdout] 130 | |             requirements,
[INFO] [stdout] 131 | |         )?);
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::allocate_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:133:25
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let buffer_memory = device.allocate_memory(&memory_info, None)?;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::bind_buffer_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     device.bind_buffer_memory(buffer, buffer_memory, 0)?;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_descriptor_set_layout` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/descriptors.rs:36:34
[INFO] [stdout]    |
[INFO] [stdout] 36 |     data.descriptor_set_layout = device.create_descriptor_set_layout(&info, None)?;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/descriptors.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub unsafe fn create_descriptor_set_layout(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::vertex::create_buffer` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/descriptors.rs:50:55
[INFO] [stdout]    |
[INFO] [stdout] 50 |           let (uniform_buffer, uniform_buffer_memory) = create_buffer(
[INFO] [stdout]    |  _______________________________________________________^
[INFO] [stdout] 51 | |             instance,
[INFO] [stdout] 52 | |             device,
[INFO] [stdout] 53 | |             data,
[INFO] [stdout] ...  |
[INFO] [stdout] 56 | |             vk::MemoryPropertyFlags::HOST_COHERENT | vk::MemoryPropertyFlags::HOST_VISIBLE,
[INFO] [stdout] 57 | |         )?;
[INFO] [stdout]    | |_________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/descriptors.rs:41:1
[INFO] [stdout]    |
[INFO] [stdout] 41 | / pub unsafe fn create_uniform_buffers(
[INFO] [stdout] 42 | |     instance: &Instance,
[INFO] [stdout] 43 | |     device: &Device,
[INFO] [stdout] 44 | |     data: &mut AppData,
[INFO] [stdout] 45 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_descriptor_pool` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/descriptors.rs:80:28
[INFO] [stdout]    |
[INFO] [stdout] 80 |     data.descriptor_pool = device.create_descriptor_pool(&info, None)?;
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/descriptors.rs:66:1
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub unsafe fn create_descriptor_pool(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::allocate_descriptor_sets` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/descriptors.rs:91:28
[INFO] [stdout]    |
[INFO] [stdout] 91 |     data.descriptor_sets = device.allocate_descriptor_sets(&info)?;
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/descriptors.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub unsafe fn create_descriptor_sets(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::update_descriptor_sets` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/descriptors.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |         device.update_descriptor_sets(&[ubo_write, sampler_write], &[] as &[vk::CopyDescriptorSet]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::buffers::begin_onetime_command` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:147:26
[INFO] [stdout]     |
[INFO] [stdout] 147 |     let command_buffer = begin_onetime_command(device, data)?;
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/pipeline/vertex.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | / pub unsafe fn copy_buffer(
[INFO] [stdout] 141 | |     device: &Device,
[INFO] [stdout] 142 | |     data: &AppData,
[INFO] [stdout] 143 | |     source: vk::Buffer,
[INFO] [stdout] 144 | |     destination: vk::Buffer,
[INFO] [stdout] 145 | |     size: vk::DeviceSize,
[INFO] [stdout] 146 | | ) -> Result<()> {
[INFO] [stdout]     | |_______________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_copy_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 150 |     device.cmd_copy_buffer(command_buffer, source, destination, &[regions]);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::buffers::end_onetime_command` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     end_onetime_command(device, data, command_buffer)?;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::map_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/descriptors.rs:172:18
[INFO] [stdout]     |
[INFO] [stdout] 172 |       let memory = device.map_memory(
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 173 | |         data.uniform_buffers_memory[image_index],
[INFO] [stdout] 174 | |         0,
[INFO] [stdout] 175 | |         size_of::<UniformBufferObject>() as u64,
[INFO] [stdout] 176 | |         vk::MemoryMapFlags::empty(),
[INFO] [stdout] 177 | |     )?;
[INFO] [stdout]     | |_____^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/pipeline/descriptors.rs:125:1
[INFO] [stdout]     |
[INFO] [stdout] 125 | / pub unsafe fn update_uniform_buffer(
[INFO] [stdout] 126 | |     device: &Device,
[INFO] [stdout] 127 | |     start: &Instant,
[INFO] [stdout] 128 | |     data: &AppData,
[INFO] [stdout] 129 | |     image_index: usize,
[INFO] [stdout] 130 | | ) -> Result<()> {
[INFO] [stdout]     | |_______________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/descriptors.rs:179:5
[INFO] [stdout]     |
[INFO] [stdout] 179 |     memcpy(&ubo, memory.cast(), 1);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::unmap_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/descriptors.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |     device.unmap_memory(data.uniform_buffers_memory[image_index]);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pipeline/descriptors.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let mut proj = correction
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time`
[INFO] [stdout]    --> src/pipeline/descriptors.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |     let time = start.elapsed().as_secs_f32();
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_image` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/image.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let image = device.create_image(&info, None)?;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/image.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / pub unsafe fn create_image(
[INFO] [stdout] 22 | |     instance: &Instance,
[INFO] [stdout] 23 | |     device: &Device,
[INFO] [stdout] 24 | |     data: &AppData,
[INFO] [stdout] ...  |
[INFO] [stdout] 32 | |     properties: vk::MemoryPropertyFlags,
[INFO] [stdout] 33 | | ) -> Result<(vk::Image, vk::DeviceMemory)> {
[INFO] [stdout]    | |__________________________________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::get_image_memory_requirements` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/image.rs:52:24
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let requirements = device.get_image_memory_requirements(image);
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::vertex::get_memory_type_index` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/image.rs:55:28
[INFO] [stdout]    |
[INFO] [stdout] 55 |           .memory_type_index(get_memory_type_index(
[INFO] [stdout]    |  ____________________________^
[INFO] [stdout] 56 | |             instance,
[INFO] [stdout] 57 | |             data,
[INFO] [stdout] 58 | |             properties,
[INFO] [stdout] 59 | |             requirements,
[INFO] [stdout] 60 | |         )?);
[INFO] [stdout]    | |_________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::allocate_memory` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/image.rs:62:24
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let image_memory = device.allocate_memory(&info, None)?;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::image::get_depth_format` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/mod.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |         .format(get_depth_format(instance, data)?)
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/mod.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / pub unsafe fn create_render_pass(
[INFO] [stdout] 22 | |     instance: &Instance,
[INFO] [stdout] 23 | |     device: &Device,
[INFO] [stdout] 24 | |     data: &mut AppData,
[INFO] [stdout] 25 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::bind_image_memory` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/image.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     device.bind_image_memory(image, image_memory, 0)?;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_render_pass` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:111:24
[INFO] [stdout]     |
[INFO] [stdout] 111 |     data.render_pass = device.create_render_pass(&info, None)?;
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::shader::create_shader_module` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:120:30
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let vert_shader_module = create_shader_module(device, &vert[..])?;
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/pipeline/mod.rs:116:1
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub unsafe fn create_pipeline(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::shader::create_shader_module` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:121:30
[INFO] [stdout]     |
[INFO] [stdout] 121 |     let frag_shader_module = create_shader_module(device, &frag[..])?;
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_pipeline_layout` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:215:28
[INFO] [stdout]     |
[INFO] [stdout] 215 |     data.pipeline_layout = device.create_pipeline_layout(&layout_info, None)?;
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_graphics_pipelines` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:244:21
[INFO] [stdout]     |
[INFO] [stdout] 244 |       data.pipeline = device
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 245 | |         .create_graphics_pipelines(vk::PipelineCache::null(), &[info], None)?
[INFO] [stdout]     | |____________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_shader_module` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:249:5
[INFO] [stdout]     |
[INFO] [stdout] 249 |     device.destroy_shader_module(vert_shader_module, None);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_shader_module` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 |     device.destroy_shader_module(frag_shader_module, None);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::buffers::begin_onetime_command` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/image.rs:247:26
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let command_buffer = begin_onetime_command(device, data)?;
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/pipeline/image.rs:214:1
[INFO] [stdout]     |
[INFO] [stdout] 214 | / pub unsafe fn transition_image_layout(
[INFO] [stdout] 215 | |     device: &Device,
[INFO] [stdout] 216 | |     data: &AppData,
[INFO] [stdout] 217 | |     image: vk::Image,
[INFO] [stdout] ...   |
[INFO] [stdout] 221 | |     mip_levels: u32,
[INFO] [stdout] 222 | | ) -> Result<()> {
[INFO] [stdout]     | |_______________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_pipeline_barrier` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/image.rs:277:5
[INFO] [stdout]     |
[INFO] [stdout] 277 | /     device.cmd_pipeline_barrier(
[INFO] [stdout] 278 | |         command_buffer,
[INFO] [stdout] 279 | |         src_stage_mask,
[INFO] [stdout] 280 | |         dst_stage_mask,
[INFO] [stdout] ...   |
[INFO] [stdout] 284 | |         &[barrier],
[INFO] [stdout] 285 | |     );
[INFO] [stdout]     | |_____^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::buffers::end_onetime_command` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/image.rs:287:5
[INFO] [stdout]     |
[INFO] [stdout] 287 |     end_onetime_command(device, data, command_buffer)?;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_semaphore` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/render.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |             .push(device.create_semaphore(&semaphore_info, None)?);
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/render.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub unsafe fn create_sync_objects(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_semaphore` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/render.rs:17:19
[INFO] [stdout]    |
[INFO] [stdout] 17 |             .push(device.create_semaphore(&semaphore_info, None)?);
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_fence` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/render.rs:20:19
[INFO] [stdout]    |
[INFO] [stdout] 20 |             .push(device.create_fence(&fence_info, None)?);
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_shader_module` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/shader.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Ok(device.create_shader_module(&info, None)?)
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/shader.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub unsafe fn create_shader_module(device: &Device, bytecode: &[u8]) -> Result<vk::ShaderModule> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_sampler` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/texture.rs:29:28
[INFO] [stdout]    |
[INFO] [stdout] 29 |     data.texture_sampler = device.create_sampler(&info, None)?;
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/texture.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub unsafe fn create_texture_sampler(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::InstanceV1_0::get_physical_device_memory_properties` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/vertex.rs:98:18
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let memory = instance.get_physical_device_memory_properties(data.physical_device);
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/vertex.rs:92:1
[INFO] [stdout]    |
[INFO] [stdout] 92 | / pub unsafe fn get_memory_type_index(
[INFO] [stdout] 93 | |     instance: &Instance,
[INFO] [stdout] 94 | |     data: &AppData,
[INFO] [stdout] 95 | |     properties: vk::MemoryPropertyFlags,
[INFO] [stdout] 96 | |     requirements: vk::MemoryRequirements,
[INFO] [stdout] 97 | | ) -> Result<u32> {
[INFO] [stdout]    | |________________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:121:18
[INFO] [stdout]     |
[INFO] [stdout] 121 |     let buffer = device.create_buffer(&buffer_info, None)?;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/pipeline/vertex.rs:108:1
[INFO] [stdout]     |
[INFO] [stdout] 108 | / pub unsafe fn create_buffer(
[INFO] [stdout] 109 | |     instance: &Instance,
[INFO] [stdout] 110 | |     device: &Device,
[INFO] [stdout] 111 | |     data: &AppData,
[INFO] [stdout] ...   |
[INFO] [stdout] 114 | |     properties: vk::MemoryPropertyFlags,
[INFO] [stdout] 115 | | ) -> Result<(vk::Buffer, vk::DeviceMemory)> {
[INFO] [stdout]     | |___________________________________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::get_buffer_memory_requirements` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:123:24
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let requirements = device.get_buffer_memory_requirements(buffer);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::vertex::get_memory_type_index` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:126:28
[INFO] [stdout]     |
[INFO] [stdout] 126 |           .memory_type_index(get_memory_type_index(
[INFO] [stdout]     |  ____________________________^
[INFO] [stdout] 127 | |             instance,
[INFO] [stdout] 128 | |             data,
[INFO] [stdout] 129 | |             properties,
[INFO] [stdout] 130 | |             requirements,
[INFO] [stdout] 131 | |         )?);
[INFO] [stdout]     | |_________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::allocate_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:133:25
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let buffer_memory = device.allocate_memory(&memory_info, None)?;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::bind_buffer_memory` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     device.bind_buffer_memory(buffer, buffer_memory, 0)?;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::buffers::begin_onetime_command` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:147:26
[INFO] [stdout]     |
[INFO] [stdout] 147 |     let command_buffer = begin_onetime_command(device, data)?;
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/pipeline/vertex.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | / pub unsafe fn copy_buffer(
[INFO] [stdout] 141 | |     device: &Device,
[INFO] [stdout] 142 | |     data: &AppData,
[INFO] [stdout] 143 | |     source: vk::Buffer,
[INFO] [stdout] 144 | |     destination: vk::Buffer,
[INFO] [stdout] 145 | |     size: vk::DeviceSize,
[INFO] [stdout] 146 | | ) -> Result<()> {
[INFO] [stdout]     | |_______________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::cmd_copy_buffer` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 150 |     device.cmd_copy_buffer(command_buffer, source, destination, &[regions]);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::buffers::end_onetime_command` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/vertex.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     end_onetime_command(device, data, command_buffer)?;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entry` is never read
[INFO] [stdout]   --> src/app.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct App {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 35 |     entry: Entry,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `App` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::image::get_depth_format` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/pipeline/mod.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |         .format(get_depth_format(instance, data)?)
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/pipeline/mod.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / pub unsafe fn create_render_pass(
[INFO] [stdout] 22 | |     instance: &Instance,
[INFO] [stdout] 23 | |     device: &Device,
[INFO] [stdout] 24 | |     data: &mut AppData,
[INFO] [stdout] 25 | | ) -> Result<()> {
[INFO] [stdout]    | |_______________^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_render_pass` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:111:24
[INFO] [stdout]     |
[INFO] [stdout] 111 |     data.render_pass = device.create_render_pass(&info, None)?;
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::shader::create_shader_module` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:120:30
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let vert_shader_module = create_shader_module(device, &vert[..])?;
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/pipeline/mod.rs:116:1
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub unsafe fn create_pipeline(device: &Device, data: &mut AppData) -> Result<()> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `pipeline::shader::create_shader_module` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:121:30
[INFO] [stdout]     |
[INFO] [stdout] 121 |     let frag_shader_module = create_shader_module(device, &frag[..])?;
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_pipeline_layout` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:215:28
[INFO] [stdout]     |
[INFO] [stdout] 215 |     data.pipeline_layout = device.create_pipeline_layout(&layout_info, None)?;
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::create_graphics_pipelines` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:244:21
[INFO] [stdout]     |
[INFO] [stdout] 244 |       data.pipeline = device
[INFO] [stdout]     |  _____________________^
[INFO] [stdout] 245 | |         .create_graphics_pipelines(vk::PipelineCache::null(), &[info], None)?
[INFO] [stdout]     | |____________________________________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_shader_module` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:249:5
[INFO] [stdout]     |
[INFO] [stdout] 249 |     device.destroy_shader_module(vert_shader_module, None);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `vulkanalia::vk::DeviceV1_0::destroy_shader_module` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/pipeline/mod.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 |     device.destroy_shader_module(frag_shader_module, None);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning: field `entry` is never read
[INFO] [stdout]   --> src/app.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct App {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 35 |     entry: Entry,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `App` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 52.34s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: winit v0.29.15
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "4d551c2c1531f82e3be4d7c06b9f53dc503be9fa2cf0e6765e7b36258a9209e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4d551c2c1531f82e3be4d7c06b9f53dc503be9fa2cf0e6765e7b36258a9209e6", kill_on_drop: false }`
[INFO] [stdout] 4d551c2c1531f82e3be4d7c06b9f53dc503be9fa2cf0e6765e7b36258a9209e6
