aboutsummaryrefslogtreecommitdiffstats
path: root/crates/atuin-daemon
diff options
context:
space:
mode:
authorEllie Huxtable <ellie@elliehuxtable.com>2026-03-16 15:49:54 -0700
committerEllie Huxtable <ellie@elliehuxtable.com>2026-03-16 16:18:41 -0700
commit0f67f59e585836145e436310caabb338b12062a7 (patch)
tree2f957419d1c84024b25c6525da3ea92897d7ecd4 /crates/atuin-daemon
parentfeat: Add custom filtering and scoring mechanisms (diff)
downloadatuin-0f67f59e585836145e436310caabb338b12062a7.zip
vendor nucleo fork into atuin workspace
Rename crates (nucleo → atuin-nucleo, nucleo-matcher → atuin-nucleo-matcher), add to workspace members and dependencies, update all import paths, remove vendored CI workflow, and suppress upstream clippy warnings. format codespell fixes clippy clappy
Diffstat (limited to 'crates/atuin-daemon')
-rw-r--r--crates/atuin-daemon/Cargo.toml2
-rw-r--r--crates/atuin-daemon/src/search/index.rs8
2 files changed, 5 insertions, 5 deletions
diff --git a/crates/atuin-daemon/Cargo.toml b/crates/atuin-daemon/Cargo.toml
index b9d1d8fd..dd92df8b 100644
--- a/crates/atuin-daemon/Cargo.toml
+++ b/crates/atuin-daemon/Cargo.toml
@@ -38,7 +38,7 @@ tokio-stream = { version = "0.1.14", features = ["net"] }
hyper-util = "0.1"
rand.workspace = true
-nucleo = { git = "https://github.com/atuinsh/nucleo-ext.git", rev="74bd786" }
+atuin-nucleo = { workspace = true }
[target.'cfg(target_os = "linux")'.dependencies]
diff --git a/crates/atuin-daemon/src/search/index.rs b/crates/atuin-daemon/src/search/index.rs
index 1445871e..3328c5b5 100644
--- a/crates/atuin-daemon/src/search/index.rs
+++ b/crates/atuin-daemon/src/search/index.rs
@@ -14,9 +14,9 @@ use std::{
use atuin_client::history::History;
use atuin_client::settings::Search;
+use atuin_nucleo::{Injector, Nucleo, pattern};
use dashmap::DashMap;
use lasso::{Spur, ThreadedRodeo};
-use nucleo::{Injector, Nucleo, pattern};
use time::OffsetDateTime;
use tokio::sync::RwLock;
use tracing::{Level, instrument};
@@ -269,7 +269,7 @@ pub struct SearchIndex {
impl SearchIndex {
/// Create a new empty search index.
pub fn new() -> Self {
- let nucleo_config = nucleo::Config::DEFAULT;
+ let nucleo_config = atuin_nucleo::Config::DEFAULT;
// Single column for command text
let nucleo = Nucleo::<String>::new(nucleo_config, Arc::new(|| {}), None, 1);
let injector = nucleo.injector();
@@ -417,7 +417,7 @@ impl SearchIndex {
}
/// Build filter predicate for the given mode.
- fn build_filter(&self, mode: &IndexFilterMode) -> Option<nucleo::Filter<String>> {
+ fn build_filter(&self, mode: &IndexFilterMode) -> Option<atuin_nucleo::Filter<String>> {
// For Global mode, no filter needed
if matches!(mode, IndexFilterMode::Global) {
return None;
@@ -455,7 +455,7 @@ impl SearchIndex {
/// Build scorer from precomputed frecency map.
///
/// Returns None if frecency map is not available (search still works, just without frecency ranking).
- fn build_scorer(frecency_map: Option<FrecencyMap>) -> Option<nucleo::Scorer<String>> {
+ fn build_scorer(frecency_map: Option<FrecencyMap>) -> Option<atuin_nucleo::Scorer<String>> {
let map = frecency_map?;
Some(Arc::new(move |cmd: &String, fuzzy_score: u32| {
// HashMap<Arc<str>, _>::get accepts &str via Borrow trait