git: 02e478ee37ea - main - databases/qdrant: Update to 1.7.3

From: Juraj Lutter <otis_at_FreeBSD.org>
Date: Fri, 05 Jan 2024 10:03:18 UTC
The branch main has been updated by otis:

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

commit 02e478ee37ea2e7b69e4133a3d6f2e6df2ff5916
Author:     Juraj Lutter <otis@FreeBSD.org>
AuthorDate: 2024-01-04 12:56:04 +0000
Commit:     Juraj Lutter <otis@FreeBSD.org>
CommitDate: 2024-01-05 10:02:32 +0000

    databases/qdrant: Update to 1.7.3
    
    - Update to 1.7.3
    - Add rc.d script with profiles
    - Fix pkg-plist
    
    Reviewed by:            yuri (maintainer)
    Approved by:            yuri (maintainer)
    Differential Revision:  https://reviews.freebsd.org/D43325
    Sponsored by:           resulta.sk
---
 databases/qdrant/Makefile                       |  78 +++++++-------
 databases/qdrant/distinfo                       |  82 ++++++++-------
 databases/qdrant/files/patch-config_config.yaml |  37 +++++++
 databases/qdrant/files/qdrant.in                | 129 ++++++++++++++++++++++++
 databases/qdrant/pkg-plist                      |   5 +
 5 files changed, 258 insertions(+), 73 deletions(-)

diff --git a/databases/qdrant/Makefile b/databases/qdrant/Makefile
index bf641caf1a68..4b0f17235dca 100644
--- a/databases/qdrant/Makefile
+++ b/databases/qdrant/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	qdrant
 DISTVERSIONPREFIX=	v
-DISTVERSION=	1.7.1
+DISTVERSION=	1.7.3
 CATEGORIES=	databases
 
 MAINTAINER=	yuri@FreeBSD.org
@@ -12,16 +12,15 @@ LICENSE_FILE=	${WRKSRC}/LICENSE
 
 BROKEN_i386=	compilation breaks with fatal warning: implicit conversion from 'std::numeric_limits<unsigned long long>::type' (aka 'unsigned long long') to 'size_t' (aka 'unsigned int') changes value from 18446744073709551615 to 4294967295
 
-BUILD_DEPENDS=	gmake:devel/gmake \
-		protoc:devel/protobuf
-
-USES=		cargo perl5 llvm:min=13 pkgconfig
-USE_PERL5=	build
+BUILD_DEPENDS=	protoc:devel/protobuf
 
+USES=		cargo gmake llvm:min=13 perl5 pkgconfig
 USE_GITHUB=	yes
+USE_PERL5=	build
+USE_RC_SUBR=	qdrant
 
 CARGO_CRATES=	actix-codec-0.5.0 \
-		actix-cors-0.6.4 \
+		actix-cors-0.6.5 \
 		actix-files-0.6.2 \
 		actix-http-3.4.0 \
 		actix-macros-0.2.3 \
@@ -45,6 +44,7 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		aho-corasick-1.0.2 \
 		alloc-no-stdlib-2.0.4 \
 		alloc-stdlib-0.2.2 \
+		allocator-api2-0.2.16 \
 		android-tzdata-0.1.1 \
 		android_system_properties-0.1.5 \
 		anes-0.1.6 \
@@ -105,13 +105,13 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		ciborium-ll-0.2.0 \
 		cipher-0.4.4 \
 		clang-sys-1.4.0 \
-		clap-4.4.8 \
-		clap_builder-4.4.8 \
+		clap-4.4.11 \
+		clap_builder-4.4.11 \
 		clap_derive-4.4.7 \
 		clap_lex-0.6.0 \
 		codespan-reporting-0.11.1 \
 		colorchoice-1.0.0 \
-		colored-2.0.4 \
+		colored-2.1.0 \
 		config-0.13.4 \
 		console-0.15.2 \
 		console-api-0.5.0 \
@@ -184,10 +184,10 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		fsio-0.1.3 \
 		fst-0.4.7 \
 		funty-2.0.0 \
-		futures-0.3.28 \
+		futures-0.3.29 \
 		futures-channel-0.3.29 \
 		futures-core-0.3.29 \
-		futures-executor-0.3.28 \
+		futures-executor-0.3.29 \
 		futures-io-0.3.29 \
 		futures-macro-0.3.29 \
 		futures-sink-0.3.29 \
@@ -197,8 +197,8 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		fxhash-0.2.1 \
 		generator-0.7.4 \
 		generic-array-0.14.6 \
-		geo-0.26.0 \
-		geo-types-0.7.11 \
+		geo-0.27.0 \
+		geo-types-0.7.12 \
 		geographiclib-rs-0.2.3 \
 		geohash-0.13.0 \
 		getopts-0.2.21 \
@@ -211,7 +211,7 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		half-1.8.2 \
 		hash32-0.2.1 \
 		hashbrown-0.12.3 \
