Update qdrant/qdrant Docker tag to v1.20.0 #9

Merged
nick merged 1 commits from renovate/qdrant-qdrant-1.x into main 2026-10-25 16:19:05 -07:00

This PR contains the following updates:

Package Update Change
qdrant/qdrant (source) minor v1.19.1 → v1.20.0

Release Notes

qdrant/qdrant

v1.20.0

Compare Source

Changelog

Features 🎶

Improvements 🎵

  • #​11009, #​11020 - Faster HNSW payload links build - builder sized to the block, not the segment, and reused
  • #​11083 - Faster HNSW healing - payload blocks reuse old graph links; m = 0 graphs can heal too
  • #​11166 - Smaller HNSW upper layers - floor() in level assignment matches the HNSW paper (6.25% of points on level 1 at m = 16, not 25%)
  • #​10976 - Faster PQ training - k-means sample gathered in one pass, not one per chunk
  • #​10975 - Faster scalar quantization search - AVX512-VNNI and AVX-VNNI kernels for int8 dot product
  • #​10977 - Less search slowdown during optimizations - the whole optimization job runs at low thread priority
  • #​11078, #​11080 - Fewer cancelled optimizations - optimizers are recreated only when their config changes
  • #​11234 - Faster point retrieval - ids resolved in one batch per segment
  • #​11070 - Faster snapshot transfers and downloads - 4 MiB stream buffers instead of 4 KiB
  • #​11253 - Faster shard transfers - transfer_raw_points and transfer_raw_payloads on by default
  • #​11206 - Safer snapshots - unique snapshot names, and a stored snapshot is never overwritten
  • #​11221 - No stuck snapshot downloads - 60s timeout when the server never responds
  • #​11163 - No blocking thread leak on telemetry timeout - the timeout also applies inside the blocking task
  • #​11164 - Clearer tar unpack errors - release builds report the error kind (e.g. timed out) instead of "malformed archive"
  • #​11118 - Log timestamps respect timezone - set with the TZ environment variable, UTC by default
  • #​10235 - timeout parameter for the get points API
  • Milestone #​58 - Less disk usage with hnsw_config.inline_storage - vectors are stored only inside the HNSW graph file, without a separate vector storage copy
  • #​10790 - Faster enable_hnsw change on payload indexes - updated in place instead of dropping and rebuilding the index
  • #​10906 - Faster search over on-disk vectors - batches of vectors are prefetched with madvise(WILLNEED) before scoring
  • #​10907 - ACORN on m = 0 graphs - search uses the payload-block links of the graph
  • #​11255 - Better shard distribution in small clusters - auto-sharded collections get 2 shards per node in 3+ node clusters while collections are fewer than nodes
  • #​11273 - No internal request stalls behind NAT and load balancers - HTTP/2 keepalive on internal p2p gRPC
  • #​11289 - Configurable snapshot storage timeouts and retries - new timeout_sec, connect_timeout_sec, max_retries, retry_timeout_sec in S3, GCS and Azure config

Bug fixes 🎼

  • #​10932, #​10971 - Fix collection reads stalling while a shard transfer holds the shard holder lock
  • #​10949 - Fix live-lock between shard transfer start and consensus operations
  • #​10956 - Fix collection being blocked while a shard snapshot is extracted
  • #​11075 - Fix must_not conditions being ignored when equal to an indexed must condition
  • #​11101 - Fix datetime filters with microseconds behaving differently with and without a payload index
  • #​10948 - Fix renaming an alias to an existing collection name being accepted
  • #​10887 - Fix transfer staying registered after crash replay of replica removal during transfer abort
  • #​11121 - Fix S3 snapshot upload completing truncated on a local read error
  • #​10796 - Fix Japanese tokenizer ignoring min_token_len, max_token_len, stemmer, ascii_folding and case-insensitive stopwords
  • #​10754 - Fix quantization build with MSVC-like compilers (clang-cl)

