git: 2cff4cee26dd - main - games/jumpy: update to 0.5.1

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Sun, 25 Dec 2022 00:25:40 UTC
The branch main has been updated by jbeich:

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

commit 2cff4cee26dd0a9bc19be3c163b7705b338a5d7a
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2022-12-14 03:55:03 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2022-12-25 00:25:13 +0000

    games/jumpy: update to 0.5.1
    
    Changes:        https://github.com/fishfight/jumpy/releases/tag/v0.5.0
    Changes:        https://github.com/fishfight/jumpy/compare/v0.5.0...v0.5.1
    Reported by:    GitHub (watch releases)
---
 games/jumpy/Makefile                |   17 +-
 games/jumpy/Makefile.crates         |  541 ++++++++++++++---
 games/jumpy/distinfo                | 1084 +++++++++++++++++++++++++++++------
 games/jumpy/files/patch-gilrs-evdev |   81 ---
 games/jumpy/files/patch-miniquad    |  187 ------
 games/jumpy/files/patch-quad-snd    |   39 --
 games/jumpy/files/patch-quinn       |  234 ++++++++
 games/jumpy/files/patch-wayland     |  255 ++++++++
 8 files changed, 1878 insertions(+), 560 deletions(-)

diff --git a/games/jumpy/Makefile b/games/jumpy/Makefile
index bb32b0657bb0..de86af3e84ab 100644
--- a/games/jumpy/Makefile
+++ b/games/jumpy/Makefile
@@ -1,8 +1,7 @@
 PORTNAME=	jumpy
 DISTVERSIONPREFIX=	v
-DISTVERSION=	0.4.3
-PORTREVISION=	4
-CATEGORIES=	games
+DISTVERSION=	0.5.1
+CATEGORIES=	games wayland
 
 MAINTAINER=	jbeich@FreeBSD.org
 COMMENT=	Tactical 2D shooter in fishy pixels style
@@ -14,21 +13,21 @@ LICENSE_FILE_MIT=	${WRKSRC}/licenses/LICENSE-MIT
 
 LIB_DEPENDS=	libasound.so:audio/alsa-lib \
 		libudev.so:devel/libudev-devd