-		hashbrown-0.14.0 \
+		hashbrown-0.14.2 \
 		hashring-0.3.3 \
 		hdrhistogram-7.5.2 \
 		heapless-0.7.16 \
@@ -287,7 +287,7 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		matchit-0.7.0 \
 		memchr-2.5.0 \
 		memmap2-0.5.10 \
-		memmap2-0.9.0 \
+		memmap2-0.9.2 \
 		memoffset-0.7.1 \
 		merge-0.1.0 \
 		merge_derive-0.1.0 \
@@ -314,7 +314,7 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		once_cell-1.18.0 \
 		oorandom-11.1.3 \
 		ordered-float-2.10.1 \
-		ordered-float-4.1.1 \
+		ordered-float-4.2.0 \
 		ordered-multimap-0.4.3 \
 		overload-0.1.1 \
 		parking_lot-0.12.1 \
@@ -414,7 +414,7 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		rustc_version-0.4.0 \
 		rustix-0.37.27 \
 		rustix-0.38.21 \
-		rustls-0.21.9 \
+		rustls-0.21.10 \
 		rustls-pemfile-1.0.3 \
 		rustls-webpki-0.100.2 \
 		rustls-webpki-0.101.7 \
@@ -433,7 +433,7 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		seahash-4.1.0 \
 		sealed_test-1.0.0 \
 		sealed_test_derive-1.0.0 \
-		semver-1.0.18 \
+		semver-1.0.20 \
 		serde-1.0.193 \
 		serde-value-0.7.0 \
 		serde_cbor-0.11.2 \
@@ -458,6 +458,7 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		smol_str-0.2.0 \
 		socket2-0.4.9 \
 		socket2-0.5.5 \
+		spade-2.4.1 \
 		spin-0.5.2 \
 		spin-0.9.8 \
 		stable_deref_trait-1.2.0 \
@@ -468,10 +469,10 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		symbolic-common-12.2.0 \
 		symbolic-demangle-12.2.0 \
 		syn-1.0.107 \
-		syn-2.0.28 \
+		syn-2.0.32 \
 		sync_wrapper-0.1.1 \
 		sys-info-0.9.1 \
-		sysinfo-0.29.10 \
+		sysinfo-0.29.11 \
 		system-configuration-0.5.1 \
 		system-configuration-sys-0.5.0 \
 		tap-1.0.1 \
@@ -491,7 +492,7 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		tinytemplate-1.2.1 \
 		tinyvec-1.6.0 \
 		tinyvec_macros-0.1.0 \
-		tokio-1.34.0 \
+		tokio-1.35.0 \
 		tokio-io-timeout-1.2.0 \
 		tokio-macros-2.2.0 \
 		tokio-rustls-0.24.1 \
@@ -580,8 +581,8 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		xattr-1.0.1 \
 		yada-0.5.0 \
 		yaml-rust-0.4.5 \
-		zerocopy-0.7.3 \
-		zerocopy-derive-0.7.3 \
+		zerocopy-0.7.31 \
+		zerocopy-derive-0.7.31 \
 		zerofrom-0.1.3 \
 		zerovec-0.9.6 \
 		zip-0.6.6 \
@@ -594,19 +595,28 @@ CARGO_CRATES=	actix-codec-0.5.0 \
 		tonic@git+https://github.com/qdrant/tonic?branch=v0.9.2-patched\#060ab88c87955adc59d46a44b4e3b72cb4cc1522 \
 		quantization@git+https://github.com/qdrant/quantization.git\#939fdb627a8edcf92fd71e3c79017156690850e9
 
-OPENSSLINC=	/usr/include
-OPENSSLLIB=	/usr/lib
+QDRANT_DBDIR?=	/var/db/qdrant
+QDRANT_USER?=	nobody
+QDRANT_GROUP?=	nobody
+
+SUB_LIST=	RC_SUBR_SUFFIX=${RC_SUBR_SUFFIX}
+
+PLIST_SUB=	QDRANT_DBDIR=${QDRANT_DBDIR} \
+		QDRANT_GROUP=${QDRANT_GROUP} \
+		QDRANT_USER=${QDRANT_USER}
 
-PLIST_FILES=	bin/${PORTNAME} \
-		bin/schema_generator \
-		bin/wal_inspector
+post-patch:
+	${REINPLACE_CMD} -e "s,%%DBDIR%%,${QDRANT_DBDIR},g; \
+		s,%%ETCDIR%%,${ETCDIR},g" ${WRKSRC}/config/config.yaml
 
 post-install:
-	# install config sample
-	@${MKDIR} ${STAGEDIR}${ETCDIR}
-	@${INSTALL_DATA} ${WRKSRC}/config/config.yaml ${STAGEDIR}${ETCDIR}/config.yaml.sample
-	# strip binaries
-	@${STRIP_CMD} \
+# install config sample
+	${MKDIR} ${STAGEDIR}${ETCDIR}
+	${MKDIR} ${STAGEDIR}${ETCDIR}/tls
+	${MKDIR} ${STAGEDIR}${QDRANT_DBDIR}
+	${INSTALL_DATA} ${WRKSRC}/config/config.yaml ${STAGEDIR}${ETCDIR}/config.yaml.sample
+# strip binaries
+	${STRIP_CMD} \
 		${STAGEDIR}${PREFIX}/bin/${PORTNAME} \
 		${STAGEDIR}${PREFIX}/bin/schema_generator \
 		${STAGEDIR}${PREFIX}/bin/wal_inspector
diff --git a/databases/qdrant/distinfo b/databases/qdrant/distinfo
index dce64d78c36a..aafc0bd1522a 100644
--- a/databases/qdrant/distinfo
+++ b/databases/qdrant/distinfo
@@ -1,8 +1,8 @@
-TIMESTAMP = 1702360863
+TIMESTAMP = 1704302503
 SHA256 (rust/crates/actix-codec-0.5.0.crate) = 57a7559404a7f3573127aab53c08ce37a6c6a315c374a31070f3c91cd1b4a7fe
 SIZE (rust/crates/actix-codec-0.5.0.crate) = 14046
-SHA256 (rust/crates/actix-cors-0.6.4.crate) = b340e9cfa5b08690aae90fb61beb44e9b06f44fe3d0f93781aaa58cfba86245e
-SIZE (rust/crates/actix-cors-0.6.4.crate) = 28545
+SHA256 (rust/crates/actix-cors-0.6.5.crate) = 0346d8c1f762b41b458ed3145eea914966bb9ad20b9be0d6d463b20d45586370
+SIZE (rust/crates/actix-cors-0.6.5.crate) = 28935
 SHA256 (rust/crates/actix-files-0.6.2.crate) = d832782fac6ca7369a70c9ee9a20554623c5e51c76e190ad151780ebea1cf689
 SIZE (rust/crates/actix-files-0.6.2.crate) = 30031
 SHA256 (rust/crates/actix-http-3.4.0.crate) = a92ef85799cba03f76e4f7c10f533e66d87c9a7e7055f3391f09000ad8351bc9
@@ -49,6 +49,8 @@ SHA256 (rust/crates/alloc-no-stdlib-2.0.4.crate) = cc7bb162ec39d46ab1ca8c77bf72e
 SIZE (rust/crates/alloc-no-stdlib-2.0.4.crate) = 10105
 SHA256 (rust/crates/alloc-stdlib-0.2.2.crate) = 94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece
 SIZE (rust/crates/alloc-stdlib-0.2.2.crate) = 6693
+SHA256 (rust/crates/allocator-api2-0.2.16.crate) = 0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5
+SIZE (rust/crates/allocator-api2-0.2.16.crate) = 59025
 SHA256 (rust/crates/android-tzdata-0.1.1.crate) = e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0
 SIZE (rust/crates/android-tzdata-0.1.1.crate) = 7674
 SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311
@@ -169,10 +171,10 @@ SHA256 (rust/crates/cipher-0.4.4.crate) = 773f3b9af64447d2ce9850330c473515014aa2
 SIZE (rust/crates/cipher-0.4.4.crate) = 19073
 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.4.8.crate) = 2275f18819641850fa26c89acc84d465c1bf91ce57bc2748b28c420473352f64
-SIZE (rust/crates/clap-4.4.8.crate) = 54609
-SHA256 (rust/crates/clap_builder-4.4.8.crate) = 07cdf1b148b25c1e1f7a42225e30a0d99a615cd4637eae7365548dd4529b95bc
-SIZE (rust/crates/clap_builder-4.4.8.crate) = 163164
+SHA256 (rust/crates/clap-4.4.11.crate) = bfaff671f6b22ca62406885ece523383b9b64022e341e53e009a62ebc47a45f2
+SIZE (rust/crates/clap-4.4.11.crate) = 54782
+SHA256 (rust/crates/clap_builder-4.4.11.crate) = a216b506622bb1d316cd51328dce24e07bdff4a6128a47c7e7fad11878d5adbb
+SIZE (rust/crates/clap_builder-4.4.11.crate) = 163317
 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
@@ -181,8 +183,8 @@ SHA256 (rust/crates/codespan-reporting-0.11.1.crate) = 3538270d33cc669650c4b0938
 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/colored-2.1.0.crate) = cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8
+SIZE (rust/crates/colored-2.1.0.crate) = 23348
 SHA256 (rust/crates/config-0.13.4.crate) = 23738e11972c7643e4ec947840fc463b6a571afcd3e735bdfce7d03c7a784aca
 SIZE (rust/crates/config-0.13.4.crate) = 80328
 SHA256 (rust/crates/console-0.15.2.crate) = c050367d967ced717c04b65d8c619d863ef9292ce0c5760028655a2fb298718c