Security 🔑

  • #​10854 - Internal auth is enforced by default: service.enforce_internal_auth now defaults to true when an API key is configured
  • #​10718 - Startup warning when distributed mode has an API key configured but enforce_internal_auth is off
  • #​11275, #​11290 - Reject vector names that escape the segment directory, including . and ..
  • #​11278 - Update rustls-webpki and webpki-root-certs for RUSTSEC-2026-0382 and RUSTSEC-2026-0383

Qdrant Edge 📀

  • #​11085 - WAL-less mode for edge shards: EdgeConfig::wal_enabled(false) skips WAL writes, updates are durable after flush()
  • #​11084 - Fix updates lost on crash: unacknowledged WAL operations are replayed when an edge shard is loaded
  • #​11082 - Fix EdgeShard::flush not acknowledging the persisted version in the WAL

v1.19.2

Compare Source

Change log

Improvements

  • #​10682 - Don't rewrite full sparse posting list on every upsert, making sparse vector upserts significantly faster
  • #​10349, #​10445, #​10661, #​10700 - Make proxy segments persist their state, prevents WAL pinning and long recovery times on restart
  • #​10686 - Fix HNSW builds not always saturating all assigned threads
  • #​10624 - Resolve filter IDs only once per search request, improving performance
  • #​10853 - Allow to bind internal gRPC to separate network interface
  • #​10852 - Add startup warning if no API keys are configured
  • #​10891 - Don't hold collections lock during Raft snapshot, which previously blocked access to all collections
  • #​10570 - Double time for consensus synchronization await to allow time for re-election
  • #​10617 - Encode queue proxy batches in blocking thread, prevent blocking Tokio runtimes
  • #​10480 - Prevent blocking updates while synchronizing segment manifest
  • #​10541 - Prevent blocking updates while planning optimizations
  • #​10610 - Move BM25 sparse embedding to blocking thread to prevent blocking runtimes
  • #​10599 - Move queue proxy WAL reads and batch building off async runtime
  • #​10794 - Bound cardinality estimates by number of points
  • #​10618 - Expose resharding state in telemetry
  • #​10458 - Make reporting memory statistics more efficient with parallel workers
  • #​10813 - Report transferred bytes and rate in snapshot transfers comment
  • #​10781 - Report Acorn search statistics in telemetry
  • #​7714 - Add number of failed transfers in metrics (collection_shard_transfer_failed)
  • #​10542 - Add iteration count in 'Trying to read-lock a segment' log line
  • #​10714 - Support GCS and Azure Blob Storage for collection snapshots
  • #​10715 - Add configurable prefix for object storage snapshots

Bug Fixes

  • #​10903 - Fix zero search results when HNSW entry point does not satisfy filter
  • #​10870 - Fix adding a named multivector to indexed collection breaking search
  • #​10577 - Don't claim unfinished operations when flushing, fixing data inconsistencies
  • #​10507, #​10531 - Fix proxy segments not propagating some named vector or payload index changes
  • #​10837 - Prevent write tearing in all Gridstore storages, which could previously corrupt storage
  • #​10812 - Fix mutable payload index not able to load on torn write, causing crash loop
  • #​10643 - Fix stale snapshot transfer on recovering peer breaking other peers
  • #​10897 - Fix group_by on paths with an array index
  • #​10567 - Fix MMR pagination with offsets
  • #​10878 - Fix MMR candidates not ordered by vector distance before merge, improving accuracy
  • #​10593 - Fix TextAny match on unindexed payload fields
  • #​10777 - Fix 2-hop Acorn not being capped
  • #​10855 - Fix alt_api_key not being used in internal gRPC API calls
  • #​10862 - Reject full-text filters with min_token_len > max_token_len
  • #​10277 - Don't re-apply committed entries already applied during consensus start

Security

  • #​10758 - Accept only read-write API keys on the internal gRPC API
  • #​10556 - Don't expose path in logs when uploading snapshot without collection configuration

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate CLI.