-RUN_DEPENDS=	${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins
+RUN_DEPENDS=	${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \
+		${LOCALBASE}/lib/libvulkan.so:graphics/vulkan-loader
 
-USES=		cargo gl localbase:ldflags xorg
+USES=		cargo
 USE_GITHUB=	yes
-USE_GL=		gl
-USE_XORG=	x11 xi
 GH_ACCOUNT=	fishfolks
 PLIST_FILES=	bin/${PORTNAME}
 PORTDATA=	*
 
 post-patch:
 # Search assets under PREFIX instead of current directory
-	@${REINPLACE_CMD} '/_dir/s,"\.,"${DATADIR},' ${WRKSRC}/src/main.rs
+	@${REINPLACE_CMD} 's,assets",../${DATADIR_REL}/&,' \
+		${WRKSRC}/cargo-crates/bevy_asset-*/src/lib.rs
 
 post-install:
-	(cd ${WRKSRC} && ${COPYTREE_SHARE} "assets mods" ${STAGEDIR}${DATADIR})
+	(cd ${WRKSRC} && ${COPYTREE_SHARE} "assets" ${STAGEDIR}${DATADIR})
 
 .include <bsd.port.mk>
diff --git a/games/jumpy/Makefile.crates b/games/jumpy/Makefile.crates
index c84cf1f6e05b..521517e5bb65 100644
--- a/games/jumpy/Makefile.crates
+++ b/games/jumpy/Makefile.crates
@@ -1,106 +1,485 @@
-CARGO_CRATES=	adler32-1.2.0 \
-		ahash-0.4.7 \
+CARGO_CRATES=	ab_glyph-0.2.18 \
+		ab_glyph_rasterizer-0.1.7 \
+		addr2line-0.17.0 \
+		adler-1.0.2 \
+		adler32-1.2.0 \
 		ahash-0.7.6 \
-		async-trait-0.1.52 \
-		audir-sles-0.1.0 \
-		audrey-0.3.0 \
+		ahash-0.8.2 \
+		aho-corasick-0.7.19 \
+		alsa-0.6.0 \
+		alsa-sys-0.3.1 \
+		android_log-sys-0.2.0 \
+		android_logger-0.10.1 \
+		android_system_properties-0.1.5 \
+		anyhow-1.0.66 \
+		approx-0.5.1 \
+		arboard-2.1.1 \
+		arrayvec-0.5.2 \
+		arrayvec-0.7.2 \
+		ash-0.37.0+1.3.209 \
+		async-channel-1.7.1 \
+		async-executor-1.5.0 \
+		async-io-1.10.0 \
+		async-lock-2.6.0 \
+		async-task-4.3.0 \
+		atomic-arena-0.1.1 \
+		atomic-waker-1.0.0 \
+		atomic_refcell-0.1.8 \
+		atty-0.2.14 \
 		autocfg-1.1.0 \
-		base-x-0.2.8 \
+		backtrace-0.3.66 \
+		base64-0.13.1 \
+		bevy-0.8.1 \
+		bevy-inspector-egui-0.13.0 \
+		bevy-inspector-egui-derive-0.13.0 \
+		bevy-parallax-0.2.0 \
+		bevy_app-0.8.1 \
+		bevy_asset-0.8.1 \
+		bevy_core-0.8.1 \
+		bevy_core_pipeline-0.8.1 \
+		bevy_derive-0.8.1 \
+		bevy_diagnostic-0.8.1 \
+		bevy_ecs-0.8.1 \
+		bevy_ecs_macros-0.8.1 \
+		bevy_ecs_tilemap-0.7.0 \
+		bevy_egui-0.16.1 \
+		bevy_encase_derive-0.8.1 \
+		bevy_fluent-0.4.0 \
+		bevy_framepace-0.7.0 \
+		bevy_gilrs-0.8.1 \
+		bevy_input-0.8.1 \
+		bevy_internal-0.8.1 \
+		bevy_kira_audio-0.12.0 \
+		bevy_log-0.8.1 \
+		bevy_macro_utils-0.8.1 \
+		bevy_math-0.8.1 \
+		bevy_mikktspace-0.8.1 \
+		bevy_pbr-0.8.1 \
+		bevy_prototype_lyon-0.6.0 \
+		bevy_ptr-0.8.1 \
+		bevy_reflect-0.8.1 \
+		bevy_reflect_derive-0.8.1 \
+		bevy_render-0.8.1 \
+		bevy_render_macros-0.8.1 \
+		bevy_scene-0.8.1 \
+		bevy_sprite-0.8.1 \
+		bevy_system_graph-0.3.0 \
+		bevy_tasks-0.8.1 \
+		bevy_text-0.8.1 \
+		bevy_time-0.8.1 \
+		bevy_transform-0.8.1 \
+		bevy_tweening-0.5.0 \
+		bevy_ui-0.8.1 \
+		bevy_utils-0.8.1 \
+		bevy_window-0.8.1 \
+		bevy_winit-0.8.1 \
+		bincode-1.3.3 \
+		bindgen-0.61.0 \
+		bit-set-0.5.3 \
+		bit-vec-0.6.3 \
+		bitfield-0.14.0 \
+		bitfield-rle-0.2.0 \
 		bitflags-1.3.2 \
-		bumpalo-3.9.1 \
-		bytemuck-1.7.3 \
+		block-0.1.6 \
+		blocking-1.2.0 \
+		bstr-0.2.17 \
+		bumpalo-3.11.1 \
+		bytemuck-1.12.3 \
+		bytemuck_derive-1.3.0 \
 		byteorder-1.4.3 \
-		cc-1.0.73 \
+		bytes-1.3.0 \
+		cache-padded-1.2.0 \
+		calloop-0.9.3 \
+		cc-1.0.77 \
+		cesu8-1.1.0 \
+		cexpr-0.6.0 \
+		cfg-if-0.1.10 \
 		cfg-if-1.0.0 \
+		cfg_aliases-0.1.1 \
+		clang-sys-1.4.0 \
+		clap-4.0.26 \
+		clap_derive-4.0.21 \
+		clap_lex-0.3.0 \
+		clipboard-win-4.4.2 \
+		cobs-0.2.3 \
+		cocoa-0.24.1 \
+		cocoa-foundation-0.1.0 \
+		codespan-reporting-0.11.1 \
 		color_quant-1.1.0 \
-		core-foundation-0.6.4 \
-		core-foundation-sys-0.6.2 \
+		combine-4.6.6 \
+		concurrent-queue-1.2.4 \
+		concurrent-queue-2.0.0 \
+		console_error_panic_hook-0.1.7 \
+		const_panic-0.2.6 \
+		copyless-0.1.5 \
+		core-foundation-0.7.0 \
+		core-foundation-0.9.3 \
+		core-foundation-sys-0.7.0 \
+		core-foundation-sys-0.8.3 \
+		core-graphics-0.19.2 \
+		core-graphics-0.22.3 \
+		core-graphics-types-0.1.1 \
+		core-video-sys-0.1.4 \
+		coreaudio-rs-0.10.0 \
+		coreaudio-sys-0.2.11 \
+		cpal-0.13.5 \
 		crc32fast-1.3.2 \
-		dasp_frame-0.11.0 \
-		dasp_sample-0.11.0 \
+		crossbeam-channel-0.5.6 \
+		crossbeam-utils-0.8.13 \
+		cty-0.2.2 \
+		d3d12-0.5.0 \
+		darling-0.13.4 \
+		darling_core-0.13.4 \
+		darling_macro-0.13.4 \
 		deflate-0.8.6 \
-		discard-1.0.4 \
-		ff-particles-0.1.2 \
+		derive_more-0.99.17 \
+		directories-4.0.1 \
+		dirs-sys-0.3.7 \
+		dispatch-0.2.0 \
+		displaydoc-0.2.3 \
+		dlib-0.5.0 \
+		downcast-rs-1.2.0 \
+		egui-0.19.0 \
+		egui_extras-0.19.0 \
+		either-1.8.0 \
+		emath-0.19.0 \
+		encase-0.3.0 \
+		encase_derive-0.3.0 \
+		encase_derive_impl-0.3.0 \
+		encoding_rs-0.8.31 \
+		env_logger-0.8.4 \
+		epaint-0.19.0 \
+		erased-serde-0.3.23 \
+		error-code-2.3.1 \
+		euclid-0.22.7 \
+		event-listener-2.5.3 \
+		failure-0.1.8 \
+		failure_derive-0.1.8 \
+		fastrand-1.8.0 \
+		filetime-0.2.18 \
+		fixedbitset-0.4.2 \
+		flate2-1.0.24 \
+		float-cmp-0.5.3 \
+		float_next_after-0.1.5 \
+		fluent-0.16.0 \
+		fluent-bundle-0.15.2 \
+		fluent-langneg-0.13.0 \
+		fluent-syntax-0.11.0 \
 		fnv-1.0.7 \
-		fontdue-0.5.2 \
-		getrandom-0.2.4 \
-		gilrs-0.8.2 \
-		gilrs-core-0.3.2 \
-		glam-0.14.0 \
-		hashbrown-0.9.1 \
-		hashbrown-0.12.0 \
-		hecs-0.7.6 \
-		hound-3.4.0 \
+		foreign-types-0.3.2 \
+		foreign-types-shared-0.1.1 \
+		form_urlencoded-1.1.0 \
+		fsevent-sys-4.1.0 \
+		futures-0.3.25 \
+		futures-channel-0.3.25 \
+		futures-core-0.3.25 \
+		futures-io-0.3.25 \
+		futures-lite-1.12.0 \
+		futures-macro-0.3.25 \
+		futures-sink-0.3.25 \
+		futures-task-0.3.25 \
+		futures-util-0.3.25 \
+		fxhash-0.2.1 \
+		gethostname-0.2.3 \
+		getrandom-0.2.8 \
+		gilrs-0.9.0 \
+		gilrs-core-0.4.1 \
+		gimli-0.26.2 \
+		glam-0.21.3 \
+		glob-0.3.0 \
+		globset-0.4.9 \
+		glow-0.11.2 \
+		glyph_brush_layout-0.2.3 \
+		gpu-alloc-0.5.3 \
+		gpu-alloc-types-0.2.0 \
+		gpu-descriptor-0.2.3 \
+		gpu-descriptor-types-0.1.1 \
+		guillotiere-0.6.2 \
+		hash32-0.2.1 \
+		hash32-derive-0.1.1 \
+		hashbrown-0.12.3 \
+		heck-0.4.0 \
+		hermit-abi-0.1.19 \
+		hex-0.4.3 \
+		hexasphere-7.2.1 \
+		hexf-parse-0.2.1 \
+		ident_case-1.0.1 \
+		idna-0.3.0 \
 		image-0.23.14 \
-		io-kit-sys-0.1.0 \
-		itoa-1.0.1 \
-		js-sys-0.3.56 \
+		image-0.24.5 \
+		indexmap-1.9.2 \
+		inotify-0.9.6 \
+		inotify-sys-0.1.5 \
+		inplace_it-0.3.5 \
+		instant-0.1.12 \
+		interpolation-0.2.0 \
+		intl-memoizer-0.5.1 \
+		intl_pluralrules-7.0.2 \
+		io-kit-sys-0.2.0 \
+		itertools-0.10.5 \
+		itoa-1.0.4 \
+		iyes_loopless-0.8.0 \
+		jni-0.19.0 \
+		jni-sys-0.3.0 \
+		jobserver-0.1.25 \
+		jpeg-decoder-0.1.22 \
+		js-sys-0.3.60 \
+		khronos-egl-4.1.0 \
+		kira-0.6.1 \
+		kqueue-1.0.7 \
+		kqueue-sys-1.0.3 \
 		lazy_static-1.4.0 \
-		lewton-0.9.4 \
-		libc-0.2.118 \
+		lazycell-1.3.0 \
+		leafwing-input-manager-0.6.1 \
+		leafwing_input_manager_macros-0.6.0 \
+		libc-0.2.137 \
+		libloading-0.7.4 \
+		libmimalloc-sys-0.1.28 \
 		libudev-sys-0.1.4 \
-		log-0.4.14 \
-		mach-0.2.3 \
-		macroquad-0.3.13 \
-		macroquad-platformer-0.1.2 \
-		macroquad_macro-0.1.7 \
-		maybe-uninit-2.0.0 \
+		lock_api-0.4.9 \
+		log-0.4.17 \
+		lyon_geom-0.17.7 \
+		lyon_path-0.17.7 \
+		lyon_tessellation-0.17.10 \
+		mach-0.3.2 \
+		malloc_buf-0.0.6 \
+		matchers-0.1.0 \
+		memchr-2.5.0 \
+		memmap2-0.3.1 \
 		memoffset-0.6.5 \
-		miniquad-0.3.0-alpha.42 \
+		metal-0.24.0 \
+		mimalloc-0.1.32 \
+		minimal-lexical-0.2.1 \
 		miniz_oxide-0.3.7 \
+		miniz_oxide-0.4.4 \
+		miniz_oxide-0.5.4 \
+		miniz_oxide-0.6.2 \
+		mio-0.8.5 \
+		naga-0.9.0 \
+		ndk-0.5.0 \
+		ndk-0.6.0 \
+		ndk-context-0.1.1 \
+		ndk-glue-0.5.2 \
+		ndk-glue-0.6.2 \
+		ndk-macro-0.3.0 \
 		ndk-sys-0.2.2 \
+		ndk-sys-0.3.0 \
+		nix-0.22.3 \
 		nix-0.23.1 \
-		num-integer-0.1.44 \
-		num-iter-0.1.42 \
+		nix-0.24.2 \
+		nohash-hasher-0.2.0 \
+		nom-7.1.1 \
+		normalize-path-0.2.0 \
+		notify-5.0.0-pre.15 \
+		nu-ansi-term-0.46.0 \
+		num-derive-0.3.3 \
+		num-integer-0.1.45 \
+		num-iter-0.1.43 \
 		num-rational-0.3.2 \
-		num-traits-0.2.14 \
-		ogg-0.7.1 \
-		once_cell-1.9.0 \
-		pkg-config-0.3.24 \
+		num-rational-0.4.1 \
+		num-traits-0.2.15 \
+		num_cpus-1.14.0 \
+		num_enum-0.5.7 \
+		num_enum_derive-0.5.7 \
+		numquant-0.2.0 \
+		objc-0.2.7 \
+		objc-foundation-0.1.1 \
+		objc_exception-0.1.2 \
+		objc_id-0.1.1 \
+		object-0.29.0 \
+		oboe-0.4.6 \
+		oboe-sys-0.4.5 \
+		once_cell-1.16.0 \
+		openssl-probe-0.1.5 \
+		os_str_bytes-6.4.1 \
+		overload-0.1.1 \
+		owned_ttf_parser-0.17.1 \
+		parking-2.0.0 \
+		parking_lot-0.11.2 \
+		parking_lot-0.12.1 \
+		parking_lot_core-0.8.5 \
+		parking_lot_core-0.9.4 \
+		peeking_take_while-0.1.2 \
+		pem-1.1.0 \
+		percent-encoding-2.2.0 \
+		petgraph-0.6.2 \
+		petitset-0.2.1 \
+		pin-project-1.0.12 \
+		pin-project-internal-1.0.12 \
+		pin-project-lite-0.2.9 \
+		pin-utils-0.1.0 \
+		pkg-config-0.3.26 \
 		png-0.16.8 \
-		proc-macro2-1.0.36 \
-		quad-alsa-sys-0.3.2 \
-		quad-rand-0.2.1 \
-		quad-snd-0.2.3 \
-		quote-1.0.15 \
-		rustc_version-0.2.3 \
+		png-0.17.7 \
+		polling-2.4.0 \
+		postcard-1.0.2 \
+		pp-rs-0.2.1 \
+		ppv-lite86-0.2.17 \
+		pretty-type-name-1.0.0 \
+		proc-macro-crate-1.2.1 \
+		proc-macro-error-1.0.4 \
+		proc-macro-error-attr-1.0.4 \
+		proc-macro2-1.0.47 \
+		profiling-1.0.7 \
+		quinn-0.9.1 \
+		quinn-proto-0.9.1 \
+		quinn-udp-0.3.0 \
+		quote-1.0.21 \
+		radsort-0.1.0 \
+		rand-0.8.5 \
+		rand_chacha-0.3.1 \
+		rand_core-0.6.4 \
+		range-alloc-0.1.2 \
+		raw-window-handle-0.4.3 \
+		rcgen-0.10.0 \
+		rectangle-pack-0.4.2 \
+		redox_syscall-0.2.16 \
+		redox_users-0.4.3 \
+		regex-1.7.0 \
+		regex-automata-0.1.10 \
+		regex-syntax-0.6.28 \
+		renderdoc-sys-0.7.1 \
+		ring-0.16.20 \
+		ringbuf-0.2.8 \
+		ron-0.7.1 \
+		rustc-demangle-0.1.21 \
+		rustc-hash-1.1.0 \
+		rustls-0.20.7 \
+		rustls-native-certs-0.6.2 \
+		rustls-pemfile-1.0.1 \
 		rusty-xinput-1.2.0 \
-		ryu-1.0.9 \
-		sapp-android-0.1.14 \
-		sapp-darwin-0.1.6 \
-		sapp-dummy-0.1.5 \
-		sapp-ios-0.1.2 \
-		sapp-linux-0.1.13 \
-		sapp-wasm-0.1.26 \
-		sapp-windows-0.2.19 \
-		semver-0.9.0 \
-		semver-parser-0.7.0 \
-		serde-1.0.136 \
-		serde_derive-1.0.136 \
-		serde_json-1.0.79 \
-		sha1-0.6.1 \
+		ryu-1.0.11 \
+		same-file-1.0.6 \
+		scc-0.11.5 \
+		schannel-0.1.20 \
+		scoped-tls-1.0.1 \
+		scopeguard-1.1.0 \
+		sct-0.7.0 \
+		security-framework-2.7.0 \
+		security-framework-sys-2.6.1 \
+		self_cell-0.10.2 \
+		serde-1.0.147 \
+		serde_derive-1.0.147 \
+		serde_json-1.0.89 \
+		serde_yaml-0.9.14 \
 		sha1_smol-1.0.0 \
-		smallvec-0.6.14 \
-		spin-0.9.2 \
-		stdweb-0.4.20 \
-		stdweb-derive-0.5.3 \
-		stdweb-internal-macros-0.2.9 \
-		stdweb-internal-runtime-0.1.5 \
-		syn-1.0.86 \
-		toml-0.5.8 \
-		ttf-parser-0.12.3 \
-		unicode-xid-0.2.2 \
-		uuid-0.8.2 \
+		sharded-slab-0.1.4 \
+		shlex-1.1.0 \
+		signal-hook-registry-1.4.0 \
+		siphasher-0.2.3 \
+		slab-0.4.7 \
+		slotmap-1.0.6 \
+		smallvec-1.10.0 \
+		smithay-client-toolkit-0.15.4 \
+		socket2-0.4.7 \
+		spin-0.5.2 \
+		spirv-0.2.0+1.5.4 \
+		stdweb-0.1.3 \
+		str-buf-1.0.6 \
+		strsim-0.10.0 \
+		svg_fmt-0.4.1 \
+		svgtypes-0.5.0 \
+		symphonia-0.5.1 \
+		symphonia-codec-vorbis-0.5.1 \
+		symphonia-core-0.5.1 \
+		symphonia-format-ogg-0.5.1 \
+		symphonia-metadata-0.5.1 \
+		symphonia-utils-xiph-0.5.1 \
+		syn-1.0.103 \
+		synstructure-0.12.6 \
+		sys-locale-0.2.3 \
+		taffy-0.1.0 \
+		termcolor-1.1.3 \
+		thiserror-1.0.37 \
+		thiserror-impl-1.0.37 \
+		thread_local-1.1.4 \
+		tiff-0.6.1 \
+		time-0.3.17 \
+		time-core-0.1.0 \
+		tinystr-0.7.0 \
+		tinyvec-1.6.0 \
+		tinyvec_macros-0.1.0 \
+		tokio-1.22.0 \
+		tokio-macros-1.8.0 \
+		toml-0.5.9 \
+		tracing-0.1.37 \
+		tracing-attributes-0.1.23 \
+		tracing-core-0.1.30 \
+		tracing-log-0.1.3 \
+		tracing-subscriber-0.3.16 \
+		tracing-wasm-0.2.1 \
+		ttf-parser-0.17.1 \
+		turborand-0.8.1 \
+		type-map-0.4.0 \
+		typenum-1.15.0 \
+		ulid-1.0.0 \
+		unic-langid-0.9.1 \
+		unic-langid-impl-0.9.1 \
+		unicode-bidi-0.3.8 \
+		unicode-ident-1.0.5 \
+		unicode-normalization-0.1.22 \
+		unicode-width-0.1.10 \
+		unicode-xid-0.2.4 \
+		unsafe-libyaml-0.2.4 \
+		untrusted-0.7.1 \
+		url-2.3.1 \
+		uuid-1.2.2 \
+		valuable-0.1.0 \
+		varinteger-1.0.6 \
 		vec_map-0.8.2 \
 		version_check-0.9.4 \
-		wasi-0.10.2+wasi-snapshot-preview1 \
-		wasm-bindgen-0.2.79 \
-		wasm-bindgen-backend-0.2.79 \
-		wasm-bindgen-macro-0.2.79 \
-		wasm-bindgen-macro-support-0.2.79 \
-		wasm-bindgen-shared-0.2.79 \
-		web-sys-0.3.56 \
+		waker-fn-1.1.0 \
+		walkdir-2.3.2 \
+		wasi-0.11.0+wasi-snapshot-preview1 \
+		wasm-bindgen-0.2.83 \
+		wasm-bindgen-backend-0.2.83 \
+		wasm-bindgen-futures-0.4.33 \
+		wasm-bindgen-macro-0.2.83 \
+		wasm-bindgen-macro-support-0.2.83 \
+		wasm-bindgen-shared-0.2.83 \
+		wayland-client-0.29.5 \
+		wayland-commons-0.29.5 \
+		wayland-cursor-0.29.5 \
+		wayland-protocols-0.29.5 \
+		wayland-scanner-0.29.5 \
+		wayland-sys-0.29.5 \
+		web-sys-0.3.60 \
+		webbrowser-0.7.1 \
+		webpki-0.22.0 \
+		weezl-0.1.7 \
+		wepoll-ffi-0.1.2 \
+		wgpu-0.13.1 \
+		wgpu-core-0.13.2 \
+		wgpu-hal-0.13.2 \
+		wgpu-types-0.13.2 \
+		widestring-0.5.1 \
 		winapi-0.3.9 \
 		winapi-i686-pc-windows-gnu-0.4.0 \
+		winapi-util-0.1.5 \
+		winapi-wsapoll-0.1.1 \
 		winapi-x86_64-pc-windows-gnu-0.4.0 \
-		fishsticks@git+https://github.com/fishfight/fishsticks\#95b45b717e427fb5fa1671f3bdf686d7270ad8a1
+		windows-sys-0.36.1 \
+		windows-sys-0.42.0 \
+		windows_aarch64_gnullvm-0.42.0 \
+		windows_aarch64_msvc-0.36.1 \
+		windows_aarch64_msvc-0.42.0 \
+		windows_i686_gnu-0.36.1 \
+		windows_i686_gnu-0.42.0 \
+		windows_i686_msvc-0.36.1 \
+		windows_i686_msvc-0.42.0 \
+		windows_x86_64_gnu-0.36.1 \
+		windows_x86_64_gnu-0.42.0 \
+		windows_x86_64_gnullvm-0.42.0 \
+		windows_x86_64_msvc-0.36.1 \
+		windows_x86_64_msvc-0.42.0 \
+		winit-0.26.1 \
+		x11-dl-2.20.0 \
+		x11rb-0.9.0 \
+		xcursor-0.3.4 \
+		xi-unicode-0.3.0 \
+		xml-rs-0.8.4 \
+		yasna-0.5.0 \
+		bevy_ggrs@git+https://github.com/zicklag/bevy_ggrs.git?branch=jumpy\#306683bbad3ed12e81175879a1ecb020d1873ea1 \
+		ggrs@git+https://github.com/gschup/ggrs\#3d4adea97ed5268d376cc44663e43c3a32359dbe \
+		bevy_ecs_dynamic@git+https://github.com/jakobhellermann/bevy_ecs_dynamic?rev=aa7a051a49bd134cfd8c169542e16526bf2b36b3\#aa7a051a49bd134cfd8c169542e16526bf2b36b3 \
+		bevy_hierarchy@git+https://github.com/zicklag/bevy.git?branch=dont-error-on-non-mapped-children-entities\#0db2b8e67b8cd848fdad2a98bebead4cfce6b336
diff --git a/games/jumpy/distinfo b/games/jumpy/distinfo
index d02ec7826167..498390b46f8e 100644
--- a/games/jumpy/distinfo
+++ b/games/jumpy/distinfo
@@ -1,215 +1,973 @@
-TIMESTAMP = 1659447630
+TIMESTAMP = 1670990103
+SHA256 (rust/crates/ab_glyph-0.2.18.crate) = 4dcdbc68024b653943864d436fe8a24b028095bc1cf91a8926f8241e4aaffe59
+SIZE (rust/crates/ab_glyph-0.2.18.crate) = 17260
+SHA256 (rust/crates/ab_glyph_rasterizer-0.1.7.crate) = 330223a1aecc308757b9926e9391c9b47f8ef2dbd8aea9df88312aea18c5e8d6
+SIZE (rust/crates/ab_glyph_rasterizer-0.1.7.crate) = 10786
+SHA256 (rust/crates/addr2line-0.17.0.crate) = b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b
+SIZE (rust/crates/addr2line-0.17.0.crate) = 32260
+SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe
+SIZE (rust/crates/adler-1.0.2.crate) = 12778
 SHA256 (rust/crates/adler32-1.2.0.crate) = aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234
 SIZE (rust/crates/adler32-1.2.0.crate) = 6411
-SHA256 (rust/crates/ahash-0.4.7.crate) = 739f4a8db6605981345c5654f3a85b056ce52f37a39d34da03f25bf2151ea16e
-SIZE (rust/crates/ahash-0.4.7.crate) = 51474
 SHA256 (rust/crates/ahash-0.7.6.crate) = fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47
 SIZE (rust/crates/ahash-0.7.6.crate) = 38030
-SHA256 (rust/crates/async-trait-0.1.52.crate) = 061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3
-SIZE (rust/crates/async-trait-0.1.52.crate) = 25913
-SHA256 (rust/crates/audir-sles-0.1.0.crate) = ea47348666a8edb7ad80cbee3940eb2bccf70df0e6ce09009abe1a836cb779f5
-SIZE (rust/crates/audir-sles-0.1.0.crate) = 19230
-SHA256 (rust/crates/audrey-0.3.0.crate) = 58b92a84e89497e3cd25d3672cd5d1c288abaac02c18ff21283f17d118b889b8
-SIZE (rust/crates/audrey-0.3.0.crate) = 80961
+SHA256 (rust/crates/ahash-0.8.2.crate) = bf6ccdb167abbf410dcb915cabd428929d7f6a04980b54a11f26a39f1c7f7107
+SIZE (rust/crates/ahash-0.8.2.crate) = 42491
+SHA256 (rust/crates/aho-corasick-0.7.19.crate) = b4f55bd91a0978cbfd91c457a164bab8b4001c833b7f323132c0a4e1922dd44e
+SIZE (rust/crates/aho-corasick-0.7.19.crate) = 113070
+SHA256 (rust/crates/alsa-0.6.0.crate) = 5915f52fe2cf65e83924d037b6c5290b7cee097c6b5c8700746e6168a343fd6b
+SIZE (rust/crates/alsa-0.6.0.crate) = 68171
+SHA256 (rust/crates/alsa-sys-0.3.1.crate) = db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527
+SIZE (rust/crates/alsa-sys-0.3.1.crate) = 32748
+SHA256 (rust/crates/android_log-sys-0.2.0.crate) = 85965b6739a430150bdd138e2374a98af0c3ee0d030b3bb7fc3bddff58d0102e
+SIZE (rust/crates/android_log-sys-0.2.0.crate) = 6086
+SHA256 (rust/crates/android_logger-0.10.1.crate) = d9ed09b18365ed295d722d0b5ed59c01b79a826ff2d2a8f73d5ecca8e6fb2f66
+SIZE (rust/crates/android_logger-0.10.1.crate) = 11655
+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/anyhow-1.0.66.crate) = 216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6
+SIZE (rust/crates/anyhow-1.0.66.crate) = 43770
+SHA256 (rust/crates/approx-0.5.1.crate) = cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6
+SIZE (rust/crates/approx-0.5.1.crate) = 15100
+SHA256 (rust/crates/arboard-2.1.1.crate) = dc120354d1b5ec6d7aaf4876b602def75595937b5e15d356eb554ab5177e08bb
+SIZE (rust/crates/arboard-2.1.1.crate) = 38951
+SHA256 (rust/crates/arrayvec-0.5.2.crate) = 23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b
+SIZE (rust/crates/arrayvec-0.5.2.crate) = 27838
+SHA256 (rust/crates/arrayvec-0.7.2.crate) = 8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6
+SIZE (rust/crates/arrayvec-0.7.2.crate) = 29341
+SHA256 (rust/crates/ash-0.37.0+1.3.209.crate) = 006ca68e0f2b03f22d6fa9f2860f85aed430d257fec20f8879b2145e7c7ae1a6
+SIZE (rust/crates/ash-0.37.0+1.3.209.crate) = 367508
+SHA256 (rust/crates/async-channel-1.7.1.crate) = e14485364214912d3b19cc3435dde4df66065127f05fa0d75c712f36f12c2f28
+SIZE (rust/crates/async-channel-1.7.1.crate) = 12855
+SHA256 (rust/crates/async-executor-1.5.0.crate) = 17adb73da160dfb475c183343c8cccd80721ea5a605d3eb57125f0a7b7a92d0b
+SIZE (rust/crates/async-executor-1.5.0.crate) = 15068
+SHA256 (rust/crates/async-io-1.10.0.crate) = e8121296a9f05be7f34aa4196b1747243b3b62e048bb7906f644f3fbfc490cf7
+SIZE (rust/crates/async-io-1.10.0.crate) = 36493
+SHA256 (rust/crates/async-lock-2.6.0.crate) = c8101efe8695a6c17e02911402145357e718ac92d3ff88ae8419e84b1707b685
+SIZE (rust/crates/async-lock-2.6.0.crate) = 20497
+SHA256 (rust/crates/async-task-4.3.0.crate) = 7a40729d2133846d9ed0ea60a8b9541bccddab49cd30f0715a1da672fe9a2524
+SIZE (rust/crates/async-task-4.3.0.crate) = 29544
+SHA256 (rust/crates/atomic-arena-0.1.1.crate) = 5450eca8ce5abcfd5520727e975ebab30ccca96030550406b0ca718b224ead10
+SIZE (rust/crates/atomic-arena-0.1.1.crate) = 12102
+SHA256 (rust/crates/atomic-waker-1.0.0.crate) = 065374052e7df7ee4047b1160cca5e1467a12351a40b3da123c870ba0b8eda2a
+SIZE (rust/crates/atomic-waker-1.0.0.crate) = 11771
+SHA256 (rust/crates/atomic_refcell-0.1.8.crate) = 73b5e5f48b927f04e952dedc932f31995a65a0bf65ec971c74436e51bf6e970d
+SIZE (rust/crates/atomic_refcell-0.1.8.crate) = 5887
+SHA256 (rust/crates/atty-0.2.14.crate) = d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8
+SIZE (rust/crates/atty-0.2.14.crate) = 5470
 SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa
 SIZE (rust/crates/autocfg-1.1.0.crate) = 13272
-SHA256 (rust/crates/base-x-0.2.8.crate) = a4521f3e3d031370679b3b140beb36dfe4801b09ac77e30c61941f97df3ef28b
-SIZE (rust/crates/base-x-0.2.8.crate) = 10614
+SHA256 (rust/crates/backtrace-0.3.66.crate) = cab84319d616cfb654d03394f38ab7e6f0919e181b1b57e1fd15e7fb4077d9a7
+SIZE (rust/crates/backtrace-0.3.66.crate) = 74397
+SHA256 (rust/crates/base64-0.13.1.crate) = 9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8
+SIZE (rust/crates/base64-0.13.1.crate) = 61002
+SHA256 (rust/crates/bevy-0.8.1.crate) = fea147ef1ebb92d41294cfad804c40de151b174c711ce6e0a4a40eba23eae1a4
+SIZE (rust/crates/bevy-0.8.1.crate) = 233016
+SHA256 (rust/crates/bevy-inspector-egui-0.13.0.crate) = 3e18f673a7040930e20c899ad5e98d62f5db702a742c9cd96b5862d051a7b5da
+SIZE (rust/crates/bevy-inspector-egui-0.13.0.crate) = 310455
+SHA256 (rust/crates/bevy-inspector-egui-derive-0.13.0.crate) = 2ce0a659fdb2c31c2ae7f2ee8020fa758aff458a4ae4dc4e55bc27dcc31ef487
+SIZE (rust/crates/bevy-inspector-egui-derive-0.13.0.crate) = 5756
+SHA256 (rust/crates/bevy-parallax-0.2.0.crate) = 848290b802a0315343b65eba37dc258194689b5df40fbd808aa2dec75bf812a3
+SIZE (rust/crates/bevy-parallax-0.2.0.crate) = 20453
+SHA256 (rust/crates/bevy_app-0.8.1.crate) = 9e4ae0a6ed2adf3b153511b4645241660a93f747c05ecd1e5a909dafc803cad4
+SIZE (rust/crates/bevy_app-0.8.1.crate) = 16243
+SHA256 (rust/crates/bevy_asset-0.8.1.crate) = 2ec773c861a7e9d9978771f59f385500ec6da3a1ab5487705cddb054393d3d19
+SIZE (rust/crates/bevy_asset-0.8.1.crate) = 30778
+SHA256 (rust/crates/bevy_core-0.8.1.crate) = c53172003d5cde7780870b5403c66c8ede3581faf3e510e916d8b4baa5b538d2
+SIZE (rust/crates/bevy_core-0.8.1.crate) = 7885
+SHA256 (rust/crates/bevy_core_pipeline-0.8.1.crate) = 5e60efd10d593f6d122f2687f74c09ad55835a8f999c35bed6380ddd8e6ff7f2
+SIZE (rust/crates/bevy_core_pipeline-0.8.1.crate) = 10929
+SHA256 (rust/crates/bevy_derive-0.8.1.crate) = 0e6345431bbe6d7b6c165cd860ecd0b35da929779571259c5df970ac256d45f9
+SIZE (rust/crates/bevy_derive-0.8.1.crate) = 7133
+SHA256 (rust/crates/bevy_diagnostic-0.8.1.crate) = 58ac9f4c2815f412be4b6e21e4b299cdafa710f651d064f6d40b2a8377a0d17c
+SIZE (rust/crates/bevy_diagnostic-0.8.1.crate) = 8466
+SHA256 (rust/crates/bevy_ecs-0.8.1.crate) = c174066a24ed8a14d15ea58b0aea1c1f5c763f4bb36ebdc2b1dc78026007d0f5
+SIZE (rust/crates/bevy_ecs-0.8.1.crate) = 186254
+SHA256 (rust/crates/bevy_ecs_macros-0.8.1.crate) = cc50c39e49e8febccc74e8e731680adb0cb4aef1f53275740cbaa95c6da71f4f
+SIZE (rust/crates/bevy_ecs_macros-0.8.1.crate) = 13035
+SHA256 (rust/crates/bevy_ecs_tilemap-0.7.0.crate) = 5ef56c77808aa1fc7379ce538bd9a1e4048794203b4f591f2d06131fc613a1cc
+SIZE (rust/crates/bevy_ecs_tilemap-0.7.0.crate) = 53399
+SHA256 (rust/crates/bevy_egui-0.16.1.crate) = d365761fd6a5c227b1f88f38b560287334accb69cfe938443e27615464edc897
+SIZE (rust/crates/bevy_egui-0.16.1.crate) = 106761
+SHA256 (rust/crates/bevy_encase_derive-0.8.1.crate) = 68bc194009c5e9b97da64a08142dd183c264885d99c985cf849868103018adf1
+SIZE (rust/crates/bevy_encase_derive-0.8.1.crate) = 5105
+SHA256 (rust/crates/bevy_fluent-0.4.0.crate) = 97073140587e1d731a583695c64b3a4410ba5edf9b3f79aae56ab63d0aab0384
+SIZE (rust/crates/bevy_fluent-0.4.0.crate) = 237329
+SHA256 (rust/crates/bevy_framepace-0.7.0.crate) = 327027bd161a95a03962d03ba4cf71013a8d2500bf288838f6046278806cb383
+SIZE (rust/crates/bevy_framepace-0.7.0.crate) = 230869
+SHA256 (rust/crates/bevy_gilrs-0.8.1.crate) = cb15a3427d9707be92b457e5d66900b02d853b475c21dd8662bdda387ba9f24e
+SIZE (rust/crates/bevy_gilrs-0.8.1.crate) = 6233
+SHA256 (rust/crates/bevy_input-0.8.1.crate) = 1821c4b760ba6ddb4fe61806e9cc33f40b09a884557aca4553a29b8c7d73c6b4
+SIZE (rust/crates/bevy_input-0.8.1.crate) = 17862
+SHA256 (rust/crates/bevy_internal-0.8.1.crate) = ee63ad1e3f95a26ff2c227fadb1534a7bfe3a098e0e45c347f2f2575a573d9bc
+SIZE (rust/crates/bevy_internal-0.8.1.crate) = 8603
+SHA256 (rust/crates/bevy_kira_audio-0.12.0.crate) = 0379febb94c497ac6f6b5c0ef27775f7302f65dc780a33dbcec0c743a474b5f4
+SIZE (rust/crates/bevy_kira_audio-0.12.0.crate) = 395845
+SHA256 (rust/crates/bevy_log-0.8.1.crate) = 092daf498887814a064331dfcd1cf487a5ddab01fd38629b84a35b8b664462a1
+SIZE (rust/crates/bevy_log-0.8.1.crate) = 8137
+SHA256 (rust/crates/bevy_macro_utils-0.8.1.crate) = 43fb5137e5198302d7c6c33d1e454cf48a586e7c6fd12f4860f12863951e16b9
+SIZE (rust/crates/bevy_macro_utils-0.8.1.crate) = 7875
+SHA256 (rust/crates/bevy_math-0.8.1.crate) = 531f2b90c7e861a96f418b3d560131b3354c5e67a67eba3953a45a56ea0114d2
+SIZE (rust/crates/bevy_math-0.8.1.crate) = 5021
+SHA256 (rust/crates/bevy_mikktspace-0.8.1.crate) = 941e7d3d4e1dbb735f040e4cdc1558be1d3c38d43f1d9fdbb039c39a7849a00b
+SIZE (rust/crates/bevy_mikktspace-0.8.1.crate) = 20846
+SHA256 (rust/crates/bevy_pbr-0.8.1.crate) = 176073021a4caeb8b448f24ce790fb57fde74b114f345064a8b102d2f7bed905
+SIZE (rust/crates/bevy_pbr-0.8.1.crate) = 69085
+SHA256 (rust/crates/bevy_prototype_lyon-0.6.0.crate) = f9e44f5ffcbac7114ed9377e6bc875e845c76e5ebb3a5a018169dc37ba5b78d0
+SIZE (rust/crates/bevy_prototype_lyon-0.6.0.crate) = 156120
+SHA256 (rust/crates/bevy_ptr-0.8.1.crate) = 9960c19e582b43cebe1894b6679520a4f50802d1cc5b6fa432f8d685ed232f09
+SIZE (rust/crates/bevy_ptr-0.8.1.crate) = 7544
+SHA256 (rust/crates/bevy_reflect-0.8.1.crate) = 3fc689dd7a7df3b3768884a4754711d406aa302ea48da483c03b52715fa95045
+SIZE (rust/crates/bevy_reflect-0.8.1.crate) = 44402
+SHA256 (rust/crates/bevy_reflect_derive-0.8.1.crate) = 8c36fa5100832c787c10558d31632ddc454c221e8dfacbbef836938f59614754
+SIZE (rust/crates/bevy_reflect_derive-0.8.1.crate) = 16850
+SHA256 (rust/crates/bevy_render-0.8.1.crate) = 600bcef85c7efac6e38ed725707f0e5b7c59b510430034ba2f743f472493f845
+SIZE (rust/crates/bevy_render-0.8.1.crate) = 124928
+SHA256 (rust/crates/bevy_render_macros-0.8.1.crate) = 1be90adc9e5d5808833e363670818da5fe68ccafd7ca983a457f90957d2a430b
+SIZE (rust/crates/bevy_render_macros-0.8.1.crate) = 11173
+SHA256 (rust/crates/bevy_scene-0.8.1.crate) = a045d575d2c8f776d8ea965363c81660243fefbfc3712ead938b00dfd6797216
+SIZE (rust/crates/bevy_scene-0.8.1.crate) = 11858
+SHA256 (rust/crates/bevy_sprite-0.8.1.crate) = 69c419f3db09d7ac1f4d45e0874d349d5d6f47f48bc10d55cd0da36413e2331e
+SIZE (rust/crates/bevy_sprite-0.8.1.crate) = 27613
+SHA256 (rust/crates/bevy_system_graph-0.3.0.crate) = 01982006dc7d468bc38c6362066299bcffeb742066483b131cd1acc3648ecb5f
+SIZE (rust/crates/bevy_system_graph-0.3.0.crate) = 10880
+SHA256 (rust/crates/bevy_tasks-0.8.1.crate) = 719b753acb3d5b9dbfd77038560fe1893c17d4ee0a4242c2ee70da9d59430537
+SIZE (rust/crates/bevy_tasks-0.8.1.crate) = 19552
+SHA256 (rust/crates/bevy_text-0.8.1.crate) = c265b7515faf55a3b92fd6ce0ab65dd246f247e11d737d6f5cdaf49c2be42c63
+SIZE (rust/crates/bevy_text-0.8.1.crate) = 13919
+SHA256 (rust/crates/bevy_time-0.8.1.crate) = 22830665b8476292b861216383fd79922aef2b540f9fd09d49144e3e5e94550e
+SIZE (rust/crates/bevy_time-0.8.1.crate) = 12602
+SHA256 (rust/crates/bevy_transform-0.8.1.crate) = a4bb8760f03e9667e7499a5ceec1f7630fc3e45702781ac0df56cb969e8ae668
+SIZE (rust/crates/bevy_transform-0.8.1.crate) = 10929
+SHA256 (rust/crates/bevy_tweening-0.5.0.crate) = 164bcb41708fa1aeb435b6bba6cae61777b9f8cf3e18b207bb6209ca5b970e77
+SIZE (rust/crates/bevy_tweening-0.5.0.crate) = 341648
+SHA256 (rust/crates/bevy_ui-0.8.1.crate) = 062ce086de1a4a470e5df48cb5c16a1dc97ab610e635cafabdef26c4a1ef5756
+SIZE (rust/crates/bevy_ui-0.8.1.crate) = 29096
+SHA256 (rust/crates/bevy_utils-0.8.1.crate) = f6e9aa1866c1cf7ee000f281ce9e90d02d701f5c7380a107252017e58e2f5246
+SIZE (rust/crates/bevy_utils-0.8.1.crate) = 10218
+SHA256 (rust/crates/bevy_window-0.8.1.crate) = 707dbbebfac72b1e63e874e7a11a345feab8c440355c0bd71e6dff26709fba9a
+SIZE (rust/crates/bevy_window-0.8.1.crate) = 16649
+SHA256 (rust/crates/bevy_winit-0.8.1.crate) = 98b15fee4b75472e3441b0c7221467303e4ce59b342a94a328e447e7cdb5a43c
+SIZE (rust/crates/bevy_winit-0.8.1.crate) = 18086
+SHA256 (rust/crates/bincode-1.3.3.crate) = b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad
+SIZE (rust/crates/bincode-1.3.3.crate) = 28958
+SHA256 (rust/crates/bindgen-0.61.0.crate) = 8a022e58a142a46fea340d68012b9201c094e93ec3d033a944a24f8fd4a4f09a
+SIZE (rust/crates/bindgen-0.61.0.crate) = 199472
+SHA256 (rust/crates/bit-set-0.5.3.crate) = 0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1
+SIZE (rust/crates/bit-set-0.5.3.crate) = 14470
+SHA256 (rust/crates/bit-vec-0.6.3.crate) = 349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb
+SIZE (rust/crates/bit-vec-0.6.3.crate) = 19927
+SHA256 (rust/crates/bitfield-0.14.0.crate) = 2d7e60934ceec538daadb9d8432424ed043a904d8e0243f3c6446bce549a46ac
+SIZE (rust/crates/bitfield-0.14.0.crate) = 16776
+SHA256 (rust/crates/bitfield-rle-0.2.0.crate) = 3f8acc105b7bd3ed61e4bb7ad3e3b3f2a8da72205b2e0408cf71a499e8f57dd0
+SIZE (rust/crates/bitfield-rle-0.2.0.crate) = 14397
 SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
 SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
-SHA256 (rust/crates/bumpalo-3.9.1.crate) = a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899
-SIZE (rust/crates/bumpalo-3.9.1.crate) = 77507
-SHA256 (rust/crates/bytemuck-1.7.3.crate) = 439989e6b8c38d1b6570a384ef1e49c8848128f5a97f3914baef02920842712f
-SIZE (rust/crates/bytemuck-1.7.3.crate) = 27879
+SHA256 (rust/crates/block-0.1.6.crate) = 0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a
+SIZE (rust/crates/block-0.1.6.crate) = 4077
+SHA256 (rust/crates/blocking-1.2.0.crate) = c6ccb65d468978a086b69884437ded69a90faab3bbe6e67f242173ea728acccc
+SIZE (rust/crates/blocking-1.2.0.crate) = 18494
+SHA256 (rust/crates/bstr-0.2.17.crate) = ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223
+SIZE (rust/crates/bstr-0.2.17.crate) = 330350
+SHA256 (rust/crates/bumpalo-3.11.1.crate) = 572f695136211188308f16ad2ca5c851a712c464060ae6974944458eb83880ba
+SIZE (rust/crates/bumpalo-3.11.1.crate) = 81207
+SHA256 (rust/crates/bytemuck-1.12.3.crate) = aaa3a8d9a1ca92e282c96a32d6511b695d7d994d1d102ba85d279f9b2756947f
+SIZE (rust/crates/bytemuck-1.12.3.crate) = 39835
+SHA256 (rust/crates/bytemuck_derive-1.3.0.crate) = 5fe233b960f12f8007e3db2d136e3cb1c291bfd7396e384ee76025fc1a3932b4
+SIZE (rust/crates/bytemuck_derive-1.3.0.crate) = 14050
 SHA256 (rust/crates/byteorder-1.4.3.crate) = 14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610
 SIZE (rust/crates/byteorder-1.4.3.crate) = 22512
-SHA256 (rust/crates/cc-1.0.73.crate) = 2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11
-SIZE (rust/crates/cc-1.0.73.crate) = 57880
+SHA256 (rust/crates/bytes-1.3.0.crate) = dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c
+SIZE (rust/crates/bytes-1.3.0.crate) = 57563
+SHA256 (rust/crates/cache-padded-1.2.0.crate) = c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c
+SIZE (rust/crates/cache-padded-1.2.0.crate) = 9125
+SHA256 (rust/crates/calloop-0.9.3.crate) = bf2eec61efe56aa1e813f5126959296933cf0700030e4314786c48779a66ab82
+SIZE (rust/crates/calloop-0.9.3.crate) = 55389
+SHA256 (rust/crates/cc-1.0.77.crate) = e9f73505338f7d905b19d18738976aae232eb46b8efc15554ffc56deb5d9ebe4
+SIZE (rust/crates/cc-1.0.77.crate) = 60723
+SHA256 (rust/crates/cesu8-1.1.0.crate) = 6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c
+SIZE (rust/crates/cesu8-1.1.0.crate) = 10555
+SHA256 (rust/crates/cexpr-0.6.0.crate) = 6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766
+SIZE (rust/crates/cexpr-0.6.0.crate) = 17966
+SHA256 (rust/crates/cfg-if-0.1.10.crate) = 4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822
+SIZE (rust/crates/cfg-if-0.1.10.crate) = 7933
 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/clang-sys-1.4.0.crate) = fa2e27ae6ab525c3d369ded447057bca5438d86dc3a68f6faafb8269ba82ebf3