@@ -327,14 +329,14 @@ SHA256 (rust/crates/fst-0.4.7.crate) = 7ab85b9b05e3978cc9a9cf8fea7f01b494e1a09ed
 SIZE (rust/crates/fst-0.4.7.crate) = 1573393
 SHA256 (rust/crates/funty-2.0.0.crate) = e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c
 SIZE (rust/crates/funty-2.0.0.crate) = 13160
-SHA256 (rust/crates/futures-0.3.28.crate) = 23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40
-SIZE (rust/crates/futures-0.3.28.crate) = 53229
+SHA256 (rust/crates/futures-0.3.29.crate) = da0290714b38af9b4a7b094b8a37086d1b4e61f2df9122c3cad2577669145335
+SIZE (rust/crates/futures-0.3.29.crate) = 53624
 SHA256 (rust/crates/futures-channel-0.3.29.crate) = ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb
 SIZE (rust/crates/futures-channel-0.3.29.crate) = 32432
 SHA256 (rust/crates/futures-core-0.3.29.crate) = eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c
 SIZE (rust/crates/futures-core-0.3.29.crate) = 14808
-SHA256 (rust/crates/futures-executor-0.3.28.crate) = ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0
-SIZE (rust/crates/futures-executor-0.3.28.crate) = 17743
+SHA256 (rust/crates/futures-executor-0.3.29.crate) = 0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc
+SIZE (rust/crates/futures-executor-0.3.29.crate) = 17745
 SHA256 (rust/crates/futures-io-0.3.29.crate) = 8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa
 SIZE (rust/crates/futures-io-0.3.29.crate) = 8908
 SHA256 (rust/crates/futures-macro-0.3.29.crate) = 53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb
@@ -353,10 +355,10 @@ SHA256 (rust/crates/generator-0.7.4.crate) = f3e123d9ae7c02966b4d892e550bdc32164
 SIZE (rust/crates/generator-0.7.4.crate) = 29919
 SHA256 (rust/crates/generic-array-0.14.6.crate) = bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9
 SIZE (rust/crates/generic-array-0.14.6.crate) = 15889
-SHA256 (rust/crates/geo-0.26.0.crate) = 1645cf1d7fea7dac1a66f7357f3df2677ada708b8d9db8e9b043878930095a96
-SIZE (rust/crates/geo-0.26.0.crate) = 221771
-SHA256 (rust/crates/geo-types-0.7.11.crate) = 9705398c5c7b26132e74513f4ee7c1d7dafd786004991b375c172be2be0eecaa
-SIZE (rust/crates/geo-types-0.7.11.crate) = 33649
+SHA256 (rust/crates/geo-0.27.0.crate) = 4841b40fdbccd4b7042bd6195e4de91da54af34c50632e371bcbfcdfb558b873
+SIZE (rust/crates/geo-0.27.0.crate) = 255082
+SHA256 (rust/crates/geo-types-0.7.12.crate) = 567495020b114f1ce9bed679b29975aa0bfae06ac22beacd5cfde5dabe7b05d6
+SIZE (rust/crates/geo-types-0.7.12.crate) = 35659
 SHA256 (rust/crates/geographiclib-rs-0.2.3.crate) = 8ea804e7bd3c6a4ca6a01edfa35231557a8a81d4d3f3e1e2b650d028c42592be
 SIZE (rust/crates/geographiclib-rs-0.2.3.crate) = 52845
 SHA256 (rust/crates/geohash-0.13.0.crate) = 8a18b809b13fa4f1c9ccfd94179cc429021a3517856b5160422c3d810c1e8546
@@ -381,8 +383,8 @@ SHA256 (rust/crates/hash32-0.2.1.crate) = b0c35f58762feb77d74ebe43bdbc3210f09be9
 SIZE (rust/crates/hash32-0.2.1.crate) = 11168
 SHA256 (rust/crates/hashbrown-0.12.3.crate) = 8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888
 SIZE (rust/crates/hashbrown-0.12.3.crate) = 102968
-SHA256 (rust/crates/hashbrown-0.14.0.crate) = 2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a
-SIZE (rust/crates/hashbrown-0.14.0.crate) = 116103
+SHA256 (rust/crates/hashbrown-0.14.2.crate) = f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156
+SIZE (rust/crates/hashbrown-0.14.2.crate) = 140080
 SHA256 (rust/crates/hashring-0.3.3.crate) = aa283406d74fcfeb4778f4e300beaae30db96793371da168d003cbc833e149e0
 SIZE (rust/crates/hashring-0.3.3.crate) = 5827
 SHA256 (rust/crates/hdrhistogram-7.5.2.crate) = 7f19b9f54f7c7f55e31401bb647626ce0cf0f67b0004982ce815b3ee72a02aa8
