git: 69479d458d8a - main - lang/numbat: New port: Statically typed programming language for scientific computations

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sat, 04 Nov 2023 03:22:40 UTC
The branch main has been updated by yuri:

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

commit 69479d458d8af7127db370bcd9226fde9361484d
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2023-11-04 03:10:42 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2023-11-04 03:10:42 +0000

    lang/numbat: New port: Statically typed programming language for scientific computations
---
 lang/Makefile         |   1 +
 lang/numbat/Makefile  | 212 +++++++++++++++++++++++++++++
 lang/numbat/distinfo  | 369 ++++++++++++++++++++++++++++++++++++++++++++++++++
 lang/numbat/pkg-descr |  12 ++
 4 files changed, 594 insertions(+)

diff --git a/lang/Makefile b/lang/Makefile
index 04ecd0893598..2a35fb131143 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -224,6 +224,7 @@
     SUBDIR += njs
     SUBDIR += nll
     SUBDIR += nqc
+    SUBDIR += numbat
     SUBDIR += nwcc
     SUBDIR += nx
     SUBDIR += nyan
diff --git a/lang/numbat/Makefile b/lang/numbat/Makefile
new file mode 100644
index 000000000000..77455c3bb2bf
--- /dev/null
+++ b/lang/numbat/Makefile
@@ -0,0 +1,212 @@
+PORTNAME=	numbat
+DISTVERSIONPREFIX=	v
+DISTVERSION=	1.7.0
+CATEGORIES=	lang devel science
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Statically typed programming language for scientific computations
+WWW=		https://numbat.dev
+
+LICENSE=	APACHE20 MIT
+LICENSE_COMB=	dual
+LICENSE_FILE_APACHE20=	${WRKSRC}/LICENSE-APACHE
+LICENSE_FILE_MIT=	${WRKSRC}/LICENSE-MIT
+
+USES=		cargo
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	sharkdp
+
+CARGO_CRATES=	aho-corasick-1.1.2 \
+		anes-0.1.6 \
+		anstream-0.6.4 \
+		anstyle-1.0.4 \
+		anstyle-parse-0.2.2 \
+		anstyle-query-1.0.0 \
+		anstyle-wincon-3.0.1 \
+		anyhow-1.0.75 \
+		approx-0.5.1 \
+		assert_cmd-2.0.12 \
+		attohttpc-0.26.1 \
+		autocfg-1.1.0 \
+		bitflags-1.3.2 \
+		bitflags-2.4.1 \
+		block-buffer-0.10.4 \
+		bstr-1.7.0 \
+		bumpalo-3.14.0 \
+		bytes-1.5.0 \
+		cast-0.3.0 \
+		cc-1.0.83 \
+		cfg-if-1.0.0 \
+		ciborium-0.2.1 \
+		ciborium-io-0.2.1 \
+		ciborium-ll-0.2.1 \
+		clap-4.4.7 \
+		clap_builder-4.4.7 \
+		clap_derive-4.4.7 \
+		clap_lex-0.6.0 \
+		clipboard-win-4.5.0 \
+		codespan-reporting-0.11.1 \
+		colorchoice-1.0.0 \
+		colored-2.0.4 \
+		console-0.15.7 \
+		cpufeatures-0.2.11 \
+		criterion-0.5.1 \
+		criterion-plot-0.5.0 \
+		crossbeam-deque-0.8.3 \
+		crossbeam-epoch-0.9.15 \
+		crossbeam-utils-0.8.16 \
+		crypto-common-0.1.6 \
+		difflib-0.4.0 \
+		digest-0.10.7 \
+		dirs-4.0.0 \
+		dirs-5.0.1 \
+		dirs-sys-0.3.7 \
+		dirs-sys-0.4.1 \
+		doc-comment-0.3.3 \
+		either-1.9.0 \
+		encode_unicode-0.3.6 \
+		endian-type-0.1.2 \
+		errno-0.3.5 \
+		error-code-2.3.1 \
+		fd-lock-3.0.13 \
+		float-cmp-0.9.0 \
+		fnv-1.0.7 \
+		form_urlencoded-1.2.0 \
+		generic-array-0.14.7 \
+		getrandom-0.2.10 \
+		glob-0.3.1 \
+		half-1.8.2 \
+		heck-0.4.1 \
+		hermit-abi-0.3.3 \
+		home-0.5.5 \
+		http-0.2.9 \
+		idna-0.4.0 \
+		insta-1.34.0 \
+		is-terminal-0.4.9 \
+		itertools-0.10.5 \
+		itertools-0.11.0 \
+		itoa-1.0.9 \
+		js-sys-0.3.65 \
+		lazy_static-1.4.0 \
+		libc-0.2.149 \
+		linked-hash-map-0.5.6 \
+		linux-raw-sys-0.4.10 \
+		log-0.4.20 \
+		memchr-2.6.4 \
+		memoffset-0.9.0 \
+		nibble_vec-0.1.0 \
+		nix-0.26.4 \
+		normalize-line-endings-0.3.0 \
+		num-bigint-0.4.4 \
+		num-integer-0.1.45 \
+		num-rational-0.4.1 \
+		num-traits-0.2.17 \
+		once_cell-1.18.0 \
+		oorandom-11.1.3 \
+		option-ext-0.2.0 \
+		percent-encoding-2.3.0 \
+		plotters-0.3.5 \
+		plotters-backend-0.3.5 \
+		plotters-svg-0.3.5 \
+		predicates-3.0.4 \
+		predicates-core-1.0.6 \
+		predicates-tree-1.0.9 \
+		pretty_dtoa-0.3.0 \
+		proc-macro2-1.0.69 \
+		quick-xml-0.31.0 \
+		quote-1.0.33 \
+		radix_trie-0.2.1 \
+		rayon-1.8.0 \
+		rayon-core-1.12.0 \
+		redox_syscall-0.2.16 \
+		redox_users-0.4.3 \
+		regex-1.10.2 \
+		regex-automata-0.4.3 \
+		regex-syntax-0.8.2 \
+		ring-0.17.5 \
+		rust-embed-8.0.0 \
+		rust-embed-impl-8.0.0 \
+		rust-embed-utils-8.0.0 \
+		rustix-0.38.21 \
+		rustls-0.21.8 \
+		rustls-webpki-0.101.7 \
+		rustyline-12.0.0 \
+		rustyline-derive-0.9.0 \
+		ryu-1.0.15 \
+		ryu_floating_decimal-0.1.0 \
+		same-file-1.0.6 \
+		scopeguard-1.2.0 \
+		sct-0.7.1 \
+		serde-1.0.190 \
+		serde_derive-1.0.190 \
+		serde_json-1.0.108 \
+		sha2-0.10.8 \
+		shellexpand-2.1.2 \
+		similar-2.3.0 \
+		smallvec-1.11.1 \
+		spin-0.9.8 \
+		str-buf-1.0.6 \
+		strsim-0.10.0 \
+		syn-2.0.38 \
+		termcolor-1.3.0 \
+		terminal_size-0.3.0 \
+		termtree-0.4.1 \
+		thiserror-1.0.50 \
+		thiserror-impl-1.0.50 \
+		tinytemplate-1.2.1 \
+		tinyvec-1.6.0 \
+		tinyvec_macros-0.1.1 \
+		typenum-1.17.0 \
+		unicode-bidi-0.3.13 \
+		unicode-ident-1.0.12 \
+		unicode-normalization-0.1.22 \
+		unicode-segmentation-1.10.1 \
+		unicode-width-0.1.11 \
+		untrusted-0.9.0 \
+		url-2.4.1 \
+		utf8parse-0.2.1 \
+		version_check-0.9.4 \
+		wait-timeout-0.2.0 \
+		walkdir-2.4.0 \
+		wasi-0.11.0+wasi-snapshot-preview1 \
+		wasm-bindgen-0.2.88 \
+		wasm-bindgen-backend-0.2.88 \
+		wasm-bindgen-macro-0.2.88 \
+		wasm-bindgen-macro-support-0.2.88 \
+		wasm-bindgen-shared-0.2.88 \
+		web-sys-0.3.65 \
+		webpki-roots-0.25.2 \
+		winapi-0.3.9 \
+		winapi-i686-pc-windows-gnu-0.4.0 \
+		winapi-util-0.1.6 \
+		winapi-x86_64-pc-windows-gnu-0.4.0 \
+		windows-sys-0.45.0 \
+		windows-sys-0.48.0 \
+		windows-targets-0.42.2 \
+		windows-targets-0.48.5 \
+		windows_aarch64_gnullvm-0.42.2 \
+		windows_aarch64_gnullvm-0.48.5 \
+		windows_aarch64_msvc-0.42.2 \
+		windows_aarch64_msvc-0.48.5 \
+		windows_i686_gnu-0.42.2 \
+		windows_i686_gnu-0.48.5 \
+		windows_i686_msvc-0.42.2 \
+		windows_i686_msvc-0.48.5 \
+		windows_x86_64_gnu-0.42.2 \
+		windows_x86_64_gnu-0.48.5 \
+		windows_x86_64_gnullvm-0.42.2 \
+		windows_x86_64_gnullvm-0.48.5 \
+		windows_x86_64_msvc-0.42.2 \
+		windows_x86_64_msvc-0.48.5 \
+		yaml-rust-0.4.5
+
+PLIST_FILES=	bin/${PORTNAME}
+
+do-install:
+	# workaround for error: found a virtual manifest at `xx` instead of a package manifest
+	${INSTALL_PROGRAM} \
+		${WRKDIR}/target/*/release/${PORTNAME} \
+		${STAGEDIR}${PREFIX}/bin/${PORTNAME}
+
+.include <bsd.port.mk>
diff --git a/lang/numbat/distinfo b/lang/numbat/distinfo
new file mode 100644
index 000000000000..29bea015b715
--- /dev/null
+++ b/lang/numbat/distinfo
@@ -0,0 +1,369 @@
+TIMESTAMP = 1699066097
+SHA256 (rust/crates/aho-corasick-1.1.2.crate) = b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0
+SIZE (rust/crates/aho-corasick-1.1.2.crate) = 183136
+SHA256 (rust/crates/anes-0.1.6.crate) = 4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299
+SIZE (rust/crates/anes-0.1.6.crate) = 23857
+SHA256 (rust/crates/anstream-0.6.4.crate) = 2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44
+SIZE (rust/crates/anstream-0.6.4.crate) = 20593
+SHA256 (rust/crates/anstyle-1.0.4.crate) = 7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87
+SIZE (rust/crates/anstyle-1.0.4.crate) = 13998
+SHA256 (rust/crates/anstyle-parse-0.2.2.crate) = 317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140
+SIZE (rust/crates/anstyle-parse-0.2.2.crate) = 24696
+SHA256 (rust/crates/anstyle-query-1.0.0.crate) = 5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b
+SIZE (rust/crates/anstyle-query-1.0.0.crate) = 8620
+SHA256 (rust/crates/anstyle-wincon-3.0.1.crate) = f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628
+SIZE (rust/crates/anstyle-wincon-3.0.1.crate) = 11279
+SHA256 (rust/crates/anyhow-1.0.75.crate) = a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6
+SIZE (rust/crates/anyhow-1.0.75.crate) = 43901
+SHA256 (rust/crates/approx-0.5.1.crate) = cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6
+SIZE (rust/crates/approx-0.5.1.crate) = 15100
+SHA256 (rust/crates/assert_cmd-2.0.12.crate) = 88903cb14723e4d4003335bb7f8a14f27691649105346a0f0957466c096adfe6
+SIZE (rust/crates/assert_cmd-2.0.12.crate) = 25347
+SHA256 (rust/crates/attohttpc-0.26.1.crate) = 0f77d243921b0979fbbd728dd2d5162e68ac8252976797c24eb5b3a6af9090dc
+SIZE (rust/crates/attohttpc-0.26.1.crate) = 61626
+SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa
+SIZE (rust/crates/autocfg-1.1.0.crate) = 13272
+SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
+SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
+SHA256 (rust/crates/bitflags-2.4.1.crate) = 327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07
+SIZE (rust/crates/bitflags-2.4.1.crate) = 37043
+SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71
+SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538
+SHA256 (rust/crates/bstr-1.7.0.crate) = c79ad7fb2dd38f3dabd76b09c6a5a20c038fc0213ef1e9afd30eb777f120f019
+SIZE (rust/crates/bstr-1.7.0.crate) = 380090
+SHA256 (rust/crates/bumpalo-3.14.0.crate) = 7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec
+SIZE (rust/crates/bumpalo-3.14.0.crate) = 82400
+SHA256 (rust/crates/bytes-1.5.0.crate) = a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223
+SIZE (rust/crates/bytes-1.5.0.crate) = 58909
+SHA256 (rust/crates/cast-0.3.0.crate) = 37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5
+SIZE (rust/crates/cast-0.3.0.crate) = 11452
+SHA256 (rust/crates/cc-1.0.83.crate) = f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0
+SIZE (rust/crates/cc-1.0.83.crate) = 68343
+SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
+SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/ciborium-0.2.1.crate) = effd91f6c78e5a4ace8a5d3c0b6bfaec9e2baaef55f3efc00e45fb2e477ee926
+SIZE (rust/crates/ciborium-0.2.1.crate) = 34974
+SHA256 (rust/crates/ciborium-io-0.2.1.crate) = cdf919175532b369853f5d5e20b26b43112613fd6fe7aee757e35f7a44642656
+SIZE (rust/crates/ciborium-io-0.2.1.crate) = 6679
+SHA256 (rust/crates/ciborium-ll-0.2.1.crate) = defaa24ecc093c77630e6c15e17c51f5e187bf35ee514f4e2d67baaa96dae22b
+SIZE (rust/crates/ciborium-ll-0.2.1.crate) = 14649
+SHA256 (rust/crates/clap-4.4.7.crate) = ac495e00dcec98c83465d5ad66c5c4fabd652fd6686e7c6269b117e729a6f17b
+SIZE (rust/crates/clap-4.4.7.crate) = 54408
+SHA256 (rust/crates/clap_builder-4.4.7.crate) = c77ed9a32a62e6ca27175d00d29d05ca32e396ea1eb5fb01d8256b669cec7663
+SIZE (rust/crates/clap_builder-4.4.7.crate) = 162516
+SHA256 (rust/crates/clap_derive-4.4.7.crate) = cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442
+SIZE (rust/crates/clap_derive-4.4.7.crate) = 29046
+SHA256 (rust/crates/clap_lex-0.6.0.crate) = 702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1
+SIZE (rust/crates/clap_lex-0.6.0.crate) = 12272
+SHA256 (rust/crates/clipboard-win-4.5.0.crate) = 7191c27c2357d9b7ef96baac1773290d4ca63b24205b82a3fd8a0637afcf0362
+SIZE (rust/crates/clipboard-win-4.5.0.crate) = 13476
+SHA256 (rust/crates/codespan-reporting-0.11.1.crate) = 3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e
+SIZE (rust/crates/codespan-reporting-0.11.1.crate) = 48963
+SHA256 (rust/crates/colorchoice-1.0.0.crate) = acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7
+SIZE (rust/crates/colorchoice-1.0.0.crate) = 6857
+SHA256 (rust/crates/colored-2.0.4.crate) = 2674ec482fbc38012cf31e6c42ba0177b431a0cb6f15fe40efa5aab1bda516f6
+SIZE (rust/crates/colored-2.0.4.crate) = 23654
+SHA256 (rust/crates/console-0.15.7.crate) = c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8
+SIZE (rust/crates/console-0.15.7.crate) = 35409
+SHA256 (rust/crates/cpufeatures-0.2.11.crate) = ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0
+SIZE (rust/crates/cpufeatures-0.2.11.crate) = 12727
+SHA256 (rust/crates/criterion-0.5.1.crate) = f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f
+SIZE (rust/crates/criterion-0.5.1.crate) = 110088
+SHA256 (rust/crates/criterion-plot-0.5.0.crate) = 6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1
+SIZE (rust/crates/criterion-plot-0.5.0.crate) = 22706
+SHA256 (rust/crates/crossbeam-deque-0.8.3.crate) = ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef
+SIZE (rust/crates/crossbeam-deque-0.8.3.crate) = 21746
+SHA256 (rust/crates/crossbeam-epoch-0.9.15.crate) = ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7
+SIZE (rust/crates/crossbeam-epoch-0.9.15.crate) = 48553
+SHA256 (rust/crates/crossbeam-utils-0.8.16.crate) = 5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294
+SIZE (rust/crates/crossbeam-utils-0.8.16.crate) = 42508
+SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3
+SIZE (rust/crates/crypto-common-0.1.6.crate) = 8760
+SHA256 (rust/crates/difflib-0.4.0.crate) = 6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8
+SIZE (rust/crates/difflib-0.4.0.crate) = 7638
+SHA256 (rust/crates/digest-0.10.7.crate) = 9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292
+SIZE (rust/crates/digest-0.10.7.crate) = 19557
+SHA256 (rust/crates/dirs-4.0.0.crate) = ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059
+SIZE (rust/crates/dirs-4.0.0.crate) = 12503
+SHA256 (rust/crates/dirs-5.0.1.crate) = 44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225
+SIZE (rust/crates/dirs-5.0.1.crate) = 12255
+SHA256 (rust/crates/dirs-sys-0.3.7.crate) = 1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6
+SIZE (rust/crates/dirs-sys-0.3.7.crate) = 10597
+SHA256 (rust/crates/dirs-sys-0.4.1.crate) = 520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c
+SIZE (rust/crates/dirs-sys-0.4.1.crate) = 10719
+SHA256 (rust/crates/doc-comment-0.3.3.crate) = fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10
+SIZE (rust/crates/doc-comment-0.3.3.crate) = 4123
+SHA256 (rust/crates/either-1.9.0.crate) = a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07
+SIZE (rust/crates/either-1.9.0.crate) = 16660
+SHA256 (rust/crates/encode_unicode-0.3.6.crate) = a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f
+SIZE (rust/crates/encode_unicode-0.3.6.crate) = 45741
+SHA256 (rust/crates/endian-type-0.1.2.crate) = c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d
+SIZE (rust/crates/endian-type-0.1.2.crate) = 2340
+SHA256 (rust/crates/errno-0.3.5.crate) = ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860
+SIZE (rust/crates/errno-0.3.5.crate) = 10576
+SHA256 (rust/crates/error-code-2.3.1.crate) = 64f18991e7bf11e7ffee451b5318b5c1a73c52d0d0ada6e5a3017c8c1ced6a21
+SIZE (rust/crates/error-code-2.3.1.crate) = 5324
+SHA256 (rust/crates/fd-lock-3.0.13.crate) = ef033ed5e9bad94e55838ca0ca906db0e043f517adda0c8b79c7a8c66c93c1b5
+SIZE (rust/crates/fd-lock-3.0.13.crate) = 13692
+SHA256 (rust/crates/float-cmp-0.9.0.crate) = 98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4
+SIZE (rust/crates/float-cmp-0.9.0.crate) = 10102
+SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1
+SIZE (rust/crates/fnv-1.0.7.crate) = 11266
+SHA256 (rust/crates/form_urlencoded-1.2.0.crate) = a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652
+SIZE (rust/crates/form_urlencoded-1.2.0.crate) = 8923
+SHA256 (rust/crates/generic-array-0.14.7.crate) = 85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a
+SIZE (rust/crates/generic-array-0.14.7.crate) = 15950
+SHA256 (rust/crates/getrandom-0.2.10.crate) = be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427
+SIZE (rust/crates/getrandom-0.2.10.crate) = 34955
+SHA256 (rust/crates/glob-0.3.1.crate) = d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b
+SIZE (rust/crates/glob-0.3.1.crate) = 18880
+SHA256 (rust/crates/half-1.8.2.crate) = eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7
+SIZE (rust/crates/half-1.8.2.crate) = 41874
+SHA256 (rust/crates/heck-0.4.1.crate) = 95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8
+SIZE (rust/crates/heck-0.4.1.crate) = 11567
+SHA256 (rust/crates/hermit-abi-0.3.3.crate) = d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7
+SIZE (rust/crates/hermit-abi-0.3.3.crate) = 14253
+SHA256 (rust/crates/home-0.5.5.crate) = 5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb
+SIZE (rust/crates/home-0.5.5.crate) = 8557
+SHA256 (rust/crates/http-0.2.9.crate) = bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482
+SIZE (rust/crates/http-0.2.9.crate) = 100146
+SHA256 (rust/crates/idna-0.4.0.crate) = 7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c
+SIZE (rust/crates/idna-0.4.0.crate) = 271429
+SHA256 (rust/crates/insta-1.34.0.crate) = 5d64600be34b2fcfc267740a243fa7744441bb4947a619ac4e5bb6507f35fbfc
+SIZE (rust/crates/insta-1.34.0.crate) = 550760
+SHA256 (rust/crates/is-terminal-0.4.9.crate) = cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b
+SIZE (rust/crates/is-terminal-0.4.9.crate) = 8109
+SHA256 (rust/crates/itertools-0.10.5.crate) = b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473
+SIZE (rust/crates/itertools-0.10.5.crate) = 115354
+SHA256 (rust/crates/itertools-0.11.0.crate) = b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57
+SIZE (rust/crates/itertools-0.11.0.crate) = 125074
+SHA256 (rust/crates/itoa-1.0.9.crate) = af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38
+SIZE (rust/crates/itoa-1.0.9.crate) = 10492
+SHA256 (rust/crates/js-sys-0.3.65.crate) = 54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8
+SIZE (rust/crates/js-sys-0.3.65.crate) = 80725
+SHA256 (rust/crates/lazy_static-1.4.0.crate) = e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646
+SIZE (rust/crates/lazy_static-1.4.0.crate) = 10443
+SHA256 (rust/crates/libc-0.2.149.crate) = a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b
+SIZE (rust/crates/libc-0.2.149.crate) = 715592
+SHA256 (rust/crates/linked-hash-map-0.5.6.crate) = 0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f
+SIZE (rust/crates/linked-hash-map-0.5.6.crate) = 15049
+SHA256 (rust/crates/linux-raw-sys-0.4.10.crate) = da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f
+SIZE (rust/crates/linux-raw-sys-0.4.10.crate) = 1407767
+SHA256 (rust/crates/log-0.4.20.crate) = b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f
+SIZE (rust/crates/log-0.4.20.crate) = 38307
+SHA256 (rust/crates/memchr-2.6.4.crate) = f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167
+SIZE (rust/crates/memchr-2.6.4.crate) = 94439
+SHA256 (rust/crates/memoffset-0.9.0.crate) = 5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c
+SIZE (rust/crates/memoffset-0.9.0.crate) = 9033
+SHA256 (rust/crates/nibble_vec-0.1.0.crate) = 77a5d83df9f36fe23f0c3648c6bbb8b0298bb5f1939c8f2704431371f4b84d43
+SIZE (rust/crates/nibble_vec-0.1.0.crate) = 11796
+SHA256 (rust/crates/nix-0.26.4.crate) = 598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b
+SIZE (rust/crates/nix-0.26.4.crate) = 279099
+SHA256 (rust/crates/normalize-line-endings-0.3.0.crate) = 61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be
+SIZE (rust/crates/normalize-line-endings-0.3.0.crate) = 5737
+SHA256 (rust/crates/num-bigint-0.4.4.crate) = 608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0
+SIZE (rust/crates/num-bigint-0.4.4.crate) = 99369
+SHA256 (rust/crates/num-integer-0.1.45.crate) = 225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9
+SIZE (rust/crates/num-integer-0.1.45.crate) = 22529
+SHA256 (rust/crates/num-rational-0.4.1.crate) = 0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0
+SIZE (rust/crates/num-rational-0.4.1.crate) = 27889
+SHA256 (rust/crates/num-traits-0.2.17.crate) = 39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c
+SIZE (rust/crates/num-traits-0.2.17.crate) = 50190
+SHA256 (rust/crates/once_cell-1.18.0.crate) = dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d
+SIZE (rust/crates/once_cell-1.18.0.crate) = 32969
+SHA256 (rust/crates/oorandom-11.1.3.crate) = 0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575
+SIZE (rust/crates/oorandom-11.1.3.crate) = 10068
+SHA256 (rust/crates/option-ext-0.2.0.crate) = 04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d
+SIZE (rust/crates/option-ext-0.2.0.crate) = 7345
+SHA256 (rust/crates/percent-encoding-2.3.0.crate) = 9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94
+SIZE (rust/crates/percent-encoding-2.3.0.crate) = 10196
+SHA256 (rust/crates/plotters-0.3.5.crate) = d2c224ba00d7cadd4d5c660deaf2098e5e80e07846537c51f9cfa4be50c1fd45
+SIZE (rust/crates/plotters-0.3.5.crate) = 143975
+SHA256 (rust/crates/plotters-backend-0.3.5.crate) = 9e76628b4d3a7581389a35d5b6e2139607ad7c75b17aed325f210aa91f4a9609
+SIZE (rust/crates/plotters-backend-0.3.5.crate) = 13440
+SHA256 (rust/crates/plotters-svg-0.3.5.crate) = 38f6d39893cca0701371e3c27294f09797214b86f1fb951b89ade8ec04e2abab
+SIZE (rust/crates/plotters-svg-0.3.5.crate) = 6948
+SHA256 (rust/crates/predicates-3.0.4.crate) = 6dfc28575c2e3f19cb3c73b93af36460ae898d426eba6fc15b9bd2a5220758a0
+SIZE (rust/crates/predicates-3.0.4.crate) = 23240
+SHA256 (rust/crates/predicates-core-1.0.6.crate) = b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174
+SIZE (rust/crates/predicates-core-1.0.6.crate) = 8084
+SHA256 (rust/crates/predicates-tree-1.0.9.crate) = 368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf
+SIZE (rust/crates/predicates-tree-1.0.9.crate) = 7960
+SHA256 (rust/crates/pretty_dtoa-0.3.0.crate) = a239bcdfda2c685fda1add3b4695c06225f50075e3cfb5b954e91545587edff2
+SIZE (rust/crates/pretty_dtoa-0.3.0.crate) = 8018
+SHA256 (rust/crates/proc-macro2-1.0.69.crate) = 134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da
+SIZE (rust/crates/proc-macro2-1.0.69.crate) = 44271
+SHA256 (rust/crates/quick-xml-0.31.0.crate) = 1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33
+SIZE (rust/crates/quick-xml-0.31.0.crate) = 172236
+SHA256 (rust/crates/quote-1.0.33.crate) = 5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae
+SIZE (rust/crates/quote-1.0.33.crate) = 28090
+SHA256 (rust/crates/radix_trie-0.2.1.crate) = c069c179fcdc6a2fe24d8d18305cf085fdbd4f922c041943e203685d6a1c58fd
+SIZE (rust/crates/radix_trie-0.2.1.crate) = 251366
+SHA256 (rust/crates/rayon-1.8.0.crate) = 9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1
+SIZE (rust/crates/rayon-1.8.0.crate) = 170172
+SHA256 (rust/crates/rayon-core-1.12.0.crate) = 5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed
+SIZE (rust/crates/rayon-core-1.12.0.crate) = 70081
+SHA256 (rust/crates/redox_syscall-0.2.16.crate) = fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a
+SIZE (rust/crates/redox_syscall-0.2.16.crate) = 24012
+SHA256 (rust/crates/redox_users-0.4.3.crate) = b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b
+SIZE (rust/crates/redox_users-0.4.3.crate) = 15353
+SHA256 (rust/crates/regex-1.10.2.crate) = 380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343
+SIZE (rust/crates/regex-1.10.2.crate) = 252839
+SHA256 (rust/crates/regex-automata-0.4.3.crate) = 5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f
+SIZE (rust/crates/regex-automata-0.4.3.crate) = 617011
+SHA256 (rust/crates/regex-syntax-0.8.2.crate) = c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f
+SIZE (rust/crates/regex-syntax-0.8.2.crate) = 347228
+SHA256 (rust/crates/ring-0.17.5.crate) = fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b
+SIZE (rust/crates/ring-0.17.5.crate) = 4147790
+SHA256 (rust/crates/rust-embed-8.0.0.crate) = b1e7d90385b59f0a6bf3d3b757f3ca4ece2048265d70db20a2016043d4509a40
+SIZE (rust/crates/rust-embed-8.0.0.crate) = 901433
+SHA256 (rust/crates/rust-embed-impl-8.0.0.crate) = 3c3d8c6fd84090ae348e63a84336b112b5c3918b3bf0493a581f7bd8ee623c29
+SIZE (rust/crates/rust-embed-impl-8.0.0.crate) = 5175
+SHA256 (rust/crates/rust-embed-utils-8.0.0.crate) = 873feff8cb7bf86fdf0a71bb21c95159f4e4a37dd7a4bd1855a940909b583ada
+SIZE (rust/crates/rust-embed-utils-8.0.0.crate) = 3346
+SHA256 (rust/crates/rustix-0.38.21.crate) = 2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3
+SIZE (rust/crates/rustix-0.38.21.crate) = 358962
+SHA256 (rust/crates/rustls-0.21.8.crate) = 446e14c5cda4f3f30fe71863c34ec70f5ac79d6087097ad0bb433e1be5edf04c
+SIZE (rust/crates/rustls-0.21.8.crate) = 284588
+SHA256 (rust/crates/rustls-webpki-0.101.7.crate) = 8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765
+SIZE (rust/crates/rustls-webpki-0.101.7.crate) = 168808
+SHA256 (rust/crates/rustyline-12.0.0.crate) = 994eca4bca05c87e86e15d90fc7a91d1be64b4482b38cb2d27474568fe7c9db9
+SIZE (rust/crates/rustyline-12.0.0.crate) = 113749
+SHA256 (rust/crates/rustyline-derive-0.9.0.crate) = 5a32af5427251d2e4be14fc151eabe18abb4a7aad5efee7044da9f096c906a43
+SIZE (rust/crates/rustyline-derive-0.9.0.crate) = 2438
+SHA256 (rust/crates/ryu-1.0.15.crate) = 1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741
+SIZE (rust/crates/ryu-1.0.15.crate) = 46906
+SHA256 (rust/crates/ryu_floating_decimal-0.1.0.crate) = 700de91d5fd6091442d00fdd9ee790af6d4f0f480562b0f5a1e8f59e90aafe73
+SIZE (rust/crates/ryu_floating_decimal-0.1.0.crate) = 29476
+SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502
+SIZE (rust/crates/same-file-1.0.6.crate) = 10183
+SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49
+SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619
+SHA256 (rust/crates/sct-0.7.1.crate) = da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414
+SIZE (rust/crates/sct-0.7.1.crate) = 27501
+SHA256 (rust/crates/serde-1.0.190.crate) = 91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7
+SIZE (rust/crates/serde-1.0.190.crate) = 76455
+SHA256 (rust/crates/serde_derive-1.0.190.crate) = 67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3
+SIZE (rust/crates/serde_derive-1.0.190.crate) = 55676
+SHA256 (rust/crates/serde_json-1.0.108.crate) = 3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b
+SIZE (rust/crates/serde_json-1.0.108.crate) = 146476
+SHA256 (rust/crates/sha2-0.10.8.crate) = 793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8
+SIZE (rust/crates/sha2-0.10.8.crate) = 26357
+SHA256 (rust/crates/shellexpand-2.1.2.crate) = 7ccc8076840c4da029af4f87e4e8daeb0fca6b87bbb02e10cb60b791450e11e4
+SIZE (rust/crates/shellexpand-2.1.2.crate) = 16884
+SHA256 (rust/crates/similar-2.3.0.crate) = 2aeaf503862c419d66959f5d7ca015337d864e9c49485d771b732e2a20453597
+SIZE (rust/crates/similar-2.3.0.crate) = 51082
+SHA256 (rust/crates/smallvec-1.11.1.crate) = 942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a
+SIZE (rust/crates/smallvec-1.11.1.crate) = 34831
+SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67
+SIZE (rust/crates/spin-0.9.8.crate) = 38958
+SHA256 (rust/crates/str-buf-1.0.6.crate) = 9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0
+SIZE (rust/crates/str-buf-1.0.6.crate) = 3828
+SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623
+SIZE (rust/crates/strsim-0.10.0.crate) = 11355
+SHA256 (rust/crates/syn-2.0.38.crate) = e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b
+SIZE (rust/crates/syn-2.0.38.crate) = 243284
+SHA256 (rust/crates/termcolor-1.3.0.crate) = 6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64
+SIZE (rust/crates/termcolor-1.3.0.crate) = 18799
+SHA256 (rust/crates/terminal_size-0.3.0.crate) = 21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7
+SIZE (rust/crates/terminal_size-0.3.0.crate) = 10096
+SHA256 (rust/crates/termtree-0.4.1.crate) = 3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76
+SIZE (rust/crates/termtree-0.4.1.crate) = 4557
+SHA256 (rust/crates/thiserror-1.0.50.crate) = f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2
+SIZE (rust/crates/thiserror-1.0.50.crate) = 19414
+SHA256 (rust/crates/thiserror-impl-1.0.50.crate) = 266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8
+SIZE (rust/crates/thiserror-impl-1.0.50.crate) = 15357
+SHA256 (rust/crates/tinytemplate-1.2.1.crate) = be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc
+SIZE (rust/crates/tinytemplate-1.2.1.crate) = 26490
+SHA256 (rust/crates/tinyvec-1.6.0.crate) = 87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50
+SIZE (rust/crates/tinyvec-1.6.0.crate) = 45991
+SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20
+SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865
+SHA256 (rust/crates/typenum-1.17.0.crate) = 42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825
+SIZE (rust/crates/typenum-1.17.0.crate) = 42849
+SHA256 (rust/crates/unicode-bidi-0.3.13.crate) = 92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460
+SIZE (rust/crates/unicode-bidi-0.3.13.crate) = 44477
+SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b
+SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168
+SHA256 (rust/crates/unicode-normalization-0.1.22.crate) = 5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921
+SIZE (rust/crates/unicode-normalization-0.1.22.crate) = 122604
+SHA256 (rust/crates/unicode-segmentation-1.10.1.crate) = 1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36
+SIZE (rust/crates/unicode-segmentation-1.10.1.crate) = 98416
+SHA256 (rust/crates/unicode-width-0.1.11.crate) = e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85
+SIZE (rust/crates/unicode-width-0.1.11.crate) = 19187
+SHA256 (rust/crates/untrusted-0.9.0.crate) = 8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1
+SIZE (rust/crates/untrusted-0.9.0.crate) = 14447
+SHA256 (rust/crates/url-2.4.1.crate) = 143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5
+SIZE (rust/crates/url-2.4.1.crate) = 78228
+SHA256 (rust/crates/utf8parse-0.2.1.crate) = 711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a
+SIZE (rust/crates/utf8parse-0.2.1.crate) = 13435
+SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f
+SIZE (rust/crates/version_check-0.9.4.crate) = 14895
+SHA256 (rust/crates/wait-timeout-0.2.0.crate) = 9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6
+SIZE (rust/crates/wait-timeout-0.2.0.crate) = 12441
+SHA256 (rust/crates/walkdir-2.4.0.crate) = d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee
+SIZE (rust/crates/walkdir-2.4.0.crate) = 23550
+SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423
+SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131
+SHA256 (rust/crates/wasm-bindgen-0.2.88.crate) = 7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce
+SIZE (rust/crates/wasm-bindgen-0.2.88.crate) = 181311
+SHA256 (rust/crates/wasm-bindgen-backend-0.2.88.crate) = e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217
+SIZE (rust/crates/wasm-bindgen-backend-0.2.88.crate) = 28181
+SHA256 (rust/crates/wasm-bindgen-macro-0.2.88.crate) = 5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2
+SIZE (rust/crates/wasm-bindgen-macro-0.2.88.crate) = 13908
+SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.88.crate) = c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907
+SIZE (rust/crates/wasm-bindgen-macro-support-0.2.88.crate) = 20008
+SHA256 (rust/crates/wasm-bindgen-shared-0.2.88.crate) = 0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b
+SIZE (rust/crates/wasm-bindgen-shared-0.2.88.crate) = 7264
+SHA256 (rust/crates/web-sys-0.3.65.crate) = 5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85
+SIZE (rust/crates/web-sys-0.3.65.crate) = 734287
+SHA256 (rust/crates/webpki-roots-0.25.2.crate) = 14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc
+SIZE (rust/crates/webpki-roots-0.25.2.crate) = 250405
+SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
+SIZE (rust/crates/winapi-0.3.9.crate) = 1200382
+SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
+SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
+SHA256 (rust/crates/winapi-util-0.1.6.crate) = f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596
+SIZE (rust/crates/winapi-util-0.1.6.crate) = 12234
+SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
+SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
+SHA256 (rust/crates/windows-sys-0.45.0.crate) = 75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0
+SIZE (rust/crates/windows-sys-0.45.0.crate) = 2568659
+SHA256 (rust/crates/windows-sys-0.48.0.crate) = 677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9
+SIZE (rust/crates/windows-sys-0.48.0.crate) = 2628884
+SHA256 (rust/crates/windows-targets-0.42.2.crate) = 8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071
+SIZE (rust/crates/windows-targets-0.42.2.crate) = 5492
+SHA256 (rust/crates/windows-targets-0.48.5.crate) = 9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c
+SIZE (rust/crates/windows-targets-0.48.5.crate) = 6904
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.42.2.crate) = 597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8
+SIZE (rust/crates/windows_aarch64_gnullvm-0.42.2.crate) = 364071
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8
+SIZE (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 418492
+SHA256 (rust/crates/windows_aarch64_msvc-0.42.2.crate) = e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43
+SIZE (rust/crates/windows_aarch64_msvc-0.42.2.crate) = 666981
+SHA256 (rust/crates/windows_aarch64_msvc-0.48.5.crate) = dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc
+SIZE (rust/crates/windows_aarch64_msvc-0.48.5.crate) = 798483
+SHA256 (rust/crates/windows_i686_gnu-0.42.2.crate) = c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f
+SIZE (rust/crates/windows_i686_gnu-0.42.2.crate) = 736236
+SHA256 (rust/crates/windows_i686_gnu-0.48.5.crate) = a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e
+SIZE (rust/crates/windows_i686_gnu-0.48.5.crate) = 844891
+SHA256 (rust/crates/windows_i686_msvc-0.42.2.crate) = 44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060
+SIZE (rust/crates/windows_i686_msvc-0.42.2.crate) = 724951
+SHA256 (rust/crates/windows_i686_msvc-0.48.5.crate) = 8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406
+SIZE (rust/crates/windows_i686_msvc-0.48.5.crate) = 864300
+SHA256 (rust/crates/windows_x86_64_gnu-0.42.2.crate) = 8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36
+SIZE (rust/crates/windows_x86_64_gnu-0.42.2.crate) = 699373
+SHA256 (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e
+SIZE (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 801619
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.42.2.crate) = 26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3
+SIZE (rust/crates/windows_x86_64_gnullvm-0.42.2.crate) = 364068
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc
+SIZE (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 418486
+SHA256 (rust/crates/windows_x86_64_msvc-0.42.2.crate) = 9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0
+SIZE (rust/crates/windows_x86_64_msvc-0.42.2.crate) = 666936
+SHA256 (rust/crates/windows_x86_64_msvc-0.48.5.crate) = ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538
+SIZE (rust/crates/windows_x86_64_msvc-0.48.5.crate) = 798412
+SHA256 (rust/crates/yaml-rust-0.4.5.crate) = 56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85
+SIZE (rust/crates/yaml-rust-0.4.5.crate) = 47783
+SHA256 (sharkdp-numbat-v1.7.0_GH0.tar.gz) = 852502496718892c2de0d3f0b45caef642d07cbcc50a838a0d0b192a5d062354
+SIZE (sharkdp-numbat-v1.7.0_GH0.tar.gz) = 8315741
diff --git a/lang/numbat/pkg-descr b/lang/numbat/pkg-descr
new file mode 100644
index 000000000000..3d67b2b9de64
--- /dev/null
+++ b/lang/numbat/pkg-descr
@@ -0,0 +1,12 @@
+Numbat is a statically typed programming language for scientific computations
+with first class support for physical dimensions and units.
+
+Numbat has a static type system where physical dimensions like `Length` and
+`Time` act as types.
+Definitions of constants and functions can optionally contain type annotations
+that will be statically enforced.
+If the types are not specified, they will be inferred (`Speed`, `Money` and
+`Frequency` in the screenshot).
+
+Numbat is focused on computations with units. Units are therefore treated as
+first-class citizens.