+SIZE (rust/crates/clang-sys-1.4.0.crate) = 38679
+SHA256 (rust/crates/clap-4.0.26.crate) = 2148adefda54e14492fb9bddcc600b4344c5d1a3123bd666dcb939c6f0e0e57e
+SIZE (rust/crates/clap-4.0.26.crate) = 205197
+SHA256 (rust/crates/clap_derive-4.0.21.crate) = 0177313f9f02afc995627906bbd8967e2be069f5261954222dac78290c2b9014
+SIZE (rust/crates/clap_derive-4.0.21.crate) = 27567
+SHA256 (rust/crates/clap_lex-0.3.0.crate) = 0d4198f73e42b4936b35b5bb248d81d2b595ecb170da0bac7655c54eedfa8da8
+SIZE (rust/crates/clap_lex-0.3.0.crate) = 9671
+SHA256 (rust/crates/clipboard-win-4.4.2.crate) = c4ab1b92798304eedc095b53942963240037c0516452cb11aeba709d420b2219
+SIZE (rust/crates/clipboard-win-4.4.2.crate) = 12678
+SHA256 (rust/crates/cobs-0.2.3.crate) = 67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15
+SIZE (rust/crates/cobs-0.2.3.crate) = 12576
+SHA256 (rust/crates/cocoa-0.24.1.crate) = f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a
+SIZE (rust/crates/cocoa-0.24.1.crate) = 40445
+SHA256 (rust/crates/cocoa-foundation-0.1.0.crate) = 7ade49b65d560ca58c403a479bb396592b155c0185eada742ee323d1d68d6318
+SIZE (rust/crates/cocoa-foundation-0.1.0.crate) = 10645
+SHA256 (rust/crates/codespan-reporting-0.11.1.crate) = 3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e
+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/core-foundation-0.6.4.crate) = 25b9e03f145fd4f2bf705e07b900cd41fc636598fe5dc452fd0db1441c3f496d
-SIZE (rust/crates/core-foundation-0.6.4.crate) = 25233
-SHA256 (rust/crates/core-foundation-sys-0.6.2.crate) = e7ca8a5221364ef15ce201e8ed2f609fc312682a8f4e0e3d4aa5879764e0fa3b
-SIZE (rust/crates/core-foundation-sys-0.6.2.crate) = 16204
+SHA256 (rust/crates/combine-4.6.6.crate) = 35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4
+SIZE (rust/crates/combine-4.6.6.crate) = 132428
+SHA256 (rust/crates/concurrent-queue-1.2.4.crate) = af4780a44ab5696ea9e28294517f1fffb421a83a25af521333c838635509db9c
+SIZE (rust/crates/concurrent-queue-1.2.4.crate) = 15375
+SHA256 (rust/crates/concurrent-queue-2.0.0.crate) = bd7bef69dc86e3c610e4e7aed41035e2a7ed12e72dd7530f61327a6579a4390b
+SIZE (rust/crates/concurrent-queue-2.0.0.crate) = 19465
+SHA256 (rust/crates/console_error_panic_hook-0.1.7.crate) = a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc
+SIZE (rust/crates/console_error_panic_hook-0.1.7.crate) = 507196
+SHA256 (rust/crates/const_panic-0.2.6.crate) = 9ed2b28323eee4fb66bb824401daa3e46bd445b9a9298a3d382b320710ba69dd
+SIZE (rust/crates/const_panic-0.2.6.crate) = 46896
+SHA256 (rust/crates/copyless-0.1.5.crate) = a2df960f5d869b2dd8532793fde43eb5427cceb126c929747a26823ab0eeb536
+SIZE (rust/crates/copyless-0.1.5.crate) = 8264
+SHA256 (rust/crates/core-foundation-0.7.0.crate) = 57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171
+SIZE (rust/crates/core-foundation-0.7.0.crate) = 25384
+SHA256 (rust/crates/core-foundation-0.9.3.crate) = 194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146
+SIZE (rust/crates/core-foundation-0.9.3.crate) = 27059
+SHA256 (rust/crates/core-foundation-sys-0.7.0.crate) = b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac
+SIZE (rust/crates/core-foundation-sys-0.7.0.crate) = 17033
+SHA256 (rust/crates/core-foundation-sys-0.8.3.crate) = 5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc
+SIZE (rust/crates/core-foundation-sys-0.8.3.crate) = 17519
+SHA256 (rust/crates/core-graphics-0.19.2.crate) = b3889374e6ea6ab25dba90bb5d96202f61108058361f6dc72e8b03e6f8bbe923
+SIZE (rust/crates/core-graphics-0.19.2.crate) = 28995
+SHA256 (rust/crates/core-graphics-0.22.3.crate) = 2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb
+SIZE (rust/crates/core-graphics-0.22.3.crate) = 29514
+SHA256 (rust/crates/core-graphics-types-0.1.1.crate) = 3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b
+SIZE (rust/crates/core-graphics-types-0.1.1.crate) = 2530
+SHA256 (rust/crates/core-video-sys-0.1.4.crate) = 34ecad23610ad9757664d644e369246edde1803fcb43ed72876565098a5d3828
+SIZE (rust/crates/core-video-sys-0.1.4.crate) = 10568
+SHA256 (rust/crates/coreaudio-rs-0.10.0.crate) = 11894b20ebfe1ff903cbdc52259693389eea03b94918a2def2c30c3bf227ad88
+SIZE (rust/crates/coreaudio-rs-0.10.0.crate) = 34487
+SHA256 (rust/crates/coreaudio-sys-0.2.11.crate) = 1a9444b94b8024feecc29e01a9706c69c1e26bfee480221c90764200cfd778fb
+SIZE (rust/crates/coreaudio-sys-0.2.11.crate) = 5432
+SHA256 (rust/crates/cpal-0.13.5.crate) = 74117836a5124f3629e4b474eed03e479abaf98988b4bb317e29f08cfe0e4116
+SIZE (rust/crates/cpal-0.13.5.crate) = 93790
 SHA256 (rust/crates/crc32fast-1.3.2.crate) = b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d
 SIZE (rust/crates/crc32fast-1.3.2.crate) = 38661