@@ -533,8 +535,8 @@ SHA256 (rust/crates/memchr-2.5.0.crate) = 2dffe52ecf27772e601905b7522cb4ef790d2c
 SIZE (rust/crates/memchr-2.5.0.crate) = 65812
 SHA256 (rust/crates/memmap2-0.5.10.crate) = 83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327
 SIZE (rust/crates/memmap2-0.5.10.crate) = 26847
-SHA256 (rust/crates/memmap2-0.9.0.crate) = deaba38d7abf1d4cca21cc89e932e542ba2b9258664d2a9ef0e61512039c9375
-SIZE (rust/crates/memmap2-0.9.0.crate) = 31529
+SHA256 (rust/crates/memmap2-0.9.2.crate) = 39a69c7c189ae418f83003da62820aca28d15a07725ce51fb924999335d622ff
+SIZE (rust/crates/memmap2-0.9.2.crate) = 33089
 SHA256 (rust/crates/memoffset-0.7.1.crate) = 5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4
 SIZE (rust/crates/memoffset-0.7.1.crate) = 8556
 SHA256 (rust/crates/merge-0.1.0.crate) = 10bbef93abb1da61525bbc45eeaff6473a41907d19f8f9aa5168d214e10693e9
@@ -587,8 +589,8 @@ SHA256 (rust/crates/oorandom-11.1.3.crate) = 0ab1bc2a289d34bd04a330323ac98a1b4bc
 SIZE (rust/crates/oorandom-11.1.3.crate) = 10068
 SHA256 (rust/crates/ordered-float-2.10.1.crate) = 68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c
 SIZE (rust/crates/ordered-float-2.10.1.crate) = 16029
-SHA256 (rust/crates/ordered-float-4.1.1.crate) = 536900a8093134cf9ccf00a27deb3532421099e958d9dd431135d0c7543ca1e8
-SIZE (rust/crates/ordered-float-4.1.1.crate) = 20185
+SHA256 (rust/crates/ordered-float-4.2.0.crate) = a76df7075c7d4d01fdcb46c912dd17fba5b60c78ea480b475f2b6ab6f666584e
+SIZE (rust/crates/ordered-float-4.2.0.crate) = 20510
 SHA256 (rust/crates/ordered-multimap-0.4.3.crate) = ccd746e37177e1711c20dd619a1620f34f5c8b569c53590a72dedd5344d8924a
 SIZE (rust/crates/ordered-multimap-0.4.3.crate) = 19599
 SHA256 (rust/crates/overload-0.1.1.crate) = b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39
@@ -787,8 +789,8 @@ SHA256 (rust/crates/rustix-0.37.27.crate) = fea8ca367a3a01fe35e6943c400addf443c0
 SIZE (rust/crates/rustix-0.37.27.crate) = 324534
 SHA256 (rust/crates/rustix-0.38.21.crate) = 2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3
 SIZE (rust/crates/rustix-0.38.21.crate) = 358962
-SHA256 (rust/crates/rustls-0.21.9.crate) = 629648aced5775d558af50b2b4c7b02983a04b312126d45eeead26e7caa498b9
-SIZE (rust/crates/rustls-0.21.9.crate) = 283537
+SHA256 (rust/crates/rustls-0.21.10.crate) = f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba
+SIZE (rust/crates/rustls-0.21.10.crate) = 284920
 SHA256 (rust/crates/rustls-pemfile-1.0.3.crate) = 2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2
 SIZE (rust/crates/rustls-pemfile-1.0.3.crate) = 20432
 SHA256 (rust/crates/rustls-webpki-0.100.2.crate) = e98ff011474fa39949b7e5c0428f9b4937eda7da7848bbb947786b7be0b27dab
@@ -825,8 +827,8 @@ SHA256 (rust/crates/sealed_test-1.0.0.crate) = 1a608d94641cc17fe203b102db2ae86d4
 SIZE (rust/crates/sealed_test-1.0.0.crate) = 4544
 SHA256 (rust/crates/sealed_test_derive-1.0.0.crate) = 7b672e005ae58fef5da619d90b9f1c5b44b061890f4a371b3c96257a8a15e697
 SIZE (rust/crates/sealed_test_derive-1.0.0.crate) = 2735
-SHA256 (rust/crates/semver-1.0.18.crate) = b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918
-SIZE (rust/crates/semver-1.0.18.crate) = 29703
+SHA256 (rust/crates/semver-1.0.20.crate) = 836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090
+SIZE (rust/crates/semver-1.0.20.crate) = 30451
 SHA256 (rust/crates/serde-1.0.193.crate) = 25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89
 SIZE (rust/crates/serde-1.0.193.crate) = 76863
 SHA256 (rust/crates/serde-value-0.7.0.crate) = f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c
