git: e290c5eac7c5 - main - devel/librashader: update to 0.5.1

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Thu, 14 Nov 2024 08:44:05 UTC
The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/ports/commit/?id=e290c5eac7c597e80be0347afd287c5df1c6ff2b

commit e290c5eac7c597e80be0347afd287c5df1c6ff2b
Author:     Stefan Schlosser <bsdcode@disroot.org>
AuthorDate: 2024-10-02 07:48:45 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2024-11-14 08:43:22 +0000

    devel/librashader: update to 0.5.1
    
    Changes:
    https://github.com/SnowflakePowered/librashader/releases/tag/librashader-v0.5.0
    https://github.com/SnowflakePowered/librashader/releases/tag/librashader-v0.5.1
    
    Version 0.5.0 bumps the ABI to 2, and is thus ABI-incompatible with versions of
    librashader prior to 0.5.0. Trying to load this version of librashader will fail
    if the application only supports ABI 1.
    
    Upstream's librashader-build-script doesn't do more than to compile the package
    librashader-capi and to move the resulting files around. Therefore the port uses
    the standard do-build target from the ports framework by setting CARGO_FEATURES
    and CARGO_BUILD_ARGS appropriately instead.
    
    This standardization also allows us to drop the DEBUG port option. Generating a
    debug build is now controlled by setting WITH_DEBUG, see also Mk/Uses/cargo.mk.
    
    The port now only compiles the OpenGL and Vulkan runtimes by specifying the
    appropriate CARGO_FEATURES. This excludes compiling the unneeded Metal and
    DirectX runtimes.
    
    PR:             282547
    MFH:            no (ABI break)
---
 devel/librashader/Makefile        |  41 +++---
 devel/librashader/Makefile.crates | 132 ++++++++++---------
 devel/librashader/distinfo        | 270 +++++++++++++++++++++-----------------
 devel/librashader/pkg-plist       |   3 +-
 4 files changed, 237 insertions(+), 209 deletions(-)

diff --git a/devel/librashader/Makefile b/devel/librashader/Makefile
index 7a9c2e349d9d..d09bf6ce58bb 100644
--- a/devel/librashader/Makefile
+++ b/devel/librashader/Makefile
@@ -1,7 +1,6 @@
 PORTNAME=	librashader
 DISTVERSIONPREFIX=	v
-DISTVERSION=	0.4.5
-PORTREVISION=	1
+DISTVERSION=	0.5.1
 CATEGORIES=	devel
 
 MAINTAINER=	bsdcode@disroot.org
@@ -21,30 +20,22 @@ GH_ACCOUNT=	SnowflakePowered
 GH_TAGNAME=	${DISTNAME}
 USE_LDCONFIG=	yes
 
-CARGO_BUILD=		no
-CARGO_INSTALL=		no
+CARGO_FEATURES=		--no-default-features runtime-opengl runtime-vulkan \
+			stable
+CARGO_BUILD_ARGS=	--package librashader-capi
 CARGO_TEST=		no
-CARGO_TARGET_DIR=	${WRKSRC}/target
 
-OPTIONS_DEFINE=	DEBUG DOCS EXAMPLES
+OPTIONS_DEFINE=	DOCS EXAMPLES
 
-DEBUG_VARS=	_PROFILE=debug
-DEBUG_VARS_OFF=	_PROFILE=release
-
-# https://github.com/SnowflakePowered/librashader#versioning
-# grep '#define LIBRASHADER_CURRENT_ABI' ${WRKSRC}/include/librashader.h | cut -d' ' -f3
-_ABI=		1
-
-_OUT=		${CARGO_TARGET_DIR}/${_PROFILE}
+# required ABI bump is always mentioned in the release notes
+_ABI=		2
 
 post-patch:
 	${REINPLACE_CMD} 's|/usr/local|${PREFIX}|g' \
 		${WRKSRC}/pkg/librashader.pc
 