-SHA256 (rust/crates/dasp_frame-0.11.0.crate) = b2a3937f5fe2135702897535c8d4a5553f8b116f76c1529088797f2eee7c5cd6
-SIZE (rust/crates/dasp_frame-0.11.0.crate) = 4910
-SHA256 (rust/crates/dasp_sample-0.11.0.crate) = 0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f
-SIZE (rust/crates/dasp_sample-0.11.0.crate) = 11617
+SHA256 (rust/crates/crossbeam-channel-0.5.6.crate) = c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521
+SIZE (rust/crates/crossbeam-channel-0.5.6.crate) = 90292
+SHA256 (rust/crates/crossbeam-utils-0.8.13.crate) = 422f23e724af1240ec469ea1e834d87a4b59ce2efe2c6a96256b0c47e2fd86aa
+SIZE (rust/crates/crossbeam-utils-0.8.13.crate) = 42080
+SHA256 (rust/crates/cty-0.2.2.crate) = b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35
+SIZE (rust/crates/cty-0.2.2.crate) = 7230
+SHA256 (rust/crates/d3d12-0.5.0.crate) = 827914e1f53b1e0e025ecd3d967a7836b7bcb54520f90e21ef8df7b4d88a2759
+SIZE (rust/crates/d3d12-0.5.0.crate) = 17059
+SHA256 (rust/crates/darling-0.13.4.crate) = a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c
+SIZE (rust/crates/darling-0.13.4.crate) = 20895
+SHA256 (rust/crates/darling_core-0.13.4.crate) = 859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610
+SIZE (rust/crates/darling_core-0.13.4.crate) = 52937
+SHA256 (rust/crates/darling_macro-0.13.4.crate) = 9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835
+SIZE (rust/crates/darling_macro-0.13.4.crate) = 1910
 SHA256 (rust/crates/deflate-0.8.6.crate) = 73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174
 SIZE (rust/crates/deflate-0.8.6.crate) = 62365