@@ -875,6 +877,8 @@ SHA256 (rust/crates/socket2-0.4.9.crate) = 64a4a911eed85daf18834cfaa86a79b7d266f
 SIZE (rust/crates/socket2-0.4.9.crate) = 45421
 SHA256 (rust/crates/socket2-0.5.5.crate) = 7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9
 SIZE (rust/crates/socket2-0.5.5.crate) = 54863
+SHA256 (rust/crates/spade-2.4.1.crate) = 87a3ef2efbc408c9051c1a27ce7edff430d74531d31a480b7ca4f618072c2670
+SIZE (rust/crates/spade-2.4.1.crate) = 190102
 SHA256 (rust/crates/spin-0.5.2.crate) = 6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d
 SIZE (rust/crates/spin-0.5.2.crate) = 12004
 SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67
@@ -895,14 +899,14 @@ SHA256 (rust/crates/symbolic-demangle-12.2.0.crate) = ec64922563a36e3fe686b6d99f
 SIZE (rust/crates/symbolic-demangle-12.2.0.crate) = 205508
 SHA256 (rust/crates/syn-1.0.107.crate) = 1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5
 SIZE (rust/crates/syn-1.0.107.crate) = 237539
-SHA256 (rust/crates/syn-2.0.28.crate) = 04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567
-SIZE (rust/crates/syn-2.0.28.crate) = 241635
+SHA256 (rust/crates/syn-2.0.32.crate) = 239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2
+SIZE (rust/crates/syn-2.0.32.crate) = 242504
 SHA256 (rust/crates/sync_wrapper-0.1.1.crate) = 20518fe4a4c9acf048008599e464deb21beeae3d3578418951a189c235a7a9a8
 SIZE (rust/crates/sync_wrapper-0.1.1.crate) = 6556
 SHA256 (rust/crates/sys-info-0.9.1.crate) = 0b3a0d0aba8bf96a0e1ddfdc352fc53b3df7f39318c71854910c3c4b024ae52c
 SIZE (rust/crates/sys-info-0.9.1.crate) = 20589
-SHA256 (rust/crates/sysinfo-0.29.10.crate) = 0a18d114d420ada3a891e6bc8e96a2023402203296a47cdd65083377dad18ba5
-SIZE (rust/crates/sysinfo-0.29.10.crate) = 156524
+SHA256 (rust/crates/sysinfo-0.29.11.crate) = cd727fc423c2060f6c92d9534cef765c65a6ed3f428a03d7def74a8c4348e666
+SIZE (rust/crates/sysinfo-0.29.11.crate) = 156557
 SHA256 (rust/crates/system-configuration-0.5.1.crate) = ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7
 SIZE (rust/crates/system-configuration-0.5.1.crate) = 12618
 SHA256 (rust/crates/system-configuration-sys-0.5.0.crate) = a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9
@@ -941,8 +945,8 @@ SHA256 (rust/crates/tinyvec-1.6.0.crate) = 87cc5ceb3875bb20c2890005a4e226a465126
 SIZE (rust/crates/tinyvec-1.6.0.crate) = 45991
 SHA256 (rust/crates/tinyvec_macros-0.1.0.crate) = cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c
 SIZE (rust/crates/tinyvec_macros-0.1.0.crate) = 1817
-SHA256 (rust/crates/tokio-1.34.0.crate) = d0c014766411e834f7af5b8f4cf46257aab4036ca95e9d2c144a10f59ad6f5b9
-SIZE (rust/crates/tokio-1.34.0.crate) = 736847
+SHA256 (rust/crates/tokio-1.35.0.crate) = 841d45b238a16291a4e1584e61820b8ae57d696cc5015c459c229ccc6990cc1c
+SIZE (rust/crates/tokio-1.35.0.crate) = 743314
 SHA256 (rust/crates/tokio-io-timeout-1.2.0.crate) = 30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf
 SIZE (rust/crates/tokio-io-timeout-1.2.0.crate) = 8993
 SHA256 (rust/crates/tokio-macros-2.2.0.crate) = 5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b
@@ -1119,10 +1123,10 @@ SHA256 (rust/crates/yada-0.5.0.crate) = b6d12cb7a57bbf2ab670ed9545bae3648048547f
 SIZE (rust/crates/yada-0.5.0.crate) = 13308
 SHA256 (rust/crates/yaml-rust-0.4.5.crate) = 56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85
 SIZE (rust/crates/yaml-rust-0.4.5.crate) = 47783