-do-build:
-	${CARGO_CARGO_RUN} run -p librashader-build-script -- --profile \
-		${_PROFILE} --stable
-	patchelf --set-soname librashader.so.${_ABI} ${_OUT}/librashader.so
+post-build:
+	patchelf --set-soname librashader.so.${_ABI} ${CARGO_TARGET_DIR}/*/liblibrashader_capi.so
 
 do-install:
 	${MKDIR} ${STAGEDIR}${PREFIX}/include/librashader
@@ -52,24 +43,24 @@ do-install:
 		${STAGEDIR}${PREFIX}/include/librashader
 	${INSTALL_DATA} ${WRKSRC}/include/librashader.h \
 		${STAGEDIR}${PREFIX}/include/librashader
-	${INSTALL_DATA} ${_OUT}/librashader.a \
-		${STAGEDIR}${PREFIX}/lib
-	${INSTALL_LIB} ${_OUT}/librashader.so \
+	${INSTALL_DATA} ${CARGO_TARGET_DIR}/*/liblibrashader_capi.a \
+		${STAGEDIR}${PREFIX}/lib/librashader.a
+	${INSTALL_LIB} ${CARGO_TARGET_DIR}/*/liblibrashader_capi.so \
 		${STAGEDIR}${PREFIX}/lib/librashader.so.${_ABI}
-	${LN} -s librashader.so.${_ABI} ${STAGEDIR}${PREFIX}/lib/librashader.so
+	${RLN} ${STAGEDIR}${PREFIX}/lib/librashader.so.${_ABI} ${STAGEDIR}${PREFIX}/lib/librashader.so
 	${INSTALL_DATA} ${WRKSRC}/pkg/librashader.pc \
 		${STAGEDIR}${PREFIX}/libdata/pkgconfig
 
 post-install-DOCS-on:
 	${MKDIR} ${STAGEDIR}${DOCSDIR}
 	${INSTALL_DATA} ${WRKSRC}/BROKEN_SHADERS.md \
-		${STAGEDIR}${DOCSDIR}
-	${INSTALL_DATA} ${WRKSRC}/README.md \
+		${WRKSRC}/MIGRATION-ABI2.md \
+		${WRKSRC}/README.md \
 		${STAGEDIR}${DOCSDIR}
 
 post-install-EXAMPLES-on:
 	${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
 	${INSTALL_DATA} ${WRKSRC}/include/README.md \
-		${STAGEDIR}${EXAMPLESDIR}/README.md
+		${STAGEDIR}${EXAMPLESDIR}
 
 .include <bsd.port.mk>
diff --git a/devel/librashader/Makefile.crates b/devel/librashader/Makefile.crates
index 13fb58b74445..0a2aeb708d9e 100644
--- a/devel/librashader/Makefile.crates
+++ b/devel/librashader/Makefile.crates
@@ -1,6 +1,5 @@
-CARGO_CRATES=	ab_glyph-0.2.28 \
+CARGO_CRATES=	ab_glyph-0.2.29 \
 		ab_glyph_rasterizer-0.1.8 \
-		adler-1.0.2 \
 		adler2-2.0.0 \
 		ahash-0.7.8 \
 		ahash-0.8.11 \
@@ -9,6 +8,12 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		android-activity-0.5.2 \
 		android-properties-0.2.2 \
 		android_system_properties-0.1.5 \
+		anstream-0.3.2 \
+		anstyle-1.0.8 \
+		anstyle-parse-0.2.5 \
+		anstyle-query-1.1.1 \
+		anstyle-wincon-1.0.2 \
+		anyhow-1.0.89 \
 		arc-swap-1.7.1 \
 		array-concat-0.5.3 \
 		array-init-2.1.0 \
@@ -17,12 +22,12 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		as-raw-xcb-connection-1.0.1 \
 		ash-0.38.0+1.3.281 \
 		ash-window-0.13.0 \
-		async-trait-0.1.82 \
+		async-trait-0.1.83 \
 		atomic-waker-1.1.2 \
-		atty-0.2.14 \
 		auto_ops-0.3.0 \
-		autocfg-1.3.0 \
+		autocfg-1.4.0 \
 		base64-0.13.1 \
+		base64-0.22.1 \
 		bincode-2.0.0-rc.3 \
 		bincode_derive-2.0.0-rc.3 \
 		bit-set-0.6.0 \
@@ -43,25 +48,25 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		bytemuck_derive-1.7.1 \
 		byteorder-1.5.0 \
 		byteorder-lite-0.1.0 \
-		bytes-1.7.1 \
+		bytes-1.7.2 \
 		calloop-0.12.4 \
 		calloop-wayland-source-0.2.0 \
 		carlog-0.1.0 \
-		cbindgen-0.26.0 \
-		cc-1.1.18 \
+		cbindgen-0.27.0 \
+		cc-1.1.28 \
 		cesu8-1.1.0 \
 		cfg-if-1.0.0 \
 		cfg_aliases-0.1.1 \
-		clap-3.2.25 \
-		clap-4.1.0 \
-		clap_derive-4.1.0 \
-		clap_lex-0.2.4 \
-		clap_lex-0.3.3 \
+		clap-4.3.0 \
+		clap_builder-4.3.0 \
+		clap_derive-4.3.0 \
+		clap_lex-0.5.1 \
 		cmake-0.1.51 \
 		cocoa-0.25.0 \
 		cocoa-foundation-0.1.2 \
 		codespan-reporting-0.11.1 \
 		color_quant-1.1.0 \
+		colorchoice-1.0.2 \
 		colored-2.1.0 \
 		com-0.6.0 \
 		com_macros-0.6.0 \
@@ -81,11 +86,11 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		crossbeam-deque-0.8.5 \
 		crossbeam-epoch-0.9.18 \
 		crossbeam-utils-0.8.20 \
+		crunchy-0.2.2 \
 		crypto-common-0.1.6 \
-		cty-0.2.2 \
 		cursor-icon-1.1.0 \
 		d3d12-22.0.0 \
-		d3d12-descriptor-heap-0.1.2 \
+		d3d12-descriptor-heap-0.2.0 \
 		data-encoding-2.6.0 \
 		digest-0.10.7 \
 		dirs-next-1.0.2 \
@@ -101,9 +106,10 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		equivalent-1.0.1 \
 		errno-0.3.9 \
 		fastrand-2.1.1 \
-		fdeflate-0.3.4 \
+		fdeflate-0.3.5 \
 		fixedbitset-0.4.2 \
-		flate2-1.0.33 \
+		flate2-1.0.34 \
+		fnv-1.0.7 \
 		foreign-types-0.5.0 \
 		foreign-types-macros-0.2.3 \
 		foreign-types-shared-0.3.1 \
@@ -114,15 +120,14 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		getrandom-0.2.15 \
 		gfx-maths-0.2.9 \
 		gif-0.13.1 \
-		gl-0.14.0 \
 		gl_generator-0.14.0 \
-		glfw-0.47.0 \
-		glfw-0.49.1 \
-		glfw-sys-4.0.0+3.3.5 \
+		glfw-0.58.0 \
+		glfw-sys-5.0.0+3.3.9 \
 		glob-0.3.1 \
 		glow-0.13.1 \
-		glslang-0.4.0 \
-		glslang-sys-0.4.0 \
+		glow-0.14.1 \
+		glslang-0.6.0 \
+		glslang-sys-0.6.1+46ef757 \
 		glutin_wgl_sys-0.6.0 \
 		gpu-alloc-0.6.0 \
 		gpu-alloc-types-0.3.0 \
@@ -130,21 +135,23 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		gpu-allocator-0.27.0 \
 		gpu-descriptor-0.3.0 \
 		gpu-descriptor-types-0.2.0 \
+		half-2.4.1 \
 		halfbrown-0.2.5 \
 		hashbrown-0.12.3 \
 		hashbrown-0.14.5 \
+		hashbrown-0.15.0 \
 		hassle-rs-0.11.0 \
 		heck-0.4.1 \
-		hermit-abi-0.1.19 \
 		hermit-abi-0.4.0 \
 		hexf-parse-0.2.1 \
 		humantime-2.1.0 \
 		icrate-0.0.4 \
 		image-0.25.2 \
+		image-compare-0.4.1 \
 		image-webp-0.1.3 \
-		indexmap-1.9.3 \
-		indexmap-2.5.0 \
+		indexmap-2.6.0 \
 		is-terminal-0.4.13 \
+		itertools-0.12.1 \
 		itoa-1.0.11 \
 		jni-0.21.1 \
 		jni-sys-0.3.0 \
@@ -155,8 +162,9 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		khronos-egl-6.0.0 \
 		khronos_api-3.1.0 \
 		lazy_static-1.5.0 \
-		libc-0.2.158 \
+		libc-0.2.159 \
 		libloading-0.8.5 \
+		libm-0.2.8 \
 		libredox-0.0.2 \
 		libredox-0.1.3 \
 		linked-hash-map-0.5.6 \
@@ -166,12 +174,10 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		log-0.4.22 \
 		mach-siegbert-vogt-dxcsa-0.1.3 \
 		malloc_buf-0.0.6 \
-		matches-0.1.10 \
 		memchr-2.7.4 \
 		memmap2-0.9.5 \
 		metal-0.29.0 \
 		minimal-lexical-0.2.1 \
-		miniz_oxide-0.7.4 \
 		miniz_oxide-0.8.0 \
 		naga-22.1.0 \
 		ndk-0.8.0 \
@@ -202,58 +208,56 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		objc2-metal-0.2.2 \
 		objc2-metal-kit-0.2.2 \
 		objc2-quartz-core-0.2.2 \
-		once_cell-1.20.0 \
+		once_cell-1.20.2 \
 		orbclient-0.3.47 \
+		ordered-float-4.3.0 \
 		ordered-multimap-0.4.3 \
-		os_str_bytes-6.6.1 \
-		owned_ttf_parser-0.24.0 \
+		owned_ttf_parser-0.25.0 \
 		parking_lot-0.12.3 \
 		parking_lot_core-0.9.10 \
 		paste-1.0.15 \
 		pathdiff-0.2.1 \
 		percent-encoding-2.3.1 \
 		persy-1.5.1 \
-		pest-2.7.12 \
-		pest_derive-2.7.12 \
-		pest_generator-2.7.12 \
-		pest_meta-2.7.12 \
+		pest-2.7.13 \
+		pest_derive-2.7.13 \
+		pest_generator-2.7.13 \
+		pest_meta-2.7.13 \
 		petgraph-0.6.5 \
 		pin-project-lite-0.2.14 \
-		pkg-config-0.3.30 \
+		pkg-config-0.3.31 \
 		platform-dirs-0.3.0 \
-		png-0.17.13 \
+		png-0.17.14 \
 		polling-3.7.3 \
 		pollster-0.3.0 \
 		pp-rs-0.2.1 \
 		ppv-lite86-0.2.20 \
 		presser-0.3.1 \
 		proc-macro-crate-3.2.0 \
-		proc-macro-error-1.0.4 \
-		proc-macro-error-attr-1.0.4 \
 		proc-macro2-1.0.86 \
 		profiling-1.0.15 \
 		quick-error-2.0.1 \
-		quick-xml-0.36.1 \
+		quick-xml-0.36.2 \
 		quote-1.0.37 \
 		radium-0.7.0 \
 		rand-0.8.5 \
 		rand_chacha-0.3.1 \
 		rand_core-0.6.4 \
 		range-alloc-0.1.3 \
-		raw-window-handle-0.4.3 \
-		raw-window-handle-0.5.2 \
 		raw-window-handle-0.6.2 \
 		raw-window-metal-0.4.0 \
 		rayon-1.10.0 \
 		rayon-core-1.12.1 \
 		redox_syscall-0.3.5 \
 		redox_syscall-0.4.1 \
-		redox_syscall-0.5.4 \
+		redox_syscall-0.5.7 \
 		redox_users-0.4.6 \
-		regex-1.10.6 \
-		regex-automata-0.4.7 \
-		regex-syntax-0.8.4 \
+		regex-1.11.0 \
+		regex-automata-0.4.8 \
+		regex-syntax-0.8.5 \
 		renderdoc-sys-1.1.0 \
+		rmp-0.8.14 \
+		rmp-serde-1.3.0 \
 		ron-0.7.1 \
 		rspirv-0.12.0+sdk-1.3.268.0 \
 		rust-ini-0.18.0 \
@@ -266,8 +270,10 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		scopeguard-1.2.0 \
 		sctk-adwaita-0.8.3 \
 		serde-1.0.210 \
+		serde_bytes-0.11.15 \
 		serde_derive-1.0.210 \
 		serde_json-1.0.128 \
+		serde_spanned-0.6.8 \
 		sha2-0.10.8 \
 		shlex-1.3.0 \
 		simd-adler32-0.3.7 \
@@ -277,40 +283,46 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		smartstring-1.0.1 \
 		smithay-client-toolkit-0.18.1 \
 		smol_str-0.2.2 \
+		spirq-1.2.2 \
 		spirv-0.3.0+sdk-1.3.268.0 \
-		spirv-cross-sys-0.4.0 \
-		spirv-cross2-0.4.2 \
+		spirv-cross-sys-0.4.2+b28b355 \
+		spirv-cross2-0.4.6 \
 		spirv-cross2-derive-0.1.0 \
 		spirv-to-dxil-0.4.7 \
 		spirv-to-dxil-sys-0.4.7 \
+		spq-core-1.0.5 \
+		spq-spvasm-0.1.4 \
 		sptr-0.3.2 \
+		stable_deref_trait-1.2.0 \
 		static_assertions-1.1.0 \
 		strict-num-0.1.1 \
 		strsim-0.10.0 \
 		syn-1.0.109 \
-		syn-2.0.77 \
+		syn-2.0.79 \
 		tap-1.0.1 \
-		tempfile-3.12.0 \
+		tempfile-3.13.0 \
 		termcolor-1.4.1 \
-		textwrap-0.16.1 \
-		thiserror-1.0.63 \
-		thiserror-impl-1.0.63 \
+		thiserror-1.0.64 \
+		thiserror-impl-1.0.64 \
 		tiff-0.9.1 \
 		tiny-skia-0.11.4 \
 		tiny-skia-path-0.11.4 \
 		toml-0.5.11 \
+		toml-0.8.19 \
 		toml_datetime-0.6.8 \
-		toml_edit-0.22.20 \
+		toml_edit-0.22.22 \
 		tracing-0.1.40 \
 		tracing-core-0.1.32 \
-		ttf-parser-0.24.1 \
+		triomphe-0.1.13 \
+		ttf-parser-0.25.0 \
 		typenum-1.17.0 \
-		ucd-trie-0.1.6 \
+		ucd-trie-0.1.7 \
 		unicode-ident-1.0.13 \
 		unicode-segmentation-1.12.0 \
-		unicode-width-0.1.13 \
-		unicode-xid-0.2.5 \
+		unicode-width-0.1.14 \
+		unicode-xid-0.2.6 \
 		unsigned-varint-0.8.0 \
+		utf8parse-0.2.2 \
 		vec_extract_if_polyfill-0.1.0 \
 		version_check-0.9.5 \
 		virtue-0.0.13 \
@@ -381,7 +393,7 @@ CARGO_CRATES=	ab_glyph-0.2.28 \
 		windows_x86_64_msvc-0.48.5 \
 		windows_x86_64_msvc-0.52.6 \
 		winit-0.29.15 \
-		winnow-0.6.18 \
+		winnow-0.6.20 \
 		wyz-0.5.1 \
 		x11-dl-2.21.0 \
 		x11rb-0.13.1 \
diff --git a/devel/librashader/distinfo b/devel/librashader/distinfo
index a7146d32f9d5..2c8fb537724d 100644
--- a/devel/librashader/distinfo
+++ b/devel/librashader/distinfo
@@ -1,10 +1,8 @@
-TIMESTAMP = 1727007948
-SHA256 (rust/crates/ab_glyph-0.2.28.crate) = 79faae4620f45232f599d9bc7b290f88247a0834162c4495ab2f02d60004adfb
-SIZE (rust/crates/ab_glyph-0.2.28.crate) = 19965
+TIMESTAMP = 1728289308
+SHA256 (rust/crates/ab_glyph-0.2.29.crate) = ec3672c180e71eeaaac3a541fbbc5f5ad4def8b747c595ad30d674e43049f7b0
+SIZE (rust/crates/ab_glyph-0.2.29.crate) = 20011
 SHA256 (rust/crates/ab_glyph_rasterizer-0.1.8.crate) = c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046
 SIZE (rust/crates/ab_glyph_rasterizer-0.1.8.crate) = 11010
-SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe
-SIZE (rust/crates/adler-1.0.2.crate) = 12778
 SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627
 SIZE (rust/crates/adler2-2.0.0.crate) = 13529
 SHA256 (rust/crates/ahash-0.7.8.crate) = 891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9
@@ -21,6 +19,18 @@ SHA256 (rust/crates/android-properties-0.2.2.crate) = fc7eb209b1518d6bb87b283c20
 SIZE (rust/crates/android-properties-0.2.2.crate) = 4563
 SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311
 SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243
+SHA256 (rust/crates/anstream-0.3.2.crate) = 0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163
+SIZE (rust/crates/anstream-0.3.2.crate) = 19504
+SHA256 (rust/crates/anstyle-1.0.8.crate) = 1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1
+SIZE (rust/crates/anstyle-1.0.8.crate) = 15771
+SHA256 (rust/crates/anstyle-parse-0.2.5.crate) = eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb
+SIZE (rust/crates/anstyle-parse-0.2.5.crate) = 22680
+SHA256 (rust/crates/anstyle-query-1.1.1.crate) = 6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a
+SIZE (rust/crates/anstyle-query-1.1.1.crate) = 9891
+SHA256 (rust/crates/anstyle-wincon-1.0.2.crate) = c677ab05e09154296dd37acecd46420c17b9713e8366facafa8fc0885167cf4c
+SIZE (rust/crates/anstyle-wincon-1.0.2.crate) = 11712
+SHA256 (rust/crates/anyhow-1.0.89.crate) = 86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6
+SIZE (rust/crates/anyhow-1.0.89.crate) = 47078
 SHA256 (rust/crates/arc-swap-1.7.1.crate) = 69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457
 SIZE (rust/crates/arc-swap-1.7.1.crate) = 68512
 SHA256 (rust/crates/array-concat-0.5.3.crate) = 68b4d2c47ea522f4135657904891e533727daca3d2d852f29f5e4cc50960c77c
@@ -37,18 +47,18 @@ SHA256 (rust/crates/ash-0.38.0+1.3.281.crate) = 0bb44936d800fea8f016d7f2311c6a4f
 SIZE (rust/crates/ash-0.38.0+1.3.281.crate) = 457775
 SHA256 (rust/crates/ash-window-0.13.0.crate) = 52bca67b61cb81e5553babde81b8211f713cb6db79766f80168f3e5f40ea6c82
 SIZE (rust/crates/ash-window-0.13.0.crate) = 20250
-SHA256 (rust/crates/async-trait-0.1.82.crate) = a27b8a3a6e1a44fa4c8baf1f653e4172e81486d4941f2237e20dc2d0cf4ddff1
-SIZE (rust/crates/async-trait-0.1.82.crate) = 28997
+SHA256 (rust/crates/async-trait-0.1.83.crate) = 721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd
+SIZE (rust/crates/async-trait-0.1.83.crate) = 29054
 SHA256 (rust/crates/atomic-waker-1.1.2.crate) = 1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0
 SIZE (rust/crates/atomic-waker-1.1.2.crate) = 12422
-SHA256 (rust/crates/atty-0.2.14.crate) = d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8
-SIZE (rust/crates/atty-0.2.14.crate) = 5470
 SHA256 (rust/crates/auto_ops-0.3.0.crate) = 7460f7dd8e100147b82a63afca1a20eb6c231ee36b90ba7272e14951cb58af59
 SIZE (rust/crates/auto_ops-0.3.0.crate) = 9343
-SHA256 (rust/crates/autocfg-1.3.0.crate) = 0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0
-SIZE (rust/crates/autocfg-1.3.0.crate) = 16524
+SHA256 (rust/crates/autocfg-1.4.0.crate) = ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26
+SIZE (rust/crates/autocfg-1.4.0.crate) = 17712
 SHA256 (rust/crates/base64-0.13.1.crate) = 9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8
 SIZE (rust/crates/base64-0.13.1.crate) = 61002
+SHA256 (rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6
+SIZE (rust/crates/base64-0.22.1.crate) = 81597
 SHA256 (rust/crates/bincode-2.0.0-rc.3.crate) = f11ea1a0346b94ef188834a65c068a03aec181c94896d481d7a0a40d85b0ce95
 SIZE (rust/crates/bincode-2.0.0-rc.3.crate) = 57746
 SHA256 (rust/crates/bincode_derive-2.0.0-rc.3.crate) = 7e30759b3b99a1b802a7a3aa21c85c3ded5c28e1c83170d82d70f08bbf7f3e4c
@@ -89,34 +99,32 @@ SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353
 SIZE (rust/crates/byteorder-1.5.0.crate) = 23288
 SHA256 (rust/crates/byteorder-lite-0.1.0.crate) = 8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495
 SIZE (rust/crates/byteorder-lite-0.1.0.crate) = 15909
-SHA256 (rust/crates/bytes-1.7.1.crate) = 8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50
-SIZE (rust/crates/bytes-1.7.1.crate) = 63623
+SHA256 (rust/crates/bytes-1.7.2.crate) = 428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3
+SIZE (rust/crates/bytes-1.7.2.crate) = 64287
 SHA256 (rust/crates/calloop-0.12.4.crate) = fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298
 SIZE (rust/crates/calloop-0.12.4.crate) = 69583
 SHA256 (rust/crates/calloop-wayland-source-0.2.0.crate) = 0f0ea9b9476c7fad82841a8dbb380e2eae480c21910feba80725b46931ed8f02
 SIZE (rust/crates/calloop-wayland-source-0.2.0.crate) = 11304
 SHA256 (rust/crates/carlog-0.1.0.crate) = 95faf7476605bbef1fdf740eaa3f7f2b97b70fbed0aada1ee0c040cff66c84cf
 SIZE (rust/crates/carlog-0.1.0.crate) = 4103
-SHA256 (rust/crates/cbindgen-0.26.0.crate) = da6bc11b07529f16944307272d5bd9b22530bc7d05751717c9d416586cedab49
-SIZE (rust/crates/cbindgen-0.26.0.crate) = 206157
-SHA256 (rust/crates/cc-1.1.18.crate) = b62ac837cdb5cb22e10a256099b4fc502b1dfe560cb282963a974d7abd80e476
-SIZE (rust/crates/cc-1.1.18.crate) = 83315
+SHA256 (rust/crates/cbindgen-0.27.0.crate) = 3fce8dd7fcfcbf3a0a87d8f515194b49d6135acab73e18bd380d1d93bb1a15eb
+SIZE (rust/crates/cbindgen-0.27.0.crate) = 215957
+SHA256 (rust/crates/cc-1.1.28.crate) = 2e80e3b6a3ab07840e1cae9b0666a63970dc28e8ed5ffbcdacbfc760c281bfc1
+SIZE (rust/crates/cc-1.1.28.crate) = 84424
 SHA256 (rust/crates/cesu8-1.1.0.crate) = 6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c
 SIZE (rust/crates/cesu8-1.1.0.crate) = 10555
 SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
 SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
 SHA256 (rust/crates/cfg_aliases-0.1.1.crate) = fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e
 SIZE (rust/crates/cfg_aliases-0.1.1.crate) = 6009
-SHA256 (rust/crates/clap-3.2.25.crate) = 4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123
-SIZE (rust/crates/clap-3.2.25.crate) = 219403
-SHA256 (rust/crates/clap-4.1.0.crate) = aa91278560fc226a5d9d736cc21e485ff9aad47d26b8ffe1f54cba868b684b9f
-SIZE (rust/crates/clap-4.1.0.crate) = 206950
-SHA256 (rust/crates/clap_derive-4.1.0.crate) = 684a277d672e91966334af371f1a7b5833f9aa00b07c84e92fbce95e00208ce8
-SIZE (rust/crates/clap_derive-4.1.0.crate) = 27897
-SHA256 (rust/crates/clap_lex-0.2.4.crate) = 2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5
-SIZE (rust/crates/clap_lex-0.2.4.crate) = 9652
-SHA256 (rust/crates/clap_lex-0.3.3.crate) = 033f6b7a4acb1f358c742aaca805c939ee73b4c6209ae4318ec7aca81c42e646
-SIZE (rust/crates/clap_lex-0.3.3.crate) = 9648
+SHA256 (rust/crates/clap-4.3.0.crate) = 93aae7a4192245f70fe75dd9157fc7b4a5bf53e88d30bd4396f7d8f9284d5acc
+SIZE (rust/crates/clap-4.3.0.crate) = 54034
+SHA256 (rust/crates/clap_builder-4.3.0.crate) = 4f423e341edefb78c9caba2d9c7f7687d0e72e89df3ce3394554754393ac3990
+SIZE (rust/crates/clap_builder-4.3.0.crate) = 162227
+SHA256 (rust/crates/clap_derive-4.3.0.crate) = 191d9573962933b4027f932c600cd252ce27a8ad5979418fe78e43c07996f27b
+SIZE (rust/crates/clap_derive-4.3.0.crate) = 28954
+SHA256 (rust/crates/clap_lex-0.5.1.crate) = cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961
+SIZE (rust/crates/clap_lex-0.5.1.crate) = 11793
 SHA256 (rust/crates/cmake-0.1.51.crate) = fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a
 SIZE (rust/crates/cmake-0.1.51.crate) = 17566
 SHA256 (rust/crates/cocoa-0.25.0.crate) = f6140449f97a6e97f9511815c5632d84c8aacf8ac271ad77c559218161a1373c
@@ -127,6 +135,8 @@ SHA256 (rust/crates/codespan-reporting-0.11.1.crate) = 3538270d33cc669650c4b0938
 SIZE (rust/crates/codespan-reporting-0.11.1.crate) = 48963
 SHA256 (rust/crates/color_quant-1.1.0.crate) = 3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b
 SIZE (rust/crates/color_quant-1.1.0.crate) = 6649
+SHA256 (rust/crates/colorchoice-1.0.2.crate) = d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0
+SIZE (rust/crates/colorchoice-1.0.2.crate) = 7924
 SHA256 (rust/crates/colored-2.1.0.crate) = cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8
 SIZE (rust/crates/colored-2.1.0.crate) = 23348
 SHA256 (rust/crates/com-0.6.0.crate) = 7e17887fd17353b65b1b2ef1c526c83e26cd72e74f598a8dc1bee13a48f3d9f6
@@ -165,16 +175,16 @@ SHA256 (rust/crates/crossbeam-epoch-0.9.18.crate) = 5b82ac4a3c2ca9c3460964f020e1
 SIZE (rust/crates/crossbeam-epoch-0.9.18.crate) = 46875
 SHA256 (rust/crates/crossbeam-utils-0.8.20.crate) = 22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80
 SIZE (rust/crates/crossbeam-utils-0.8.20.crate) = 42487
+SHA256 (rust/crates/crunchy-0.2.2.crate) = 7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7
+SIZE (rust/crates/crunchy-0.2.2.crate) = 2995
 SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3
 SIZE (rust/crates/crypto-common-0.1.6.crate) = 8760
-SHA256 (rust/crates/cty-0.2.2.crate) = b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35
-SIZE (rust/crates/cty-0.2.2.crate) = 7230
 SHA256 (rust/crates/cursor-icon-1.1.0.crate) = 96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991
 SIZE (rust/crates/cursor-icon-1.1.0.crate) = 11453
 SHA256 (rust/crates/d3d12-22.0.0.crate) = bdbd1f579714e3c809ebd822c81ef148b1ceaeb3d535352afc73fd0c4c6a0017
 SIZE (rust/crates/d3d12-22.0.0.crate) = 16716
-SHA256 (rust/crates/d3d12-descriptor-heap-0.1.2.crate) = 825c5ff0f3af86b775d1e842a11fb42ee5eac1acec44ff46572a756219be3ff5
-SIZE (rust/crates/d3d12-descriptor-heap-0.1.2.crate) = 8789
+SHA256 (rust/crates/d3d12-descriptor-heap-0.2.0.crate) = c0c31f7c86252e0198223a23394da4fc5ba5d381734a8c12551c94accc3ead7b
+SIZE (rust/crates/d3d12-descriptor-heap-0.2.0.crate) = 9879
 SHA256 (rust/crates/data-encoding-2.6.0.crate) = e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2
 SIZE (rust/crates/data-encoding-2.6.0.crate) = 20769
 SHA256 (rust/crates/digest-0.10.7.crate) = 9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292
@@ -205,12 +215,14 @@ SHA256 (rust/crates/errno-0.3.9.crate) = 534c5cf6194dfab3db3242765c03bbe257cf92f
 SIZE (rust/crates/errno-0.3.9.crate) = 10690
 SHA256 (rust/crates/fastrand-2.1.1.crate) = e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6
 SIZE (rust/crates/fastrand-2.1.1.crate) = 14983
-SHA256 (rust/crates/fdeflate-0.3.4.crate) = 4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645
-SIZE (rust/crates/fdeflate-0.3.4.crate) = 25001
+SHA256 (rust/crates/fdeflate-0.3.5.crate) = d8090f921a24b04994d9929e204f50b498a33ea6ba559ffaa05e04f7ee7fb5ab
+SIZE (rust/crates/fdeflate-0.3.5.crate) = 26834
 SHA256 (rust/crates/fixedbitset-0.4.2.crate) = 0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80
 SIZE (rust/crates/fixedbitset-0.4.2.crate) = 15954
-SHA256 (rust/crates/flate2-1.0.33.crate) = 324a1be68054ef05ad64b861cc9eaf1d623d2d8cb25b4bf2cb9cdd902b4bf253
-SIZE (rust/crates/flate2-1.0.33.crate) = 108838
+SHA256 (rust/crates/flate2-1.0.34.crate) = a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0
+SIZE (rust/crates/flate2-1.0.34.crate) = 109174
+SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1
+SIZE (rust/crates/fnv-1.0.7.crate) = 11266
 SHA256 (rust/crates/foreign-types-0.5.0.crate) = d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965
 SIZE (rust/crates/foreign-types-0.5.0.crate) = 7824
 SHA256 (rust/crates/foreign-types-macros-0.2.3.crate) = 1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742
@@ -231,24 +243,22 @@ SHA256 (rust/crates/gfx-maths-0.2.9.crate) = 757bba517b41d90e60e23f8b810a50a73e7
 SIZE (rust/crates/gfx-maths-0.2.9.crate) = 9968
 SHA256 (rust/crates/gif-0.13.1.crate) = 3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2
 SIZE (rust/crates/gif-0.13.1.crate) = 36408
-SHA256 (rust/crates/gl-0.14.0.crate) = a94edab108827d67608095e269cf862e60d920f144a5026d3dbcfd8b877fb404
-SIZE (rust/crates/gl-0.14.0.crate) = 10806
 SHA256 (rust/crates/gl_generator-0.14.0.crate) = 1a95dfc23a2b4a9a2f5ab41d194f8bfda3cabec42af4e39f08c339eb2a0c124d
 SIZE (rust/crates/gl_generator-0.14.0.crate) = 22330
-SHA256 (rust/crates/glfw-0.47.0.crate) = c2c532509718cb34e0c449ec5ef74529c1af3a33b664e6b8ddfe29252f86f936
-SIZE (rust/crates/glfw-0.47.0.crate) = 127838
-SHA256 (rust/crates/glfw-0.49.1.crate) = c70971598fc996224a36fe95256e90335242c00da647f7b0a0b125136613c54b
-SIZE (rust/crates/glfw-0.49.1.crate) = 127874
-SHA256 (rust/crates/glfw-sys-4.0.0+3.3.5.crate) = 5abed6d39a50226676aab893d6b4ad154da7e93fcdfed90d7696758a1b477ed1
-SIZE (rust/crates/glfw-sys-4.0.0+3.3.5.crate) = 768998
+SHA256 (rust/crates/glfw-0.58.0.crate) = d1cad81f99085cabd6a4a99403335bc3f3d00d6cf4467e478f13c393ced9259d
+SIZE (rust/crates/glfw-0.58.0.crate) = 135739
+SHA256 (rust/crates/glfw-sys-5.0.0+3.3.9.crate) = 1dfc32d45fb58ff38b112696907963a7d671e9cf742b16f882062169a053cf88
+SIZE (rust/crates/glfw-sys-5.0.0+3.3.9.crate) = 813010
 SHA256 (rust/crates/glob-0.3.1.crate) = d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b
 SIZE (rust/crates/glob-0.3.1.crate) = 18880
 SHA256 (rust/crates/glow-0.13.1.crate) = bd348e04c43b32574f2de31c8bb397d96c9fcfa1371bd4ca6d8bdc464ab121b1
 SIZE (rust/crates/glow-0.13.1.crate) = 150940
-SHA256 (rust/crates/glslang-0.4.0.crate) = 2619e3eeccf510123b2a38e129dbb4f6c5259a28d58b1e462ff00397176f00dc
-SIZE (rust/crates/glslang-0.4.0.crate) = 11704
-SHA256 (rust/crates/glslang-sys-0.4.0.crate) = f487792c51b944793232a9928eb9bdb36fe5eff8e868a151b86a8b5168efc724
-SIZE (rust/crates/glslang-sys-0.4.0.crate) = 3687117
+SHA256 (rust/crates/glow-0.14.1.crate) = 2f4a888dbe8181a7535853469c21c67ca9a1cea9460b16808fc018ea9e55d248
+SIZE (rust/crates/glow-0.14.1.crate) = 153713
+SHA256 (rust/crates/glslang-0.6.0.crate) = ca195de172c94a69ab142424542f421cf8f7f14555ebbd82c6e8089a8cb318f7
+SIZE (rust/crates/glslang-0.6.0.crate) = 12704
+SHA256 (rust/crates/glslang-sys-0.6.1+46ef757.crate) = ad4a20351d34b8185981fe9e00c2934f061b59f54705dc497e7ae9cbecec0a07
+SIZE (rust/crates/glslang-sys-0.6.1+46ef757.crate) = 3701655
 SHA256 (rust/crates/glutin_wgl_sys-0.6.0.crate) = 0a4e1951bbd9434a81aa496fe59ccc2235af3820d27b85f9314e279609211e2c
 SIZE (rust/crates/glutin_wgl_sys-0.6.0.crate) = 5472
 SHA256 (rust/crates/gpu-alloc-0.6.0.crate) = fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171
@@ -263,18 +273,20 @@ SHA256 (rust/crates/gpu-descriptor-0.3.0.crate) = 9c08c1f623a8d0b722b8b99f821eb0
 SIZE (rust/crates/gpu-descriptor-0.3.0.crate) = 6727
 SHA256 (rust/crates/gpu-descriptor-types-0.2.0.crate) = fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91
 SIZE (rust/crates/gpu-descriptor-types-0.2.0.crate) = 2169
+SHA256 (rust/crates/half-2.4.1.crate) = 6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888
+SIZE (rust/crates/half-2.4.1.crate) = 50892
 SHA256 (rust/crates/halfbrown-0.2.5.crate) = 8588661a8607108a5ca69cab034063441a0413a0b041c13618a7dd348021ef6f
 SIZE (rust/crates/halfbrown-0.2.5.crate) = 29010
 SHA256 (rust/crates/hashbrown-0.12.3.crate) = 8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888
 SIZE (rust/crates/hashbrown-0.12.3.crate) = 102968
 SHA256 (rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1
 SIZE (rust/crates/hashbrown-0.14.5.crate) = 141498
+SHA256 (rust/crates/hashbrown-0.15.0.crate) = 1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb
+SIZE (rust/crates/hashbrown-0.15.0.crate) = 136460
 SHA256 (rust/crates/hassle-rs-0.11.0.crate) = af2a7e73e1f34c48da31fb668a907f250794837e08faa144fd24f0b8b741e890
 SIZE (rust/crates/hassle-rs-0.11.0.crate) = 27178
 SHA256 (rust/crates/heck-0.4.1.crate) = 95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8
 SIZE (rust/crates/heck-0.4.1.crate) = 11567
-SHA256 (rust/crates/hermit-abi-0.1.19.crate) = 62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33
-SIZE (rust/crates/hermit-abi-0.1.19.crate) = 9979
 SHA256 (rust/crates/hermit-abi-0.4.0.crate) = fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc
 SIZE (rust/crates/hermit-abi-0.4.0.crate) = 16310
 SHA256 (rust/crates/hexf-parse-0.2.1.crate) = dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df
@@ -285,14 +297,16 @@ SHA256 (rust/crates/icrate-0.0.4.crate) = 99d3aaff8a54577104bafdf686ff18565c3b69
 SIZE (rust/crates/icrate-0.0.4.crate) = 1040120
 SHA256 (rust/crates/image-0.25.2.crate) = 99314c8a2152b8ddb211f924cdae532d8c5e4c8bb54728e12fff1b0cd5963a10
 SIZE (rust/crates/image-0.25.2.crate) = 225656
+SHA256 (rust/crates/image-compare-0.4.1.crate) = 96cd73af13ae2e7220a1c02fe7d6bb53be50612ba7fabbb5c88e7753645f1f3c
+SIZE (rust/crates/image-compare-0.4.1.crate) = 16263
 SHA256 (rust/crates/image-webp-0.1.3.crate) = f79afb8cbee2ef20f59ccd477a218c12a93943d075b492015ecb1bb81f8ee904
 SIZE (rust/crates/image-webp-0.1.3.crate) = 50444
-SHA256 (rust/crates/indexmap-1.9.3.crate) = bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99
-SIZE (rust/crates/indexmap-1.9.3.crate) = 54653
-SHA256 (rust/crates/indexmap-2.5.0.crate) = 68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5
-SIZE (rust/crates/indexmap-2.5.0.crate) = 85919
+SHA256 (rust/crates/indexmap-2.6.0.crate) = 707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da
+SIZE (rust/crates/indexmap-2.6.0.crate) = 85204
 SHA256 (rust/crates/is-terminal-0.4.13.crate) = 261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b
 SIZE (rust/crates/is-terminal-0.4.13.crate) = 7665
+SHA256 (rust/crates/itertools-0.12.1.crate) = ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569
+SIZE (rust/crates/itertools-0.12.1.crate) = 137761
 SHA256 (rust/crates/itoa-1.0.11.crate) = 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b
 SIZE (rust/crates/itoa-1.0.11.crate) = 10563
 SHA256 (rust/crates/jni-0.21.1.crate) = 1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97
@@ -313,10 +327,12 @@ SHA256 (rust/crates/khronos_api-3.1.0.crate) = e2db585e1d738fc771bf08a151420d3ed
 SIZE (rust/crates/khronos_api-3.1.0.crate) = 599718
 SHA256 (rust/crates/lazy_static-1.5.0.crate) = bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe
 SIZE (rust/crates/lazy_static-1.5.0.crate) = 14025
-SHA256 (rust/crates/libc-0.2.158.crate) = d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439
-SIZE (rust/crates/libc-0.2.158.crate) = 751340
+SHA256 (rust/crates/libc-0.2.159.crate) = 561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5
+SIZE (rust/crates/libc-0.2.159.crate) = 755366
 SHA256 (rust/crates/libloading-0.8.5.crate) = 4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4
 SIZE (rust/crates/libloading-0.8.5.crate) = 28902
+SHA256 (rust/crates/libm-0.2.8.crate) = 4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058
+SIZE (rust/crates/libm-0.2.8.crate) = 113450
 SHA256 (rust/crates/libredox-0.0.2.crate) = 3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607
 SIZE (rust/crates/libredox-0.0.2.crate) = 4538
 SHA256 (rust/crates/libredox-0.1.3.crate) = c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d
@@ -335,8 +351,6 @@ SHA256 (rust/crates/mach-siegbert-vogt-dxcsa-0.1.3.crate) = 7d3e62358869047ad84e
 SIZE (rust/crates/mach-siegbert-vogt-dxcsa-0.1.3.crate) = 82383
 SHA256 (rust/crates/malloc_buf-0.0.6.crate) = 62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb
 SIZE (rust/crates/malloc_buf-0.0.6.crate) = 1239
-SHA256 (rust/crates/matches-0.1.10.crate) = 2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5
-SIZE (rust/crates/matches-0.1.10.crate) = 2592
 SHA256 (rust/crates/memchr-2.7.4.crate) = 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3
 SIZE (rust/crates/memchr-2.7.4.crate) = 96670
 SHA256 (rust/crates/memmap2-0.9.5.crate) = fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f
@@ -345,8 +359,6 @@ SHA256 (rust/crates/metal-0.29.0.crate) = 7ecfd3296f8c56b7c1f6fbac3c71cefa9d78ce
 SIZE (rust/crates/metal-0.29.0.crate) = 3033188
 SHA256 (rust/crates/minimal-lexical-0.2.1.crate) = 68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a
 SIZE (rust/crates/minimal-lexical-0.2.1.crate) = 94841
-SHA256 (rust/crates/miniz_oxide-0.7.4.crate) = b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08
-SIZE (rust/crates/miniz_oxide-0.7.4.crate) = 56119
 SHA256 (rust/crates/miniz_oxide-0.8.0.crate) = e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1
 SIZE (rust/crates/miniz_oxide-0.8.0.crate) = 56343
 SHA256 (rust/crates/naga-22.1.0.crate) = 8bd5a652b6faf21496f2cfd88fc49989c8db0825d1f6746b1a71a6ede24a63ad
@@ -407,16 +419,16 @@ SHA256 (rust/crates/objc2-metal-kit-0.2.2.crate) = 5e9ec2524854019d1ff69d0a3222c
 SIZE (rust/crates/objc2-metal-kit-0.2.2.crate) = 6408
 SHA256 (rust/crates/objc2-quartz-core-0.2.2.crate) = e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a
 SIZE (rust/crates/objc2-quartz-core-0.2.2.crate) = 21306
-SHA256 (rust/crates/once_cell-1.20.0.crate) = 33ea5043e58958ee56f3e15a90aee535795cd7dfd319846288d93c5b57d85cbe
-SIZE (rust/crates/once_cell-1.20.0.crate) = 33258
+SHA256 (rust/crates/once_cell-1.20.2.crate) = 1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775
+SIZE (rust/crates/once_cell-1.20.2.crate) = 33394
 SHA256 (rust/crates/orbclient-0.3.47.crate) = 52f0d54bde9774d3a51dcf281a5def240c71996bc6ca05d2c847ec8b2b216166
 SIZE (rust/crates/orbclient-0.3.47.crate) = 1324509
+SHA256 (rust/crates/ordered-float-4.3.0.crate) = 44d501f1a72f71d3c063a6bbc8f7271fa73aa09fe5d6283b6571e2ed176a2537
+SIZE (rust/crates/ordered-float-4.3.0.crate) = 21550
 SHA256 (rust/crates/ordered-multimap-0.4.3.crate) = ccd746e37177e1711c20dd619a1620f34f5c8b569c53590a72dedd5344d8924a
 SIZE (rust/crates/ordered-multimap-0.4.3.crate) = 19599
-SHA256 (rust/crates/os_str_bytes-6.6.1.crate) = e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1
-SIZE (rust/crates/os_str_bytes-6.6.1.crate) = 27643
-SHA256 (rust/crates/owned_ttf_parser-0.24.0.crate) = 490d3a563d3122bf7c911a59b0add9389e5ec0f5f0c3ac6b91ff235a0e6a7f90
-SIZE (rust/crates/owned_ttf_parser-0.24.0.crate) = 151052
+SHA256 (rust/crates/owned_ttf_parser-0.25.0.crate) = 22ec719bbf3b2a81c109a4e20b1f129b5566b7dce654bc3872f6a05abf82b2c4
+SIZE (rust/crates/owned_ttf_parser-0.25.0.crate) = 151164
 SHA256 (rust/crates/parking_lot-0.12.3.crate) = f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27
 SIZE (rust/crates/parking_lot-0.12.3.crate) = 41860
 SHA256 (rust/crates/parking_lot_core-0.9.10.crate) = 1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8
@@ -429,24 +441,24 @@ SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e
 SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235
 SHA256 (rust/crates/persy-1.5.1.crate) = c8fd841022a015200c1f4ccefe3c5f6af01b0591534d2f2d6b59bc2cb0c4c429
 SIZE (rust/crates/persy-1.5.1.crate) = 146581
-SHA256 (rust/crates/pest-2.7.12.crate) = 9c73c26c01b8c87956cea613c907c9d6ecffd8d18a2a5908e5de0adfaa185cea
-SIZE (rust/crates/pest-2.7.12.crate) = 123871
-SHA256 (rust/crates/pest_derive-2.7.12.crate) = 664d22978e2815783adbdd2c588b455b1bd625299ce36b2a99881ac9627e6d8d
-SIZE (rust/crates/pest_derive-2.7.12.crate) = 38753
-SHA256 (rust/crates/pest_generator-2.7.12.crate) = a2d5487022d5d33f4c30d91c22afa240ce2a644e87fe08caad974d4eab6badbe
-SIZE (rust/crates/pest_generator-2.7.12.crate) = 18416
-SHA256 (rust/crates/pest_meta-2.7.12.crate) = 0091754bbd0ea592c4deb3a122ce8ecbb0753b738aa82bc055fcc2eccc8d8174
-SIZE (rust/crates/pest_meta-2.7.12.crate) = 42077
+SHA256 (rust/crates/pest-2.7.13.crate) = fdbef9d1d47087a895abd220ed25eb4ad973a5e26f6a4367b038c25e28dfc2d9
+SIZE (rust/crates/pest-2.7.13.crate) = 126601
+SHA256 (rust/crates/pest_derive-2.7.13.crate) = 4d3a6e3394ec80feb3b6393c725571754c6188490265c61aaf260810d6b95aa0
+SIZE (rust/crates/pest_derive-2.7.13.crate) = 38735
+SHA256 (rust/crates/pest_generator-2.7.13.crate) = 94429506bde1ca69d1b5601962c73f4172ab4726571a59ea95931218cb0e930e
+SIZE (rust/crates/pest_generator-2.7.13.crate) = 18416
+SHA256 (rust/crates/pest_meta-2.7.13.crate) = ac8a071862e93690b6e34e9a5fb8e33ff3734473ac0245b27232222c4906a33f
+SIZE (rust/crates/pest_meta-2.7.13.crate) = 42079
 SHA256 (rust/crates/petgraph-0.6.5.crate) = b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db
 SIZE (rust/crates/petgraph-0.6.5.crate) = 710970
 SHA256 (rust/crates/pin-project-lite-0.2.14.crate) = bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02
 SIZE (rust/crates/pin-project-lite-0.2.14.crate) = 28817
-SHA256 (rust/crates/pkg-config-0.3.30.crate) = d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec
-SIZE (rust/crates/pkg-config-0.3.30.crate) = 20613
+SHA256 (rust/crates/pkg-config-0.3.31.crate) = 953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2
+SIZE (rust/crates/pkg-config-0.3.31.crate) = 20880
 SHA256 (rust/crates/platform-dirs-0.3.0.crate) = e188d043c1a692985f78b5464853a263f1a27e5bd6322bad3a4078ee3c998a38
 SIZE (rust/crates/platform-dirs-0.3.0.crate) = 6744
-SHA256 (rust/crates/png-0.17.13.crate) = 06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1
-SIZE (rust/crates/png-0.17.13.crate) = 103176
+SHA256 (rust/crates/png-0.17.14.crate) = 52f9d46a34a05a6a57566bc2bfae066ef07585a6e3fa30fbbdff5936380623f0
+SIZE (rust/crates/png-0.17.14.crate) = 108098
 SHA256 (rust/crates/polling-3.7.3.crate) = cc2790cd301dec6cd3b7a025e4815cf825724a51c98dccfe6a3e55f05ffb6511
 SIZE (rust/crates/polling-3.7.3.crate) = 58276
 SHA256 (rust/crates/pollster-0.3.0.crate) = 22686f4785f02a4fcc856d3b3bb19bf6c8160d103f7a99cc258bddd0251dc7f2
@@ -459,18 +471,14 @@ SHA256 (rust/crates/presser-0.3.1.crate) = e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b
 SIZE (rust/crates/presser-0.3.1.crate) = 20946
 SHA256 (rust/crates/proc-macro-crate-3.2.0.crate) = 8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b
 SIZE (rust/crates/proc-macro-crate-3.2.0.crate) = 11164
-SHA256 (rust/crates/proc-macro-error-1.0.4.crate) = da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c
-SIZE (rust/crates/proc-macro-error-1.0.4.crate) = 25293
-SHA256 (rust/crates/proc-macro-error-attr-1.0.4.crate) = a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869
-SIZE (rust/crates/proc-macro-error-attr-1.0.4.crate) = 7971
 SHA256 (rust/crates/proc-macro2-1.0.86.crate) = 5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77
 SIZE (rust/crates/proc-macro2-1.0.86.crate) = 48958
 SHA256 (rust/crates/profiling-1.0.15.crate) = 43d84d1d7a6ac92673717f9f6d1518374ef257669c24ebc5ac25d5033828be58
 SIZE (rust/crates/profiling-1.0.15.crate) = 14255
 SHA256 (rust/crates/quick-error-2.0.1.crate) = a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3
 SIZE (rust/crates/quick-error-2.0.1.crate) = 14265
-SHA256 (rust/crates/quick-xml-0.36.1.crate) = 96a05e2e8efddfa51a84ca47cec303fac86c8541b686d37cac5efc0e094417bc
-SIZE (rust/crates/quick-xml-0.36.1.crate) = 185352
+SHA256 (rust/crates/quick-xml-0.36.2.crate) = f7649a7b4df05aed9ea7ec6f628c67c9953a43869b8bc50929569b2999d443fe
+SIZE (rust/crates/quick-xml-0.36.2.crate) = 185201
 SHA256 (rust/crates/quote-1.0.37.crate) = b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af
 SIZE (rust/crates/quote-1.0.37.crate) = 28558
 SHA256 (rust/crates/radium-0.7.0.crate) = dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09
@@ -483,10 +491,6 @@ SHA256 (rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9ba
 SIZE (rust/crates/rand_core-0.6.4.crate) = 22666
 SHA256 (rust/crates/range-alloc-0.1.3.crate) = 9c8a99fddc9f0ba0a85884b8d14e3592853e787d581ca1816c91349b10e4eeab
 SIZE (rust/crates/range-alloc-0.1.3.crate) = 7664
-SHA256 (rust/crates/raw-window-handle-0.4.3.crate) = b800beb9b6e7d2df1fe337c9e3d04e3af22a124460fb4c30fcc22c9117cefb41
-SIZE (rust/crates/raw-window-handle-0.4.3.crate) = 10636
-SHA256 (rust/crates/raw-window-handle-0.5.2.crate) = f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9
-SIZE (rust/crates/raw-window-handle-0.5.2.crate) = 17063
 SHA256 (rust/crates/raw-window-handle-0.6.2.crate) = 20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539
 SIZE (rust/crates/raw-window-handle-0.6.2.crate) = 20234
 SHA256 (rust/crates/raw-window-metal-0.4.0.crate) = 76e8caa82e31bb98fee12fa8f051c94a6aa36b07cddb03f0d4fc558988360ff1
@@ -499,18 +503,22 @@ SHA256 (rust/crates/redox_syscall-0.3.5.crate) = 567664f262709473930a4bf9e51bf2e
 SIZE (rust/crates/redox_syscall-0.3.5.crate) = 23404
 SHA256 (rust/crates/redox_syscall-0.4.1.crate) = 4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa
 SIZE (rust/crates/redox_syscall-0.4.1.crate) = 24858
-SHA256 (rust/crates/redox_syscall-0.5.4.crate) = 0884ad60e090bf1345b93da0a5de8923c93884cd03f40dfcfddd3b4bee661853
-SIZE (rust/crates/redox_syscall-0.5.4.crate) = 25977
+SHA256 (rust/crates/redox_syscall-0.5.7.crate) = 9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f
+SIZE (rust/crates/redox_syscall-0.5.7.crate) = 26249
 SHA256 (rust/crates/redox_users-0.4.6.crate) = ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43
 SIZE (rust/crates/redox_users-0.4.6.crate) = 15585
-SHA256 (rust/crates/regex-1.10.6.crate) = 4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619
-SIZE (rust/crates/regex-1.10.6.crate) = 253894
-SHA256 (rust/crates/regex-automata-0.4.7.crate) = 38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df
-SIZE (rust/crates/regex-automata-0.4.7.crate) = 617582
-SHA256 (rust/crates/regex-syntax-0.8.4.crate) = 7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b
-SIZE (rust/crates/regex-syntax-0.8.4.crate) = 347577
+SHA256 (rust/crates/regex-1.11.0.crate) = 38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8
+SIZE (rust/crates/regex-1.11.0.crate) = 254059
+SHA256 (rust/crates/regex-automata-0.4.8.crate) = 368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3
+SIZE (rust/crates/regex-automata-0.4.8.crate) = 617784
+SHA256 (rust/crates/regex-syntax-0.8.5.crate) = 2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c
+SIZE (rust/crates/regex-syntax-0.8.5.crate) = 357541
 SHA256 (rust/crates/renderdoc-sys-1.1.0.crate) = 19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832
 SIZE (rust/crates/renderdoc-sys-1.1.0.crate) = 10366
+SHA256 (rust/crates/rmp-0.8.14.crate) = 228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4
+SIZE (rust/crates/rmp-0.8.14.crate) = 29687
+SHA256 (rust/crates/rmp-serde-1.3.0.crate) = 52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db
+SIZE (rust/crates/rmp-serde-1.3.0.crate) = 33025
 SHA256 (rust/crates/ron-0.7.1.crate) = 88073939a61e5b7680558e6be56b419e208420c2adb92be54921fa6b72283f1a
 SIZE (rust/crates/ron-0.7.1.crate) = 53572
 SHA256 (rust/crates/rspirv-0.12.0+sdk-1.3.268.0.crate) = 69cf3a93856b6e5946537278df0d3075596371b1950ccff012f02b0f7eafec8d
@@ -535,10 +543,14 @@ SHA256 (rust/crates/sctk-adwaita-0.8.3.crate) = 70b31447ca297092c5a9916fc3b95520
 SIZE (rust/crates/sctk-adwaita-0.8.3.crate) = 53184
 SHA256 (rust/crates/serde-1.0.210.crate) = c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a
 SIZE (rust/crates/serde-1.0.210.crate) = 78338
+SHA256 (rust/crates/serde_bytes-0.11.15.crate) = 387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a
+SIZE (rust/crates/serde_bytes-0.11.15.crate) = 12191
 SHA256 (rust/crates/serde_derive-1.0.210.crate) = 243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f
 SIZE (rust/crates/serde_derive-1.0.210.crate) = 56020
 SHA256 (rust/crates/serde_json-1.0.128.crate) = 6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8
 SIZE (rust/crates/serde_json-1.0.128.crate) = 149520
+SHA256 (rust/crates/serde_spanned-0.6.8.crate) = 87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1
+SIZE (rust/crates/serde_spanned-0.6.8.crate) = 9330
 SHA256 (rust/crates/sha2-0.10.8.crate) = 793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8
 SIZE (rust/crates/sha2-0.10.8.crate) = 26357
 SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
@@ -557,20 +569,28 @@ SHA256 (rust/crates/smithay-client-toolkit-0.18.1.crate) = 922fd3eeab3bd820d7653
 SIZE (rust/crates/smithay-client-toolkit-0.18.1.crate) = 129920
 SHA256 (rust/crates/smol_str-0.2.2.crate) = dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead
 SIZE (rust/crates/smol_str-0.2.2.crate) = 15840
+SHA256 (rust/crates/spirq-1.2.2.crate) = c5ab05ab7b72dbb729fe1831a7e4b717b0d18f552c8b2dc9fb06b85878a017a6
+SIZE (rust/crates/spirq-1.2.2.crate) = 27182
 SHA256 (rust/crates/spirv-0.3.0+sdk-1.3.268.0.crate) = eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844
 SIZE (rust/crates/spirv-0.3.0+sdk-1.3.268.0.crate) = 30802
-SHA256 (rust/crates/spirv-cross-sys-0.4.0.crate) = 3aaad7cc693a12f8da9fd481ac938fdd0fc1b2e73b9f710eb723d3e7f5607f0a
-SIZE (rust/crates/spirv-cross-sys-0.4.0.crate) = 1831816
-SHA256 (rust/crates/spirv-cross2-0.4.2.crate) = ca2c78dd7b37f600f6254e95c435b81f5f0201b96d26e263646999f7a3669c19
-SIZE (rust/crates/spirv-cross2-0.4.2.crate) = 60810
+SHA256 (rust/crates/spirv-cross-sys-0.4.2+b28b355.crate) = afbc0e8a0eca01334612a66c775b5b0e6f9dcad69dafdcd674a973c3d1c2011c
+SIZE (rust/crates/spirv-cross-sys-0.4.2+b28b355.crate) = 1845698
+SHA256 (rust/crates/spirv-cross2-0.4.6.crate) = 7c248b63ebea5a3153214091875d63cc0bacbe4743c13e20dc54bd73ba847972
+SIZE (rust/crates/spirv-cross2-0.4.6.crate) = 61782
 SHA256 (rust/crates/spirv-cross2-derive-0.1.0.crate) = 18017a288e6ce64dd5d56510166baeabb01849483555c031f573c091b6934a64
 SIZE (rust/crates/spirv-cross2-derive-0.1.0.crate) = 2460
 SHA256 (rust/crates/spirv-to-dxil-0.4.7.crate) = 5a3fb4188c288f0bcf2d6e18a74647a6346ce974c7751ca075de89e4949d4b0e
 SIZE (rust/crates/spirv-to-dxil-0.4.7.crate) = 14330
 SHA256 (rust/crates/spirv-to-dxil-sys-0.4.7.crate) = 037a06e11f21b121d2aff4575185e1f61486908d1202f91d55997b05fdc51140
 SIZE (rust/crates/spirv-to-dxil-sys-0.4.7.crate) = 9834227
+SHA256 (rust/crates/spq-core-1.0.5.crate) = 605fb8ae60065f7a9d21d1ae1e89f7a5ff93ca7755df88ada937ac06ba0a0a43
+SIZE (rust/crates/spq-core-1.0.5.crate) = 17514
+SHA256 (rust/crates/spq-spvasm-0.1.4.crate) = e703e41f4ae2b3081129430559e5a0a0420a4de624c050a6d58b76e9b632b742
+SIZE (rust/crates/spq-spvasm-0.1.4.crate) = 68189
 SHA256 (rust/crates/sptr-0.3.2.crate) = 3b9b39299b249ad65f3b7e96443bad61c02ca5cd3589f46cb6d610a0fd6c0d6a
 SIZE (rust/crates/sptr-0.3.2.crate) = 14598
+SHA256 (rust/crates/stable_deref_trait-1.2.0.crate) = a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3
+SIZE (rust/crates/stable_deref_trait-1.2.0.crate) = 8054
 SHA256 (rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f
 SIZE (rust/crates/static_assertions-1.1.0.crate) = 18480
 SHA256 (rust/crates/strict-num-0.1.1.crate) = 6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731
@@ -579,20 +599,18 @@ SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f0
 SIZE (rust/crates/strsim-0.10.0.crate) = 11355
 SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237
 SIZE (rust/crates/syn-1.0.109.crate) = 237611
-SHA256 (rust/crates/syn-2.0.77.crate) = 9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed
-SIZE (rust/crates/syn-2.0.77.crate) = 268784
+SHA256 (rust/crates/syn-2.0.79.crate) = 89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590
+SIZE (rust/crates/syn-2.0.79.crate) = 268981
 SHA256 (rust/crates/tap-1.0.1.crate) = 55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369
 SIZE (rust/crates/tap-1.0.1.crate) = 11316
-SHA256 (rust/crates/tempfile-3.12.0.crate) = 04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64
-SIZE (rust/crates/tempfile-3.12.0.crate) = 34423
+SHA256 (rust/crates/tempfile-3.13.0.crate) = f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b
+SIZE (rust/crates/tempfile-3.13.0.crate) = 34910
 SHA256 (rust/crates/termcolor-1.4.1.crate) = 06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755
 SIZE (rust/crates/termcolor-1.4.1.crate) = 18773
-SHA256 (rust/crates/textwrap-0.16.1.crate) = 23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9
-SIZE (rust/crates/textwrap-0.16.1.crate) = 56012
-SHA256 (rust/crates/thiserror-1.0.63.crate) = c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724
-SIZE (rust/crates/thiserror-1.0.63.crate) = 21537
-SHA256 (rust/crates/thiserror-impl-1.0.63.crate) = a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261
-SIZE (rust/crates/thiserror-impl-1.0.63.crate) = 16047
+SHA256 (rust/crates/thiserror-1.0.64.crate) = d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84
+SIZE (rust/crates/thiserror-1.0.64.crate) = 21574
+SHA256 (rust/crates/thiserror-impl-1.0.64.crate) = 08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3
+SIZE (rust/crates/thiserror-impl-1.0.64.crate) = 16073
 SHA256 (rust/crates/tiff-0.9.1.crate) = ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e
 SIZE (rust/crates/tiff-0.9.1.crate) = 1423953
 SHA256 (rust/crates/tiny-skia-0.11.4.crate) = 83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab
@@ -601,30 +619,36 @@ SHA256 (rust/crates/tiny-skia-path-0.11.4.crate) = 9c9e7fc0c2e86a30b117d0462aa26
 SIZE (rust/crates/tiny-skia-path-0.11.4.crate) = 47764
 SHA256 (rust/crates/toml-0.5.11.crate) = f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234
 SIZE (rust/crates/toml-0.5.11.crate) = 54910
+SHA256 (rust/crates/toml-0.8.19.crate) = a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e
+SIZE (rust/crates/toml-0.8.19.crate) = 50974
 SHA256 (rust/crates/toml_datetime-0.6.8.crate) = 0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41
 SIZE (rust/crates/toml_datetime-0.6.8.crate) = 12028
-SHA256 (rust/crates/toml_edit-0.22.20.crate) = 583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d
-SIZE (rust/crates/toml_edit-0.22.20.crate) = 106726
+SHA256 (rust/crates/toml_edit-0.22.22.crate) = 4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5
+SIZE (rust/crates/toml_edit-0.22.22.crate) = 106387
 SHA256 (rust/crates/tracing-0.1.40.crate) = c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef
 SIZE (rust/crates/tracing-0.1.40.crate) = 79459
 SHA256 (rust/crates/tracing-core-0.1.32.crate) = c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54
 SIZE (rust/crates/tracing-core-0.1.32.crate) = 61221
-SHA256 (rust/crates/ttf-parser-0.24.1.crate) = 5be21190ff5d38e8b4a2d3b6a3ae57f612cc39c96e83cedeaf7abc338a8bac4a
-SIZE (rust/crates/ttf-parser-0.24.1.crate) = 197588
+SHA256 (rust/crates/triomphe-0.1.13.crate) = e6631e42e10b40c0690bf92f404ebcfe6e1fdb480391d15f17cc8e96eeed5369
+SIZE (rust/crates/triomphe-0.1.13.crate) = 29568
+SHA256 (rust/crates/ttf-parser-0.25.0.crate) = 5902c5d130972a0000f60860bfbf46f7ca3db5391eddfedd1b8728bd9dc96c0e
+SIZE (rust/crates/ttf-parser-0.25.0.crate) = 200787
 SHA256 (rust/crates/typenum-1.17.0.crate) = 42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825
 SIZE (rust/crates/typenum-1.17.0.crate) = 42849
-SHA256 (rust/crates/ucd-trie-0.1.6.crate) = ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9
-SIZE (rust/crates/ucd-trie-0.1.6.crate) = 45790
+SHA256 (rust/crates/ucd-trie-0.1.7.crate) = 2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971
+SIZE (rust/crates/ucd-trie-0.1.7.crate) = 46795
 SHA256 (rust/crates/unicode-ident-1.0.13.crate) = e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe
 SIZE (rust/crates/unicode-ident-1.0.13.crate) = 43279
 SHA256 (rust/crates/unicode-segmentation-1.12.0.crate) = f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493
 SIZE (rust/crates/unicode-segmentation-1.12.0.crate) = 106323
-SHA256 (rust/crates/unicode-width-0.1.13.crate) = 0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d
-SIZE (rust/crates/unicode-width-0.1.13.crate) = 457228
-SHA256 (rust/crates/unicode-xid-0.2.5.crate) = 229730647fbc343e3a80e463c1db7f78f3855d3f3739bee0dda773c9a037c90a
-SIZE (rust/crates/unicode-xid-0.2.5.crate) = 15530
+SHA256 (rust/crates/unicode-width-0.1.14.crate) = 7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af
+SIZE (rust/crates/unicode-width-0.1.14.crate) = 271615
+SHA256 (rust/crates/unicode-xid-0.2.6.crate) = ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853
+SIZE (rust/crates/unicode-xid-0.2.6.crate) = 15744
 SHA256 (rust/crates/unsigned-varint-0.8.0.crate) = eb066959b24b5196ae73cb057f45598450d2c5f71460e98c49b738086eff9c06
 SIZE (rust/crates/unsigned-varint-0.8.0.crate) = 15955
+SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821
+SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499
 SHA256 (rust/crates/vec_extract_if_polyfill-0.1.0.crate) = 40c9cb5fb67c2692310b6eb3fce7dd4b6e4c9a75be4f2f46b27f0b2b7799759c
 SIZE (rust/crates/vec_extract_if_polyfill-0.1.0.crate) = 3610
 SHA256 (rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a
@@ -765,8 +789,8 @@ SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270
 SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
 SHA256 (rust/crates/winit-0.29.15.crate) = 0d59ad965a635657faf09c8f062badd885748428933dad8e8bdd64064d92e5ca
 SIZE (rust/crates/winit-0.29.15.crate) = 588797
-SHA256 (rust/crates/winnow-0.6.18.crate) = 68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f
-SIZE (rust/crates/winnow-0.6.18.crate) = 163357
+SHA256 (rust/crates/winnow-0.6.20.crate) = 36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b
+SIZE (rust/crates/winnow-0.6.20.crate) = 163617
 SHA256 (rust/crates/wyz-0.5.1.crate) = 05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed
 SIZE (rust/crates/wyz-0.5.1.crate) = 18790
 SHA256 (rust/crates/x11-dl-2.21.0.crate) = 38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f
@@ -795,5 +819,5 @@ SHA256 (rust/crates/zune-core-0.4.12.crate) = 3f423a2c17029964870cfaabb1f13dfab7
 SIZE (rust/crates/zune-core-0.4.12.crate) = 17355
 SHA256 (rust/crates/zune-jpeg-0.4.13.crate) = 16099418600b4d8f028622f73ff6e3deaabdff330fb9a2a131dea781ee8b0768
*** 20 LINES SKIPPED ***