-SHA256 (rust/crates/discard-1.0.4.crate) = 212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0
-SIZE (rust/crates/discard-1.0.4.crate) = 4700
-SHA256 (rust/crates/ff-particles-0.1.2.crate) = 456005c433b73c5268369b27894cd5fa94a0abb3e0489540152383849f1045c0
-SIZE (rust/crates/ff-particles-0.1.2.crate) = 15120
+SHA256 (rust/crates/derive_more-0.99.17.crate) = 4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321
+SIZE (rust/crates/derive_more-0.99.17.crate) = 55771
+SHA256 (rust/crates/directories-4.0.1.crate) = f51c5d4ddabd36886dd3e1438cb358cdcb0d7c499cb99cb4ac2e38e18b5cb210
+SIZE (rust/crates/directories-4.0.1.crate) = 16040
+SHA256 (rust/crates/dirs-sys-0.3.7.crate) = 1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6
+SIZE (rust/crates/dirs-sys-0.3.7.crate) = 10597
+SHA256 (rust/crates/dispatch-0.2.0.crate) = bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b
+SIZE (rust/crates/dispatch-0.2.0.crate) = 10229
+SHA256 (rust/crates/displaydoc-0.2.3.crate) = 3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886
+SIZE (rust/crates/displaydoc-0.2.3.crate) = 17060
+SHA256 (rust/crates/dlib-0.5.0.crate) = ac1b7517328c04c2aa68422fc60a41b92208182142ed04a25879c26c8f878794
+SIZE (rust/crates/dlib-0.5.0.crate) = 5788
+SHA256 (rust/crates/downcast-rs-1.2.0.crate) = 9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650
+SIZE (rust/crates/downcast-rs-1.2.0.crate) = 11670
+SHA256 (rust/crates/egui-0.19.0.crate) = fc9fcd393c3daaaf5909008a1d948319d538b79c51871e4df0993260260a94e4
+SIZE (rust/crates/egui-0.19.0.crate) = 213916
+SHA256 (rust/crates/egui_extras-0.19.0.crate) = f698f685bb0ad39e87109e2f695ded0bccde77d5d40bbf7590cb5561c1e3039d
+SIZE (rust/crates/egui_extras-0.19.0.crate) = 16490
+SHA256 (rust/crates/either-1.8.0.crate) = 90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797
+SIZE (rust/crates/either-1.8.0.crate) = 15992
+SHA256 (rust/crates/emath-0.19.0.crate) = 9542a40106fdba943a055f418d1746a050e1a903a049b030c2b097d4686a33cf
+SIZE (rust/crates/emath-0.19.0.crate) = 15821
+SHA256 (rust/crates/encase-0.3.0.crate) = 0a516181e9a36e8982cb37933c5e7dba638c42938cacde46ee4e5b4156f881b9
+SIZE (rust/crates/encase-0.3.0.crate) = 31238
+SHA256 (rust/crates/encase_derive-0.3.0.crate) = f5b802412eea315f29f2bb2da3a5963cd6121f56eaa06aebcdc0c54eea578f22
+SIZE (rust/crates/encase_derive-0.3.0.crate) = 889
+SHA256 (rust/crates/encase_derive_impl-0.3.0.crate) = 0f2f4de457d974f548d2c2a16f709ebd81013579e543bd1a9b19ced88132c2cf
+SIZE (rust/crates/encase_derive_impl-0.3.0.crate) = 5558
+SHA256 (rust/crates/encoding_rs-0.8.31.crate) = 9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b
+SIZE (rust/crates/encoding_rs-0.8.31.crate) = 1370113
+SHA256 (rust/crates/env_logger-0.8.4.crate) = a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3
+SIZE (rust/crates/env_logger-0.8.4.crate) = 33342
+SHA256 (rust/crates/epaint-0.19.0.crate) = 5ba04741be7f6602b1a1b28f1082cce45948a7032961c52814f8946b28493300
+SIZE (rust/crates/epaint-0.19.0.crate) = 849938
+SHA256 (rust/crates/erased-serde-0.3.23.crate) = 54558e0ba96fbe24280072642eceb9d7d442e32c7ec0ea9e7ecd7b4ea2cf4e11
+SIZE (rust/crates/erased-serde-0.3.23.crate) = 25099
+SHA256 (rust/crates/error-code-2.3.1.crate) = 64f18991e7bf11e7ffee451b5318b5c1a73c52d0d0ada6e5a3017c8c1ced6a21
+SIZE (rust/crates/error-code-2.3.1.crate) = 5324
+SHA256 (rust/crates/euclid-0.22.7.crate) = b52c2ef4a78da0ba68fbe1fd920627411096d2ac478f7f4c9f3a54ba6705bade
+SIZE (rust/crates/euclid-0.22.7.crate) = 75976
+SHA256 (rust/crates/event-listener-2.5.3.crate) = 0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0
+SIZE (rust/crates/event-listener-2.5.3.crate) = 15392
+SHA256 (rust/crates/failure-0.1.8.crate) = d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86
+SIZE (rust/crates/failure-0.1.8.crate) = 37582
*** 1620 LINES SKIPPED ***