-SHA256 (rust/crates/zerocopy-0.7.3.crate) = 7a7af71d8643341260a65f89fa60c0eeaa907f34544d8f6d9b0df72f069b5e74
-SIZE (rust/crates/zerocopy-0.7.3.crate) = 50123
-SHA256 (rust/crates/zerocopy-derive-0.7.3.crate) = 9731702e2f0617ad526794ae28fbc6f6ca8849b5ba729666c2a5bc4b6ddee2cd
-SIZE (rust/crates/zerocopy-derive-0.7.3.crate) = 524142
+SHA256 (rust/crates/zerocopy-0.7.31.crate) = 1c4061bedbb353041c12f413700357bec76df2c7e2ca8e4df8bac24c6bf68e3d
+SIZE (rust/crates/zerocopy-0.7.31.crate) = 151100
+SHA256 (rust/crates/zerocopy-derive-0.7.31.crate) = b3c129550b3e6de3fd0ba67ba5c81818f9805e58b8d7fee80a3a59d2c9fc601a
+SIZE (rust/crates/zerocopy-derive-0.7.31.crate) = 533507
 SHA256 (rust/crates/zerofrom-0.1.3.crate) = 655b0814c5c0b19ade497851070c640773304939a6c0fd5f5fb43da0696d05b7
 SIZE (rust/crates/zerofrom-0.1.3.crate) = 4973
 SHA256 (rust/crates/zerovec-0.9.6.crate) = 591691014119b87047ead4dcf3e6adfbf73cb7c38ab6980d4f18a32138f35d46
@@ -1145,5 +1149,5 @@ SHA256 (qdrant-tonic-060ab88c87955adc59d46a44b4e3b72cb4cc1522_GH0.tar.gz) = 5905
 SIZE (qdrant-tonic-060ab88c87955adc59d46a44b4e3b72cb4cc1522_GH0.tar.gz) = 37445849
 SHA256 (qdrant-quantization-939fdb627a8edcf92fd71e3c79017156690850e9_GH0.tar.gz) = 30f039511820cddd9d769a85b3a28fd8083db8013161c7a9109784a399ac7c95
 SIZE (qdrant-quantization-939fdb627a8edcf92fd71e3c79017156690850e9_GH0.tar.gz) = 59857