This PR contains the following updates: | Package | Update | Change | |---|---|---| | [qdrant/qdrant](https://qdrant.com/) ([source](https://github.com/qdrant/qdrant)) | minor | `v1.19.1` → `v1.20.0` | --- ### Release Notes <details> <summary>qdrant/qdrant</summary> ### [`v1.20.0`](https://github.com/qdrant/qdrant/releases/tag/v1.20.0) [Compare Source](https://github.com/qdrant/qdrant/compare/v1.19.2...v1.20.0) ### Changelog #### Features 🎶 - [#&#8203;10750](https://github.com/qdrant/qdrant/issues/10750) - BM25 scoring directly on the full-text payload index \[[docs](https://qdrant.tech/documentation/search/text-search/full-text-search/)] - [Milestone #&#8203;57](https://github.com/qdrant/qdrant/milestone/57?closed=1) - TurboQuant: new `turbo8` and `turbo16` vector datatypes \[[docs](https://qdrant.tech/documentation/manage-data/vectors/#turboquant-datatypes)] - [#&#8203;11125](https://github.com/qdrant/qdrant/issues/11125) - Per-element payload indexes: new `nested` index parameter, faster nested condition filtering. \[[docs](https://qdrant.tech/documentation/manage-data/indexing/#per-element-index-for-arrays-of-objects)] - [#&#8203;11180](https://github.com/qdrant/qdrant/pull/11180), [#&#8203;11263](https://github.com/qdrant/qdrant/pull/11263) - New `code` tokenizer for full-text index \[[docs](https://qdrant.tech/documentation/manage-data/indexing/#code)] - [#&#8203;10466](https://github.com/qdrant/qdrant/pull/10466) - Configurable audit log output: `audit.output` writes audit events to `file` (default), `stdout` or `stderr` \[[docs](https://qdrant.tech/documentation/security/#audit-log-output)] - [#&#8203;10992](https://github.com/qdrant/qdrant/pull/10992) - Collection creation time: `created_at` is recorded and returned in collection info \[[docs](https://qdrant.tech/documentation/manage-data/collections/#collection-info)] - [#&#8203;10711](https://github.com/qdrant/qdrant/pull/10711) - Substring filter condition: `match: { substring: "..." }` (full-scan only) \[[docs](https://qdrant.tech/documentation/search/filtering/#substring-match)] - [#&#8203;10231](https://github.com/qdrant/qdrant/pull/10231), [#&#8203;10287](https://github.com/qdrant/qdrant/pull/10287), [#&#8203;10296](https://github.com/qdrant/qdrant/pull/10296) - New formula query expressions: `acosh`, `max`, `min` \[[docs](https://qdrant.tech/documentation/search/search-relevance/#max-and-min)] and \[[docs](https://qdrant.tech/documentation/search/search-relevance/#hyperbolic-distance)] - [#&#8203;10597](https://github.com/qdrant/qdrant/pull/10597), [#&#8203;10598](https://github.com/qdrant/qdrant/pull/10598) - Configurable ID tracker memory placement \[[docs](https://qdrant.tech/documentation/ops-configuration/memory-tiers/#id-tracker)] #### Improvements 🎵 - [#&#8203;11009](https://github.com/qdrant/qdrant/pull/11009), [#&#8203;11020](https://github.com/qdrant/qdrant/pull/11020) - Faster HNSW payload links build - builder sized to the block, not the segment, and reused - [#&#8203;11083](https://github.com/qdrant/qdrant/pull/11083) - Faster HNSW healing - payload blocks reuse old graph links; `m = 0` graphs can heal too - [#&#8203;11166](https://github.com/qdrant/qdrant/pull/11166) - Smaller HNSW upper layers - `floor()` in level assignment matches the HNSW paper (6.25% of points on level 1 at `m = 16`, not 25%) - [#&#8203;10976](https://github.com/qdrant/qdrant/pull/10976) - Faster PQ training - k-means sample gathered in one pass, not one per chunk - [#&#8203;10975](https://github.com/qdrant/qdrant/pull/10975) - Faster scalar quantization search - AVX512-VNNI and AVX-VNNI kernels for int8 dot product - [#&#8203;10977](https://github.com/qdrant/qdrant/pull/10977) - Less search slowdown during optimizations - the whole optimization job runs at low thread priority - [#&#8203;11078](https://github.com/qdrant/qdrant/pull/11078), [#&#8203;11080](https://github.com/qdrant/qdrant/pull/11080) - Fewer cancelled optimizations - optimizers are recreated only when their config changes - [#&#8203;11234](https://github.com/qdrant/qdrant/pull/11234) - Faster point retrieval - ids resolved in one batch per segment - [#&#8203;11070](https://github.com/qdrant/qdrant/pull/11070) - Faster snapshot transfers and downloads - 4 MiB stream buffers instead of 4 KiB - [#&#8203;11253](https://github.com/qdrant/qdrant/pull/11253) - Faster shard transfers - `transfer_raw_points` and `transfer_raw_payloads` on by default - [#&#8203;11206](https://github.com/qdrant/qdrant/pull/11206) - Safer snapshots - unique snapshot names, and a stored snapshot is never overwritten - [#&#8203;11221](https://github.com/qdrant/qdrant/pull/11221) - No stuck snapshot downloads - 60s timeout when the server never responds - [#&#8203;11163](https://github.com/qdrant/qdrant/pull/11163) - No blocking thread leak on telemetry timeout - the timeout also applies inside the blocking task - [#&#8203;11164](https://github.com/qdrant/qdrant/pull/11164) - Clearer tar unpack errors - release builds report the error kind (e.g. `timed out`) instead of "malformed archive" - [#&#8203;11118](https://github.com/qdrant/qdrant/pull/11118) - Log timestamps respect timezone - set with the `TZ` environment variable, UTC by default - [#&#8203;10235](https://github.com/qdrant/qdrant/pull/10235) - `timeout` parameter for the get points API - [Milestone #&#8203;58](https://github.com/qdrant/qdrant/milestone/58?closed=1) - Less disk usage with `hnsw_config.inline_storage` - vectors are stored only inside the HNSW graph file, without a separate vector storage copy - [#&#8203;10790](https://github.com/qdrant/qdrant/pull/10790) - Faster `enable_hnsw` change on payload indexes - updated in place instead of dropping and rebuilding the index - [#&#8203;10906](https://github.com/qdrant/qdrant/pull/10906) - Faster search over on-disk vectors - batches of vectors are prefetched with `madvise(WILLNEED)` before scoring - [#&#8203;10907](https://github.com/qdrant/qdrant/pull/10907) - ACORN on `m = 0` graphs - search uses the payload-block links of the graph - [#&#8203;11255](https://github.com/qdrant/qdrant/pull/11255) - Better shard distribution in small clusters - auto-sharded collections get 2 shards per node in 3+ node clusters while collections are fewer than nodes - [#&#8203;11273](https://github.com/qdrant/qdrant/pull/11273) - No internal request stalls behind NAT and load balancers - HTTP/2 keepalive on internal p2p gRPC - [#&#8203;11289](https://github.com/qdrant/qdrant/pull/11289) - Configurable snapshot storage timeouts and retries - new `timeout_sec`, `connect_timeout_sec`, `max_retries`, `retry_timeout_sec` in S3, GCS and Azure config #### Bug fixes 🎼 - [#&#8203;10932](https://github.com/qdrant/qdrant/pull/10932), [#&#8203;10971](https://github.com/qdrant/qdrant/pull/10971) - Fix collection reads stalling while a shard transfer holds the shard holder lock - [#&#8203;10949](https://github.com/qdrant/qdrant/pull/10949) - Fix live-lock between shard transfer start and consensus operations - [#&#8203;10956](https://github.com/qdrant/qdrant/pull/10956) - Fix collection being blocked while a shard snapshot is extracted - [#&#8203;11075](https://github.com/qdrant/qdrant/pull/11075) - Fix `must_not` conditions being ignored when equal to an indexed `must` condition - [#&#8203;11101](https://github.com/qdrant/qdrant/pull/11101) - Fix datetime filters with microseconds behaving differently with and without a payload index - [#&#8203;10948](https://github.com/qdrant/qdrant/pull/10948) - Fix renaming an alias to an existing collection name being accepted - [#&#8203;10887](https://github.com/qdrant/qdrant/pull/10887) - Fix transfer staying registered after crash replay of replica removal during transfer abort - [#&#8203;11121](https://github.com/qdrant/qdrant/pull/11121) - Fix S3 snapshot upload completing truncated on a local read error - [#&#8203;10796](https://github.com/qdrant/qdrant/pull/10796) - Fix Japanese tokenizer ignoring `min_token_len`, `max_token_len`, `stemmer`, `ascii_folding` and case-insensitive stopwords - [#&#8203;10754](https://github.com/qdrant/qdrant/pull/10754) - Fix quantization build with MSVC-like compilers (clang-cl) #### Security 🔑 - [#&#8203;10854](https://github.com/qdrant/qdrant/pull/10854) - Internal auth is enforced by default: `service.enforce_internal_auth` now defaults to `true` when an API key is configured - [#&#8203;10718](https://github.com/qdrant/qdrant/pull/10718) - Startup warning when distributed mode has an API key configured but `enforce_internal_auth` is off - [#&#8203;11275](https://github.com/qdrant/qdrant/pull/11275), [#&#8203;11290](https://github.com/qdrant/qdrant/pull/11290) - Reject vector names that escape the segment directory, including `.` and `..` - [#&#8203;11278](https://github.com/qdrant/qdrant/pull/11278) - Update rustls-webpki and webpki-root-certs for RUSTSEC-2026-0382 and RUSTSEC-2026-0383 #### Qdrant Edge 📀 - [#&#8203;11085](https://github.com/qdrant/qdrant/pull/11085) - WAL-less mode for edge shards: `EdgeConfig::wal_enabled(false)` skips WAL writes, updates are durable after `flush()` - [#&#8203;11084](https://github.com/qdrant/qdrant/pull/11084) - Fix updates lost on crash: unacknowledged WAL operations are replayed when an edge shard is loaded - [#&#8203;11082](https://github.com/qdrant/qdrant/pull/11082) - Fix `EdgeShard::flush` not acknowledging the persisted version in the WAL ### [`v1.19.2`](https://github.com/qdrant/qdrant/releases/tag/v1.19.2) [Compare Source](https://github.com/qdrant/qdrant/compare/v1.19.1...v1.19.2) ### Change log #### Improvements - [#&#8203;10682](https://github.com/qdrant/qdrant/pull/10682) - Don't rewrite full sparse posting list on every upsert, making sparse vector upserts significantly faster - [#&#8203;10349](https://github.com/qdrant/qdrant/pull/10349), [#&#8203;10445](https://github.com/qdrant/qdrant/pull/10445), [#&#8203;10661](https://github.com/qdrant/qdrant/pull/10661), [#&#8203;10700](https://github.com/qdrant/qdrant/pull/10700) - Make proxy segments persist their state, prevents WAL pinning and long recovery times on restart - [#&#8203;10686](https://github.com/qdrant/qdrant/pull/10686) - Fix HNSW builds not always saturating all assigned threads - [#&#8203;10624](https://github.com/qdrant/qdrant/pull/10624) - Resolve filter IDs only once per search request, improving performance - [#&#8203;10853](https://github.com/qdrant/qdrant/pull/10853) - Allow to bind internal gRPC to separate network interface - [#&#8203;10852](https://github.com/qdrant/qdrant/pull/10852) - Add startup warning if no API keys are configured - [#&#8203;10891](https://github.com/qdrant/qdrant/pull/10891) - Don't hold collections lock during Raft snapshot, which previously blocked access to all collections - [#&#8203;10570](https://github.com/qdrant/qdrant/pull/10570) - Double time for consensus synchronization await to allow time for re-election - [#&#8203;10617](https://github.com/qdrant/qdrant/pull/10617) - Encode queue proxy batches in blocking thread, prevent blocking Tokio runtimes - [#&#8203;10480](https://github.com/qdrant/qdrant/pull/10480) - Prevent blocking updates while synchronizing segment manifest - [#&#8203;10541](https://github.com/qdrant/qdrant/pull/10541) - Prevent blocking updates while planning optimizations - [#&#8203;10610](https://github.com/qdrant/qdrant/pull/10610) - Move BM25 sparse embedding to blocking thread to prevent blocking runtimes - [#&#8203;10599](https://github.com/qdrant/qdrant/pull/10599) - Move queue proxy WAL reads and batch building off async runtime - [#&#8203;10794](https://github.com/qdrant/qdrant/pull/10794) - Bound cardinality estimates by number of points - [#&#8203;10618](https://github.com/qdrant/qdrant/pull/10618) - Expose resharding state in telemetry - [#&#8203;10458](https://github.com/qdrant/qdrant/pull/10458) - Make reporting memory statistics more efficient with parallel workers - [#&#8203;10813](https://github.com/qdrant/qdrant/pull/10813) - Report transferred bytes and rate in snapshot transfers comment - [#&#8203;10781](https://github.com/qdrant/qdrant/pull/10781) - Report Acorn search statistics in telemetry - [#&#8203;7714](https://github.com/qdrant/qdrant/pull/7714) - Add number of failed transfers in metrics (`collection_shard_transfer_failed`) - [#&#8203;10542](https://github.com/qdrant/qdrant/pull/10542) - Add iteration count in 'Trying to read-lock a segment' log line - [#&#8203;10714](https://github.com/qdrant/qdrant/pull/10714) - Support GCS and Azure Blob Storage for collection snapshots - [#&#8203;10715](https://github.com/qdrant/qdrant/pull/10715) - Add configurable prefix for object storage snapshots #### Bug Fixes - [#&#8203;10903](https://github.com/qdrant/qdrant/pull/10903) - Fix zero search results when HNSW entry point does not satisfy filter - [#&#8203;10870](https://github.com/qdrant/qdrant/pull/10870) - Fix adding a named multivector to indexed collection breaking search - [#&#8203;10577](https://github.com/qdrant/qdrant/pull/10577) - Don't claim unfinished operations when flushing, fixing data inconsistencies - [#&#8203;10507](https://github.com/qdrant/qdrant/pull/10507), [#&#8203;10531](https://github.com/qdrant/qdrant/pull/10531) - Fix proxy segments not propagating some named vector or payload index changes - [#&#8203;10837](https://github.com/qdrant/qdrant/pull/10837) - Prevent write tearing in all Gridstore storages, which could previously corrupt storage - [#&#8203;10812](https://github.com/qdrant/qdrant/pull/10812) - Fix mutable payload index not able to load on torn write, causing crash loop - [#&#8203;10643](https://github.com/qdrant/qdrant/pull/10643) - Fix stale snapshot transfer on recovering peer breaking other peers - [#&#8203;10897](https://github.com/qdrant/qdrant/pull/10897) - Fix `group_by` on paths with an array index - [#&#8203;10567](https://github.com/qdrant/qdrant/pull/10567) - Fix MMR pagination with offsets - [#&#8203;10878](https://github.com/qdrant/qdrant/pull/10878) - Fix MMR candidates not ordered by vector distance before merge, improving accuracy - [#&#8203;10593](https://github.com/qdrant/qdrant/pull/10593) - Fix TextAny match on unindexed payload fields - [#&#8203;10777](https://github.com/qdrant/qdrant/pull/10777) - Fix 2-hop Acorn not being capped - [#&#8203;10855](https://github.com/qdrant/qdrant/pull/10855) - Fix `alt_api_key` not being used in internal gRPC API calls - [#&#8203;10862](https://github.com/qdrant/qdrant/pull/10862) - Reject full-text filters with `min_token_len` > `max_token_len` - [#&#8203;10277](https://github.com/qdrant/qdrant/pull/10277) - Don't re-apply committed entries already applied during consensus start #### Security - [#&#8203;10758](https://github.com/qdrant/qdrant/pull/10758) - Accept only read-write API keys on the internal gRPC API - [#&#8203;10556](https://github.com/qdrant/qdrant/pull/10556) - Don't expose path in logs when uploading snapshot without collection configuration </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xODEuNiIsInVwZGF0ZWRJblZlciI6IjQ0LjE4MS42IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
renovate Bot added 1 commit 2026-10-25 16:18:50 -07:00
nick merged commit 42d48e1008 into main 2026-10-25 16:19:05 -07:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: AtlasHorizon/compose#9