lotabout.skim/tests
juneboku 29ca6f22bd
fix: preserve input order with --no-sort (#1115)
* fix: preserve input order with --no-sort

Workers grab 4096-item chunks from a shared queue, so the order in
which worker results are concatenated is nondeterministic. With
--no-sort the merged list was left in that arrival order, which
scrambles the display order once the item count exceeds
num_workers * chunk_size (~24k items on a 10-core machine) and makes
--filter output nondeterministic for large inputs.

Sort matched items by rank.index (the original input position) when
no_sort is set: each worker sorts its accumulator in prepare, and the
final merge exploits the k sorted runs, mirroring the sorted path.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* avoid extra sorts by exploiting the thread_pool stability

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Loric ANDRE <loric.andre@pm.me>
2026-07-17 12:16:46 +00:00
..
common fix: refresh preview after mouse selection (#1095) 2026-06-26 00:36:07 +02:00
snapshots feat(theme): add a themeable scrollbar color for the item list (#1101) 2026-06-28 18:48:28 +02:00
ansi.rs tests: improve coverage to 90% (#1099) 2026-06-25 19:12:49 +00:00
binds.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
case.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
cli.rs fix: preserve input order with --no-sort (#1115) 2026-07-17 12:16:46 +00:00
defaults.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
highlighting.rs tests: improve coverage to 90% (#1099) 2026-06-25 19:12:49 +00:00
issues.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
keys.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
keys_interactive.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
layout.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
listen.rs feat!: feature-gate listen and image to allow opting out (#1103) 2026-06-29 15:35:50 +02:00
matcher.rs feat: bump frizbee to 0.10.0, thread local matcher (#1105) 2026-07-03 16:20:05 +00:00
mouse.rs fix: refresh preview after mouse selection (#1095) 2026-06-26 00:36:07 +02:00
multiline.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
normalize.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
options.rs feat(theme): add a themeable scrollbar color for the item list (#1101) 2026-06-28 18:48:28 +02:00
popup.rs tests: improve coverage to 90% (#1099) 2026-06-25 19:12:49 +00:00
preview.rs chore: add image tests & examples 2026-06-17 13:56:37 +02:00
split_match.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
tiebreak.rs chore: crate-level lints 2026-05-21 18:19:40 +02:00
unix.rs tests: improve coverage to 90% (#1099) 2026-06-25 19:12:49 +00:00