-SHA256 (qdrant-qdrant-v1.7.1_GH0.tar.gz) = 534875d9db69c26a72f6cce5491542fa1c2532a0b3f35d60bec5844aed093d1f
-SIZE (qdrant-qdrant-v1.7.1_GH0.tar.gz) = 3571172
+SHA256 (qdrant-qdrant-v1.7.3_GH0.tar.gz) = af975a514a32b9eee8c7702ce4ffec0e3904b5e1c953f2fa2889e2b05c5c88fc
+SIZE (qdrant-qdrant-v1.7.3_GH0.tar.gz) = 1759305
diff --git a/databases/qdrant/files/patch-config_config.yaml b/databases/qdrant/files/patch-config_config.yaml
new file mode 100644
index 000000000000..97be1e81c191
--- /dev/null
+++ b/databases/qdrant/files/patch-config_config.yaml
@@ -0,0 +1,37 @@
+--- config/config.yaml.orig	2024-01-03 19:31:20 UTC
++++ config/config.yaml
+@@ -2,10 +2,10 @@ log_level: INFO
+ 
+ storage:
+   # Where to store all the data
+-  storage_path: ./storage
++  storage_path: %%DBDIR%%/storage
+ 
+   # Where to store snapshots
+-  snapshots_path: ./snapshots
++  snapshots_path: %%DBDIR%%/snapshots
+ 
+   # Where to store temporary files
+   # If null, temporary snapshot are stored in: storage/snapshots_temp/
+@@ -205,10 +205,10 @@ telemetry_disabled: false
+ # Required if either service.enable_tls or cluster.p2p.enable_tls is true.
+ tls:
+   # Server certificate chain file
+-  cert: ./tls/cert.pem
++  cert: %%ETCDIR%%/tls/cert.pem
+ 
+   # Server private key file
+-  key: ./tls/key.pem
++  key: %%ETCDIR%%/tls/key.pem
+ 
+   # Certificate authority certificate file.
+   # This certificate will be used to validate the certificates
+@@ -218,7 +218,7 @@ tls:
+   # HTTPS client certificate
+   #
+   # Required if cluster.p2p.enable_tls is true.
+-  ca_cert: ./tls/cacert.pem
++  ca_cert: %%ETCDIR%%/tls/cacert.pem
+ 
+   # TTL in seconds to reload certificate from disk, useful for certificate rotations.
+   # Only works for HTTPS endpoints. Does not support gRPC (and intra-cluster communication).
diff --git a/databases/qdrant/files/qdrant.in b/databases/qdrant/files/qdrant.in
new file mode 100644
index 000000000000..4b0aecf61408
--- /dev/null
+++ b/databases/qdrant/files/qdrant.in
@@ -0,0 +1,129 @@
+#!/bin/sh
+
+# PROVIDE: qdrant
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+#
+# Add the following lines to /etc/rc.conf to run qdrant:
+#
+# qdrant_profiles (str):     Set to "" by default.
+#                               Define your profiles here.
+# qdrant(_profile)?_enable (bool):	Set it to "YES" to enable qdrant.
+#				Default is "NO".
+# qdrant(_profile)?_config (str):	Full name of config file
+#				Default is "%%ETCDIR%%/config.yaml" or
+#				"%%ETCDIR%%/config(.profile)?.yaml
+# qdrant(_profile)?_flags (flags):	Set extra flags here. More options in qdrant(1)
+#				Default is empty "".
+# qdrant(_profile)?_user (user):	Set user to run qdrant.
+#				Default is "nobody".
+# qdrant(_profile)?_group (group):	Set group to run qdrant.
+#				Default is "nobody".
+# qdrant(_profile)?_post_start (str):   Set extra commands that should be executed after qdrant was successfully
+#                               started here.
+#                               Default is empty "".
+
+. /etc/rc.subr
+
+name="qdrant"
+rcvar=qdrant_enable
+
+_piddir="/var/run/qdrant"
+pidfile="${_piddir}/qdrant.pid"
+
+: ${qdrant_enable="NO"}
+: ${qdrant_config="%%ETCDIR%%/config.yaml"}
+: ${qdrant_user="nobody"}
+: ${qdrant_group="nobody"}
+
+load_rc_config ${name}
+
+if [ -n "$2" ]; then
+	profile="$2"
+	if [ -n "${qdrant_profiles}" ]; then
+		pidfile="${_piddir}/qdrant.${profile}.pid"
+		eval qdrant_enable="\${qdrant_${profile}_enable:-${qdrant_enable}}"
+		eval qdrant_config="\${qdrant_${profile}_config:-${qdrant_config}}"
+                eval qdrant_user="\${qdrant_${profile}_user:-${qdrant_user}}"
+                eval qdrant_group="\${qdrant_${profile}_group:-${qdrant_group}}"
+		eval qdrant_flags="\${qdrant_${profile}_flags:-${qdrant_flags}}"
+		eval qdrant_post_start="\${qdrant_${profile}_post_start:-${qdrant_post_start}}"
+	else
+		echo "%%PREFIX%%/etc/rc.d/qdrant%%RC_SUBR_SUFFIX%%: extra argument ignored"
+	fi
+else
+	if [ -n "${qdrant_profiles}" -a -n "$1" ]; then
+		for profile in ${qdrant_profiles}; do
+			eval _enable="\${qdrant_${profile}_enable}"
+			case "${_enable:-${qdrant_enable}}" in
+			[Nn][Oo]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0)
+				continue
+				;;
+			[Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1)
+				;;
+			*)
+				if test -z "$_enable"; then
+					_var=qdrant_enable
+				else
+					_var=qdrant_"${profile}"_enable
+				fi
+				warn "Bad value" \
+				    "'${_enable:-${qdrant_enable}}'" \
+				    "for ${_var}. " \
+				    "Profile ${profile} skipped."
+				continue
+				;;
+			esac
+			echo "===> qdrant profile: ${profile}"
+			if %%PREFIX%%/etc/rc.d/qdrant%%RC_SUBR_SUFFIX%% $1 ${profile} ; then
+				success="${profile} ${success:-}"
+			else
+				failed="${profile} (${retcode}) ${failed:-}"
+			fi
+		done
+		exit 0
+	fi
+fi
+
+qdrant_poststart()
+{
+    if [ -n "$qdrant_post_start" ]; then
+        eval $qdrant_post_start
+    fi
+}
+
+qdrant_poststop()
+{
+	if [ -n "${profile}" ]; then
+		[ -e "$pidfile" ] && unlink $pidfile
+	else
+		local file
+
+		for file in ${_piddir}/* ; do
+			case "$file" in
+			*\*)
+				continue ;;
+			esac
+			unlink $file
+		done
+	fi
+}
+
+_profsuffx=""
+if [ -n "${profile}" ]; then
+	_profsuffx="-${profile}"
+fi
+
+required_files="$qdrant_config"
+procname=%%PREFIX%%/bin/qdrant
+command="/usr/sbin/daemon"
+command_args="-f -S -p ${pidfile} \
+	-t qdrant${_profsuffx} \
+	%%PREFIX%%/bin/qdrant --config-path $qdrant_config"
+
+
+start_precmd="install -d -o $qdrant_user -g $qdrant_group -m 755 $_piddir"
+start_postcmd="${name}_poststart"
+stop_postcmd="${name}_poststop"
+
+run_rc_command "$1"
diff --git a/databases/qdrant/pkg-plist b/databases/qdrant/pkg-plist
index fecd90b8a619..41e99bcec522 100644
--- a/databases/qdrant/pkg-plist
+++ b/databases/qdrant/pkg-plist
@@ -1 +1,6 @@
+bin/qdrant
+bin/schema_generator
+bin/wal_inspector
 @sample %%ETCDIR%%/config.yaml.sample
+@dir(%%QDRANT_USER%%,%%QDRANT_GROUP%%,0750) %%ETCDIR%%/tls
+@dir(%%QDRANT_USER%%,%%QDRANT_GROUP%%,0750) %%QDRANT_DBDIR%%