Skip to content

Commit 600d788

Browse files
committed
release: v3.6.0
1 parent fa003bf commit 600d788

File tree

5 files changed

+64
-33
lines changed

5 files changed

+64
-33
lines changed

CHANGELOG.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,37 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [3.6.0] - 2026-03-02
9+
10+
This version adds the Arinae algorithm as an option.
11+
12+
Arinae is designed to become skim's default algorithm in the future.
13+
14+
Technically, it uses Smith-Waterman and a modified Levenshtein distance with affine gaps for scoring, as well as multiple optimizations (the main ones being a loose prefilter and checks for early dismissal of paths that cannot lead to the best match). It also forbids typos on the first char of the query.
15+
16+
In practice, it should feel close to FZY's scoring with typos disabled, but with a more natural behavior regarding typos as Frizbee or other algorithms.
17+
18+
These other algorithms usually work by allowing a set number of typos using 3D matrices for computations, the max-typos value being set based on the length of the query. In practice, that meant that tes will match exactly, but test will allow one typo, meaning that typing a single character will change the filtered items completely. This algorithm will instead penalize typos, not block them completely.
19+
20+
This algorithm does not aim to revolution anything, but it aims at making typo-resistant fuzzy matching feel more like an actual alternative to the current options (namely FZF and FZY), while maintaining per-item performance at least as good as the current algorithms.
21+
22+
### 🚀 Features
23+
24+
- Merge ranks in AndOr engine matcher
25+
- Add Arinae algorithm (#990)
26+
- *(shell)* Colored history widgets & remove perl completely (#994)
27+
28+
### 🐛 Bug Fixes
29+
30+
- Make sure we drop Skim before returning the output
31+
32+
### 💼 Other
33+
34+
- Drop flake-utils, add formatter (#992)
35+
36+
### New Contributors
37+
* @faukah made their first contribution in [#992](https://github.com/skim-rs/skim/pull/992)
38+
839
## [3.5.0] - 2026-02-22
940

1041
### 🚀 Features

Cargo.lock

Lines changed: 29 additions & 29 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "skim"
3-
version = "3.5.0"
3+
version = "3.6.0"
44
authors = ["Loric ANDRE", "Zhang Jinzhou <lotabout@gmail.com>"]
55
description = "Fuzzy Finder in rust!"
66
documentation = "https://docs.rs/skim"

man/man1/sk.1

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
.ie \n(.g .ds Aq \(aq
22
.el .ds Aq '
3-
.TH sk 1 "sk 3.5.0"
3+
.TH sk 1 "sk 3.6.0"
44
.ie \n(.g .ds Aq \(aq
55
.el .ds Aq '
66
.SH NAME
@@ -1043,4 +1043,4 @@ When using `sk \-\-remote`, pipe in action chains (see the KEYBINDS section), fo
10431043
.ie \n(.g .ds Aq \(aq
10441044
.el .ds Aq '
10451045
.SH VERSION
1046-
v3.5.0
1046+
v3.6.0

shell/version.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.5.0
1+
3.6.0

0 commit comments

Comments
 (0)