├── .gitignore
├── Cargo.toml
├── LICENSE
├── README.md
├── src
└── main.rs
└── Cargo.lock
/.gitignore:
--------------------------------------------------------------------------------
1 | /target
2 | /db
3 |
--------------------------------------------------------------------------------
/Cargo.toml:
--------------------------------------------------------------------------------
1 | [package]
2 | name = "transvibe"
3 | version = "0.1.0"
4 | edition = "2024"
5 |
6 | [dependencies]
7 | anyhow = "1.0.98"
8 | color-eyre = "0.6.4"
9 | crossterm = "0.29.0"
10 | futures-util = "0.3.31"
11 | kalosm = { version = "0.4.0", features = ["language", "metal", "sound"] }
12 | ratatui = "0.29.0"
13 | tokio = { version = "1.45.0", features = ["macros", "sync"] }
14 |
15 | [profile.release]
16 | opt-level = 3
17 | # lto = true
18 | codegen-units = 1
19 | panic = "abort"
20 | strip = true
21 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2025 gist-rs
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # transvibe
2 |
3 | Transcribe+Translate: Real-time, local transcription and translation.
4 |
5 | > [!NOTE]
6 | > This project is a "vibe coding" session with Gemini 2.5 Pro Preview, developed using the [Zed Editor](https://zed.dev).
7 |
8 |
9 |
10 | ## Features
11 |
12 | - 🦀 **Built with Rust**: Crafted by Rustaceans using [Kalosm](https://floneum.com/kalosm/) for AI and [Ratatui](https://ratatui.rs) for the terminal interface.
13 | - 🏡 **100% Offline**: Operates entirely locally, ensuring your data privacy and functionality without an internet connection.
14 | - 🎤 **Real-time Transcription**: Captures and transcribes audio from your microphone as you speak.
15 | - ⚡ **Responsive Translation**: Utilizes a separate thread for translation, preventing delays in the transcription process.
16 | - ✨ **Enhanced Readability**: Highlights the most recent transcribed line, making it easier to follow along.
17 |
18 | ## TODO
19 |
20 | Future enhancements, planned features, and currently missing capabilities include:
21 |
22 | - **Expanded Language Support**: Adding transcription and translation capabilities for languages beyond the current scope.
23 | - **File-based Transcription**: Implementing the ability to transcribe audio from various file formats (currently missing).
24 | - **Saving and Exporting**: Adding functionality to save and export transcriptions and translations (currently missing).
25 | - **User-configurable Settings**: Implementing options like audio input device selection (currently missing).
26 | - **Pause/Resume Functionality**: Adding the ability to pause and resume transcription (currently missing).
27 | - **Session Management**: Allowing users to save and load transcription/translation sessions.
28 | - **UI/UX Improvements**: Continuously refining the user interface and experience.
29 | - **Performance Optimizations**: Further optimizing processing for speed and resource efficiency.
30 | - **Customizable Models**: Allowing users to specify different speech-to-text or translation models.
31 |
32 | ## Run
33 |
34 | To run the application:
35 |
36 | ```bash
37 | cargo run --release
38 | ```
39 |
40 | ## Build
41 |
42 | To build the application from source:
43 |
44 | ```bash
45 | cargo build --release
46 | ```
47 |
--------------------------------------------------------------------------------
/src/main.rs:
--------------------------------------------------------------------------------
1 | use color_eyre::Result;
2 | use crossterm::event::KeyModifiers;
3 | use crossterm::event::{self, Event, KeyCode, KeyEventKind};
4 | use futures_util::StreamExt;
5 | use kalosm::language::*;
6 | use kalosm::sound::*;
7 | use ratatui::widgets::{Scrollbar, ScrollbarOrientation, ScrollbarState};
8 | use ratatui::{
9 | prelude::*,
10 | widgets::{Block, Borders, Paragraph, Wrap},
11 | };
12 | use std::sync::Arc;
13 | use std::sync::atomic::{AtomicBool, Ordering};
14 |
15 | use tokio::sync::mpsc;
16 |
17 | #[derive(Debug)]
18 | enum AppUpdate {
19 | LiveJapaneseUpdate(String),
20 | JapaneseSegmentComplete(String),
21 | EnglishTranslation(String),
22 | SamplesProcessed(usize),
23 | RawSamplesDetected(usize),
24 | StatusUpdate(String),
25 | Error(String),
26 | }
27 |
28 | #[derive(Debug, PartialEq, Clone, Copy)]
29 | enum AppInputMode {
30 | Listening,
31 | StoppedTyping,
32 | }
33 |
34 | struct App {
35 | status: String,
36 | current_live_japanese: String,
37 | completed_japanese: Vec,
38 | completed_translations: Vec,
39 | rx: mpsc::Receiver,
40 | should_quit: bool,
41 | input_mode: AppInputMode,
42 | user_input: String, // For when typing is enabled
43 | // Shared state to control the audio processing task
44 | is_listening_shared: Arc,
45 | japanese_scroll_state: ScrollbarState,
46 | japanese_scroll: usize,
47 | english_scroll_state: ScrollbarState,
48 | english_scroll: u16,
49 | total_samples_listened: usize,
50 | raw_samples_count: usize,
51 | }
52 |
53 | impl App {
54 | fn new(rx: mpsc::Receiver) -> Self {
55 | Self {
56 | status: "Initializing... Press 's' to Stop/Start, 'q' to Quit".to_string(),
57 | current_live_japanese: String::new(),
58 | completed_japanese: Vec::new(),
59 | completed_translations: Vec::new(),
60 | rx,
61 | should_quit: false,
62 | input_mode: AppInputMode::Listening,
63 | user_input: String::new(),
64 | is_listening_shared: Arc::new(AtomicBool::new(true)), // Start in listening mode
65 | japanese_scroll_state: ScrollbarState::default(),
66 | japanese_scroll: 0,
67 | english_scroll_state: ScrollbarState::default(),
68 | english_scroll: 0,
69 | total_samples_listened: 0,
70 | raw_samples_count: 0,
71 | }
72 | }
73 |
74 | fn on_update(&mut self, update: AppUpdate) {
75 | match update {
76 | AppUpdate::StatusUpdate(s) => self.status = s,
77 | AppUpdate::LiveJapaneseUpdate(s) => self.current_live_japanese = s,
78 | AppUpdate::JapaneseSegmentComplete(jp_text) => {
79 | self.completed_japanese.insert(0, jp_text);
80 | self.current_live_japanese.clear();
81 | // Always insert a placeholder for the new Japanese text at the beginning
82 | self.completed_translations
83 | .insert(0, "Translating...".to_string());
84 |
85 | // Defensive: Ensure translation list doesn't grow longer than Japanese list.
86 | while self.completed_translations.len() > self.completed_japanese.len() {
87 | self.completed_translations.pop(); // Remove from the end (oldest assumed extras)
88 | }
89 | }
90 | AppUpdate::EnglishTranslation(en_text) => {
91 | let jp_len = self.completed_japanese.len();
92 | let tr_len = self.completed_translations.len();
93 |
94 | // Try to update the placeholder at the beginning (index 0), as it's the newest.
95 | if tr_len > 0 && self.completed_translations[0] == "Translating..." {
96 | self.completed_translations[0] = en_text;
97 | }
98 | // Fallback: find the earliest "Translating..." placeholder and update it.
99 | // This covers cases where translations might arrive out of order for older segments.
100 | else if let Some(index) = self
101 | .completed_translations
102 | .iter()
103 | .position(|t| t == "Translating...")
104 | {
105 | self.completed_translations[index] = en_text;
106 | }
107 | // Further fallback: if no placeholder is found and lengths allow, insert new translation at the top.
108 | // This case should be rare if JapaneseSegmentComplete always adds a placeholder.
109 | else if tr_len < jp_len {
110 | self.completed_translations.insert(0, en_text);
111 | }
112 | // If none of the above (e.g. tr_len >= jp_len and no placeholder found),
113 | // the translation might be an anomaly or for an already translated segment.
114 | // We'll let the cleanup logic below adjust list lengths if necessary.
115 |
116 | // Defensive: Ensure translation list doesn't grow excessively longer than Japanese list.
117 | while self.completed_translations.len() > self.completed_japanese.len() {
118 | self.completed_translations.pop(); // Remove from the end
119 | }
120 | // Defensive: Ensure every Japanese text has a corresponding translation/placeholder.
121 | // New placeholders are inserted at the beginning to match the Japanese text insertion.
122 | while self.completed_translations.len() < self.completed_japanese.len() {
123 | self.completed_translations
124 | .insert(0, "[Pending Translation]".to_string());
125 | }
126 | }
127 | AppUpdate::SamplesProcessed(samples) => {
128 | self.total_samples_listened += samples;
129 | self.raw_samples_count = 0; // Reset after final samples for transcribed segment reported
130 | }
131 | AppUpdate::RawSamplesDetected(samples) => {
132 | self.raw_samples_count += samples;
133 | }
134 | AppUpdate::Error(err_msg) => {
135 | self.status = format!("ERROR: {}", err_msg);
136 | // Potentially log to a file or display more prominently
137 | }
138 | }
139 | }
140 |
141 | fn run(&mut self, terminal: &mut Terminal) -> Result<()> {
142 | while !self.should_quit {
143 | terminal.draw(|frame| self.render(frame))?;
144 | self.handle_events()?;
145 | self.handle_updates();
146 | }
147 | Ok(())
148 | }
149 |
150 | fn handle_events(&mut self) -> Result<()> {
151 | if event::poll(std::time::Duration::from_millis(50))? {
152 | if let Event::Key(key) = event::read()? {
153 | if key.kind == KeyEventKind::Press {
154 | // Global keybindings for scrolling, etc.
155 | // Check for scroll events first, as they are global.
156 | let mut event_handled = true; // Assume handled if it matches
157 | match (key.code, key.modifiers) {
158 | (KeyCode::Down, KeyModifiers::CONTROL)
159 | | (KeyCode::Char('j'), KeyModifiers::CONTROL) => {
160 | self.scroll_english_down();
161 | }
162 | (KeyCode::Up, KeyModifiers::CONTROL)
163 | | (KeyCode::Char('k'), KeyModifiers::CONTROL) => {
164 | self.scroll_english_up();
165 | }
166 | (KeyCode::Down, KeyModifiers::ALT)
167 | | (KeyCode::Char('j'), KeyModifiers::ALT) => {
168 | self.scroll_japanese_down();
169 | }
170 | (KeyCode::Up, KeyModifiers::ALT)
171 | | (KeyCode::Char('k'), KeyModifiers::ALT) => {
172 | self.scroll_japanese_up();
173 | }
174 | _ => {
175 | event_handled = false; // Not a global scroll key
176 | }
177 | }
178 |
179 | if event_handled {
180 | return Ok(());
181 | }
182 |
183 | // Mode-specific keybindings
184 | if key.kind == KeyEventKind::Press && key.code == KeyCode::Esc {
185 | self.should_quit = true;
186 | return Ok(());
187 | }
188 | match self.input_mode {
189 | AppInputMode::Listening => match key.code {
190 | KeyCode::Char('q') => {
191 | self.should_quit = true;
192 | self.status = "Exiting...".to_string();
193 | }
194 | KeyCode::Char('s') => {
195 | self.input_mode = AppInputMode::StoppedTyping;
196 | self.is_listening_shared.store(false, Ordering::Relaxed);
197 | self.status = "Stopped. Press 's' to Start. Type your message, Enter to process.".to_string();
198 | self.current_live_japanese.clear(); // Clear live transcription
199 | self.user_input.clear(); // Clear previous user input
200 | }
201 | _ => {}
202 | },
203 | AppInputMode::StoppedTyping => match key.code {
204 | KeyCode::Char('q') => {
205 | self.should_quit = true;
206 | self.status = "Exiting...".to_string();
207 | }
208 | KeyCode::Char('s') => {
209 | self.input_mode = AppInputMode::Listening;
210 | self.is_listening_shared.store(true, Ordering::Relaxed);
211 | self.status =
212 | "Starting... Press 's' to Stop/Start, 'q' to Quit".to_string();
213 | self.user_input.clear();
214 | }
215 | KeyCode::Enter => {
216 | // Process self.user_input (transcribe/translate)
217 | // This part will require sending the user_input to the audio_processing_task
218 | // or a similar new task. For now, we'll just clear it and log.
219 | if !self.user_input.is_empty() {
220 | // Send user_input for processing. This needs a new AppUpdate variant or mechanism.
221 | // For now, let's simulate it goes to Japanese history.
222 | self.completed_japanese
223 | .push(format!("[User Input]: {}", self.user_input.clone()));
224 | // Add a placeholder for translation
225 | if self.completed_translations.len()
226 | < self.completed_japanese.len()
227 | {
228 | self.completed_translations
229 | .push("Translating user input...".to_string());
230 | }
231 | // Here you would ideally trigger a Llama translation for self.user_input
232 | self.status = format!(
233 | "Input '{}' submitted. Press 's' to start listening.",
234 | self.user_input
235 | );
236 | self.user_input.clear();
237 | }
238 | }
239 | KeyCode::Char(c) => {
240 | self.user_input.push(c);
241 | }
242 | KeyCode::Backspace => {
243 | self.user_input.pop();
244 | }
245 | _ => {}
246 | },
247 | }
248 | }
249 | }
250 | }
251 | Ok(())
252 | }
253 |
254 | fn handle_updates(&mut self) {
255 | while let Ok(update) = self.rx.try_recv() {
256 | self.on_update(update);
257 | }
258 | }
259 |
260 | fn render(&mut self, frame: &mut Frame) {
261 | // Changed to &mut self
262 | let main_layout = Layout::default()
263 | .direction(Direction::Vertical)
264 | .constraints(vec![
265 | Constraint::Length(1), // Status
266 | Constraint::Length(3), // Live Japanese
267 | Constraint::Min(0), // History
268 | ])
269 | .split(frame.area());
270 |
271 | // General Status/Help Message
272 | let help_text = match self.input_mode {
273 | AppInputMode::Listening => {
274 | format!(
275 | "Status: {} ({} samples processed) (Press 's' to Stop, 'q' to Quit)",
276 | self.status, self.total_samples_listened
277 | )
278 | }
279 | AppInputMode::StoppedTyping => {
280 | "Status: ".to_string()
281 | + &self.status
282 | + " (Press 's' to Start, 'q' to Quit, Enter to submit input)"
283 | }
284 | };
285 | let help_paragraph = Paragraph::new(help_text).style(Style::default().fg(Color::Yellow));
286 | frame.render_widget(help_paragraph, main_layout[0]);
287 |
288 | // Input Area (Live Japanese or User Text Input)
289 | let input_area_title = match self.input_mode {
290 | AppInputMode::Listening => "Live Japanese Input (Listening...)",
291 | AppInputMode::StoppedTyping => "Text Input (Stopped - Type here)",
292 | };
293 | let input_block = Block::default()
294 | .title(input_area_title)
295 | .borders(Borders::ALL);
296 |
297 | let text_to_display_in_input_area = match self.input_mode {
298 | AppInputMode::Listening => self.current_live_japanese.as_str(),
299 | AppInputMode::StoppedTyping => self.user_input.as_str(),
300 | };
301 |
302 | let mut text_widget = Paragraph::new(text_to_display_in_input_area)
303 | .wrap(Wrap { trim: true })
304 | .block(input_block.clone());
305 |
306 | if self.input_mode == AppInputMode::StoppedTyping {
307 | text_widget = text_widget.style(Style::default().fg(Color::Cyan)); // Style for typing mode
308 | // Set cursor position for typing mode
309 | #[allow(clippy::cast_possible_truncation)]
310 | frame.set_cursor_position(Position::new(
311 | main_layout[1].x + self.user_input.chars().count() as u16 + 1,
312 | main_layout[1].y + 1,
313 | ));
314 | } else if self.current_live_japanese.is_empty()
315 | && self.input_mode == AppInputMode::Listening
316 | && self.status.contains("Listening")
317 | {
318 | let listening_text = format!(
319 | "Listening... ({} samples processed this segment)",
320 | self.raw_samples_count
321 | );
322 | let listening_placeholder = Paragraph::new(listening_text)
323 | .wrap(Wrap { trim: true })
324 | .block(input_block)
325 | .style(Style::default().add_modifier(Modifier::ITALIC));
326 | frame.render_widget(listening_placeholder, main_layout[1]);
327 | } else {
328 | frame.render_widget(text_widget.clone(), main_layout[1]);
329 | }
330 | // If it's StoppedTyping mode, render text_widget again to ensure cursor is handled correctly
331 | // This is a bit redundant but ensures the cursor logic from above is effective
332 | // This is needed because we might have rendered the "Listening..." placeholder.
333 | if self.input_mode == AppInputMode::StoppedTyping {
334 | frame.render_widget(text_widget, main_layout[1]);
335 | }
336 |
337 | let history_layout = Layout::default()
338 | .direction(Direction::Horizontal)
339 | .constraints(vec![Constraint::Percentage(50), Constraint::Percentage(50)])
340 | .split(main_layout[2]);
341 |
342 | // Japanese Transcript Panel
343 | let japanese_lines: Vec = self
344 | .completed_japanese
345 | .iter()
346 | .enumerate()
347 | .flat_map(|(i, s)| {
348 | let style = if i == 0 {
349 | // Highlight the first line (newest)
350 | Style::new().fg(Color::White)
351 | } else {
352 | Style::new().fg(Color::DarkGray)
353 | };
354 | let content_line = Line::from(s.as_str()).style(style);
355 | if i == 0 {
356 | // Newest item, don't add preceding blank line
357 | vec![content_line]
358 | } else {
359 | // Add a blank line before older items for separation
360 | vec![Line::from(""), content_line]
361 | }
362 | })
363 | .collect();
364 |
365 | let japanese_block = Block::default()
366 | .title("Japanese Transcript")
367 | .borders(Borders::ALL);
368 | let common_wrap_setting = Wrap { trim: true };
369 |
370 | // Set scrollbar content length to number of items
371 | self.japanese_scroll_state = self
372 | .japanese_scroll_state
373 | .content_length(self.completed_japanese.len());
374 |
375 | // Auto-scroll logic removed. Scrolling is now manual.
376 |
377 | let japanese_paragraph = Paragraph::new(japanese_lines)
378 | .block(japanese_block)
379 | .wrap(common_wrap_setting)
380 | .scroll((self.japanese_scroll as u16, 0));
381 | frame.render_widget(japanese_paragraph, history_layout[0]);
382 | frame.render_stateful_widget(
383 | Scrollbar::new(ScrollbarOrientation::VerticalRight)
384 | .begin_symbol(Some("↑"))
385 | .end_symbol(Some("↓")),
386 | history_layout[0], // Render scrollbar in the same area
387 | &mut self.japanese_scroll_state,
388 | );
389 |
390 | // English Translation Panel
391 | let english_lines: Vec = self
392 | .completed_translations
393 | .iter()
394 | .enumerate()
395 | .flat_map(|(i, s)| {
396 | let style = if i == 0 {
397 | // Highlight the first line (newest)
398 | Style::new().fg(Color::White)
399 | } else {
400 | Style::new().fg(Color::DarkGray)
401 | };
402 | let content_line = Line::from(s.as_str()).style(style);
403 | if i == 0 {
404 | // Newest item
405 | vec![content_line]
406 | } else {
407 | // Add a blank line before older items
408 | vec![Line::from(""), content_line]
409 | }
410 | })
411 | .collect();
412 |
413 | let english_block = Block::default()
414 | .title("English Translation")
415 | .borders(Borders::ALL);
416 | // Assuming same wrap setting as Japanese panel, can be customized if needed
417 | let common_wrap_setting = Wrap { trim: true };
418 |
419 | // Set scrollbar content length to number of items
420 | self.english_scroll_state = self
421 | .english_scroll_state
422 | .content_length(self.completed_translations.len());
423 |
424 | // Auto-scroll logic removed. Scrolling is now manual.
425 |
426 | let english_paragraph = Paragraph::new(english_lines)
427 | .block(english_block)
428 | .wrap(common_wrap_setting)
429 | .scroll((self.english_scroll, 0));
430 | frame.render_widget(english_paragraph, history_layout[1]);
431 | frame.render_stateful_widget(
432 | Scrollbar::new(ScrollbarOrientation::VerticalRight)
433 | .begin_symbol(Some("↑"))
434 | .end_symbol(Some("↓")),
435 | history_layout[1], // Render scrollbar in the same area
436 | &mut self.english_scroll_state,
437 | );
438 | }
439 |
440 | fn scroll_japanese_down(&mut self) {
441 | let content_height = self.completed_japanese.len();
442 | // Assuming roughly one line per item for simplicity in limiting scroll.
443 | // A more precise calculation might involve the actual rendered height if lines wrap.
444 | if content_height > 0 {
445 | // Check if there's content to scroll
446 | self.japanese_scroll = self.japanese_scroll.saturating_add(1);
447 | // Prevent scrolling beyond content. The paragraph widget itself might also clamp this.
448 | // This is a basic clamp; true max scroll depends on viewport height vs content height.
449 | if self.japanese_scroll >= content_height {
450 | self.japanese_scroll = content_height.saturating_sub(1);
451 | }
452 | }
453 | self.japanese_scroll_state = self.japanese_scroll_state.position(self.japanese_scroll);
454 | }
455 |
456 | fn scroll_japanese_up(&mut self) {
457 | self.japanese_scroll = self.japanese_scroll.saturating_sub(1);
458 | self.japanese_scroll_state = self.japanese_scroll_state.position(self.japanese_scroll);
459 | }
460 |
461 | fn scroll_english_down(&mut self) {
462 | let content_height = self.completed_translations.len() as u16;
463 | if content_height > 0 {
464 | self.english_scroll = self.english_scroll.saturating_add(1);
465 | if self.english_scroll >= content_height {
466 | self.english_scroll = content_height.saturating_sub(1);
467 | }
468 | }
469 | self.english_scroll_state = self
470 | .english_scroll_state
471 | .position(self.english_scroll as usize);
472 | }
473 |
474 | fn scroll_english_up(&mut self) {
475 | self.english_scroll = self.english_scroll.saturating_sub(1);
476 | self.english_scroll_state = self
477 | .english_scroll_state
478 | .position(self.english_scroll as usize);
479 | }
480 | }
481 |
482 | const SYSTEM_PROMPT: &str = "You are an expert translator. Translate the given Japanese text to English accurately and concisely. Output only the English translation. Do not add any pleasantries or extra explanations.";
483 |
484 | async fn audio_processing_task(
485 | tx: mpsc::Sender,
486 | is_listening_shared: Arc,
487 | ) -> Result<(), anyhow::Error> {
488 | tx.send(AppUpdate::StatusUpdate(
489 | "Initializing models...".to_string(),
490 | ))
491 | .await
492 | .ok();
493 |
494 | let whisper_model = WhisperBuilder::default()
495 | .with_language(Some(WhisperLanguage::Japanese)) // Specify Japanese
496 | .build()
497 | .await?;
498 |
499 | tx.send(AppUpdate::StatusUpdate(
500 | "Whisper model loaded. Initializing Llama...".to_string(),
501 | ))
502 | .await
503 | .ok();
504 |
505 | let llama_model = Llama::builder()
506 | .with_source(LlamaSource::qwen_2_5_7b_instruct()) // Or another suitable model
507 | .build()
508 | .await?;
509 | let llama_chat_template = llama_model.chat().with_system_prompt(SYSTEM_PROMPT);
510 |
511 | tx.send(AppUpdate::StatusUpdate(
512 | "All models loaded. Listening for microphone input...".to_string(),
513 | ))
514 | .await
515 | .ok();
516 |
517 | let mic_input = MicInput::default();
518 | let vad_stream = mic_input.stream().voice_activity_stream();
519 | let tx_for_inspect = tx.clone(); // Clone tx for the inspect closure
520 | let mut audio_chunks = vad_stream
521 | .inspect(move |vad_output| {
522 | // vad_output is &VoiceActivityDetectorOutput (or the item type of vad_stream)
523 | // This assumes vad_output has a public field `samples` which is a `rodio::buffer::SamplesBuffer`
524 | // as per the user-provided reference.
525 | let samples_count = vad_output.samples.clone().count();
526 | if samples_count > 0 {
527 | // Use try_send to avoid blocking the audio thread.
528 | // If the channel is full or disconnected, this will be a no-op.
529 | tx_for_inspect
530 | .try_send(AppUpdate::RawSamplesDetected(samples_count))
531 | .ok();
532 | }
533 | })
534 | .rechunk_voice_activity()
535 | .with_end_window(std::time::Duration::from_millis(400)) // More sensitive end window
536 | .with_end_threshold(0.25) // Slightly higher end threshold
537 | .with_time_before_speech(std::time::Duration::from_millis(200)); // Reduce pre-speech buffer
538 |
539 | loop {
540 | if !is_listening_shared.load(Ordering::Relaxed) {
541 | // If not listening, sleep for a bit and check again.
542 | // Update status to indicate paused state if desired.
543 | // tx.send(AppUpdate::StatusUpdate("Audio processing paused...".to_string())).await.ok();
544 | tokio::time::sleep(std::time::Duration::from_millis(100)).await;
545 | continue;
546 | }
547 |
548 | // Check if there's an audio chunk available without blocking indefinitely if not listening
549 | // This might need more sophisticated handling if audio_chunks.next() blocks for too long
550 | // when is_listening_shared becomes false during its await.
551 | // For simplicity, we proceed with next().await.
552 | // A more robust solution might involve a select! with a shutdown signal.
553 | let input_audio_chunk = match tokio::time::timeout(
554 | std::time::Duration::from_millis(50), // Short timeout to remain responsive to is_listening_shared
555 | audio_chunks.next(),
556 | )
557 | .await
558 | {
559 | Ok(Some(chunk)) => chunk,
560 | Ok(None) => break, // Stream ended
561 | Err(_) => continue, // Timeout, loop back to check is_listening_shared
562 | };
563 |
564 | // Indicate that an audio chunk has been received and provide its size
565 | let chunk_size = input_audio_chunk.clone().count(); // Get number of samples directly from SamplesBuffer
566 | tx.send(AppUpdate::StatusUpdate(format!(
567 | "Processing audio chunk ({:#?} samples)...",
568 | chunk_size
569 | )))
570 | .await
571 | .ok();
572 | // Send the number of samples processed in this chunk for this segment
573 | tx.send(AppUpdate::SamplesProcessed(chunk_size)).await.ok();
574 |
575 | // tx.send(AppUpdate::StatusUpdate("Transcribing audio...".to_string()))
576 | // .await
577 | // .ok(); // This line is now replaced by the more specific one above or the one below after transcription
578 | let mut current_segment_text = String::new();
579 | let mut transcribed_stream = whisper_model.transcribe(input_audio_chunk);
580 |
581 | while let Some(transcribed) = transcribed_stream.next().await {
582 | if transcribed.probability_of_no_speech() < 0.85 {
583 | current_segment_text.push_str(transcribed.text());
584 | tx.send(AppUpdate::LiveJapaneseUpdate(current_segment_text.clone()))
585 | .await
586 | .ok();
587 | }
588 | }
589 |
590 | if current_segment_text.trim().chars().count() > 0 {
591 | tx.send(AppUpdate::JapaneseSegmentComplete(
592 | current_segment_text.clone(),
593 | ))
594 | .await
595 | .ok();
596 | tx.send(AppUpdate::StatusUpdate(
597 | "Translating to English...".to_string(),
598 | ))
599 | .await
600 | .ok();
601 |
602 | let tx_clone_for_task = tx.clone();
603 | let chat_template_for_task = llama_chat_template.clone();
604 | let segment_to_translate = current_segment_text.clone();
605 |
606 | tokio::spawn(async move {
607 | let prompt = format!(
608 | "Translate the following Japanese text to English, Output only the English translation. Do not add any pleasantries or extra explanations. Do not translate English, keep as is.:\n{}",
609 | segment_to_translate
610 | );
611 |
612 | // It's good practice to indicate that the Llama call is starting within the task
613 | // tx_clone_for_task.send(AppUpdate::StatusUpdate(
614 | // "Requesting translation from Llama...".to_string(),
615 | // ))
616 | // .await
617 | // .ok();
618 |
619 | let mut llama_chat = chat_template_for_task;
620 | let mut response_stream = llama_chat(&prompt);
621 | let raw_translation = response_stream.all_text().await;
622 | // println!("[Debug Llama Output Live]: {}", raw_translation);
623 |
624 | let cleaned_translation = raw_translation
625 | .replace("<|im_start|>", "")
626 | .replace("<|im_end|>", "")
627 | .trim()
628 | .to_string();
629 |
630 | let _status_translation_excerpt = if cleaned_translation.len() > 20 {
631 | let mut end_index = 20;
632 | if cleaned_translation.is_empty() {
633 | end_index = 0;
634 | } else {
635 | while end_index > 0 && !cleaned_translation.is_char_boundary(end_index) {
636 | end_index -= 1;
637 | }
638 | }
639 | format!("{}...", &cleaned_translation[..end_index])
640 | } else {
641 | cleaned_translation.clone()
642 | };
643 | // This status update can be useful to confirm the task completed
644 | // tx_clone_for_task.send(AppUpdate::StatusUpdate(format!(
645 | // "Llama call completed. Got: {}",
646 | // status_translation_excerpt
647 | // )))
648 | // .await
649 | // .ok();
650 |
651 | if !cleaned_translation.is_empty() {
652 | tx_clone_for_task
653 | .send(AppUpdate::EnglishTranslation(cleaned_translation))
654 | .await
655 | .ok();
656 | } else {
657 | tx_clone_for_task
658 | .send(AppUpdate::EnglishTranslation(
659 | "[No translation generated]".to_string(),
660 | ))
661 | .await
662 | .ok();
663 | }
664 | });
665 | } else {
666 | // Clear live japanese if segment was too short/empty
667 | tx.send(AppUpdate::LiveJapaneseUpdate("".to_string()))
668 | .await
669 | .ok();
670 | }
671 | tx.send(AppUpdate::StatusUpdate("Listening...".to_string()))
672 | .await
673 | .ok();
674 | }
675 |
676 | Ok(())
677 | }
678 |
679 | #[tokio::main]
680 | async fn main() -> Result<()> {
681 | color_eyre::install()?;
682 |
683 | let (tx, rx) = mpsc::channel(32); // Channel for AppUpdates
684 | let is_listening_shared = Arc::new(AtomicBool::new(true)); // Initially listening
685 |
686 | // Clone tx and is_listening_shared for the audio processing task
687 | let tx_audio = tx.clone();
688 | let is_listening_audio_task = is_listening_shared.clone();
689 | tokio::spawn(async move {
690 | if let Err(e) = audio_processing_task(tx_audio, is_listening_audio_task).await {
691 | // Send error to UI if task fails
692 | // The tx channel might be closed if the main app loop has already exited.
693 | // We use a let _ to ignore the result of the send, as there's not much we can do
694 | // if sending fails here (the UI part is likely gone).
695 | let _ = tx
696 | .send(AppUpdate::Error(format!(
697 | "Audio processing task failed: {}",
698 | e
699 | )))
700 | .await;
701 | }
702 | });
703 |
704 | // Setup terminal
705 | let mut terminal = Terminal::new(CrosstermBackend::new(std::io::stdout()))?;
706 | crossterm::terminal::enable_raw_mode()?;
707 | crossterm::execute!(
708 | terminal.backend_mut(),
709 | crossterm::terminal::EnterAlternateScreen,
710 | crossterm::event::EnableMouseCapture // Though not used, good practice
711 | )?;
712 | terminal.clear()?; // Clear terminal before first draw
713 |
714 | let mut app = App::new(rx); // app needs to be mutable to call run
715 | let app_result = app.run(&mut terminal); // Pass a mutable reference to terminal
716 |
717 | // Restore terminal
718 | crossterm::execute!(
719 | terminal.backend_mut(), // Use terminal.backend_mut() for restore as well
720 | crossterm::terminal::LeaveAlternateScreen,
721 | crossterm::event::DisableMouseCapture
722 | )?;
723 | crossterm::terminal::disable_raw_mode()?;
724 |
725 | // The terminal is dropped here, which should restore the original screen.
726 | // Explicitly restoring is good practice though.
727 |
728 | if let Err(err) = app_result {
729 | // It's good to print the error to stderr if the application fails
730 | // before the terminal is fully restored, or if restoration itself fails.
731 | eprintln!("Error running app: {:?}", err);
732 | // Ensure color_eyre's hook can run by returning the error
733 | return Err(err); // No need for .into() if app.run returns color_eyre::Result
734 | }
735 |
736 | Ok(())
737 | }
738 |
--------------------------------------------------------------------------------
/Cargo.lock:
--------------------------------------------------------------------------------
1 | # This file is automatically @generated by Cargo.
2 | # It is not intended for manual editing.
3 | version = 4
4 |
5 | [[package]]
6 | name = "accelerate-src"
7 | version = "0.3.2"
8 | source = "registry+https://github.com/rust-lang/crates.io-index"
9 | checksum = "415ed64958754dbe991900f3940677e6a7eefb4d7367afd70d642677b0c7d19d"
10 |
11 | [[package]]
12 | name = "addr2line"
13 | version = "0.24.2"
14 | source = "registry+https://github.com/rust-lang/crates.io-index"
15 | checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1"
16 | dependencies = [
17 | "gimli",
18 | ]
19 |
20 | [[package]]
21 | name = "adler2"
22 | version = "2.0.0"
23 | source = "registry+https://github.com/rust-lang/crates.io-index"
24 | checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627"
25 |
26 | [[package]]
27 | name = "aes"
28 | version = "0.8.4"
29 | source = "registry+https://github.com/rust-lang/crates.io-index"
30 | checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0"
31 | dependencies = [
32 | "cfg-if",
33 | "cipher",
34 | "cpufeatures",
35 | ]
36 |
37 | [[package]]
38 | name = "ahash"
39 | version = "0.8.12"
40 | source = "registry+https://github.com/rust-lang/crates.io-index"
41 | checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75"
42 | dependencies = [
43 | "cfg-if",
44 | "getrandom 0.3.3",
45 | "once_cell",
46 | "version_check",
47 | "zerocopy",
48 | ]
49 |
50 | [[package]]
51 | name = "aho-corasick"
52 | version = "1.1.3"
53 | source = "registry+https://github.com/rust-lang/crates.io-index"
54 | checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
55 | dependencies = [
56 | "memchr",
57 | ]
58 |
59 | [[package]]
60 | name = "allocator-api2"
61 | version = "0.2.21"
62 | source = "registry+https://github.com/rust-lang/crates.io-index"
63 | checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
64 |
65 | [[package]]
66 | name = "alsa"
67 | version = "0.9.1"
68 | source = "registry+https://github.com/rust-lang/crates.io-index"
69 | checksum = "ed7572b7ba83a31e20d1b48970ee402d2e3e0537dcfe0a3ff4d6eb7508617d43"
70 | dependencies = [
71 | "alsa-sys",
72 | "bitflags 2.9.1",
73 | "cfg-if",
74 | "libc",
75 | ]
76 |
77 | [[package]]
78 | name = "alsa-sys"
79 | version = "0.3.1"
80 | source = "registry+https://github.com/rust-lang/crates.io-index"
81 | checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527"
82 | dependencies = [
83 | "libc",
84 | "pkg-config",
85 | ]
86 |
87 | [[package]]
88 | name = "android-tzdata"
89 | version = "0.1.1"
90 | source = "registry+https://github.com/rust-lang/crates.io-index"
91 | checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
92 |
93 | [[package]]
94 | name = "android_system_properties"
95 | version = "0.1.5"
96 | source = "registry+https://github.com/rust-lang/crates.io-index"
97 | checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
98 | dependencies = [
99 | "libc",
100 | ]
101 |
102 | [[package]]
103 | name = "anyhow"
104 | version = "1.0.98"
105 | source = "registry+https://github.com/rust-lang/crates.io-index"
106 | checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487"
107 |
108 | [[package]]
109 | name = "arbitrary"
110 | version = "1.4.1"
111 | source = "registry+https://github.com/rust-lang/crates.io-index"
112 | checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223"
113 | dependencies = [
114 | "derive_arbitrary",
115 | ]
116 |
117 | [[package]]
118 | name = "arrayvec"
119 | version = "0.7.6"
120 | source = "registry+https://github.com/rust-lang/crates.io-index"
121 | checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
122 |
123 | [[package]]
124 | name = "arroy"
125 | version = "0.5.0"
126 | source = "registry+https://github.com/rust-lang/crates.io-index"
127 | checksum = "dfc5f272f38fa063bbff0a7ab5219404e221493de005e2b4078c62d626ef567e"
128 | dependencies = [
129 | "bytemuck",
130 | "byteorder",
131 | "heed",
132 | "log",
133 | "memmap2",
134 | "nohash",
135 | "ordered-float",
136 | "rand 0.8.5",
137 | "rayon",
138 | "roaring",
139 | "tempfile",
140 | "thiserror 1.0.69",
141 | ]
142 |
143 | [[package]]
144 | name = "async-lock"
145 | version = "3.4.0"
146 | source = "registry+https://github.com/rust-lang/crates.io-index"
147 | checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18"
148 | dependencies = [
149 | "event-listener",
150 | "event-listener-strategy",
151 | "pin-project-lite",
152 | ]
153 |
154 | [[package]]
155 | name = "atom_syndication"
156 | version = "0.12.7"
157 | source = "registry+https://github.com/rust-lang/crates.io-index"
158 | checksum = "d2f68d23e2cb4fd958c705b91a6b4c80ceeaf27a9e11651272a8389d5ce1a4a3"
159 | dependencies = [
160 | "chrono",
161 | "derive_builder",
162 | "diligent-date-parser",
163 | "never",
164 | "quick-xml",
165 | ]
166 |
167 | [[package]]
168 | name = "atty"
169 | version = "0.2.14"
170 | source = "registry+https://github.com/rust-lang/crates.io-index"
171 | checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
172 | dependencies = [
173 | "hermit-abi 0.1.19",
174 | "libc",
175 | "winapi",
176 | ]
177 |
178 | [[package]]
179 | name = "autocfg"
180 | version = "1.4.0"
181 | source = "registry+https://github.com/rust-lang/crates.io-index"
182 | checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
183 |
184 | [[package]]
185 | name = "backtrace"
186 | version = "0.3.75"
187 | source = "registry+https://github.com/rust-lang/crates.io-index"
188 | checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002"
189 | dependencies = [
190 | "addr2line",
191 | "cfg-if",
192 | "libc",
193 | "miniz_oxide",
194 | "object",
195 | "rustc-demangle",
196 | "windows-targets 0.52.6",
197 | ]
198 |
199 | [[package]]
200 | name = "base64"
201 | version = "0.13.1"
202 | source = "registry+https://github.com/rust-lang/crates.io-index"
203 | checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
204 |
205 | [[package]]
206 | name = "base64"
207 | version = "0.21.7"
208 | source = "registry+https://github.com/rust-lang/crates.io-index"
209 | checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
210 |
211 | [[package]]
212 | name = "base64"
213 | version = "0.22.1"
214 | source = "registry+https://github.com/rust-lang/crates.io-index"
215 | checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
216 |
217 | [[package]]
218 | name = "bincode"
219 | version = "1.3.3"
220 | source = "registry+https://github.com/rust-lang/crates.io-index"
221 | checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
222 | dependencies = [
223 | "serde",
224 | ]
225 |
226 | [[package]]
227 | name = "bindgen"
228 | version = "0.70.1"
229 | source = "registry+https://github.com/rust-lang/crates.io-index"
230 | checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f"
231 | dependencies = [
232 | "bitflags 2.9.1",
233 | "cexpr",
234 | "clang-sys",
235 | "itertools 0.13.0",
236 | "proc-macro2",
237 | "quote",
238 | "regex",
239 | "rustc-hash",
240 | "shlex",
241 | "syn 2.0.101",
242 | ]
243 |
244 | [[package]]
245 | name = "bit-set"
246 | version = "0.5.3"
247 | source = "registry+https://github.com/rust-lang/crates.io-index"
248 | checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
249 | dependencies = [
250 | "bit-vec",
251 | ]
252 |
253 | [[package]]
254 | name = "bit-vec"
255 | version = "0.6.3"
256 | source = "registry+https://github.com/rust-lang/crates.io-index"
257 | checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
258 |
259 | [[package]]
260 | name = "bit_field"
261 | version = "0.10.2"
262 | source = "registry+https://github.com/rust-lang/crates.io-index"
263 | checksum = "dc827186963e592360843fb5ba4b973e145841266c1357f7180c43526f2e5b61"
264 |
265 | [[package]]
266 | name = "bitflags"
267 | version = "1.3.2"
268 | source = "registry+https://github.com/rust-lang/crates.io-index"
269 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
270 |
271 | [[package]]
272 | name = "bitflags"
273 | version = "2.9.1"
274 | source = "registry+https://github.com/rust-lang/crates.io-index"
275 | checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967"
276 | dependencies = [
277 | "serde",
278 | ]
279 |
280 | [[package]]
281 | name = "block"
282 | version = "0.1.6"
283 | source = "registry+https://github.com/rust-lang/crates.io-index"
284 | checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
285 |
286 | [[package]]
287 | name = "block-buffer"
288 | version = "0.10.4"
289 | source = "registry+https://github.com/rust-lang/crates.io-index"
290 | checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
291 | dependencies = [
292 | "generic-array",
293 | ]
294 |
295 | [[package]]
296 | name = "block-padding"
297 | version = "0.3.3"
298 | source = "registry+https://github.com/rust-lang/crates.io-index"
299 | checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93"
300 | dependencies = [
301 | "generic-array",
302 | ]
303 |
304 | [[package]]
305 | name = "bumpalo"
306 | version = "3.17.0"
307 | source = "registry+https://github.com/rust-lang/crates.io-index"
308 | checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf"
309 |
310 | [[package]]
311 | name = "bytecount"
312 | version = "0.6.8"
313 | source = "registry+https://github.com/rust-lang/crates.io-index"
314 | checksum = "5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce"
315 |
316 | [[package]]
317 | name = "bytemuck"
318 | version = "1.23.0"
319 | source = "registry+https://github.com/rust-lang/crates.io-index"
320 | checksum = "9134a6ef01ce4b366b50689c94f82c14bc72bc5d0386829828a2e2752ef7958c"
321 | dependencies = [
322 | "bytemuck_derive",
323 | ]
324 |
325 | [[package]]
326 | name = "bytemuck_derive"
327 | version = "1.9.3"
328 | source = "registry+https://github.com/rust-lang/crates.io-index"
329 | checksum = "7ecc273b49b3205b83d648f0690daa588925572cc5063745bfe547fe7ec8e1a1"
330 | dependencies = [
331 | "proc-macro2",
332 | "quote",
333 | "syn 2.0.101",
334 | ]
335 |
336 | [[package]]
337 | name = "byteorder"
338 | version = "1.5.0"
339 | source = "registry+https://github.com/rust-lang/crates.io-index"
340 | checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
341 |
342 | [[package]]
343 | name = "bytes"
344 | version = "1.10.1"
345 | source = "registry+https://github.com/rust-lang/crates.io-index"
346 | checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a"
347 |
348 | [[package]]
349 | name = "candle-core"
350 | version = "0.8.4"
351 | source = "registry+https://github.com/rust-lang/crates.io-index"
352 | checksum = "06ccf5ee3532e66868516d9b315f73aec9f34ea1a37ae98514534d458915dbf1"
353 | dependencies = [
354 | "accelerate-src",
355 | "byteorder",
356 | "candle-metal-kernels",
357 | "gemm 0.17.1",
358 | "half",
359 | "libc",
360 | "memmap2",
361 | "metal 0.27.0",
362 | "num-traits",
363 | "num_cpus",
364 | "rand 0.9.1",
365 | "rand_distr",
366 | "rayon",
367 | "safetensors",
368 | "thiserror 1.0.69",
369 | "ug",
370 | "ug-metal",
371 | "yoke 0.7.5",
372 | "zip 1.1.4",
373 | ]
374 |
375 | [[package]]
376 | name = "candle-metal-kernels"
377 | version = "0.8.4"
378 | source = "registry+https://github.com/rust-lang/crates.io-index"
379 | checksum = "52c85c21827c28db94e7112e364abe7e0cf8d2b022c014edf08642be6b94f21e"
380 | dependencies = [
381 | "metal 0.27.0",
382 | "once_cell",
383 | "thiserror 1.0.69",
384 | "tracing",
385 | ]
386 |
387 | [[package]]
388 | name = "candle-nn"
389 | version = "0.8.4"
390 | source = "registry+https://github.com/rust-lang/crates.io-index"
391 | checksum = "be1160c3b63f47d40d91110a3e1e1e566ae38edddbbf492a60b40ffc3bc1ff38"
392 | dependencies = [
393 | "accelerate-src",
394 | "candle-core",
395 | "candle-metal-kernels",
396 | "half",
397 | "metal 0.27.0",
398 | "num-traits",
399 | "rayon",
400 | "safetensors",
401 | "serde",
402 | "thiserror 1.0.69",
403 | ]
404 |
405 | [[package]]
406 | name = "candle-transformers"
407 | version = "0.8.4"
408 | source = "registry+https://github.com/rust-lang/crates.io-index"
409 | checksum = "94a0900d49f8605e0e7e6693a1f560e6271279de98e5fa369e7abf3aac245020"
410 | dependencies = [
411 | "accelerate-src",
412 | "byteorder",
413 | "candle-core",
414 | "candle-nn",
415 | "fancy-regex",
416 | "num-traits",
417 | "rand 0.9.1",
418 | "rayon",
419 | "serde",
420 | "serde_json",
421 | "serde_plain",
422 | "tracing",
423 | ]
424 |
425 | [[package]]
426 | name = "cassowary"
427 | version = "0.3.0"
428 | source = "registry+https://github.com/rust-lang/crates.io-index"
429 | checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53"
430 |
431 | [[package]]
432 | name = "castaway"
433 | version = "0.2.3"
434 | source = "registry+https://github.com/rust-lang/crates.io-index"
435 | checksum = "0abae9be0aaf9ea96a3b1b8b1b55c602ca751eba1b1500220cea4ecbafe7c0d5"
436 | dependencies = [
437 | "rustversion",
438 | ]
439 |
440 | [[package]]
441 | name = "cbc"
442 | version = "0.1.2"
443 | source = "registry+https://github.com/rust-lang/crates.io-index"
444 | checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6"
445 | dependencies = [
446 | "cipher",
447 | ]
448 |
449 | [[package]]
450 | name = "cc"
451 | version = "1.2.22"
452 | source = "registry+https://github.com/rust-lang/crates.io-index"
453 | checksum = "32db95edf998450acc7881c932f94cd9b05c87b4b2599e8bab064753da4acfd1"
454 | dependencies = [
455 | "jobserver",
456 | "libc",
457 | "shlex",
458 | ]
459 |
460 | [[package]]
461 | name = "cesu8"
462 | version = "1.1.0"
463 | source = "registry+https://github.com/rust-lang/crates.io-index"
464 | checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
465 |
466 | [[package]]
467 | name = "cexpr"
468 | version = "0.6.0"
469 | source = "registry+https://github.com/rust-lang/crates.io-index"
470 | checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
471 | dependencies = [
472 | "nom",
473 | ]
474 |
475 | [[package]]
476 | name = "cfg-if"
477 | version = "1.0.0"
478 | source = "registry+https://github.com/rust-lang/crates.io-index"
479 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
480 |
481 | [[package]]
482 | name = "chrono"
483 | version = "0.4.41"
484 | source = "registry+https://github.com/rust-lang/crates.io-index"
485 | checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d"
486 | dependencies = [
487 | "android-tzdata",
488 | "iana-time-zone",
489 | "js-sys",
490 | "num-traits",
491 | "serde",
492 | "wasm-bindgen",
493 | "windows-link",
494 | ]
495 |
496 | [[package]]
497 | name = "cipher"
498 | version = "0.4.4"
499 | source = "registry+https://github.com/rust-lang/crates.io-index"
500 | checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
501 | dependencies = [
502 | "crypto-common",
503 | "inout",
504 | ]
505 |
506 | [[package]]
507 | name = "clang-sys"
508 | version = "1.8.1"
509 | source = "registry+https://github.com/rust-lang/crates.io-index"
510 | checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4"
511 | dependencies = [
512 | "glob",
513 | "libc",
514 | "libloading",
515 | ]
516 |
517 | [[package]]
518 | name = "clap"
519 | version = "3.2.25"
520 | source = "registry+https://github.com/rust-lang/crates.io-index"
521 | checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123"
522 | dependencies = [
523 | "atty",
524 | "bitflags 1.3.2",
525 | "clap_lex",
526 | "indexmap 1.9.3",
527 | "once_cell",
528 | "strsim 0.10.0",
529 | "termcolor",
530 | "textwrap",
531 | ]
532 |
533 | [[package]]
534 | name = "clap_lex"
535 | version = "0.2.4"
536 | source = "registry+https://github.com/rust-lang/crates.io-index"
537 | checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5"
538 | dependencies = [
539 | "os_str_bytes",
540 | ]
541 |
542 | [[package]]
543 | name = "claxon"
544 | version = "0.4.3"
545 | source = "registry+https://github.com/rust-lang/crates.io-index"
546 | checksum = "4bfbf56724aa9eca8afa4fcfadeb479e722935bb2a0900c2d37e0cc477af0688"
547 |
548 | [[package]]
549 | name = "color-eyre"
550 | version = "0.6.4"
551 | source = "registry+https://github.com/rust-lang/crates.io-index"
552 | checksum = "e6e1761c0e16f8883bbbb8ce5990867f4f06bf11a0253da6495a04ce4b6ef0ec"
553 | dependencies = [
554 | "backtrace",
555 | "color-spantrace",
556 | "eyre",
557 | "indenter",
558 | "once_cell",
559 | "owo-colors",
560 | "tracing-error",
561 | ]
562 |
563 | [[package]]
564 | name = "color-spantrace"
565 | version = "0.2.2"
566 | source = "registry+https://github.com/rust-lang/crates.io-index"
567 | checksum = "2ddd8d5bfda1e11a501d0a7303f3bfed9aa632ebdb859be40d0fd70478ed70d5"
568 | dependencies = [
569 | "once_cell",
570 | "owo-colors",
571 | "tracing-core",
572 | "tracing-error",
573 | ]
574 |
575 | [[package]]
576 | name = "color_quant"
577 | version = "1.1.0"
578 | source = "registry+https://github.com/rust-lang/crates.io-index"
579 | checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
580 |
581 | [[package]]
582 | name = "combine"
583 | version = "4.6.7"
584 | source = "registry+https://github.com/rust-lang/crates.io-index"
585 | checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd"
586 | dependencies = [
587 | "bytes",
588 | "memchr",
589 | ]
590 |
591 | [[package]]
592 | name = "comfy-table"
593 | version = "7.1.4"
594 | source = "registry+https://github.com/rust-lang/crates.io-index"
595 | checksum = "4a65ebfec4fb190b6f90e944a817d60499ee0744e582530e2c9900a22e591d9a"
596 | dependencies = [
597 | "crossterm 0.28.1",
598 | "unicode-segmentation",
599 | "unicode-width 0.2.0",
600 | ]
601 |
602 | [[package]]
603 | name = "compact_str"
604 | version = "0.8.1"
605 | source = "registry+https://github.com/rust-lang/crates.io-index"
606 | checksum = "3b79c4069c6cad78e2e0cdfcbd26275770669fb39fd308a752dc110e83b9af32"
607 | dependencies = [
608 | "castaway",
609 | "cfg-if",
610 | "itoa",
611 | "rustversion",
612 | "ryu",
613 | "static_assertions",
614 | ]
615 |
616 | [[package]]
617 | name = "concurrent-queue"
618 | version = "2.5.0"
619 | source = "registry+https://github.com/rust-lang/crates.io-index"
620 | checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
621 | dependencies = [
622 | "crossbeam-utils",
623 | ]
624 |
625 | [[package]]
626 | name = "console"
627 | version = "0.15.11"
628 | source = "registry+https://github.com/rust-lang/crates.io-index"
629 | checksum = "054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8"
630 | dependencies = [
631 | "encode_unicode",
632 | "libc",
633 | "once_cell",
634 | "unicode-width 0.2.0",
635 | "windows-sys 0.59.0",
636 | ]
637 |
638 | [[package]]
639 | name = "convert_case"
640 | version = "0.6.0"
641 | source = "registry+https://github.com/rust-lang/crates.io-index"
642 | checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca"
643 | dependencies = [
644 | "unicode-segmentation",
645 | ]
646 |
647 | [[package]]
648 | name = "convert_case"
649 | version = "0.7.1"
650 | source = "registry+https://github.com/rust-lang/crates.io-index"
651 | checksum = "bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7"
652 | dependencies = [
653 | "unicode-segmentation",
654 | ]
655 |
656 | [[package]]
657 | name = "core-foundation"
658 | version = "0.9.4"
659 | source = "registry+https://github.com/rust-lang/crates.io-index"
660 | checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
661 | dependencies = [
662 | "core-foundation-sys",
663 | "libc",
664 | ]
665 |
666 | [[package]]
667 | name = "core-foundation-sys"
668 | version = "0.8.7"
669 | source = "registry+https://github.com/rust-lang/crates.io-index"
670 | checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
671 |
672 | [[package]]
673 | name = "core-graphics-types"
674 | version = "0.1.3"
675 | source = "registry+https://github.com/rust-lang/crates.io-index"
676 | checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf"
677 | dependencies = [
678 | "bitflags 1.3.2",
679 | "core-foundation",
680 | "libc",
681 | ]
682 |
683 | [[package]]
684 | name = "coreaudio-rs"
685 | version = "0.11.3"
686 | source = "registry+https://github.com/rust-lang/crates.io-index"
687 | checksum = "321077172d79c662f64f5071a03120748d5bb652f5231570141be24cfcd2bace"
688 | dependencies = [
689 | "bitflags 1.3.2",
690 | "core-foundation-sys",
691 | "coreaudio-sys",
692 | ]
693 |
694 | [[package]]
695 | name = "coreaudio-sys"
696 | version = "0.2.16"
697 | source = "registry+https://github.com/rust-lang/crates.io-index"
698 | checksum = "2ce857aa0b77d77287acc1ac3e37a05a8c95a2af3647d23b15f263bdaeb7562b"
699 | dependencies = [
700 | "bindgen",
701 | ]
702 |
703 | [[package]]
704 | name = "cpal"
705 | version = "0.15.3"
706 | source = "registry+https://github.com/rust-lang/crates.io-index"
707 | checksum = "873dab07c8f743075e57f524c583985fbaf745602acbe916a01539364369a779"
708 | dependencies = [
709 | "alsa",
710 | "core-foundation-sys",
711 | "coreaudio-rs",
712 | "dasp_sample",
713 | "jni",
714 | "js-sys",
715 | "libc",
716 | "mach2",
717 | "ndk",
718 | "ndk-context",
719 | "oboe",
720 | "wasm-bindgen",
721 | "wasm-bindgen-futures",
722 | "web-sys",
723 | "windows",
724 | ]
725 |
726 | [[package]]
727 | name = "cpufeatures"
728 | version = "0.2.17"
729 | source = "registry+https://github.com/rust-lang/crates.io-index"
730 | checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280"
731 | dependencies = [
732 | "libc",
733 | ]
734 |
735 | [[package]]
736 | name = "crc32fast"
737 | version = "1.4.2"
738 | source = "registry+https://github.com/rust-lang/crates.io-index"
739 | checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3"
740 | dependencies = [
741 | "cfg-if",
742 | ]
743 |
744 | [[package]]
745 | name = "crossbeam-channel"
746 | version = "0.5.15"
747 | source = "registry+https://github.com/rust-lang/crates.io-index"
748 | checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2"
749 | dependencies = [
750 | "crossbeam-utils",
751 | ]
752 |
753 | [[package]]
754 | name = "crossbeam-deque"
755 | version = "0.8.6"
756 | source = "registry+https://github.com/rust-lang/crates.io-index"
757 | checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51"
758 | dependencies = [
759 | "crossbeam-epoch",
760 | "crossbeam-utils",
761 | ]
762 |
763 | [[package]]
764 | name = "crossbeam-epoch"
765 | version = "0.9.18"
766 | source = "registry+https://github.com/rust-lang/crates.io-index"
767 | checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
768 | dependencies = [
769 | "crossbeam-utils",
770 | ]
771 |
772 | [[package]]
773 | name = "crossbeam-queue"
774 | version = "0.3.12"
775 | source = "registry+https://github.com/rust-lang/crates.io-index"
776 | checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115"
777 | dependencies = [
778 | "crossbeam-utils",
779 | ]
780 |
781 | [[package]]
782 | name = "crossbeam-utils"
783 | version = "0.8.21"
784 | source = "registry+https://github.com/rust-lang/crates.io-index"
785 | checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
786 |
787 | [[package]]
788 | name = "crossterm"
789 | version = "0.28.1"
790 | source = "registry+https://github.com/rust-lang/crates.io-index"
791 | checksum = "829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6"
792 | dependencies = [
793 | "bitflags 2.9.1",
794 | "crossterm_winapi",
795 | "mio",
796 | "parking_lot",
797 | "rustix 0.38.44",
798 | "signal-hook",
799 | "signal-hook-mio",
800 | "winapi",
801 | ]
802 |
803 | [[package]]
804 | name = "crossterm"
805 | version = "0.29.0"
806 | source = "registry+https://github.com/rust-lang/crates.io-index"
807 | checksum = "d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b"
808 | dependencies = [
809 | "bitflags 2.9.1",
810 | "crossterm_winapi",
811 | "derive_more 2.0.1",
812 | "document-features",
813 | "mio",
814 | "parking_lot",
815 | "rustix 1.0.7",
816 | "signal-hook",
817 | "signal-hook-mio",
818 | "winapi",
819 | ]
820 |
821 | [[package]]
822 | name = "crossterm_winapi"
823 | version = "0.9.1"
824 | source = "registry+https://github.com/rust-lang/crates.io-index"
825 | checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b"
826 | dependencies = [
827 | "winapi",
828 | ]
829 |
830 | [[package]]
831 | name = "crunchy"
832 | version = "0.2.3"
833 | source = "registry+https://github.com/rust-lang/crates.io-index"
834 | checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929"
835 |
836 | [[package]]
837 | name = "crypto-common"
838 | version = "0.1.6"
839 | source = "registry+https://github.com/rust-lang/crates.io-index"
840 | checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
841 | dependencies = [
842 | "generic-array",
843 | "typenum",
844 | ]
845 |
846 | [[package]]
847 | name = "cssparser"
848 | version = "0.31.2"
849 | source = "registry+https://github.com/rust-lang/crates.io-index"
850 | checksum = "5b3df4f93e5fbbe73ec01ec8d3f68bba73107993a5b1e7519273c32db9b0d5be"
851 | dependencies = [
852 | "cssparser-macros",
853 | "dtoa-short",
854 | "itoa",
855 | "phf 0.11.3",
856 | "smallvec",
857 | ]
858 |
859 | [[package]]
860 | name = "cssparser-macros"
861 | version = "0.6.1"
862 | source = "registry+https://github.com/rust-lang/crates.io-index"
863 | checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
864 | dependencies = [
865 | "quote",
866 | "syn 2.0.101",
867 | ]
868 |
869 | [[package]]
870 | name = "darling"
871 | version = "0.20.11"
872 | source = "registry+https://github.com/rust-lang/crates.io-index"
873 | checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee"
874 | dependencies = [
875 | "darling_core",
876 | "darling_macro",
877 | ]
878 |
879 | [[package]]
880 | name = "darling_core"
881 | version = "0.20.11"
882 | source = "registry+https://github.com/rust-lang/crates.io-index"
883 | checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e"
884 | dependencies = [
885 | "fnv",
886 | "ident_case",
887 | "proc-macro2",
888 | "quote",
889 | "strsim 0.11.1",
890 | "syn 2.0.101",
891 | ]
892 |
893 | [[package]]
894 | name = "darling_macro"
895 | version = "0.20.11"
896 | source = "registry+https://github.com/rust-lang/crates.io-index"
897 | checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead"
898 | dependencies = [
899 | "darling_core",
900 | "quote",
901 | "syn 2.0.101",
902 | ]
903 |
904 | [[package]]
905 | name = "dasp"
906 | version = "0.11.0"
907 | source = "registry+https://github.com/rust-lang/crates.io-index"
908 | checksum = "7381b67da416b639690ac77c73b86a7b5e64a29e31d1f75fb3b1102301ef355a"
909 | dependencies = [
910 | "dasp_envelope",
911 | "dasp_frame",
912 | "dasp_interpolate",
913 | "dasp_peak",
914 | "dasp_ring_buffer",
915 | "dasp_rms",
916 | "dasp_sample",
917 | "dasp_signal",
918 | "dasp_slice",
919 | "dasp_window",
920 | ]
921 |
922 | [[package]]
923 | name = "dasp_envelope"
924 | version = "0.11.0"
925 | source = "registry+https://github.com/rust-lang/crates.io-index"
926 | checksum = "8ec617ce7016f101a87fe85ed44180839744265fae73bb4aa43e7ece1b7668b6"
927 | dependencies = [
928 | "dasp_frame",
929 | "dasp_peak",
930 | "dasp_ring_buffer",
931 | "dasp_rms",
932 | "dasp_sample",
933 | ]
934 |
935 | [[package]]
936 | name = "dasp_frame"
937 | version = "0.11.0"
938 | source = "registry+https://github.com/rust-lang/crates.io-index"
939 | checksum = "b2a3937f5fe2135702897535c8d4a5553f8b116f76c1529088797f2eee7c5cd6"
940 | dependencies = [
941 | "dasp_sample",
942 | ]
943 |
944 | [[package]]
945 | name = "dasp_interpolate"
946 | version = "0.11.0"
947 | source = "registry+https://github.com/rust-lang/crates.io-index"
948 | checksum = "7fc975a6563bb7ca7ec0a6c784ead49983a21c24835b0bc96eea11ee407c7486"
949 | dependencies = [
950 | "dasp_frame",
951 | "dasp_ring_buffer",
952 | "dasp_sample",
953 | ]
954 |
955 | [[package]]
956 | name = "dasp_peak"
957 | version = "0.11.0"
958 | source = "registry+https://github.com/rust-lang/crates.io-index"
959 | checksum = "5cf88559d79c21f3d8523d91250c397f9a15b5fc72fbb3f87fdb0a37b79915bf"
960 | dependencies = [
961 | "dasp_frame",
962 | "dasp_sample",
963 | ]
964 |
965 | [[package]]
966 | name = "dasp_ring_buffer"
967 | version = "0.11.0"
968 | source = "registry+https://github.com/rust-lang/crates.io-index"
969 | checksum = "07d79e19b89618a543c4adec9c5a347fe378a19041699b3278e616e387511ea1"
970 |
971 | [[package]]
972 | name = "dasp_rms"
973 | version = "0.11.0"
974 | source = "registry+https://github.com/rust-lang/crates.io-index"
975 | checksum = "a6c5dcb30b7e5014486e2822537ea2beae50b19722ffe2ed7549ab03774575aa"
976 | dependencies = [
977 | "dasp_frame",
978 | "dasp_ring_buffer",
979 | "dasp_sample",
980 | ]
981 |
982 | [[package]]
983 | name = "dasp_sample"
984 | version = "0.11.0"
985 | source = "registry+https://github.com/rust-lang/crates.io-index"
986 | checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f"
987 |
988 | [[package]]
989 | name = "dasp_signal"
990 | version = "0.11.0"
991 | source = "registry+https://github.com/rust-lang/crates.io-index"
992 | checksum = "aa1ab7d01689c6ed4eae3d38fe1cea08cba761573fbd2d592528d55b421077e7"
993 | dependencies = [
994 | "dasp_envelope",
995 | "dasp_frame",
996 | "dasp_interpolate",
997 | "dasp_peak",
998 | "dasp_ring_buffer",
999 | "dasp_rms",
1000 | "dasp_sample",
1001 | "dasp_window",
1002 | ]
1003 |
1004 | [[package]]
1005 | name = "dasp_slice"
1006 | version = "0.11.0"
1007 | source = "registry+https://github.com/rust-lang/crates.io-index"
1008 | checksum = "4e1c7335d58e7baedafa516cb361360ff38d6f4d3f9d9d5ee2a2fc8e27178fa1"
1009 | dependencies = [
1010 | "dasp_frame",
1011 | "dasp_sample",
1012 | ]
1013 |
1014 | [[package]]
1015 | name = "dasp_window"
1016 | version = "0.11.1"
1017 | source = "registry+https://github.com/rust-lang/crates.io-index"
1018 | checksum = "99ded7b88821d2ce4e8b842c9f1c86ac911891ab89443cc1de750cae764c5076"
1019 | dependencies = [
1020 | "dasp_sample",
1021 | ]
1022 |
1023 | [[package]]
1024 | name = "deranged"
1025 | version = "0.4.0"
1026 | source = "registry+https://github.com/rust-lang/crates.io-index"
1027 | checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e"
1028 | dependencies = [
1029 | "powerfmt",
1030 | ]
1031 |
1032 | [[package]]
1033 | name = "derive_arbitrary"
1034 | version = "1.4.1"
1035 | source = "registry+https://github.com/rust-lang/crates.io-index"
1036 | checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800"
1037 | dependencies = [
1038 | "proc-macro2",
1039 | "quote",
1040 | "syn 2.0.101",
1041 | ]
1042 |
1043 | [[package]]
1044 | name = "derive_builder"
1045 | version = "0.20.2"
1046 | source = "registry+https://github.com/rust-lang/crates.io-index"
1047 | checksum = "507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947"
1048 | dependencies = [
1049 | "derive_builder_macro",
1050 | ]
1051 |
1052 | [[package]]
1053 | name = "derive_builder_core"
1054 | version = "0.20.2"
1055 | source = "registry+https://github.com/rust-lang/crates.io-index"
1056 | checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8"
1057 | dependencies = [
1058 | "darling",
1059 | "proc-macro2",
1060 | "quote",
1061 | "syn 2.0.101",
1062 | ]
1063 |
1064 | [[package]]
1065 | name = "derive_builder_macro"
1066 | version = "0.20.2"
1067 | source = "registry+https://github.com/rust-lang/crates.io-index"
1068 | checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c"
1069 | dependencies = [
1070 | "derive_builder_core",
1071 | "syn 2.0.101",
1072 | ]
1073 |
1074 | [[package]]
1075 | name = "derive_more"
1076 | version = "0.99.20"
1077 | source = "registry+https://github.com/rust-lang/crates.io-index"
1078 | checksum = "6edb4b64a43d977b8e99788fe3a04d483834fba1215a7e02caa415b626497f7f"
1079 | dependencies = [
1080 | "proc-macro2",
1081 | "quote",
1082 | "syn 2.0.101",
1083 | ]
1084 |
1085 | [[package]]
1086 | name = "derive_more"
1087 | version = "2.0.1"
1088 | source = "registry+https://github.com/rust-lang/crates.io-index"
1089 | checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678"
1090 | dependencies = [
1091 | "derive_more-impl",
1092 | ]
1093 |
1094 | [[package]]
1095 | name = "derive_more-impl"
1096 | version = "2.0.1"
1097 | source = "registry+https://github.com/rust-lang/crates.io-index"
1098 | checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3"
1099 | dependencies = [
1100 | "convert_case 0.7.1",
1101 | "proc-macro2",
1102 | "quote",
1103 | "syn 2.0.101",
1104 | ]
1105 |
1106 | [[package]]
1107 | name = "digest"
1108 | version = "0.10.7"
1109 | source = "registry+https://github.com/rust-lang/crates.io-index"
1110 | checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
1111 | dependencies = [
1112 | "block-buffer",
1113 | "crypto-common",
1114 | ]
1115 |
1116 | [[package]]
1117 | name = "diligent-date-parser"
1118 | version = "0.1.5"
1119 | source = "registry+https://github.com/rust-lang/crates.io-index"
1120 | checksum = "c8ede7d79366f419921e2e2f67889c12125726692a313bffb474bd5f37a581e9"
1121 | dependencies = [
1122 | "chrono",
1123 | ]
1124 |
1125 | [[package]]
1126 | name = "dirs"
1127 | version = "5.0.1"
1128 | source = "registry+https://github.com/rust-lang/crates.io-index"
1129 | checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225"
1130 | dependencies = [
1131 | "dirs-sys",
1132 | ]
1133 |
1134 | [[package]]
1135 | name = "dirs-sys"
1136 | version = "0.4.1"
1137 | source = "registry+https://github.com/rust-lang/crates.io-index"
1138 | checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c"
1139 | dependencies = [
1140 | "libc",
1141 | "option-ext",
1142 | "redox_users",
1143 | "windows-sys 0.48.0",
1144 | ]
1145 |
1146 | [[package]]
1147 | name = "displaydoc"
1148 | version = "0.2.5"
1149 | source = "registry+https://github.com/rust-lang/crates.io-index"
1150 | checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
1151 | dependencies = [
1152 | "proc-macro2",
1153 | "quote",
1154 | "syn 2.0.101",
1155 | ]
1156 |
1157 | [[package]]
1158 | name = "document-features"
1159 | version = "0.2.11"
1160 | source = "registry+https://github.com/rust-lang/crates.io-index"
1161 | checksum = "95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d"
1162 | dependencies = [
1163 | "litrs",
1164 | ]
1165 |
1166 | [[package]]
1167 | name = "docx-rs"
1168 | version = "0.4.17"
1169 | source = "registry+https://github.com/rust-lang/crates.io-index"
1170 | checksum = "e593b51d4fe95d69d70fd40da4b314b029736302c986c3c760826e842fd27dc3"
1171 | dependencies = [
1172 | "base64 0.13.1",
1173 | "image",
1174 | "serde",
1175 | "serde_json",
1176 | "thiserror 1.0.69",
1177 | "xml-rs",
1178 | "zip 0.6.6",
1179 | ]
1180 |
1181 | [[package]]
1182 | name = "doxygen-rs"
1183 | version = "0.4.2"
1184 | source = "registry+https://github.com/rust-lang/crates.io-index"
1185 | checksum = "415b6ec780d34dcf624666747194393603d0373b7141eef01d12ee58881507d9"
1186 | dependencies = [
1187 | "phf 0.11.3",
1188 | ]
1189 |
1190 | [[package]]
1191 | name = "dtoa"
1192 | version = "1.0.10"
1193 | source = "registry+https://github.com/rust-lang/crates.io-index"
1194 | checksum = "d6add3b8cff394282be81f3fc1a0605db594ed69890078ca6e2cab1c408bcf04"
1195 |
1196 | [[package]]
1197 | name = "dtoa-short"
1198 | version = "0.3.5"
1199 | source = "registry+https://github.com/rust-lang/crates.io-index"
1200 | checksum = "cd1511a7b6a56299bd043a9c167a6d2bfb37bf84a6dfceaba651168adfb43c87"
1201 | dependencies = [
1202 | "dtoa",
1203 | ]
1204 |
1205 | [[package]]
1206 | name = "dyn-stack"
1207 | version = "0.10.0"
1208 | source = "registry+https://github.com/rust-lang/crates.io-index"
1209 | checksum = "56e53799688f5632f364f8fb387488dd05db9fe45db7011be066fc20e7027f8b"
1210 | dependencies = [
1211 | "bytemuck",
1212 | "reborrow",
1213 | ]
1214 |
1215 | [[package]]
1216 | name = "dyn-stack"
1217 | version = "0.13.0"
1218 | source = "registry+https://github.com/rust-lang/crates.io-index"
1219 | checksum = "490bd48eb68fffcfed519b4edbfd82c69cbe741d175b84f0e0cbe8c57cbe0bdd"
1220 | dependencies = [
1221 | "bytemuck",
1222 | ]
1223 |
1224 | [[package]]
1225 | name = "ego-tree"
1226 | version = "0.6.3"
1227 | source = "registry+https://github.com/rust-lang/crates.io-index"
1228 | checksum = "12a0bb14ac04a9fcf170d0bbbef949b44cc492f4452bd20c095636956f653642"
1229 |
1230 | [[package]]
1231 | name = "either"
1232 | version = "1.15.0"
1233 | source = "registry+https://github.com/rust-lang/crates.io-index"
1234 | checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719"
1235 |
1236 | [[package]]
1237 | name = "encode_unicode"
1238 | version = "1.0.0"
1239 | source = "registry+https://github.com/rust-lang/crates.io-index"
1240 | checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0"
1241 |
1242 | [[package]]
1243 | name = "encoding_rs"
1244 | version = "0.8.35"
1245 | source = "registry+https://github.com/rust-lang/crates.io-index"
1246 | checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3"
1247 | dependencies = [
1248 | "cfg-if",
1249 | ]
1250 |
1251 | [[package]]
1252 | name = "enum-as-inner"
1253 | version = "0.6.1"
1254 | source = "registry+https://github.com/rust-lang/crates.io-index"
1255 | checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc"
1256 | dependencies = [
1257 | "heck",
1258 | "proc-macro2",
1259 | "quote",
1260 | "syn 2.0.101",
1261 | ]
1262 |
1263 | [[package]]
1264 | name = "equivalent"
1265 | version = "1.0.2"
1266 | source = "registry+https://github.com/rust-lang/crates.io-index"
1267 | checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
1268 |
1269 | [[package]]
1270 | name = "errno"
1271 | version = "0.3.12"
1272 | source = "registry+https://github.com/rust-lang/crates.io-index"
1273 | checksum = "cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18"
1274 | dependencies = [
1275 | "libc",
1276 | "windows-sys 0.59.0",
1277 | ]
1278 |
1279 | [[package]]
1280 | name = "esaxx-rs"
1281 | version = "0.1.10"
1282 | source = "registry+https://github.com/rust-lang/crates.io-index"
1283 | checksum = "d817e038c30374a4bcb22f94d0a8a0e216958d4c3dcde369b1439fec4bdda6e6"
1284 | dependencies = [
1285 | "cc",
1286 | ]
1287 |
1288 | [[package]]
1289 | name = "event-listener"
1290 | version = "5.4.0"
1291 | source = "registry+https://github.com/rust-lang/crates.io-index"
1292 | checksum = "3492acde4c3fc54c845eaab3eed8bd00c7a7d881f78bfc801e43a93dec1331ae"
1293 | dependencies = [
1294 | "concurrent-queue",
1295 | "parking",
1296 | "pin-project-lite",
1297 | ]
1298 |
1299 | [[package]]
1300 | name = "event-listener-strategy"
1301 | version = "0.5.4"
1302 | source = "registry+https://github.com/rust-lang/crates.io-index"
1303 | checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93"
1304 | dependencies = [
1305 | "event-listener",
1306 | "pin-project-lite",
1307 | ]
1308 |
1309 | [[package]]
1310 | name = "exr"
1311 | version = "1.73.0"
1312 | source = "registry+https://github.com/rust-lang/crates.io-index"
1313 | checksum = "f83197f59927b46c04a183a619b7c29df34e63e63c7869320862268c0ef687e0"
1314 | dependencies = [
1315 | "bit_field",
1316 | "half",
1317 | "lebe",
1318 | "miniz_oxide",
1319 | "rayon-core",
1320 | "smallvec",
1321 | "zune-inflate",
1322 | ]
1323 |
1324 | [[package]]
1325 | name = "eyre"
1326 | version = "0.6.12"
1327 | source = "registry+https://github.com/rust-lang/crates.io-index"
1328 | checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec"
1329 | dependencies = [
1330 | "indenter",
1331 | "once_cell",
1332 | ]
1333 |
1334 | [[package]]
1335 | name = "fancy-regex"
1336 | version = "0.13.0"
1337 | source = "registry+https://github.com/rust-lang/crates.io-index"
1338 | checksum = "531e46835a22af56d1e3b66f04844bed63158bc094a628bec1d321d9b4c44bf2"
1339 | dependencies = [
1340 | "bit-set",
1341 | "regex-automata",
1342 | "regex-syntax",
1343 | ]
1344 |
1345 | [[package]]
1346 | name = "fastrand"
1347 | version = "2.3.0"
1348 | source = "registry+https://github.com/rust-lang/crates.io-index"
1349 | checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
1350 |
1351 | [[package]]
1352 | name = "fdeflate"
1353 | version = "0.3.7"
1354 | source = "registry+https://github.com/rust-lang/crates.io-index"
1355 | checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c"
1356 | dependencies = [
1357 | "simd-adler32",
1358 | ]
1359 |
1360 | [[package]]
1361 | name = "filetime"
1362 | version = "0.2.25"
1363 | source = "registry+https://github.com/rust-lang/crates.io-index"
1364 | checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586"
1365 | dependencies = [
1366 | "cfg-if",
1367 | "libc",
1368 | "libredox",
1369 | "windows-sys 0.59.0",
1370 | ]
1371 |
1372 | [[package]]
1373 | name = "flate2"
1374 | version = "1.1.1"
1375 | source = "registry+https://github.com/rust-lang/crates.io-index"
1376 | checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece"
1377 | dependencies = [
1378 | "crc32fast",
1379 | "miniz_oxide",
1380 | ]
1381 |
1382 | [[package]]
1383 | name = "fnv"
1384 | version = "1.0.7"
1385 | source = "registry+https://github.com/rust-lang/crates.io-index"
1386 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
1387 |
1388 | [[package]]
1389 | name = "foldhash"
1390 | version = "0.1.5"
1391 | source = "registry+https://github.com/rust-lang/crates.io-index"
1392 | checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2"
1393 |
1394 | [[package]]
1395 | name = "foreign-types"
1396 | version = "0.3.2"
1397 | source = "registry+https://github.com/rust-lang/crates.io-index"
1398 | checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
1399 | dependencies = [
1400 | "foreign-types-shared 0.1.1",
1401 | ]
1402 |
1403 | [[package]]
1404 | name = "foreign-types"
1405 | version = "0.5.0"
1406 | source = "registry+https://github.com/rust-lang/crates.io-index"
1407 | checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
1408 | dependencies = [
1409 | "foreign-types-macros",
1410 | "foreign-types-shared 0.3.1",
1411 | ]
1412 |
1413 | [[package]]
1414 | name = "foreign-types-macros"
1415 | version = "0.2.3"
1416 | source = "registry+https://github.com/rust-lang/crates.io-index"
1417 | checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
1418 | dependencies = [
1419 | "proc-macro2",
1420 | "quote",
1421 | "syn 2.0.101",
1422 | ]
1423 |
1424 | [[package]]
1425 | name = "foreign-types-shared"
1426 | version = "0.1.1"
1427 | source = "registry+https://github.com/rust-lang/crates.io-index"
1428 | checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
1429 |
1430 | [[package]]
1431 | name = "foreign-types-shared"
1432 | version = "0.3.1"
1433 | source = "registry+https://github.com/rust-lang/crates.io-index"
1434 | checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
1435 |
1436 | [[package]]
1437 | name = "form_urlencoded"
1438 | version = "1.2.1"
1439 | source = "registry+https://github.com/rust-lang/crates.io-index"
1440 | checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
1441 | dependencies = [
1442 | "percent-encoding",
1443 | ]
1444 |
1445 | [[package]]
1446 | name = "futf"
1447 | version = "0.1.5"
1448 | source = "registry+https://github.com/rust-lang/crates.io-index"
1449 | checksum = "df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843"
1450 | dependencies = [
1451 | "mac",
1452 | "new_debug_unreachable",
1453 | ]
1454 |
1455 | [[package]]
1456 | name = "futures"
1457 | version = "0.3.31"
1458 | source = "registry+https://github.com/rust-lang/crates.io-index"
1459 | checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876"
1460 | dependencies = [
1461 | "futures-channel",
1462 | "futures-core",
1463 | "futures-executor",
1464 | "futures-io",
1465 | "futures-sink",
1466 | "futures-task",
1467 | "futures-util",
1468 | ]
1469 |
1470 | [[package]]
1471 | name = "futures-channel"
1472 | version = "0.3.31"
1473 | source = "registry+https://github.com/rust-lang/crates.io-index"
1474 | checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10"
1475 | dependencies = [
1476 | "futures-core",
1477 | "futures-sink",
1478 | ]
1479 |
1480 | [[package]]
1481 | name = "futures-core"
1482 | version = "0.3.31"
1483 | source = "registry+https://github.com/rust-lang/crates.io-index"
1484 | checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e"
1485 |
1486 | [[package]]
1487 | name = "futures-executor"
1488 | version = "0.3.31"
1489 | source = "registry+https://github.com/rust-lang/crates.io-index"
1490 | checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f"
1491 | dependencies = [
1492 | "futures-core",
1493 | "futures-task",
1494 | "futures-util",
1495 | ]
1496 |
1497 | [[package]]
1498 | name = "futures-io"
1499 | version = "0.3.31"
1500 | source = "registry+https://github.com/rust-lang/crates.io-index"
1501 | checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6"
1502 |
1503 | [[package]]
1504 | name = "futures-macro"
1505 | version = "0.3.31"
1506 | source = "registry+https://github.com/rust-lang/crates.io-index"
1507 | checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650"
1508 | dependencies = [
1509 | "proc-macro2",
1510 | "quote",
1511 | "syn 2.0.101",
1512 | ]
1513 |
1514 | [[package]]
1515 | name = "futures-sink"
1516 | version = "0.3.31"
1517 | source = "registry+https://github.com/rust-lang/crates.io-index"
1518 | checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7"
1519 |
1520 | [[package]]
1521 | name = "futures-task"
1522 | version = "0.3.31"
1523 | source = "registry+https://github.com/rust-lang/crates.io-index"
1524 | checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988"
1525 |
1526 | [[package]]
1527 | name = "futures-util"
1528 | version = "0.3.31"
1529 | source = "registry+https://github.com/rust-lang/crates.io-index"
1530 | checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81"
1531 | dependencies = [
1532 | "futures-channel",
1533 | "futures-core",
1534 | "futures-io",
1535 | "futures-macro",
1536 | "futures-sink",
1537 | "futures-task",
1538 | "memchr",
1539 | "pin-project-lite",
1540 | "pin-utils",
1541 | "slab",
1542 | ]
1543 |
1544 | [[package]]
1545 | name = "fxhash"
1546 | version = "0.2.1"
1547 | source = "registry+https://github.com/rust-lang/crates.io-index"
1548 | checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
1549 | dependencies = [
1550 | "byteorder",
1551 | ]
1552 |
1553 | [[package]]
1554 | name = "gemm"
1555 | version = "0.17.1"
1556 | source = "registry+https://github.com/rust-lang/crates.io-index"
1557 | checksum = "6ab24cc62135b40090e31a76a9b2766a501979f3070fa27f689c27ec04377d32"
1558 | dependencies = [
1559 | "dyn-stack 0.10.0",
1560 | "gemm-c32 0.17.1",
1561 | "gemm-c64 0.17.1",
1562 | "gemm-common 0.17.1",
1563 | "gemm-f16 0.17.1",
1564 | "gemm-f32 0.17.1",
1565 | "gemm-f64 0.17.1",
1566 | "num-complex",
1567 | "num-traits",
1568 | "paste",
1569 | "raw-cpuid 10.7.0",
1570 | "seq-macro",
1571 | ]
1572 |
1573 | [[package]]
1574 | name = "gemm"
1575 | version = "0.18.2"
1576 | source = "registry+https://github.com/rust-lang/crates.io-index"
1577 | checksum = "ab96b703d31950f1aeddded248bc95543c9efc7ac9c4a21fda8703a83ee35451"
1578 | dependencies = [
1579 | "dyn-stack 0.13.0",
1580 | "gemm-c32 0.18.2",
1581 | "gemm-c64 0.18.2",
1582 | "gemm-common 0.18.2",
1583 | "gemm-f16 0.18.2",
1584 | "gemm-f32 0.18.2",
1585 | "gemm-f64 0.18.2",
1586 | "num-complex",
1587 | "num-traits",
1588 | "paste",
1589 | "raw-cpuid 11.5.0",
1590 | "seq-macro",
1591 | ]
1592 |
1593 | [[package]]
1594 | name = "gemm-c32"
1595 | version = "0.17.1"
1596 | source = "registry+https://github.com/rust-lang/crates.io-index"
1597 | checksum = "b9c030d0b983d1e34a546b86e08f600c11696fde16199f971cd46c12e67512c0"
1598 | dependencies = [
1599 | "dyn-stack 0.10.0",
1600 | "gemm-common 0.17.1",
1601 | "num-complex",
1602 | "num-traits",
1603 | "paste",
1604 | "raw-cpuid 10.7.0",
1605 | "seq-macro",
1606 | ]
1607 |
1608 | [[package]]
1609 | name = "gemm-c32"
1610 | version = "0.18.2"
1611 | source = "registry+https://github.com/rust-lang/crates.io-index"
1612 | checksum = "f6db9fd9f40421d00eea9dd0770045a5603b8d684654816637732463f4073847"
1613 | dependencies = [
1614 | "dyn-stack 0.13.0",
1615 | "gemm-common 0.18.2",
1616 | "num-complex",
1617 | "num-traits",
1618 | "paste",
1619 | "raw-cpuid 11.5.0",
1620 | "seq-macro",
1621 | ]
1622 |
1623 | [[package]]
1624 | name = "gemm-c64"
1625 | version = "0.17.1"
1626 | source = "registry+https://github.com/rust-lang/crates.io-index"
1627 | checksum = "fbb5f2e79fefb9693d18e1066a557b4546cd334b226beadc68b11a8f9431852a"
1628 | dependencies = [
1629 | "dyn-stack 0.10.0",
1630 | "gemm-common 0.17.1",
1631 | "num-complex",
1632 | "num-traits",
1633 | "paste",
1634 | "raw-cpuid 10.7.0",
1635 | "seq-macro",
1636 | ]
1637 |
1638 | [[package]]
1639 | name = "gemm-c64"
1640 | version = "0.18.2"
1641 | source = "registry+https://github.com/rust-lang/crates.io-index"
1642 | checksum = "dfcad8a3d35a43758330b635d02edad980c1e143dc2f21e6fd25f9e4eada8edf"
1643 | dependencies = [
1644 | "dyn-stack 0.13.0",
1645 | "gemm-common 0.18.2",
1646 | "num-complex",
1647 | "num-traits",
1648 | "paste",
1649 | "raw-cpuid 11.5.0",
1650 | "seq-macro",
1651 | ]
1652 |
1653 | [[package]]
1654 | name = "gemm-common"
1655 | version = "0.17.1"
1656 | source = "registry+https://github.com/rust-lang/crates.io-index"
1657 | checksum = "a2e7ea062c987abcd8db95db917b4ffb4ecdfd0668471d8dc54734fdff2354e8"
1658 | dependencies = [
1659 | "bytemuck",
1660 | "dyn-stack 0.10.0",
1661 | "half",
1662 | "num-complex",
1663 | "num-traits",
1664 | "once_cell",
1665 | "paste",
1666 | "pulp 0.18.22",
1667 | "raw-cpuid 10.7.0",
1668 | "rayon",
1669 | "seq-macro",
1670 | "sysctl 0.5.5",
1671 | ]
1672 |
1673 | [[package]]
1674 | name = "gemm-common"
1675 | version = "0.18.2"
1676 | source = "registry+https://github.com/rust-lang/crates.io-index"
1677 | checksum = "a352d4a69cbe938b9e2a9cb7a3a63b7e72f9349174a2752a558a8a563510d0f3"
1678 | dependencies = [
1679 | "bytemuck",
1680 | "dyn-stack 0.13.0",
1681 | "half",
1682 | "libm",
1683 | "num-complex",
1684 | "num-traits",
1685 | "once_cell",
1686 | "paste",
1687 | "pulp 0.21.5",
1688 | "raw-cpuid 11.5.0",
1689 | "rayon",
1690 | "seq-macro",
1691 | "sysctl 0.6.0",
1692 | ]
1693 |
1694 | [[package]]
1695 | name = "gemm-f16"
1696 | version = "0.17.1"
1697 | source = "registry+https://github.com/rust-lang/crates.io-index"
1698 | checksum = "7ca4c06b9b11952071d317604acb332e924e817bd891bec8dfb494168c7cedd4"
1699 | dependencies = [
1700 | "dyn-stack 0.10.0",
1701 | "gemm-common 0.17.1",
1702 | "gemm-f32 0.17.1",
1703 | "half",
1704 | "num-complex",
1705 | "num-traits",
1706 | "paste",
1707 | "raw-cpuid 10.7.0",
1708 | "rayon",
1709 | "seq-macro",
1710 | ]
1711 |
1712 | [[package]]
1713 | name = "gemm-f16"
1714 | version = "0.18.2"
1715 | source = "registry+https://github.com/rust-lang/crates.io-index"
1716 | checksum = "cff95ae3259432f3c3410eaa919033cd03791d81cebd18018393dc147952e109"
1717 | dependencies = [
1718 | "dyn-stack 0.13.0",
1719 | "gemm-common 0.18.2",
1720 | "gemm-f32 0.18.2",
1721 | "half",
1722 | "num-complex",
1723 | "num-traits",
1724 | "paste",
1725 | "raw-cpuid 11.5.0",
1726 | "rayon",
1727 | "seq-macro",
1728 | ]
1729 |
1730 | [[package]]
1731 | name = "gemm-f32"
1732 | version = "0.17.1"
1733 | source = "registry+https://github.com/rust-lang/crates.io-index"
1734 | checksum = "e9a69f51aaefbd9cf12d18faf273d3e982d9d711f60775645ed5c8047b4ae113"
1735 | dependencies = [
1736 | "dyn-stack 0.10.0",
1737 | "gemm-common 0.17.1",
1738 | "num-complex",
1739 | "num-traits",
1740 | "paste",
1741 | "raw-cpuid 10.7.0",
1742 | "seq-macro",
1743 | ]
1744 |
1745 | [[package]]
1746 | name = "gemm-f32"
1747 | version = "0.18.2"
1748 | source = "registry+https://github.com/rust-lang/crates.io-index"
1749 | checksum = "bc8d3d4385393304f407392f754cd2dc4b315d05063f62cf09f47b58de276864"
1750 | dependencies = [
1751 | "dyn-stack 0.13.0",
1752 | "gemm-common 0.18.2",
1753 | "num-complex",
1754 | "num-traits",
1755 | "paste",
1756 | "raw-cpuid 11.5.0",
1757 | "seq-macro",
1758 | ]
1759 |
1760 | [[package]]
1761 | name = "gemm-f64"
1762 | version = "0.17.1"
1763 | source = "registry+https://github.com/rust-lang/crates.io-index"
1764 | checksum = "aa397a48544fadf0b81ec8741e5c0fba0043008113f71f2034def1935645d2b0"
1765 | dependencies = [
1766 | "dyn-stack 0.10.0",
1767 | "gemm-common 0.17.1",
1768 | "num-complex",
1769 | "num-traits",
1770 | "paste",
1771 | "raw-cpuid 10.7.0",
1772 | "seq-macro",
1773 | ]
1774 |
1775 | [[package]]
1776 | name = "gemm-f64"
1777 | version = "0.18.2"
1778 | source = "registry+https://github.com/rust-lang/crates.io-index"
1779 | checksum = "35b2a4f76ce4b8b16eadc11ccf2e083252d8237c1b589558a49b0183545015bd"
1780 | dependencies = [
1781 | "dyn-stack 0.13.0",
1782 | "gemm-common 0.18.2",
1783 | "num-complex",
1784 | "num-traits",
1785 | "paste",
1786 | "raw-cpuid 11.5.0",
1787 | "seq-macro",
1788 | ]
1789 |
1790 | [[package]]
1791 | name = "generic-array"
1792 | version = "0.14.7"
1793 | source = "registry+https://github.com/rust-lang/crates.io-index"
1794 | checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
1795 | dependencies = [
1796 | "typenum",
1797 | "version_check",
1798 | ]
1799 |
1800 | [[package]]
1801 | name = "getopts"
1802 | version = "0.2.21"
1803 | source = "registry+https://github.com/rust-lang/crates.io-index"
1804 | checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5"
1805 | dependencies = [
1806 | "unicode-width 0.1.14",
1807 | ]
1808 |
1809 | [[package]]
1810 | name = "getrandom"
1811 | version = "0.1.16"
1812 | source = "registry+https://github.com/rust-lang/crates.io-index"
1813 | checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
1814 | dependencies = [
1815 | "cfg-if",
1816 | "libc",
1817 | "wasi 0.9.0+wasi-snapshot-preview1",
1818 | ]
1819 |
1820 | [[package]]
1821 | name = "getrandom"
1822 | version = "0.2.16"
1823 | source = "registry+https://github.com/rust-lang/crates.io-index"
1824 | checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592"
1825 | dependencies = [
1826 | "cfg-if",
1827 | "libc",
1828 | "wasi 0.11.0+wasi-snapshot-preview1",
1829 | ]
1830 |
1831 | [[package]]
1832 | name = "getrandom"
1833 | version = "0.3.3"
1834 | source = "registry+https://github.com/rust-lang/crates.io-index"
1835 | checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4"
1836 | dependencies = [
1837 | "cfg-if",
1838 | "libc",
1839 | "r-efi",
1840 | "wasi 0.14.2+wasi-0.2.4",
1841 | ]
1842 |
1843 | [[package]]
1844 | name = "gif"
1845 | version = "0.13.1"
1846 | source = "registry+https://github.com/rust-lang/crates.io-index"
1847 | checksum = "3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2"
1848 | dependencies = [
1849 | "color_quant",
1850 | "weezl",
1851 | ]
1852 |
1853 | [[package]]
1854 | name = "gimli"
1855 | version = "0.31.1"
1856 | source = "registry+https://github.com/rust-lang/crates.io-index"
1857 | checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f"
1858 |
1859 | [[package]]
1860 | name = "glob"
1861 | version = "0.3.2"
1862 | source = "registry+https://github.com/rust-lang/crates.io-index"
1863 | checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2"
1864 |
1865 | [[package]]
1866 | name = "h2"
1867 | version = "0.3.26"
1868 | source = "registry+https://github.com/rust-lang/crates.io-index"
1869 | checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
1870 | dependencies = [
1871 | "bytes",
1872 | "fnv",
1873 | "futures-core",
1874 | "futures-sink",
1875 | "futures-util",
1876 | "http",
1877 | "indexmap 2.9.0",
1878 | "slab",
1879 | "tokio",
1880 | "tokio-util",
1881 | "tracing",
1882 | ]
1883 |
1884 | [[package]]
1885 | name = "half"
1886 | version = "2.6.0"
1887 | source = "registry+https://github.com/rust-lang/crates.io-index"
1888 | checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9"
1889 | dependencies = [
1890 | "bytemuck",
1891 | "cfg-if",
1892 | "crunchy",
1893 | "num-traits",
1894 | "rand 0.9.1",
1895 | "rand_distr",
1896 | ]
1897 |
1898 | [[package]]
1899 | name = "hashbrown"
1900 | version = "0.12.3"
1901 | source = "registry+https://github.com/rust-lang/crates.io-index"
1902 | checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
1903 |
1904 | [[package]]
1905 | name = "hashbrown"
1906 | version = "0.14.5"
1907 | source = "registry+https://github.com/rust-lang/crates.io-index"
1908 | checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
1909 | dependencies = [
1910 | "ahash",
1911 | "allocator-api2",
1912 | ]
1913 |
1914 | [[package]]
1915 | name = "hashbrown"
1916 | version = "0.15.3"
1917 | source = "registry+https://github.com/rust-lang/crates.io-index"
1918 | checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3"
1919 | dependencies = [
1920 | "allocator-api2",
1921 | "equivalent",
1922 | "foldhash",
1923 | ]
1924 |
1925 | [[package]]
1926 | name = "hdrhistogram"
1927 | version = "7.5.4"
1928 | source = "registry+https://github.com/rust-lang/crates.io-index"
1929 | checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d"
1930 | dependencies = [
1931 | "base64 0.21.7",
1932 | "byteorder",
1933 | "crossbeam-channel",
1934 | "flate2",
1935 | "nom",
1936 | "num-traits",
1937 | ]
1938 |
1939 | [[package]]
1940 | name = "heck"
1941 | version = "0.5.0"
1942 | source = "registry+https://github.com/rust-lang/crates.io-index"
1943 | checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
1944 |
1945 | [[package]]
1946 | name = "heed"
1947 | version = "0.20.5"
1948 | source = "registry+https://github.com/rust-lang/crates.io-index"
1949 | checksum = "7d4f449bab7320c56003d37732a917e18798e2f1709d80263face2b4f9436ddb"
1950 | dependencies = [
1951 | "bitflags 2.9.1",
1952 | "byteorder",
1953 | "heed-traits",
1954 | "heed-types",
1955 | "libc",
1956 | "lmdb-master-sys",
1957 | "once_cell",
1958 | "page_size",
1959 | "serde",
1960 | "synchronoise",
1961 | "url",
1962 | ]
1963 |
1964 | [[package]]
1965 | name = "heed-traits"
1966 | version = "0.20.0"
1967 | source = "registry+https://github.com/rust-lang/crates.io-index"
1968 | checksum = "eb3130048d404c57ce5a1ac61a903696e8fcde7e8c2991e9fcfc1f27c3ef74ff"
1969 |
1970 | [[package]]
1971 | name = "heed-types"
1972 | version = "0.20.1"
1973 | source = "registry+https://github.com/rust-lang/crates.io-index"
1974 | checksum = "9d3f528b053a6d700b2734eabcd0fd49cb8230647aa72958467527b0b7917114"
1975 | dependencies = [
1976 | "bincode",
1977 | "byteorder",
1978 | "heed-traits",
1979 | "serde",
1980 | "serde_json",
1981 | ]
1982 |
1983 | [[package]]
1984 | name = "hermit-abi"
1985 | version = "0.1.19"
1986 | source = "registry+https://github.com/rust-lang/crates.io-index"
1987 | checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
1988 | dependencies = [
1989 | "libc",
1990 | ]
1991 |
1992 | [[package]]
1993 | name = "hermit-abi"
1994 | version = "0.3.9"
1995 | source = "registry+https://github.com/rust-lang/crates.io-index"
1996 | checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
1997 |
1998 | [[package]]
1999 | name = "hf-hub"
2000 | version = "0.3.2"
2001 | source = "registry+https://github.com/rust-lang/crates.io-index"
2002 | checksum = "2b780635574b3d92f036890d8373433d6f9fc7abb320ee42a5c25897fc8ed732"
2003 | dependencies = [
2004 | "dirs",
2005 | "indicatif",
2006 | "log",
2007 | "native-tls",
2008 | "rand 0.8.5",
2009 | "serde",
2010 | "serde_json",
2011 | "thiserror 1.0.69",
2012 | "ureq",
2013 | ]
2014 |
2015 | [[package]]
2016 | name = "hound"
2017 | version = "3.5.1"
2018 | source = "registry+https://github.com/rust-lang/crates.io-index"
2019 | checksum = "62adaabb884c94955b19907d60019f4e145d091c75345379e70d1ee696f7854f"
2020 |
2021 | [[package]]
2022 | name = "html5ever"
2023 | version = "0.25.2"
2024 | source = "registry+https://github.com/rust-lang/crates.io-index"
2025 | checksum = "e5c13fb08e5d4dfc151ee5e88bae63f7773d61852f3bdc73c9f4b9e1bde03148"
2026 | dependencies = [
2027 | "log",
2028 | "mac",
2029 | "markup5ever 0.10.1",
2030 | "proc-macro2",
2031 | "quote",
2032 | "syn 1.0.109",
2033 | ]
2034 |
2035 | [[package]]
2036 | name = "html5ever"
2037 | version = "0.27.0"
2038 | source = "registry+https://github.com/rust-lang/crates.io-index"
2039 | checksum = "c13771afe0e6e846f1e67d038d4cb29998a6779f93c809212e4e9c32efd244d4"
2040 | dependencies = [
2041 | "log",
2042 | "mac",
2043 | "markup5ever 0.12.1",
2044 | "proc-macro2",
2045 | "quote",
2046 | "syn 2.0.101",
2047 | ]
2048 |
2049 | [[package]]
2050 | name = "http"
2051 | version = "0.2.12"
2052 | source = "registry+https://github.com/rust-lang/crates.io-index"
2053 | checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
2054 | dependencies = [
2055 | "bytes",
2056 | "fnv",
2057 | "itoa",
2058 | ]
2059 |
2060 | [[package]]
2061 | name = "http-body"
2062 | version = "0.4.6"
2063 | source = "registry+https://github.com/rust-lang/crates.io-index"
2064 | checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
2065 | dependencies = [
2066 | "bytes",
2067 | "http",
2068 | "pin-project-lite",
2069 | ]
2070 |
2071 | [[package]]
2072 | name = "httparse"
2073 | version = "1.10.1"
2074 | source = "registry+https://github.com/rust-lang/crates.io-index"
2075 | checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87"
2076 |
2077 | [[package]]
2078 | name = "httpdate"
2079 | version = "1.0.3"
2080 | source = "registry+https://github.com/rust-lang/crates.io-index"
2081 | checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
2082 |
2083 | [[package]]
2084 | name = "hyper"
2085 | version = "0.14.32"
2086 | source = "registry+https://github.com/rust-lang/crates.io-index"
2087 | checksum = "41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7"
2088 | dependencies = [
2089 | "bytes",
2090 | "futures-channel",
2091 | "futures-core",
2092 | "futures-util",
2093 | "h2",
2094 | "http",
2095 | "http-body",
2096 | "httparse",
2097 | "httpdate",
2098 | "itoa",
2099 | "pin-project-lite",
2100 | "socket2",
2101 | "tokio",
2102 | "tower-service",
2103 | "tracing",
2104 | "want",
2105 | ]
2106 |
2107 | [[package]]
2108 | name = "hyper-tls"
2109 | version = "0.5.0"
2110 | source = "registry+https://github.com/rust-lang/crates.io-index"
2111 | checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
2112 | dependencies = [
2113 | "bytes",
2114 | "hyper",
2115 | "native-tls",
2116 | "tokio",
2117 | "tokio-native-tls",
2118 | ]
2119 |
2120 | [[package]]
2121 | name = "iana-time-zone"
2122 | version = "0.1.63"
2123 | source = "registry+https://github.com/rust-lang/crates.io-index"
2124 | checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8"
2125 | dependencies = [
2126 | "android_system_properties",
2127 | "core-foundation-sys",
2128 | "iana-time-zone-haiku",
2129 | "js-sys",
2130 | "log",
2131 | "wasm-bindgen",
2132 | "windows-core 0.61.1",
2133 | ]
2134 |
2135 | [[package]]
2136 | name = "iana-time-zone-haiku"
2137 | version = "0.1.2"
2138 | source = "registry+https://github.com/rust-lang/crates.io-index"
2139 | checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
2140 | dependencies = [
2141 | "cc",
2142 | ]
2143 |
2144 | [[package]]
2145 | name = "icu_collections"
2146 | version = "2.0.0"
2147 | source = "registry+https://github.com/rust-lang/crates.io-index"
2148 | checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47"
2149 | dependencies = [
2150 | "displaydoc",
2151 | "potential_utf",
2152 | "yoke 0.8.0",
2153 | "zerofrom",
2154 | "zerovec",
2155 | ]
2156 |
2157 | [[package]]
2158 | name = "icu_locale_core"
2159 | version = "2.0.0"
2160 | source = "registry+https://github.com/rust-lang/crates.io-index"
2161 | checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a"
2162 | dependencies = [
2163 | "displaydoc",
2164 | "litemap",
2165 | "tinystr",
2166 | "writeable",
2167 | "zerovec",
2168 | ]
2169 |
2170 | [[package]]
2171 | name = "icu_normalizer"
2172 | version = "2.0.0"
2173 | source = "registry+https://github.com/rust-lang/crates.io-index"
2174 | checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979"
2175 | dependencies = [
2176 | "displaydoc",
2177 | "icu_collections",
2178 | "icu_normalizer_data",
2179 | "icu_properties",
2180 | "icu_provider",
2181 | "smallvec",
2182 | "zerovec",
2183 | ]
2184 |
2185 | [[package]]
2186 | name = "icu_normalizer_data"
2187 | version = "2.0.0"
2188 | source = "registry+https://github.com/rust-lang/crates.io-index"
2189 | checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3"
2190 |
2191 | [[package]]
2192 | name = "icu_properties"
2193 | version = "2.0.0"
2194 | source = "registry+https://github.com/rust-lang/crates.io-index"
2195 | checksum = "2549ca8c7241c82f59c80ba2a6f415d931c5b58d24fb8412caa1a1f02c49139a"
2196 | dependencies = [
2197 | "displaydoc",
2198 | "icu_collections",
2199 | "icu_locale_core",
2200 | "icu_properties_data",
2201 | "icu_provider",
2202 | "potential_utf",
2203 | "zerotrie",
2204 | "zerovec",
2205 | ]
2206 |
2207 | [[package]]
2208 | name = "icu_properties_data"
2209 | version = "2.0.0"
2210 | source = "registry+https://github.com/rust-lang/crates.io-index"
2211 | checksum = "8197e866e47b68f8f7d95249e172903bec06004b18b2937f1095d40a0c57de04"
2212 |
2213 | [[package]]
2214 | name = "icu_provider"
2215 | version = "2.0.0"
2216 | source = "registry+https://github.com/rust-lang/crates.io-index"
2217 | checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af"
2218 | dependencies = [
2219 | "displaydoc",
2220 | "icu_locale_core",
2221 | "stable_deref_trait",
2222 | "tinystr",
2223 | "writeable",
2224 | "yoke 0.8.0",
2225 | "zerofrom",
2226 | "zerotrie",
2227 | "zerovec",
2228 | ]
2229 |
2230 | [[package]]
2231 | name = "ident_case"
2232 | version = "1.0.1"
2233 | source = "registry+https://github.com/rust-lang/crates.io-index"
2234 | checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
2235 |
2236 | [[package]]
2237 | name = "idna"
2238 | version = "1.0.3"
2239 | source = "registry+https://github.com/rust-lang/crates.io-index"
2240 | checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e"
2241 | dependencies = [
2242 | "idna_adapter",
2243 | "smallvec",
2244 | "utf8_iter",
2245 | ]
2246 |
2247 | [[package]]
2248 | name = "idna_adapter"
2249 | version = "1.2.1"
2250 | source = "registry+https://github.com/rust-lang/crates.io-index"
2251 | checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344"
2252 | dependencies = [
2253 | "icu_normalizer",
2254 | "icu_properties",
2255 | ]
2256 |
2257 | [[package]]
2258 | name = "image"
2259 | version = "0.24.9"
2260 | source = "registry+https://github.com/rust-lang/crates.io-index"
2261 | checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d"
2262 | dependencies = [
2263 | "bytemuck",
2264 | "byteorder",
2265 | "color_quant",
2266 | "exr",
2267 | "gif",
2268 | "jpeg-decoder",
2269 | "num-traits",
2270 | "png",
2271 | "qoi",
2272 | "tiff",
2273 | ]
2274 |
2275 | [[package]]
2276 | name = "indenter"
2277 | version = "0.3.3"
2278 | source = "registry+https://github.com/rust-lang/crates.io-index"
2279 | checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
2280 |
2281 | [[package]]
2282 | name = "indexmap"
2283 | version = "1.9.3"
2284 | source = "registry+https://github.com/rust-lang/crates.io-index"
2285 | checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
2286 | dependencies = [
2287 | "autocfg",
2288 | "hashbrown 0.12.3",
2289 | ]
2290 |
2291 | [[package]]
2292 | name = "indexmap"
2293 | version = "2.9.0"
2294 | source = "registry+https://github.com/rust-lang/crates.io-index"
2295 | checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e"
2296 | dependencies = [
2297 | "equivalent",
2298 | "hashbrown 0.15.3",
2299 | ]
2300 |
2301 | [[package]]
2302 | name = "indicatif"
2303 | version = "0.17.11"
2304 | source = "registry+https://github.com/rust-lang/crates.io-index"
2305 | checksum = "183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235"
2306 | dependencies = [
2307 | "console",
2308 | "number_prefix",
2309 | "portable-atomic",
2310 | "unicode-width 0.2.0",
2311 | "web-time",
2312 | ]
2313 |
2314 | [[package]]
2315 | name = "indoc"
2316 | version = "2.0.6"
2317 | source = "registry+https://github.com/rust-lang/crates.io-index"
2318 | checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd"
2319 |
2320 | [[package]]
2321 | name = "inout"
2322 | version = "0.1.4"
2323 | source = "registry+https://github.com/rust-lang/crates.io-index"
2324 | checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01"
2325 | dependencies = [
2326 | "block-padding",
2327 | "generic-array",
2328 | ]
2329 |
2330 | [[package]]
2331 | name = "instability"
2332 | version = "0.3.7"
2333 | source = "registry+https://github.com/rust-lang/crates.io-index"
2334 | checksum = "0bf9fed6d91cfb734e7476a06bde8300a1b94e217e1b523b6f0cd1a01998c71d"
2335 | dependencies = [
2336 | "darling",
2337 | "indoc",
2338 | "proc-macro2",
2339 | "quote",
2340 | "syn 2.0.101",
2341 | ]
2342 |
2343 | [[package]]
2344 | name = "ipnet"
2345 | version = "2.11.0"
2346 | source = "registry+https://github.com/rust-lang/crates.io-index"
2347 | checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130"
2348 |
2349 | [[package]]
2350 | name = "itertools"
2351 | version = "0.11.0"
2352 | source = "registry+https://github.com/rust-lang/crates.io-index"
2353 | checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
2354 | dependencies = [
2355 | "either",
2356 | ]
2357 |
2358 | [[package]]
2359 | name = "itertools"
2360 | version = "0.13.0"
2361 | source = "registry+https://github.com/rust-lang/crates.io-index"
2362 | checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186"
2363 | dependencies = [
2364 | "either",
2365 | ]
2366 |
2367 | [[package]]
2368 | name = "itoa"
2369 | version = "1.0.15"
2370 | source = "registry+https://github.com/rust-lang/crates.io-index"
2371 | checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c"
2372 |
2373 | [[package]]
2374 | name = "jni"
2375 | version = "0.21.1"
2376 | source = "registry+https://github.com/rust-lang/crates.io-index"
2377 | checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97"
2378 | dependencies = [
2379 | "cesu8",
2380 | "cfg-if",
2381 | "combine",
2382 | "jni-sys",
2383 | "log",
2384 | "thiserror 1.0.69",
2385 | "walkdir",
2386 | "windows-sys 0.45.0",
2387 | ]
2388 |
2389 | [[package]]
2390 | name = "jni-sys"
2391 | version = "0.3.0"
2392 | source = "registry+https://github.com/rust-lang/crates.io-index"
2393 | checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
2394 |
2395 | [[package]]
2396 | name = "jobserver"
2397 | version = "0.1.33"
2398 | source = "registry+https://github.com/rust-lang/crates.io-index"
2399 | checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a"
2400 | dependencies = [
2401 | "getrandom 0.3.3",
2402 | "libc",
2403 | ]
2404 |
2405 | [[package]]
2406 | name = "jpeg-decoder"
2407 | version = "0.3.1"
2408 | source = "registry+https://github.com/rust-lang/crates.io-index"
2409 | checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0"
2410 | dependencies = [
2411 | "rayon",
2412 | ]
2413 |
2414 | [[package]]
2415 | name = "js-sys"
2416 | version = "0.3.77"
2417 | source = "registry+https://github.com/rust-lang/crates.io-index"
2418 | checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f"
2419 | dependencies = [
2420 | "once_cell",
2421 | "wasm-bindgen",
2422 | ]
2423 |
2424 | [[package]]
2425 | name = "kalosm"
2426 | version = "0.4.0"
2427 | source = "registry+https://github.com/rust-lang/crates.io-index"
2428 | checksum = "6a7e688c99f19a48d5697f0d374327d94d9ae672813abcd86302c5a3de132a2e"
2429 | dependencies = [
2430 | "comfy-table",
2431 | "futures-util",
2432 | "hdrhistogram",
2433 | "kalosm-common",
2434 | "kalosm-language",
2435 | "kalosm-model-types",
2436 | "kalosm-sound",
2437 | "kalosm-streams",
2438 | "kalosm-vision",
2439 | "serde",
2440 | ]
2441 |
2442 | [[package]]
2443 | name = "kalosm-common"
2444 | version = "0.4.0"
2445 | source = "registry+https://github.com/rust-lang/crates.io-index"
2446 | checksum = "de2ac5de83e059366d74ab199a7b25a181c05109e4752186569ba1cf1ea8e68d"
2447 | dependencies = [
2448 | "candle-core",
2449 | "candle-nn",
2450 | "dirs",
2451 | "hf-hub",
2452 | "httpdate",
2453 | "kalosm-model-types",
2454 | "metal 0.29.0",
2455 | "reqwest",
2456 | "thiserror 2.0.12",
2457 | "tokio",
2458 | "tracing",
2459 | ]
2460 |
2461 | [[package]]
2462 | name = "kalosm-language"
2463 | version = "0.4.1"
2464 | source = "registry+https://github.com/rust-lang/crates.io-index"
2465 | checksum = "50d21c030794701dc507542044f7ceb57b9db6a797312c7f0118b7c93555cecb"
2466 | dependencies = [
2467 | "anyhow",
2468 | "arroy",
2469 | "chrono",
2470 | "convert_case 0.6.0",
2471 | "docx-rs",
2472 | "ego-tree",
2473 | "futures-util",
2474 | "half",
2475 | "heed",
2476 | "kalosm-language-model",
2477 | "kalosm-llama",
2478 | "kalosm-sample",
2479 | "kalosm-streams",
2480 | "lopdf",
2481 | "pulldown-cmark",
2482 | "rand 0.8.5",
2483 | "rbert",
2484 | "readability",
2485 | "reqwest",
2486 | "roaring",
2487 | "rss",
2488 | "scraper",
2489 | "serde",
2490 | "serde_json",
2491 | "slab",
2492 | "srx",
2493 | "tempfile",
2494 | "thiserror 2.0.12",
2495 | "tokio",
2496 | "tokio-util",
2497 | "tracing",
2498 | "url",
2499 | "whatlang",
2500 | ]
2501 |
2502 | [[package]]
2503 | name = "kalosm-language-model"
2504 | version = "0.4.1"
2505 | source = "registry+https://github.com/rust-lang/crates.io-index"
2506 | checksum = "5f63bb2f31b947cb4b2fe285d91e51de1e2d41e0312c4fb0dae7da94374756fb"
2507 | dependencies = [
2508 | "anyhow",
2509 | "async-lock",
2510 | "futures-channel",
2511 | "futures-util",
2512 | "kalosm-model-types",
2513 | "kalosm-sample",
2514 | "llm-samplers",
2515 | "lru",
2516 | "rand 0.8.5",
2517 | "serde",
2518 | "thiserror 2.0.12",
2519 | "tracing",
2520 | ]
2521 |
2522 | [[package]]
2523 | name = "kalosm-llama"
2524 | version = "0.4.1"
2525 | source = "registry+https://github.com/rust-lang/crates.io-index"
2526 | checksum = "9e7dcfe602184b5455241eceaacf152060f9795e38fdc3c6dd3a4eeed09a3c3b"
2527 | dependencies = [
2528 | "candle-core",
2529 | "candle-nn",
2530 | "candle-transformers",
2531 | "half",
2532 | "kalosm-common",
2533 | "kalosm-language-model",
2534 | "kalosm-model-types",
2535 | "kalosm-sample",
2536 | "llm-samplers",
2537 | "minijinja",
2538 | "minijinja-contrib",
2539 | "rand 0.8.5",
2540 | "rayon",
2541 | "safetensors",
2542 | "serde",
2543 | "serde_json",
2544 | "thiserror 2.0.12",
2545 | "tokenizers",
2546 | "tokio",
2547 | "tracing",
2548 | ]
2549 |
2550 | [[package]]
2551 | name = "kalosm-model-types"
2552 | version = "0.4.0"
2553 | source = "registry+https://github.com/rust-lang/crates.io-index"
2554 | checksum = "2b6ea4f7cc50877612c89f3c0f7b5286d08724562234ce2329f6c53415436e74"
2555 | dependencies = [
2556 | "indicatif",
2557 | ]
2558 |
2559 | [[package]]
2560 | name = "kalosm-ocr"
2561 | version = "0.4.0"
2562 | source = "registry+https://github.com/rust-lang/crates.io-index"
2563 | checksum = "cf35f9dae90143d553b613f58b6ec154db0ac33d893b602533c16933ef7f3eee"
2564 | dependencies = [
2565 | "candle-core",
2566 | "candle-nn",
2567 | "candle-transformers",
2568 | "hf-hub",
2569 | "image",
2570 | "kalosm-common",
2571 | "kalosm-model-types",
2572 | "serde",
2573 | "serde_json",
2574 | "thiserror 2.0.12",
2575 | "tokenizers",
2576 | "tracing",
2577 | ]
2578 |
2579 | [[package]]
2580 | name = "kalosm-parse-macro"
2581 | version = "0.4.1"
2582 | source = "registry+https://github.com/rust-lang/crates.io-index"
2583 | checksum = "fe55d47e86fb552391f1f65a7977260559a892b0f5d5cc0325153fc4ba488ec3"
2584 | dependencies = [
2585 | "proc-macro2",
2586 | "quote",
2587 | "syn 2.0.101",
2588 | ]
2589 |
2590 | [[package]]
2591 | name = "kalosm-sample"
2592 | version = "0.4.1"
2593 | source = "registry+https://github.com/rust-lang/crates.io-index"
2594 | checksum = "b4a80f6c025f7911cd9cff799f80b591b1115497c21edb797db043302751bb3e"
2595 | dependencies = [
2596 | "kalosm-parse-macro",
2597 | "regex-automata",
2598 | ]
2599 |
2600 | [[package]]
2601 | name = "kalosm-sound"
2602 | version = "0.4.0"
2603 | source = "registry+https://github.com/rust-lang/crates.io-index"
2604 | checksum = "092ff07207d3efc1575e7e46d806e78394bb61f98edb0c237b410c6beb4ef7da"
2605 | dependencies = [
2606 | "byteorder",
2607 | "candle-core",
2608 | "candle-nn",
2609 | "candle-transformers",
2610 | "cpal",
2611 | "dasp",
2612 | "futures-channel",
2613 | "futures-core",
2614 | "futures-util",
2615 | "hound",
2616 | "nnnoiseless",
2617 | "ort",
2618 | "ort-sys",
2619 | "rand 0.8.5",
2620 | "rodio",
2621 | "rwhisper",
2622 | "serde_json",
2623 | "tokio",
2624 | "tracing",
2625 | "voice_activity_detector",
2626 | ]
2627 |
2628 | [[package]]
2629 | name = "kalosm-streams"
2630 | version = "0.4.0"
2631 | source = "registry+https://github.com/rust-lang/crates.io-index"
2632 | checksum = "f7ff10dbf8960f211ee1ae532196edca9479b21ef1490c5bbd1b300e15398a64"
2633 | dependencies = [
2634 | "futures-channel",
2635 | "futures-util",
2636 | "pin-project-lite",
2637 | ]
2638 |
2639 | [[package]]
2640 | name = "kalosm-vision"
2641 | version = "0.4.0"
2642 | source = "registry+https://github.com/rust-lang/crates.io-index"
2643 | checksum = "e48a0f1624ad1242333f80f331dcb697cf744173729e95f5234ca33ceb3ddc2c"
2644 | dependencies = [
2645 | "image",
2646 | "kalosm-ocr",
2647 | "rwuerstchen",
2648 | "segment-anything-rs",
2649 | ]
2650 |
2651 | [[package]]
2652 | name = "lazy_static"
2653 | version = "1.5.0"
2654 | source = "registry+https://github.com/rust-lang/crates.io-index"
2655 | checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
2656 |
2657 | [[package]]
2658 | name = "lebe"
2659 | version = "0.5.2"
2660 | source = "registry+https://github.com/rust-lang/crates.io-index"
2661 | checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
2662 |
2663 | [[package]]
2664 | name = "lewton"
2665 | version = "0.10.2"
2666 | source = "registry+https://github.com/rust-lang/crates.io-index"
2667 | checksum = "777b48df9aaab155475a83a7df3070395ea1ac6902f5cd062b8f2b028075c030"
2668 | dependencies = [
2669 | "byteorder",
2670 | "ogg",
2671 | "tinyvec",
2672 | ]
2673 |
2674 | [[package]]
2675 | name = "libc"
2676 | version = "0.2.172"
2677 | source = "registry+https://github.com/rust-lang/crates.io-index"
2678 | checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa"
2679 |
2680 | [[package]]
2681 | name = "libloading"
2682 | version = "0.8.7"
2683 | source = "registry+https://github.com/rust-lang/crates.io-index"
2684 | checksum = "6a793df0d7afeac54f95b471d3af7f0d4fb975699f972341a4b76988d49cdf0c"
2685 | dependencies = [
2686 | "cfg-if",
2687 | "windows-targets 0.53.0",
2688 | ]
2689 |
2690 | [[package]]
2691 | name = "libm"
2692 | version = "0.2.15"
2693 | source = "registry+https://github.com/rust-lang/crates.io-index"
2694 | checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de"
2695 |
2696 | [[package]]
2697 | name = "libredox"
2698 | version = "0.1.3"
2699 | source = "registry+https://github.com/rust-lang/crates.io-index"
2700 | checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
2701 | dependencies = [
2702 | "bitflags 2.9.1",
2703 | "libc",
2704 | "redox_syscall",
2705 | ]
2706 |
2707 | [[package]]
2708 | name = "linux-raw-sys"
2709 | version = "0.4.15"
2710 | source = "registry+https://github.com/rust-lang/crates.io-index"
2711 | checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab"
2712 |
2713 | [[package]]
2714 | name = "linux-raw-sys"
2715 | version = "0.9.4"
2716 | source = "registry+https://github.com/rust-lang/crates.io-index"
2717 | checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12"
2718 |
2719 | [[package]]
2720 | name = "litemap"
2721 | version = "0.8.0"
2722 | source = "registry+https://github.com/rust-lang/crates.io-index"
2723 | checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956"
2724 |
2725 | [[package]]
2726 | name = "litrs"
2727 | version = "0.4.1"
2728 | source = "registry+https://github.com/rust-lang/crates.io-index"
2729 | checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5"
2730 |
2731 | [[package]]
2732 | name = "llm-samplers"
2733 | version = "0.0.7"
2734 | source = "registry+https://github.com/rust-lang/crates.io-index"
2735 | checksum = "7e85df656cd89e7702cb56171d75aa77c7bec828af7d2054d9987c34411cf896"
2736 | dependencies = [
2737 | "anyhow",
2738 | "num-traits",
2739 | "rand 0.8.5",
2740 | "thiserror 1.0.69",
2741 | ]
2742 |
2743 | [[package]]
2744 | name = "lmdb-master-sys"
2745 | version = "0.2.5"
2746 | source = "registry+https://github.com/rust-lang/crates.io-index"
2747 | checksum = "864808e0b19fb6dd3b70ba94ee671b82fce17554cf80aeb0a155c65bb08027df"
2748 | dependencies = [
2749 | "cc",
2750 | "doxygen-rs",
2751 | "libc",
2752 | ]
2753 |
2754 | [[package]]
2755 | name = "lock_api"
2756 | version = "0.4.12"
2757 | source = "registry+https://github.com/rust-lang/crates.io-index"
2758 | checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
2759 | dependencies = [
2760 | "autocfg",
2761 | "scopeguard",
2762 | ]
2763 |
2764 | [[package]]
2765 | name = "log"
2766 | version = "0.4.27"
2767 | source = "registry+https://github.com/rust-lang/crates.io-index"
2768 | checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94"
2769 |
2770 | [[package]]
2771 | name = "lopdf"
2772 | version = "0.35.0"
2773 | source = "registry+https://github.com/rust-lang/crates.io-index"
2774 | checksum = "5c7c1d3350d071cb86987a6bcb205c7019a0eb70dcad92b454fec722cca8d68b"
2775 | dependencies = [
2776 | "aes",
2777 | "cbc",
2778 | "chrono",
2779 | "encoding_rs",
2780 | "flate2",
2781 | "indexmap 2.9.0",
2782 | "itoa",
2783 | "log",
2784 | "md-5",
2785 | "nom",
2786 | "nom_locate",
2787 | "rangemap",
2788 | "rayon",
2789 | "thiserror 2.0.12",
2790 | "time 0.3.41",
2791 | "tokio",
2792 | "weezl",
2793 | ]
2794 |
2795 | [[package]]
2796 | name = "lru"
2797 | version = "0.12.5"
2798 | source = "registry+https://github.com/rust-lang/crates.io-index"
2799 | checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38"
2800 | dependencies = [
2801 | "hashbrown 0.15.3",
2802 | ]
2803 |
2804 | [[package]]
2805 | name = "mac"
2806 | version = "0.1.1"
2807 | source = "registry+https://github.com/rust-lang/crates.io-index"
2808 | checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4"
2809 |
2810 | [[package]]
2811 | name = "mach2"
2812 | version = "0.4.2"
2813 | source = "registry+https://github.com/rust-lang/crates.io-index"
2814 | checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709"
2815 | dependencies = [
2816 | "libc",
2817 | ]
2818 |
2819 | [[package]]
2820 | name = "macro_rules_attribute"
2821 | version = "0.2.0"
2822 | source = "registry+https://github.com/rust-lang/crates.io-index"
2823 | checksum = "8a82271f7bc033d84bbca59a3ce3e4159938cb08a9c3aebbe54d215131518a13"
2824 | dependencies = [
2825 | "macro_rules_attribute-proc_macro",
2826 | "paste",
2827 | ]
2828 |
2829 | [[package]]
2830 | name = "macro_rules_attribute-proc_macro"
2831 | version = "0.2.0"
2832 | source = "registry+https://github.com/rust-lang/crates.io-index"
2833 | checksum = "b8dd856d451cc0da70e2ef2ce95a18e39a93b7558bedf10201ad28503f918568"
2834 |
2835 | [[package]]
2836 | name = "malloc_buf"
2837 | version = "0.0.6"
2838 | source = "registry+https://github.com/rust-lang/crates.io-index"
2839 | checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
2840 | dependencies = [
2841 | "libc",
2842 | ]
2843 |
2844 | [[package]]
2845 | name = "markup5ever"
2846 | version = "0.10.1"
2847 | source = "registry+https://github.com/rust-lang/crates.io-index"
2848 | checksum = "a24f40fb03852d1cdd84330cddcaf98e9ec08a7b7768e952fad3b4cf048ec8fd"
2849 | dependencies = [
2850 | "log",
2851 | "phf 0.8.0",
2852 | "phf_codegen 0.8.0",
2853 | "string_cache",
2854 | "string_cache_codegen",
2855 | "tendril",
2856 | ]
2857 |
2858 | [[package]]
2859 | name = "markup5ever"
2860 | version = "0.12.1"
2861 | source = "registry+https://github.com/rust-lang/crates.io-index"
2862 | checksum = "16ce3abbeba692c8b8441d036ef91aea6df8da2c6b6e21c7e14d3c18e526be45"
2863 | dependencies = [
2864 | "log",
2865 | "phf 0.11.3",
2866 | "phf_codegen 0.11.3",
2867 | "string_cache",
2868 | "string_cache_codegen",
2869 | "tendril",
2870 | ]
2871 |
2872 | [[package]]
2873 | name = "markup5ever_rcdom"
2874 | version = "0.1.0"
2875 | source = "registry+https://github.com/rust-lang/crates.io-index"
2876 | checksum = "f015da43bcd8d4f144559a3423f4591d69b8ce0652c905374da7205df336ae2b"
2877 | dependencies = [
2878 | "html5ever 0.25.2",
2879 | "markup5ever 0.10.1",
2880 | "tendril",
2881 | "xml5ever",
2882 | ]
2883 |
2884 | [[package]]
2885 | name = "matrixmultiply"
2886 | version = "0.3.10"
2887 | source = "registry+https://github.com/rust-lang/crates.io-index"
2888 | checksum = "a06de3016e9fae57a36fd14dba131fccf49f74b40b7fbdb472f96e361ec71a08"
2889 | dependencies = [
2890 | "autocfg",
2891 | "rawpointer",
2892 | ]
2893 |
2894 | [[package]]
2895 | name = "md-5"
2896 | version = "0.10.6"
2897 | source = "registry+https://github.com/rust-lang/crates.io-index"
2898 | checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf"
2899 | dependencies = [
2900 | "cfg-if",
2901 | "digest",
2902 | ]
2903 |
2904 | [[package]]
2905 | name = "memchr"
2906 | version = "2.7.4"
2907 | source = "registry+https://github.com/rust-lang/crates.io-index"
2908 | checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
2909 |
2910 | [[package]]
2911 | name = "memmap2"
2912 | version = "0.9.5"
2913 | source = "registry+https://github.com/rust-lang/crates.io-index"
2914 | checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f"
2915 | dependencies = [
2916 | "libc",
2917 | "stable_deref_trait",
2918 | ]
2919 |
2920 | [[package]]
2921 | name = "memo-map"
2922 | version = "0.3.3"
2923 | source = "registry+https://github.com/rust-lang/crates.io-index"
2924 | checksum = "38d1115007560874e373613744c6fba374c17688327a71c1476d1a5954cc857b"
2925 |
2926 | [[package]]
2927 | name = "metal"
2928 | version = "0.27.0"
2929 | source = "registry+https://github.com/rust-lang/crates.io-index"
2930 | checksum = "c43f73953f8cbe511f021b58f18c3ce1c3d1ae13fe953293e13345bf83217f25"
2931 | dependencies = [
2932 | "bitflags 2.9.1",
2933 | "block",
2934 | "core-graphics-types",
2935 | "foreign-types 0.5.0",
2936 | "log",
2937 | "objc",
2938 | "paste",
2939 | ]
2940 |
2941 | [[package]]
2942 | name = "metal"
2943 | version = "0.29.0"
2944 | source = "registry+https://github.com/rust-lang/crates.io-index"
2945 | checksum = "7ecfd3296f8c56b7c1f6fbac3c71cefa9d78ce009850c45000015f206dc7fa21"
2946 | dependencies = [
2947 | "bitflags 2.9.1",
2948 | "block",
2949 | "core-graphics-types",
2950 | "foreign-types 0.5.0",
2951 | "log",
2952 | "objc",
2953 | "paste",
2954 | ]
2955 |
2956 | [[package]]
2957 | name = "mime"
2958 | version = "0.3.17"
2959 | source = "registry+https://github.com/rust-lang/crates.io-index"
2960 | checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
2961 |
2962 | [[package]]
2963 | name = "minijinja"
2964 | version = "2.10.2"
2965 | source = "registry+https://github.com/rust-lang/crates.io-index"
2966 | checksum = "dd72e8b4e42274540edabec853f607c015c73436159b06c39c7af85a20433155"
2967 | dependencies = [
2968 | "memo-map",
2969 | "self_cell",
2970 | "serde",
2971 | "serde_json",
2972 | ]
2973 |
2974 | [[package]]
2975 | name = "minijinja-contrib"
2976 | version = "2.10.2"
2977 | source = "registry+https://github.com/rust-lang/crates.io-index"
2978 | checksum = "457f85f9c4c5b17d11fcf9bbe7c0dbba64843c5ee040005956f1a510b6679fe2"
2979 | dependencies = [
2980 | "minijinja",
2981 | "serde",
2982 | ]
2983 |
2984 | [[package]]
2985 | name = "minimal-lexical"
2986 | version = "0.2.1"
2987 | source = "registry+https://github.com/rust-lang/crates.io-index"
2988 | checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
2989 |
2990 | [[package]]
2991 | name = "miniz_oxide"
2992 | version = "0.8.8"
2993 | source = "registry+https://github.com/rust-lang/crates.io-index"
2994 | checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a"
2995 | dependencies = [
2996 | "adler2",
2997 | "simd-adler32",
2998 | ]
2999 |
3000 | [[package]]
3001 | name = "mio"
3002 | version = "1.0.3"
3003 | source = "registry+https://github.com/rust-lang/crates.io-index"
3004 | checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd"
3005 | dependencies = [
3006 | "libc",
3007 | "log",
3008 | "wasi 0.11.0+wasi-snapshot-preview1",
3009 | "windows-sys 0.52.0",
3010 | ]
3011 |
3012 | [[package]]
3013 | name = "monostate"
3014 | version = "0.1.14"
3015 | source = "registry+https://github.com/rust-lang/crates.io-index"
3016 | checksum = "aafe1be9d0c75642e3e50fedc7ecadf1ef1cbce6eb66462153fc44245343fbee"
3017 | dependencies = [
3018 | "monostate-impl",
3019 | "serde",
3020 | ]
3021 |
3022 | [[package]]
3023 | name = "monostate-impl"
3024 | version = "0.1.14"
3025 | source = "registry+https://github.com/rust-lang/crates.io-index"
3026 | checksum = "c402a4092d5e204f32c9e155431046831fa712637043c58cb73bc6bc6c9663b5"
3027 | dependencies = [
3028 | "proc-macro2",
3029 | "quote",
3030 | "syn 2.0.101",
3031 | ]
3032 |
3033 | [[package]]
3034 | name = "native-tls"
3035 | version = "0.2.14"
3036 | source = "registry+https://github.com/rust-lang/crates.io-index"
3037 | checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e"
3038 | dependencies = [
3039 | "libc",
3040 | "log",
3041 | "openssl",
3042 | "openssl-probe",
3043 | "openssl-sys",
3044 | "schannel",
3045 | "security-framework",
3046 | "security-framework-sys",
3047 | "tempfile",
3048 | ]
3049 |
3050 | [[package]]
3051 | name = "ndarray"
3052 | version = "0.15.6"
3053 | source = "registry+https://github.com/rust-lang/crates.io-index"
3054 | checksum = "adb12d4e967ec485a5f71c6311fe28158e9d6f4bc4a447b474184d0f91a8fa32"
3055 | dependencies = [
3056 | "matrixmultiply",
3057 | "num-complex",
3058 | "num-integer",
3059 | "num-traits",
3060 | "rawpointer",
3061 | ]
3062 |
3063 | [[package]]
3064 | name = "ndk"
3065 | version = "0.8.0"
3066 | source = "registry+https://github.com/rust-lang/crates.io-index"
3067 | checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7"
3068 | dependencies = [
3069 | "bitflags 2.9.1",
3070 | "jni-sys",
3071 | "log",
3072 | "ndk-sys",
3073 | "num_enum",
3074 | "thiserror 1.0.69",
3075 | ]
3076 |
3077 | [[package]]
3078 | name = "ndk-context"
3079 | version = "0.1.1"
3080 | source = "registry+https://github.com/rust-lang/crates.io-index"
3081 | checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
3082 |
3083 | [[package]]
3084 | name = "ndk-sys"
3085 | version = "0.5.0+25.2.9519653"
3086 | source = "registry+https://github.com/rust-lang/crates.io-index"
3087 | checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691"
3088 | dependencies = [
3089 | "jni-sys",
3090 | ]
3091 |
3092 | [[package]]
3093 | name = "never"
3094 | version = "0.1.0"
3095 | source = "registry+https://github.com/rust-lang/crates.io-index"
3096 | checksum = "c96aba5aa877601bb3f6dd6a63a969e1f82e60646e81e71b14496995e9853c91"
3097 |
3098 | [[package]]
3099 | name = "new_debug_unreachable"
3100 | version = "1.0.6"
3101 | source = "registry+https://github.com/rust-lang/crates.io-index"
3102 | checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086"
3103 |
3104 | [[package]]
3105 | name = "nnnoiseless"
3106 | version = "0.5.1"
3107 | source = "registry+https://github.com/rust-lang/crates.io-index"
3108 | checksum = "23d377ce2fb579ed5c14cfa0d39e70849030fdf673d6d1a764cadb2dfbb02a50"
3109 | dependencies = [
3110 | "anyhow",
3111 | "clap",
3112 | "dasp",
3113 | "dasp_interpolate",
3114 | "dasp_ring_buffer",
3115 | "hound",
3116 | "once_cell",
3117 | "rustfft",
3118 | ]
3119 |
3120 | [[package]]
3121 | name = "nohash"
3122 | version = "0.2.0"
3123 | source = "registry+https://github.com/rust-lang/crates.io-index"
3124 | checksum = "a0f889fb66f7acdf83442c35775764b51fed3c606ab9cee51500dbde2cf528ca"
3125 |
3126 | [[package]]
3127 | name = "nom"
3128 | version = "7.1.3"
3129 | source = "registry+https://github.com/rust-lang/crates.io-index"
3130 | checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
3131 | dependencies = [
3132 | "memchr",
3133 | "minimal-lexical",
3134 | ]
3135 |
3136 | [[package]]
3137 | name = "nom_locate"
3138 | version = "4.2.0"
3139 | source = "registry+https://github.com/rust-lang/crates.io-index"
3140 | checksum = "1e3c83c053b0713da60c5b8de47fe8e494fe3ece5267b2f23090a07a053ba8f3"
3141 | dependencies = [
3142 | "bytecount",
3143 | "memchr",
3144 | "nom",
3145 | ]
3146 |
3147 | [[package]]
3148 | name = "num"
3149 | version = "0.4.3"
3150 | source = "registry+https://github.com/rust-lang/crates.io-index"
3151 | checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23"
3152 | dependencies = [
3153 | "num-bigint",
3154 | "num-complex",
3155 | "num-integer",
3156 | "num-iter",
3157 | "num-rational",
3158 | "num-traits",
3159 | ]
3160 |
3161 | [[package]]
3162 | name = "num-bigint"
3163 | version = "0.4.6"
3164 | source = "registry+https://github.com/rust-lang/crates.io-index"
3165 | checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9"
3166 | dependencies = [
3167 | "num-integer",
3168 | "num-traits",
3169 | ]
3170 |
3171 | [[package]]
3172 | name = "num-complex"
3173 | version = "0.4.6"
3174 | source = "registry+https://github.com/rust-lang/crates.io-index"
3175 | checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
3176 | dependencies = [
3177 | "bytemuck",
3178 | "num-traits",
3179 | ]
3180 |
3181 | [[package]]
3182 | name = "num-conv"
3183 | version = "0.1.0"
3184 | source = "registry+https://github.com/rust-lang/crates.io-index"
3185 | checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
3186 |
3187 | [[package]]
3188 | name = "num-derive"
3189 | version = "0.4.2"
3190 | source = "registry+https://github.com/rust-lang/crates.io-index"
3191 | checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
3192 | dependencies = [
3193 | "proc-macro2",
3194 | "quote",
3195 | "syn 2.0.101",
3196 | ]
3197 |
3198 | [[package]]
3199 | name = "num-integer"
3200 | version = "0.1.46"
3201 | source = "registry+https://github.com/rust-lang/crates.io-index"
3202 | checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
3203 | dependencies = [
3204 | "num-traits",
3205 | ]
3206 |
3207 | [[package]]
3208 | name = "num-iter"
3209 | version = "0.1.45"
3210 | source = "registry+https://github.com/rust-lang/crates.io-index"
3211 | checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf"
3212 | dependencies = [
3213 | "autocfg",
3214 | "num-integer",
3215 | "num-traits",
3216 | ]
3217 |
3218 | [[package]]
3219 | name = "num-rational"
3220 | version = "0.4.2"
3221 | source = "registry+https://github.com/rust-lang/crates.io-index"
3222 | checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824"
3223 | dependencies = [
3224 | "num-bigint",
3225 | "num-integer",
3226 | "num-traits",
3227 | ]
3228 |
3229 | [[package]]
3230 | name = "num-traits"
3231 | version = "0.2.19"
3232 | source = "registry+https://github.com/rust-lang/crates.io-index"
3233 | checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
3234 | dependencies = [
3235 | "autocfg",
3236 | "libm",
3237 | ]
3238 |
3239 | [[package]]
3240 | name = "num_cpus"
3241 | version = "1.16.0"
3242 | source = "registry+https://github.com/rust-lang/crates.io-index"
3243 | checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
3244 | dependencies = [
3245 | "hermit-abi 0.3.9",
3246 | "libc",
3247 | ]
3248 |
3249 | [[package]]
3250 | name = "num_enum"
3251 | version = "0.7.3"
3252 | source = "registry+https://github.com/rust-lang/crates.io-index"
3253 | checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179"
3254 | dependencies = [
3255 | "num_enum_derive",
3256 | ]
3257 |
3258 | [[package]]
3259 | name = "num_enum_derive"
3260 | version = "0.7.3"
3261 | source = "registry+https://github.com/rust-lang/crates.io-index"
3262 | checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56"
3263 | dependencies = [
3264 | "proc-macro-crate",
3265 | "proc-macro2",
3266 | "quote",
3267 | "syn 2.0.101",
3268 | ]
3269 |
3270 | [[package]]
3271 | name = "number_prefix"
3272 | version = "0.4.0"
3273 | source = "registry+https://github.com/rust-lang/crates.io-index"
3274 | checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3"
3275 |
3276 | [[package]]
3277 | name = "objc"
3278 | version = "0.2.7"
3279 | source = "registry+https://github.com/rust-lang/crates.io-index"
3280 | checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
3281 | dependencies = [
3282 | "malloc_buf",
3283 | "objc_exception",
3284 | ]
3285 |
3286 | [[package]]
3287 | name = "objc_exception"
3288 | version = "0.1.2"
3289 | source = "registry+https://github.com/rust-lang/crates.io-index"
3290 | checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4"
3291 | dependencies = [
3292 | "cc",
3293 | ]
3294 |
3295 | [[package]]
3296 | name = "object"
3297 | version = "0.36.7"
3298 | source = "registry+https://github.com/rust-lang/crates.io-index"
3299 | checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87"
3300 | dependencies = [
3301 | "memchr",
3302 | ]
3303 |
3304 | [[package]]
3305 | name = "oboe"
3306 | version = "0.6.1"
3307 | source = "registry+https://github.com/rust-lang/crates.io-index"
3308 | checksum = "e8b61bebd49e5d43f5f8cc7ee2891c16e0f41ec7954d36bcb6c14c5e0de867fb"
3309 | dependencies = [
3310 | "jni",
3311 | "ndk",
3312 | "ndk-context",
3313 | "num-derive",
3314 | "num-traits",
3315 | "oboe-sys",
3316 | ]
3317 |
3318 | [[package]]
3319 | name = "oboe-sys"
3320 | version = "0.6.1"
3321 | source = "registry+https://github.com/rust-lang/crates.io-index"
3322 | checksum = "6c8bb09a4a2b1d668170cfe0a7d5bc103f8999fb316c98099b6a9939c9f2e79d"
3323 | dependencies = [
3324 | "cc",
3325 | ]
3326 |
3327 | [[package]]
3328 | name = "ogg"
3329 | version = "0.8.0"
3330 | source = "registry+https://github.com/rust-lang/crates.io-index"
3331 | checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e"
3332 | dependencies = [
3333 | "byteorder",
3334 | ]
3335 |
3336 | [[package]]
3337 | name = "once_cell"
3338 | version = "1.21.3"
3339 | source = "registry+https://github.com/rust-lang/crates.io-index"
3340 | checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
3341 |
3342 | [[package]]
3343 | name = "onig"
3344 | version = "6.4.0"
3345 | source = "registry+https://github.com/rust-lang/crates.io-index"
3346 | checksum = "8c4b31c8722ad9171c6d77d3557db078cab2bd50afcc9d09c8b315c59df8ca4f"
3347 | dependencies = [
3348 | "bitflags 1.3.2",
3349 | "libc",
3350 | "once_cell",
3351 | "onig_sys",
3352 | ]
3353 |
3354 | [[package]]
3355 | name = "onig_sys"
3356 | version = "69.8.1"
3357 | source = "registry+https://github.com/rust-lang/crates.io-index"
3358 | checksum = "7b829e3d7e9cc74c7e315ee8edb185bf4190da5acde74afd7fc59c35b1f086e7"
3359 | dependencies = [
3360 | "cc",
3361 | "pkg-config",
3362 | ]
3363 |
3364 | [[package]]
3365 | name = "openssl"
3366 | version = "0.10.72"
3367 | source = "registry+https://github.com/rust-lang/crates.io-index"
3368 | checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da"
3369 | dependencies = [
3370 | "bitflags 2.9.1",
3371 | "cfg-if",
3372 | "foreign-types 0.3.2",
3373 | "libc",
3374 | "once_cell",
3375 | "openssl-macros",
3376 | "openssl-sys",
3377 | ]
3378 |
3379 | [[package]]
3380 | name = "openssl-macros"
3381 | version = "0.1.1"
3382 | source = "registry+https://github.com/rust-lang/crates.io-index"
3383 | checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
3384 | dependencies = [
3385 | "proc-macro2",
3386 | "quote",
3387 | "syn 2.0.101",
3388 | ]
3389 |
3390 | [[package]]
3391 | name = "openssl-probe"
3392 | version = "0.1.6"
3393 | source = "registry+https://github.com/rust-lang/crates.io-index"
3394 | checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e"
3395 |
3396 | [[package]]
3397 | name = "openssl-sys"
3398 | version = "0.9.108"
3399 | source = "registry+https://github.com/rust-lang/crates.io-index"
3400 | checksum = "e145e1651e858e820e4860f7b9c5e169bc1d8ce1c86043be79fa7b7634821847"
3401 | dependencies = [
3402 | "cc",
3403 | "libc",
3404 | "pkg-config",
3405 | "vcpkg",
3406 | ]
3407 |
3408 | [[package]]
3409 | name = "option-ext"
3410 | version = "0.2.0"
3411 | source = "registry+https://github.com/rust-lang/crates.io-index"
3412 | checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
3413 |
3414 | [[package]]
3415 | name = "ordered-float"
3416 | version = "4.6.0"
3417 | source = "registry+https://github.com/rust-lang/crates.io-index"
3418 | checksum = "7bb71e1b3fa6ca1c61f383464aaf2bb0e2f8e772a1f01d486832464de363b951"
3419 | dependencies = [
3420 | "num-traits",
3421 | ]
3422 |
3423 | [[package]]
3424 | name = "ort"
3425 | version = "2.0.0-rc.4"
3426 | source = "registry+https://github.com/rust-lang/crates.io-index"
3427 | checksum = "86d83095ae3c1258738d70ae7a06195c94d966a8e546f0d3609dc90885fb61f5"
3428 | dependencies = [
3429 | "half",
3430 | "js-sys",
3431 | "ndarray",
3432 | "ort-sys",
3433 | "thiserror 1.0.69",
3434 | "tracing",
3435 | "web-sys",
3436 | ]
3437 |
3438 | [[package]]
3439 | name = "ort-sys"
3440 | version = "2.0.0-rc.4"
3441 | source = "registry+https://github.com/rust-lang/crates.io-index"
3442 | checksum = "0f2f6427193c808010b126bef45ebd33f8dee43770223a1200f84d3734d6c656"
3443 | dependencies = [
3444 | "flate2",
3445 | "pkg-config",
3446 | "sha2",
3447 | "tar",
3448 | "ureq",
3449 | ]
3450 |
3451 | [[package]]
3452 | name = "os_str_bytes"
3453 | version = "6.6.1"
3454 | source = "registry+https://github.com/rust-lang/crates.io-index"
3455 | checksum = "e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1"
3456 |
3457 | [[package]]
3458 | name = "owo-colors"
3459 | version = "4.2.1"
3460 | source = "registry+https://github.com/rust-lang/crates.io-index"
3461 | checksum = "26995317201fa17f3656c36716aed4a7c81743a9634ac4c99c0eeda495db0cec"
3462 |
3463 | [[package]]
3464 | name = "page_size"
3465 | version = "0.6.0"
3466 | source = "registry+https://github.com/rust-lang/crates.io-index"
3467 | checksum = "30d5b2194ed13191c1999ae0704b7839fb18384fa22e49b57eeaa97d79ce40da"
3468 | dependencies = [
3469 | "libc",
3470 | "winapi",
3471 | ]
3472 |
3473 | [[package]]
3474 | name = "parking"
3475 | version = "2.2.1"
3476 | source = "registry+https://github.com/rust-lang/crates.io-index"
3477 | checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba"
3478 |
3479 | [[package]]
3480 | name = "parking_lot"
3481 | version = "0.12.3"
3482 | source = "registry+https://github.com/rust-lang/crates.io-index"
3483 | checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27"
3484 | dependencies = [
3485 | "lock_api",
3486 | "parking_lot_core",
3487 | ]
3488 |
3489 | [[package]]
3490 | name = "parking_lot_core"
3491 | version = "0.9.10"
3492 | source = "registry+https://github.com/rust-lang/crates.io-index"
3493 | checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
3494 | dependencies = [
3495 | "cfg-if",
3496 | "libc",
3497 | "redox_syscall",
3498 | "smallvec",
3499 | "windows-targets 0.52.6",
3500 | ]
3501 |
3502 | [[package]]
3503 | name = "paste"
3504 | version = "1.0.15"
3505 | source = "registry+https://github.com/rust-lang/crates.io-index"
3506 | checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
3507 |
3508 | [[package]]
3509 | name = "percent-encoding"
3510 | version = "2.3.1"
3511 | source = "registry+https://github.com/rust-lang/crates.io-index"
3512 | checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
3513 |
3514 | [[package]]
3515 | name = "phf"
3516 | version = "0.8.0"
3517 | source = "registry+https://github.com/rust-lang/crates.io-index"
3518 | checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
3519 | dependencies = [
3520 | "phf_shared 0.8.0",
3521 | ]
3522 |
3523 | [[package]]
3524 | name = "phf"
3525 | version = "0.10.1"
3526 | source = "registry+https://github.com/rust-lang/crates.io-index"
3527 | checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259"
3528 | dependencies = [
3529 | "phf_shared 0.10.0",
3530 | ]
3531 |
3532 | [[package]]
3533 | name = "phf"
3534 | version = "0.11.3"
3535 | source = "registry+https://github.com/rust-lang/crates.io-index"
3536 | checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078"
3537 | dependencies = [
3538 | "phf_macros",
3539 | "phf_shared 0.11.3",
3540 | ]
3541 |
3542 | [[package]]
3543 | name = "phf_codegen"
3544 | version = "0.8.0"
3545 | source = "registry+https://github.com/rust-lang/crates.io-index"
3546 | checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
3547 | dependencies = [
3548 | "phf_generator 0.8.0",
3549 | "phf_shared 0.8.0",
3550 | ]
3551 |
3552 | [[package]]
3553 | name = "phf_codegen"
3554 | version = "0.10.0"
3555 | source = "registry+https://github.com/rust-lang/crates.io-index"
3556 | checksum = "4fb1c3a8bc4dd4e5cfce29b44ffc14bedd2ee294559a294e2a4d4c9e9a6a13cd"
3557 | dependencies = [
3558 | "phf_generator 0.10.0",
3559 | "phf_shared 0.10.0",
3560 | ]
3561 |
3562 | [[package]]
3563 | name = "phf_codegen"
3564 | version = "0.11.3"
3565 | source = "registry+https://github.com/rust-lang/crates.io-index"
3566 | checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a"
3567 | dependencies = [
3568 | "phf_generator 0.11.3",
3569 | "phf_shared 0.11.3",
3570 | ]
3571 |
3572 | [[package]]
3573 | name = "phf_generator"
3574 | version = "0.8.0"
3575 | source = "registry+https://github.com/rust-lang/crates.io-index"
3576 | checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
3577 | dependencies = [
3578 | "phf_shared 0.8.0",
3579 | "rand 0.7.3",
3580 | ]
3581 |
3582 | [[package]]
3583 | name = "phf_generator"
3584 | version = "0.10.0"
3585 | source = "registry+https://github.com/rust-lang/crates.io-index"
3586 | checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6"
3587 | dependencies = [
3588 | "phf_shared 0.10.0",
3589 | "rand 0.8.5",
3590 | ]
3591 |
3592 | [[package]]
3593 | name = "phf_generator"
3594 | version = "0.11.3"
3595 | source = "registry+https://github.com/rust-lang/crates.io-index"
3596 | checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d"
3597 | dependencies = [
3598 | "phf_shared 0.11.3",
3599 | "rand 0.8.5",
3600 | ]
3601 |
3602 | [[package]]
3603 | name = "phf_macros"
3604 | version = "0.11.3"
3605 | source = "registry+https://github.com/rust-lang/crates.io-index"
3606 | checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216"
3607 | dependencies = [
3608 | "phf_generator 0.11.3",
3609 | "phf_shared 0.11.3",
3610 | "proc-macro2",
3611 | "quote",
3612 | "syn 2.0.101",
3613 | ]
3614 |
3615 | [[package]]
3616 | name = "phf_shared"
3617 | version = "0.8.0"
3618 | source = "registry+https://github.com/rust-lang/crates.io-index"
3619 | checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
3620 | dependencies = [
3621 | "siphasher 0.3.11",
3622 | ]
3623 |
3624 | [[package]]
3625 | name = "phf_shared"
3626 | version = "0.10.0"
3627 | source = "registry+https://github.com/rust-lang/crates.io-index"
3628 | checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096"
3629 | dependencies = [
3630 | "siphasher 0.3.11",
3631 | ]
3632 |
3633 | [[package]]
3634 | name = "phf_shared"
3635 | version = "0.11.3"
3636 | source = "registry+https://github.com/rust-lang/crates.io-index"
3637 | checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5"
3638 | dependencies = [
3639 | "siphasher 1.0.1",
3640 | ]
3641 |
3642 | [[package]]
3643 | name = "pin-project"
3644 | version = "1.1.10"
3645 | source = "registry+https://github.com/rust-lang/crates.io-index"
3646 | checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a"
3647 | dependencies = [
3648 | "pin-project-internal",
3649 | ]
3650 |
3651 | [[package]]
3652 | name = "pin-project-internal"
3653 | version = "1.1.10"
3654 | source = "registry+https://github.com/rust-lang/crates.io-index"
3655 | checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861"
3656 | dependencies = [
3657 | "proc-macro2",
3658 | "quote",
3659 | "syn 2.0.101",
3660 | ]
3661 |
3662 | [[package]]
3663 | name = "pin-project-lite"
3664 | version = "0.2.16"
3665 | source = "registry+https://github.com/rust-lang/crates.io-index"
3666 | checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b"
3667 |
3668 | [[package]]
3669 | name = "pin-utils"
3670 | version = "0.1.0"
3671 | source = "registry+https://github.com/rust-lang/crates.io-index"
3672 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
3673 |
3674 | [[package]]
3675 | name = "pkg-config"
3676 | version = "0.3.32"
3677 | source = "registry+https://github.com/rust-lang/crates.io-index"
3678 | checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c"
3679 |
3680 | [[package]]
3681 | name = "png"
3682 | version = "0.17.16"
3683 | source = "registry+https://github.com/rust-lang/crates.io-index"
3684 | checksum = "82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526"
3685 | dependencies = [
3686 | "bitflags 1.3.2",
3687 | "crc32fast",
3688 | "fdeflate",
3689 | "flate2",
3690 | "miniz_oxide",
3691 | ]
3692 |
3693 | [[package]]
3694 | name = "portable-atomic"
3695 | version = "1.11.0"
3696 | source = "registry+https://github.com/rust-lang/crates.io-index"
3697 | checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e"
3698 |
3699 | [[package]]
3700 | name = "potential_utf"
3701 | version = "0.1.2"
3702 | source = "registry+https://github.com/rust-lang/crates.io-index"
3703 | checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585"
3704 | dependencies = [
3705 | "zerovec",
3706 | ]
3707 |
3708 | [[package]]
3709 | name = "powerfmt"
3710 | version = "0.2.0"
3711 | source = "registry+https://github.com/rust-lang/crates.io-index"
3712 | checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
3713 |
3714 | [[package]]
3715 | name = "ppv-lite86"
3716 | version = "0.2.21"
3717 | source = "registry+https://github.com/rust-lang/crates.io-index"
3718 | checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9"
3719 | dependencies = [
3720 | "zerocopy",
3721 | ]
3722 |
3723 | [[package]]
3724 | name = "precomputed-hash"
3725 | version = "0.1.1"
3726 | source = "registry+https://github.com/rust-lang/crates.io-index"
3727 | checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
3728 |
3729 | [[package]]
3730 | name = "primal-check"
3731 | version = "0.3.4"
3732 | source = "registry+https://github.com/rust-lang/crates.io-index"
3733 | checksum = "dc0d895b311e3af9902528fbb8f928688abbd95872819320517cc24ca6b2bd08"
3734 | dependencies = [
3735 | "num-integer",
3736 | ]
3737 |
3738 | [[package]]
3739 | name = "proc-macro-crate"
3740 | version = "3.3.0"
3741 | source = "registry+https://github.com/rust-lang/crates.io-index"
3742 | checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35"
3743 | dependencies = [
3744 | "toml_edit",
3745 | ]
3746 |
3747 | [[package]]
3748 | name = "proc-macro2"
3749 | version = "1.0.95"
3750 | source = "registry+https://github.com/rust-lang/crates.io-index"
3751 | checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778"
3752 | dependencies = [
3753 | "unicode-ident",
3754 | ]
3755 |
3756 | [[package]]
3757 | name = "pulldown-cmark"
3758 | version = "0.9.6"
3759 | source = "registry+https://github.com/rust-lang/crates.io-index"
3760 | checksum = "57206b407293d2bcd3af849ce869d52068623f19e1b5ff8e8778e3309439682b"
3761 | dependencies = [
3762 | "bitflags 2.9.1",
3763 | "getopts",
3764 | "memchr",
3765 | "unicase",
3766 | ]
3767 |
3768 | [[package]]
3769 | name = "pulp"
3770 | version = "0.18.22"
3771 | source = "registry+https://github.com/rust-lang/crates.io-index"
3772 | checksum = "a0a01a0dc67cf4558d279f0c25b0962bd08fc6dec0137699eae304103e882fe6"
3773 | dependencies = [
3774 | "bytemuck",
3775 | "libm",
3776 | "num-complex",
3777 | "reborrow",
3778 | ]
3779 |
3780 | [[package]]
3781 | name = "pulp"
3782 | version = "0.21.5"
3783 | source = "registry+https://github.com/rust-lang/crates.io-index"
3784 | checksum = "96b86df24f0a7ddd5e4b95c94fc9ed8a98f1ca94d3b01bdce2824097e7835907"
3785 | dependencies = [
3786 | "bytemuck",
3787 | "cfg-if",
3788 | "libm",
3789 | "num-complex",
3790 | "reborrow",
3791 | "version_check",
3792 | ]
3793 |
3794 | [[package]]
3795 | name = "qoi"
3796 | version = "0.4.1"
3797 | source = "registry+https://github.com/rust-lang/crates.io-index"
3798 | checksum = "7f6d64c71eb498fe9eae14ce4ec935c555749aef511cca85b5568910d6e48001"
3799 | dependencies = [
3800 | "bytemuck",
3801 | ]
3802 |
3803 | [[package]]
3804 | name = "quick-xml"
3805 | version = "0.37.5"
3806 | source = "registry+https://github.com/rust-lang/crates.io-index"
3807 | checksum = "331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb"
3808 | dependencies = [
3809 | "encoding_rs",
3810 | "memchr",
3811 | ]
3812 |
3813 | [[package]]
3814 | name = "quote"
3815 | version = "1.0.40"
3816 | source = "registry+https://github.com/rust-lang/crates.io-index"
3817 | checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d"
3818 | dependencies = [
3819 | "proc-macro2",
3820 | ]
3821 |
3822 | [[package]]
3823 | name = "r-efi"
3824 | version = "5.2.0"
3825 | source = "registry+https://github.com/rust-lang/crates.io-index"
3826 | checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5"
3827 |
3828 | [[package]]
3829 | name = "rand"
3830 | version = "0.7.3"
3831 | source = "registry+https://github.com/rust-lang/crates.io-index"
3832 | checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
3833 | dependencies = [
3834 | "getrandom 0.1.16",
3835 | "libc",
3836 | "rand_chacha 0.2.2",
3837 | "rand_core 0.5.1",
3838 | "rand_hc",
3839 | "rand_pcg",
3840 | ]
3841 |
3842 | [[package]]
3843 | name = "rand"
3844 | version = "0.8.5"
3845 | source = "registry+https://github.com/rust-lang/crates.io-index"
3846 | checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
3847 | dependencies = [
3848 | "libc",
3849 | "rand_chacha 0.3.1",
3850 | "rand_core 0.6.4",
3851 | ]
3852 |
3853 | [[package]]
3854 | name = "rand"
3855 | version = "0.9.1"
3856 | source = "registry+https://github.com/rust-lang/crates.io-index"
3857 | checksum = "9fbfd9d094a40bf3ae768db9361049ace4c0e04a4fd6b359518bd7b73a73dd97"
3858 | dependencies = [
3859 | "rand_chacha 0.9.0",
3860 | "rand_core 0.9.3",
3861 | ]
3862 |
3863 | [[package]]
3864 | name = "rand_chacha"
3865 | version = "0.2.2"
3866 | source = "registry+https://github.com/rust-lang/crates.io-index"
3867 | checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
3868 | dependencies = [
3869 | "ppv-lite86",
3870 | "rand_core 0.5.1",
3871 | ]
3872 |
3873 | [[package]]
3874 | name = "rand_chacha"
3875 | version = "0.3.1"
3876 | source = "registry+https://github.com/rust-lang/crates.io-index"
3877 | checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
3878 | dependencies = [
3879 | "ppv-lite86",
3880 | "rand_core 0.6.4",
3881 | ]
3882 |
3883 | [[package]]
3884 | name = "rand_chacha"
3885 | version = "0.9.0"
3886 | source = "registry+https://github.com/rust-lang/crates.io-index"
3887 | checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb"
3888 | dependencies = [
3889 | "ppv-lite86",
3890 | "rand_core 0.9.3",
3891 | ]
3892 |
3893 | [[package]]
3894 | name = "rand_core"
3895 | version = "0.5.1"
3896 | source = "registry+https://github.com/rust-lang/crates.io-index"
3897 | checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
3898 | dependencies = [
3899 | "getrandom 0.1.16",
3900 | ]
3901 |
3902 | [[package]]
3903 | name = "rand_core"
3904 | version = "0.6.4"
3905 | source = "registry+https://github.com/rust-lang/crates.io-index"
3906 | checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
3907 | dependencies = [
3908 | "getrandom 0.2.16",
3909 | ]
3910 |
3911 | [[package]]
3912 | name = "rand_core"
3913 | version = "0.9.3"
3914 | source = "registry+https://github.com/rust-lang/crates.io-index"
3915 | checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38"
3916 | dependencies = [
3917 | "getrandom 0.3.3",
3918 | ]
3919 |
3920 | [[package]]
3921 | name = "rand_distr"
3922 | version = "0.5.1"
3923 | source = "registry+https://github.com/rust-lang/crates.io-index"
3924 | checksum = "6a8615d50dcf34fa31f7ab52692afec947c4dd0ab803cc87cb3b0b4570ff7463"
3925 | dependencies = [
3926 | "num-traits",
3927 | "rand 0.9.1",
3928 | ]
3929 |
3930 | [[package]]
3931 | name = "rand_hc"
3932 | version = "0.2.0"
3933 | source = "registry+https://github.com/rust-lang/crates.io-index"
3934 | checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
3935 | dependencies = [
3936 | "rand_core 0.5.1",
3937 | ]
3938 |
3939 | [[package]]
3940 | name = "rand_pcg"
3941 | version = "0.2.1"
3942 | source = "registry+https://github.com/rust-lang/crates.io-index"
3943 | checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
3944 | dependencies = [
3945 | "rand_core 0.5.1",
3946 | ]
3947 |
3948 | [[package]]
3949 | name = "rangemap"
3950 | version = "1.5.1"
3951 | source = "registry+https://github.com/rust-lang/crates.io-index"
3952 | checksum = "f60fcc7d6849342eff22c4350c8b9a989ee8ceabc4b481253e8946b9fe83d684"
3953 |
3954 | [[package]]
3955 | name = "ratatui"
3956 | version = "0.29.0"
3957 | source = "registry+https://github.com/rust-lang/crates.io-index"
3958 | checksum = "eabd94c2f37801c20583fc49dd5cd6b0ba68c716787c2dd6ed18571e1e63117b"
3959 | dependencies = [
3960 | "bitflags 2.9.1",
3961 | "cassowary",
3962 | "compact_str",
3963 | "crossterm 0.28.1",
3964 | "indoc",
3965 | "instability",
3966 | "itertools 0.13.0",
3967 | "lru",
3968 | "paste",
3969 | "strum",
3970 | "unicode-segmentation",
3971 | "unicode-truncate",
3972 | "unicode-width 0.2.0",
3973 | ]
3974 |
3975 | [[package]]
3976 | name = "raw-cpuid"
3977 | version = "10.7.0"
3978 | source = "registry+https://github.com/rust-lang/crates.io-index"
3979 | checksum = "6c297679cb867470fa8c9f67dbba74a78d78e3e98d7cf2b08d6d71540f797332"
3980 | dependencies = [
3981 | "bitflags 1.3.2",
3982 | ]
3983 |
3984 | [[package]]
3985 | name = "raw-cpuid"
3986 | version = "11.5.0"
3987 | source = "registry+https://github.com/rust-lang/crates.io-index"
3988 | checksum = "c6df7ab838ed27997ba19a4664507e6f82b41fe6e20be42929332156e5e85146"
3989 | dependencies = [
3990 | "bitflags 2.9.1",
3991 | ]
3992 |
3993 | [[package]]
3994 | name = "rawpointer"
3995 | version = "0.2.1"
3996 | source = "registry+https://github.com/rust-lang/crates.io-index"
3997 | checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
3998 |
3999 | [[package]]
4000 | name = "rayon"
4001 | version = "1.10.0"
4002 | source = "registry+https://github.com/rust-lang/crates.io-index"
4003 | checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
4004 | dependencies = [
4005 | "either",
4006 | "rayon-core",
4007 | ]
4008 |
4009 | [[package]]
4010 | name = "rayon-cond"
4011 | version = "0.3.0"
4012 | source = "registry+https://github.com/rust-lang/crates.io-index"
4013 | checksum = "059f538b55efd2309c9794130bc149c6a553db90e9d99c2030785c82f0bd7df9"
4014 | dependencies = [
4015 | "either",
4016 | "itertools 0.11.0",
4017 | "rayon",
4018 | ]
4019 |
4020 | [[package]]
4021 | name = "rayon-core"
4022 | version = "1.12.1"
4023 | source = "registry+https://github.com/rust-lang/crates.io-index"
4024 | checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
4025 | dependencies = [
4026 | "crossbeam-deque",
4027 | "crossbeam-utils",
4028 | ]
4029 |
4030 | [[package]]
4031 | name = "rbert"
4032 | version = "0.4.0"
4033 | source = "registry+https://github.com/rust-lang/crates.io-index"
4034 | checksum = "737d017c82188d8aac84ccda22a767127c7363461078f831c09e2aa79ee6d7be"
4035 | dependencies = [
4036 | "candle-core",
4037 | "candle-nn",
4038 | "candle-transformers",
4039 | "kalosm-common",
4040 | "kalosm-language-model",
4041 | "kalosm-model-types",
4042 | "metal 0.27.0",
4043 | "serde",
4044 | "serde_json",
4045 | "thiserror 2.0.12",
4046 | "tokenizers",
4047 | "tokio",
4048 | "tracing",
4049 | ]
4050 |
4051 | [[package]]
4052 | name = "readability"
4053 | version = "0.2.0"
4054 | source = "registry+https://github.com/rust-lang/crates.io-index"
4055 | checksum = "e7843b159286299dd2b90f06d904ae1a8017a650d88d716c85dd6f123947f399"
4056 | dependencies = [
4057 | "html5ever 0.25.2",
4058 | "lazy_static",
4059 | "markup5ever_rcdom",
4060 | "regex",
4061 | "url",
4062 | ]
4063 |
4064 | [[package]]
4065 | name = "reborrow"
4066 | version = "0.5.5"
4067 | source = "registry+https://github.com/rust-lang/crates.io-index"
4068 | checksum = "03251193000f4bd3b042892be858ee50e8b3719f2b08e5833ac4353724632430"
4069 |
4070 | [[package]]
4071 | name = "redox_syscall"
4072 | version = "0.5.12"
4073 | source = "registry+https://github.com/rust-lang/crates.io-index"
4074 | checksum = "928fca9cf2aa042393a8325b9ead81d2f0df4cb12e1e24cef072922ccd99c5af"
4075 | dependencies = [
4076 | "bitflags 2.9.1",
4077 | ]
4078 |
4079 | [[package]]
4080 | name = "redox_users"
4081 | version = "0.4.6"
4082 | source = "registry+https://github.com/rust-lang/crates.io-index"
4083 | checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43"
4084 | dependencies = [
4085 | "getrandom 0.2.16",
4086 | "libredox",
4087 | "thiserror 1.0.69",
4088 | ]
4089 |
4090 | [[package]]
4091 | name = "regex"
4092 | version = "1.11.1"
4093 | source = "registry+https://github.com/rust-lang/crates.io-index"
4094 | checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191"
4095 | dependencies = [
4096 | "aho-corasick",
4097 | "memchr",
4098 | "regex-automata",
4099 | "regex-syntax",
4100 | ]
4101 |
4102 | [[package]]
4103 | name = "regex-automata"
4104 | version = "0.4.9"
4105 | source = "registry+https://github.com/rust-lang/crates.io-index"
4106 | checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
4107 | dependencies = [
4108 | "aho-corasick",
4109 | "memchr",
4110 | "regex-syntax",
4111 | ]
4112 |
4113 | [[package]]
4114 | name = "regex-syntax"
4115 | version = "0.8.5"
4116 | source = "registry+https://github.com/rust-lang/crates.io-index"
4117 | checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
4118 |
4119 | [[package]]
4120 | name = "reqwest"
4121 | version = "0.11.27"
4122 | source = "registry+https://github.com/rust-lang/crates.io-index"
4123 | checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62"
4124 | dependencies = [
4125 | "base64 0.21.7",
4126 | "bytes",
4127 | "encoding_rs",
4128 | "futures-core",
4129 | "futures-util",
4130 | "h2",
4131 | "http",
4132 | "http-body",
4133 | "hyper",
4134 | "hyper-tls",
4135 | "ipnet",
4136 | "js-sys",
4137 | "log",
4138 | "mime",
4139 | "native-tls",
4140 | "once_cell",
4141 | "percent-encoding",
4142 | "pin-project-lite",
4143 | "rustls-pemfile",
4144 | "serde",
4145 | "serde_json",
4146 | "serde_urlencoded",
4147 | "sync_wrapper",
4148 | "system-configuration",
4149 | "tokio",
4150 | "tokio-native-tls",
4151 | "tokio-util",
4152 | "tower-service",
4153 | "url",
4154 | "wasm-bindgen",
4155 | "wasm-bindgen-futures",
4156 | "wasm-streams",
4157 | "web-sys",
4158 | "winreg",
4159 | ]
4160 |
4161 | [[package]]
4162 | name = "ring"
4163 | version = "0.17.14"
4164 | source = "registry+https://github.com/rust-lang/crates.io-index"
4165 | checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7"
4166 | dependencies = [
4167 | "cc",
4168 | "cfg-if",
4169 | "getrandom 0.2.16",
4170 | "libc",
4171 | "untrusted",
4172 | "windows-sys 0.52.0",
4173 | ]
4174 |
4175 | [[package]]
4176 | name = "roaring"
4177 | version = "0.10.12"
4178 | source = "registry+https://github.com/rust-lang/crates.io-index"
4179 | checksum = "19e8d2cfa184d94d0726d650a9f4a1be7f9b76ac9fdb954219878dc00c1c1e7b"
4180 | dependencies = [
4181 | "bytemuck",
4182 | "byteorder",
4183 | ]
4184 |
4185 | [[package]]
4186 | name = "rodio"
4187 | version = "0.20.1"
4188 | source = "registry+https://github.com/rust-lang/crates.io-index"
4189 | checksum = "e7ceb6607dd738c99bc8cb28eff249b7cd5c8ec88b9db96c0608c1480d140fb1"
4190 | dependencies = [
4191 | "claxon",
4192 | "cpal",
4193 | "hound",
4194 | "lewton",
4195 | "symphonia",
4196 | ]
4197 |
4198 | [[package]]
4199 | name = "rss"
4200 | version = "2.0.12"
4201 | source = "registry+https://github.com/rust-lang/crates.io-index"
4202 | checksum = "b2107738f003660f0a91f56fd3e3bd3ab5d918b2ddaf1e1ec2136fb1c46f71bf"
4203 | dependencies = [
4204 | "atom_syndication",
4205 | "derive_builder",
4206 | "never",
4207 | "quick-xml",
4208 | ]
4209 |
4210 | [[package]]
4211 | name = "rustc-demangle"
4212 | version = "0.1.24"
4213 | source = "registry+https://github.com/rust-lang/crates.io-index"
4214 | checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f"
4215 |
4216 | [[package]]
4217 | name = "rustc-hash"
4218 | version = "1.1.0"
4219 | source = "registry+https://github.com/rust-lang/crates.io-index"
4220 | checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
4221 |
4222 | [[package]]
4223 | name = "rustfft"
4224 | version = "6.3.0"
4225 | source = "registry+https://github.com/rust-lang/crates.io-index"
4226 | checksum = "f266ff9b0cfc79de11fd5af76a2bc672fe3ace10c96fa06456740fa70cb1ed49"
4227 | dependencies = [
4228 | "num-complex",
4229 | "num-integer",
4230 | "num-traits",
4231 | "primal-check",
4232 | "strength_reduce",
4233 | "transpose",
4234 | "version_check",
4235 | ]
4236 |
4237 | [[package]]
4238 | name = "rustix"
4239 | version = "0.38.44"
4240 | source = "registry+https://github.com/rust-lang/crates.io-index"
4241 | checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154"
4242 | dependencies = [
4243 | "bitflags 2.9.1",
4244 | "errno",
4245 | "libc",
4246 | "linux-raw-sys 0.4.15",
4247 | "windows-sys 0.59.0",
4248 | ]
4249 |
4250 | [[package]]
4251 | name = "rustix"
4252 | version = "1.0.7"
4253 | source = "registry+https://github.com/rust-lang/crates.io-index"
4254 | checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266"
4255 | dependencies = [
4256 | "bitflags 2.9.1",
4257 | "errno",
4258 | "libc",
4259 | "linux-raw-sys 0.9.4",
4260 | "windows-sys 0.59.0",
4261 | ]
4262 |
4263 | [[package]]
4264 | name = "rustls"
4265 | version = "0.23.27"
4266 | source = "registry+https://github.com/rust-lang/crates.io-index"
4267 | checksum = "730944ca083c1c233a75c09f199e973ca499344a2b7ba9e755c457e86fb4a321"
4268 | dependencies = [
4269 | "log",
4270 | "once_cell",
4271 | "ring",
4272 | "rustls-pki-types",
4273 | "rustls-webpki",
4274 | "subtle",
4275 | "zeroize",
4276 | ]
4277 |
4278 | [[package]]
4279 | name = "rustls-pemfile"
4280 | version = "1.0.4"
4281 | source = "registry+https://github.com/rust-lang/crates.io-index"
4282 | checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
4283 | dependencies = [
4284 | "base64 0.21.7",
4285 | ]
4286 |
4287 | [[package]]
4288 | name = "rustls-pki-types"
4289 | version = "1.12.0"
4290 | source = "registry+https://github.com/rust-lang/crates.io-index"
4291 | checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79"
4292 | dependencies = [
4293 | "zeroize",
4294 | ]
4295 |
4296 | [[package]]
4297 | name = "rustls-webpki"
4298 | version = "0.103.3"
4299 | source = "registry+https://github.com/rust-lang/crates.io-index"
4300 | checksum = "e4a72fe2bcf7a6ac6fd7d0b9e5cb68aeb7d4c0a0271730218b3e92d43b4eb435"
4301 | dependencies = [
4302 | "ring",
4303 | "rustls-pki-types",
4304 | "untrusted",
4305 | ]
4306 |
4307 | [[package]]
4308 | name = "rustversion"
4309 | version = "1.0.20"
4310 | source = "registry+https://github.com/rust-lang/crates.io-index"
4311 | checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2"
4312 |
4313 | [[package]]
4314 | name = "rwhisper"
4315 | version = "0.4.1"
4316 | source = "registry+https://github.com/rust-lang/crates.io-index"
4317 | checksum = "620a8fbb386e92c5a2b0115736e40052410924c0bebed43e3a04bdcae73dcb85"
4318 | dependencies = [
4319 | "accelerate-src",
4320 | "byteorder",
4321 | "candle-core",
4322 | "candle-nn",
4323 | "candle-transformers",
4324 | "cpal",
4325 | "flate2",
4326 | "futures-channel",
4327 | "futures-util",
4328 | "hf-hub",
4329 | "hound",
4330 | "kalosm-common",
4331 | "kalosm-language-model",
4332 | "kalosm-model-types",
4333 | "rand 0.8.5",
4334 | "rayon",
4335 | "rodio",
4336 | "serde_json",
4337 | "thiserror 2.0.12",
4338 | "tokenizers",
4339 | "tracing",
4340 | ]
4341 |
4342 | [[package]]
4343 | name = "rwuerstchen"
4344 | version = "0.4.0"
4345 | source = "registry+https://github.com/rust-lang/crates.io-index"
4346 | checksum = "246789b33db35e7c811b9221f345fd7cc545fce92ac2aab8ece6e540141fa193"
4347 | dependencies = [
4348 | "candle-core",
4349 | "candle-nn",
4350 | "candle-transformers",
4351 | "futures-channel",
4352 | "futures-util",
4353 | "hf-hub",
4354 | "image",
4355 | "kalosm-common",
4356 | "kalosm-language-model",
4357 | "kalosm-model-types",
4358 | "tokenizers",
4359 | "tracing",
4360 | ]
4361 |
4362 | [[package]]
4363 | name = "ryu"
4364 | version = "1.0.20"
4365 | source = "registry+https://github.com/rust-lang/crates.io-index"
4366 | checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f"
4367 |
4368 | [[package]]
4369 | name = "safetensors"
4370 | version = "0.4.5"
4371 | source = "registry+https://github.com/rust-lang/crates.io-index"
4372 | checksum = "44560c11236a6130a46ce36c836a62936dc81ebf8c36a37947423571be0e55b6"
4373 | dependencies = [
4374 | "serde",
4375 | "serde_json",
4376 | ]
4377 |
4378 | [[package]]
4379 | name = "same-file"
4380 | version = "1.0.6"
4381 | source = "registry+https://github.com/rust-lang/crates.io-index"
4382 | checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
4383 | dependencies = [
4384 | "winapi-util",
4385 | ]
4386 |
4387 | [[package]]
4388 | name = "schannel"
4389 | version = "0.1.27"
4390 | source = "registry+https://github.com/rust-lang/crates.io-index"
4391 | checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d"
4392 | dependencies = [
4393 | "windows-sys 0.59.0",
4394 | ]
4395 |
4396 | [[package]]
4397 | name = "scopeguard"
4398 | version = "1.2.0"
4399 | source = "registry+https://github.com/rust-lang/crates.io-index"
4400 | checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
4401 |
4402 | [[package]]
4403 | name = "scraper"
4404 | version = "0.19.1"
4405 | source = "registry+https://github.com/rust-lang/crates.io-index"
4406 | checksum = "761fb705fdf625482d2ed91d3f0559dcfeab2798fe2771c69560a774865d0802"
4407 | dependencies = [
4408 | "ahash",
4409 | "cssparser",
4410 | "ego-tree",
4411 | "getopts",
4412 | "html5ever 0.27.0",
4413 | "once_cell",
4414 | "selectors",
4415 | "tendril",
4416 | ]
4417 |
4418 | [[package]]
4419 | name = "security-framework"
4420 | version = "2.11.1"
4421 | source = "registry+https://github.com/rust-lang/crates.io-index"
4422 | checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02"
4423 | dependencies = [
4424 | "bitflags 2.9.1",
4425 | "core-foundation",
4426 | "core-foundation-sys",
4427 | "libc",
4428 | "security-framework-sys",
4429 | ]
4430 |
4431 | [[package]]
4432 | name = "security-framework-sys"
4433 | version = "2.14.0"
4434 | source = "registry+https://github.com/rust-lang/crates.io-index"
4435 | checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32"
4436 | dependencies = [
4437 | "core-foundation-sys",
4438 | "libc",
4439 | ]
4440 |
4441 | [[package]]
4442 | name = "segment-anything-rs"
4443 | version = "0.4.0"
4444 | source = "registry+https://github.com/rust-lang/crates.io-index"
4445 | checksum = "21a46fcc4b1d18932c97a95d94dbc95515b804837006a0554973c9742a01238e"
4446 | dependencies = [
4447 | "candle-core",
4448 | "candle-nn",
4449 | "candle-transformers",
4450 | "hf-hub",
4451 | "image",
4452 | "thiserror 2.0.12",
4453 | "tracing",
4454 | ]
4455 |
4456 | [[package]]
4457 | name = "selectors"
4458 | version = "0.25.0"
4459 | source = "registry+https://github.com/rust-lang/crates.io-index"
4460 | checksum = "4eb30575f3638fc8f6815f448d50cb1a2e255b0897985c8c59f4d37b72a07b06"
4461 | dependencies = [
4462 | "bitflags 2.9.1",
4463 | "cssparser",
4464 | "derive_more 0.99.20",
4465 | "fxhash",
4466 | "log",
4467 | "new_debug_unreachable",
4468 | "phf 0.10.1",
4469 | "phf_codegen 0.10.0",
4470 | "precomputed-hash",
4471 | "servo_arc",
4472 | "smallvec",
4473 | ]
4474 |
4475 | [[package]]
4476 | name = "self_cell"
4477 | version = "1.2.0"
4478 | source = "registry+https://github.com/rust-lang/crates.io-index"
4479 | checksum = "0f7d95a54511e0c7be3f51e8867aa8cf35148d7b9445d44de2f943e2b206e749"
4480 |
4481 | [[package]]
4482 | name = "seq-macro"
4483 | version = "0.3.6"
4484 | source = "registry+https://github.com/rust-lang/crates.io-index"
4485 | checksum = "1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc"
4486 |
4487 | [[package]]
4488 | name = "serde"
4489 | version = "1.0.219"
4490 | source = "registry+https://github.com/rust-lang/crates.io-index"
4491 | checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6"
4492 | dependencies = [
4493 | "serde_derive",
4494 | ]
4495 |
4496 | [[package]]
4497 | name = "serde-xml-rs"
4498 | version = "0.4.1"
4499 | source = "registry+https://github.com/rust-lang/crates.io-index"
4500 | checksum = "f0bf1ba0696ccf0872866277143ff1fd14d22eec235d2b23702f95e6660f7dfa"
4501 | dependencies = [
4502 | "log",
4503 | "serde",
4504 | "thiserror 1.0.69",
4505 | "xml-rs",
4506 | ]
4507 |
4508 | [[package]]
4509 | name = "serde_derive"
4510 | version = "1.0.219"
4511 | source = "registry+https://github.com/rust-lang/crates.io-index"
4512 | checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00"
4513 | dependencies = [
4514 | "proc-macro2",
4515 | "quote",
4516 | "syn 2.0.101",
4517 | ]
4518 |
4519 | [[package]]
4520 | name = "serde_json"
4521 | version = "1.0.140"
4522 | source = "registry+https://github.com/rust-lang/crates.io-index"
4523 | checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373"
4524 | dependencies = [
4525 | "itoa",
4526 | "memchr",
4527 | "ryu",
4528 | "serde",
4529 | ]
4530 |
4531 | [[package]]
4532 | name = "serde_plain"
4533 | version = "1.0.2"
4534 | source = "registry+https://github.com/rust-lang/crates.io-index"
4535 | checksum = "9ce1fc6db65a611022b23a0dec6975d63fb80a302cb3388835ff02c097258d50"
4536 | dependencies = [
4537 | "serde",
4538 | ]
4539 |
4540 | [[package]]
4541 | name = "serde_regex"
4542 | version = "1.1.0"
4543 | source = "registry+https://github.com/rust-lang/crates.io-index"
4544 | checksum = "a8136f1a4ea815d7eac4101cfd0b16dc0cb5e1fe1b8609dfd728058656b7badf"
4545 | dependencies = [
4546 | "regex",
4547 | "serde",
4548 | ]
4549 |
4550 | [[package]]
4551 | name = "serde_urlencoded"
4552 | version = "0.7.1"
4553 | source = "registry+https://github.com/rust-lang/crates.io-index"
4554 | checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
4555 | dependencies = [
4556 | "form_urlencoded",
4557 | "itoa",
4558 | "ryu",
4559 | "serde",
4560 | ]
4561 |
4562 | [[package]]
4563 | name = "servo_arc"
4564 | version = "0.3.0"
4565 | source = "registry+https://github.com/rust-lang/crates.io-index"
4566 | checksum = "d036d71a959e00c77a63538b90a6c2390969f9772b096ea837205c6bd0491a44"
4567 | dependencies = [
4568 | "stable_deref_trait",
4569 | ]
4570 |
4571 | [[package]]
4572 | name = "sha2"
4573 | version = "0.10.9"
4574 | source = "registry+https://github.com/rust-lang/crates.io-index"
4575 | checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283"
4576 | dependencies = [
4577 | "cfg-if",
4578 | "cpufeatures",
4579 | "digest",
4580 | ]
4581 |
4582 | [[package]]
4583 | name = "sharded-slab"
4584 | version = "0.1.7"
4585 | source = "registry+https://github.com/rust-lang/crates.io-index"
4586 | checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
4587 | dependencies = [
4588 | "lazy_static",
4589 | ]
4590 |
4591 | [[package]]
4592 | name = "shlex"
4593 | version = "1.3.0"
4594 | source = "registry+https://github.com/rust-lang/crates.io-index"
4595 | checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
4596 |
4597 | [[package]]
4598 | name = "signal-hook"
4599 | version = "0.3.18"
4600 | source = "registry+https://github.com/rust-lang/crates.io-index"
4601 | checksum = "d881a16cf4426aa584979d30bd82cb33429027e42122b169753d6ef1085ed6e2"
4602 | dependencies = [
4603 | "libc",
4604 | "signal-hook-registry",
4605 | ]
4606 |
4607 | [[package]]
4608 | name = "signal-hook-mio"
4609 | version = "0.2.4"
4610 | source = "registry+https://github.com/rust-lang/crates.io-index"
4611 | checksum = "34db1a06d485c9142248b7a054f034b349b212551f3dfd19c94d45a754a217cd"
4612 | dependencies = [
4613 | "libc",
4614 | "mio",
4615 | "signal-hook",
4616 | ]
4617 |
4618 | [[package]]
4619 | name = "signal-hook-registry"
4620 | version = "1.4.5"
4621 | source = "registry+https://github.com/rust-lang/crates.io-index"
4622 | checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410"
4623 | dependencies = [
4624 | "libc",
4625 | ]
4626 |
4627 | [[package]]
4628 | name = "simd-adler32"
4629 | version = "0.3.7"
4630 | source = "registry+https://github.com/rust-lang/crates.io-index"
4631 | checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
4632 |
4633 | [[package]]
4634 | name = "siphasher"
4635 | version = "0.3.11"
4636 | source = "registry+https://github.com/rust-lang/crates.io-index"
4637 | checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
4638 |
4639 | [[package]]
4640 | name = "siphasher"
4641 | version = "1.0.1"
4642 | source = "registry+https://github.com/rust-lang/crates.io-index"
4643 | checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d"
4644 |
4645 | [[package]]
4646 | name = "slab"
4647 | version = "0.4.9"
4648 | source = "registry+https://github.com/rust-lang/crates.io-index"
4649 | checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
4650 | dependencies = [
4651 | "autocfg",
4652 | "serde",
4653 | ]
4654 |
4655 | [[package]]
4656 | name = "smallvec"
4657 | version = "1.15.0"
4658 | source = "registry+https://github.com/rust-lang/crates.io-index"
4659 | checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9"
4660 |
4661 | [[package]]
4662 | name = "socket2"
4663 | version = "0.5.9"
4664 | source = "registry+https://github.com/rust-lang/crates.io-index"
4665 | checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef"
4666 | dependencies = [
4667 | "libc",
4668 | "windows-sys 0.52.0",
4669 | ]
4670 |
4671 | [[package]]
4672 | name = "socks"
4673 | version = "0.3.4"
4674 | source = "registry+https://github.com/rust-lang/crates.io-index"
4675 | checksum = "f0c3dbbd9ae980613c6dd8e28a9407b50509d3803b57624d5dfe8315218cd58b"
4676 | dependencies = [
4677 | "byteorder",
4678 | "libc",
4679 | "winapi",
4680 | ]
4681 |
4682 | [[package]]
4683 | name = "spm_precompiled"
4684 | version = "0.1.4"
4685 | source = "registry+https://github.com/rust-lang/crates.io-index"
4686 | checksum = "5851699c4033c63636f7ea4cf7b7c1f1bf06d0cc03cfb42e711de5a5c46cf326"
4687 | dependencies = [
4688 | "base64 0.13.1",
4689 | "nom",
4690 | "serde",
4691 | "unicode-segmentation",
4692 | ]
4693 |
4694 | [[package]]
4695 | name = "srx"
4696 | version = "0.1.4"
4697 | source = "registry+https://github.com/rust-lang/crates.io-index"
4698 | checksum = "310140d03a2064947271c5105bfff8c406f2f0bafbdaa947b34a088683cc2905"
4699 | dependencies = [
4700 | "regex",
4701 | "serde",
4702 | "serde-xml-rs",
4703 | "serde_regex",
4704 | "thiserror 1.0.69",
4705 | ]
4706 |
4707 | [[package]]
4708 | name = "stable_deref_trait"
4709 | version = "1.2.0"
4710 | source = "registry+https://github.com/rust-lang/crates.io-index"
4711 | checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
4712 |
4713 | [[package]]
4714 | name = "static_assertions"
4715 | version = "1.1.0"
4716 | source = "registry+https://github.com/rust-lang/crates.io-index"
4717 | checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
4718 |
4719 | [[package]]
4720 | name = "strength_reduce"
4721 | version = "0.2.4"
4722 | source = "registry+https://github.com/rust-lang/crates.io-index"
4723 | checksum = "fe895eb47f22e2ddd4dabc02bce419d2e643c8e3b585c78158b349195bc24d82"
4724 |
4725 | [[package]]
4726 | name = "string_cache"
4727 | version = "0.8.9"
4728 | source = "registry+https://github.com/rust-lang/crates.io-index"
4729 | checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f"
4730 | dependencies = [
4731 | "new_debug_unreachable",
4732 | "parking_lot",
4733 | "phf_shared 0.11.3",
4734 | "precomputed-hash",
4735 | "serde",
4736 | ]
4737 |
4738 | [[package]]
4739 | name = "string_cache_codegen"
4740 | version = "0.5.4"
4741 | source = "registry+https://github.com/rust-lang/crates.io-index"
4742 | checksum = "c711928715f1fe0fe509c53b43e993a9a557babc2d0a3567d0a3006f1ac931a0"
4743 | dependencies = [
4744 | "phf_generator 0.11.3",
4745 | "phf_shared 0.11.3",
4746 | "proc-macro2",
4747 | "quote",
4748 | ]
4749 |
4750 | [[package]]
4751 | name = "strsim"
4752 | version = "0.10.0"
4753 | source = "registry+https://github.com/rust-lang/crates.io-index"
4754 | checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
4755 |
4756 | [[package]]
4757 | name = "strsim"
4758 | version = "0.11.1"
4759 | source = "registry+https://github.com/rust-lang/crates.io-index"
4760 | checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
4761 |
4762 | [[package]]
4763 | name = "strum"
4764 | version = "0.26.3"
4765 | source = "registry+https://github.com/rust-lang/crates.io-index"
4766 | checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06"
4767 | dependencies = [
4768 | "strum_macros",
4769 | ]
4770 |
4771 | [[package]]
4772 | name = "strum_macros"
4773 | version = "0.26.4"
4774 | source = "registry+https://github.com/rust-lang/crates.io-index"
4775 | checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be"
4776 | dependencies = [
4777 | "heck",
4778 | "proc-macro2",
4779 | "quote",
4780 | "rustversion",
4781 | "syn 2.0.101",
4782 | ]
4783 |
4784 | [[package]]
4785 | name = "subtle"
4786 | version = "2.6.1"
4787 | source = "registry+https://github.com/rust-lang/crates.io-index"
4788 | checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
4789 |
4790 | [[package]]
4791 | name = "symphonia"
4792 | version = "0.5.4"
4793 | source = "registry+https://github.com/rust-lang/crates.io-index"
4794 | checksum = "815c942ae7ee74737bb00f965fa5b5a2ac2ce7b6c01c0cc169bbeaf7abd5f5a9"
4795 | dependencies = [
4796 | "lazy_static",
4797 | "symphonia-bundle-mp3",
4798 | "symphonia-core",
4799 | "symphonia-metadata",
4800 | ]
4801 |
4802 | [[package]]
4803 | name = "symphonia-bundle-mp3"
4804 | version = "0.5.4"
4805 | source = "registry+https://github.com/rust-lang/crates.io-index"
4806 | checksum = "c01c2aae70f0f1fb096b6f0ff112a930b1fb3626178fba3ae68b09dce71706d4"
4807 | dependencies = [
4808 | "lazy_static",
4809 | "log",
4810 | "symphonia-core",
4811 | "symphonia-metadata",
4812 | ]
4813 |
4814 | [[package]]
4815 | name = "symphonia-core"
4816 | version = "0.5.4"
4817 | source = "registry+https://github.com/rust-lang/crates.io-index"
4818 | checksum = "798306779e3dc7d5231bd5691f5a813496dc79d3f56bf82e25789f2094e022c3"
4819 | dependencies = [
4820 | "arrayvec",
4821 | "bitflags 1.3.2",
4822 | "bytemuck",
4823 | "lazy_static",
4824 | "log",
4825 | ]
4826 |
4827 | [[package]]
4828 | name = "symphonia-metadata"
4829 | version = "0.5.4"
4830 | source = "registry+https://github.com/rust-lang/crates.io-index"
4831 | checksum = "bc622b9841a10089c5b18e99eb904f4341615d5aa55bbf4eedde1be721a4023c"
4832 | dependencies = [
4833 | "encoding_rs",
4834 | "lazy_static",
4835 | "log",
4836 | "symphonia-core",
4837 | ]
4838 |
4839 | [[package]]
4840 | name = "syn"
4841 | version = "1.0.109"
4842 | source = "registry+https://github.com/rust-lang/crates.io-index"
4843 | checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
4844 | dependencies = [
4845 | "proc-macro2",
4846 | "quote",
4847 | "unicode-ident",
4848 | ]
4849 |
4850 | [[package]]
4851 | name = "syn"
4852 | version = "2.0.101"
4853 | source = "registry+https://github.com/rust-lang/crates.io-index"
4854 | checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf"
4855 | dependencies = [
4856 | "proc-macro2",
4857 | "quote",
4858 | "unicode-ident",
4859 | ]
4860 |
4861 | [[package]]
4862 | name = "sync_wrapper"
4863 | version = "0.1.2"
4864 | source = "registry+https://github.com/rust-lang/crates.io-index"
4865 | checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
4866 |
4867 | [[package]]
4868 | name = "synchronoise"
4869 | version = "1.0.1"
4870 | source = "registry+https://github.com/rust-lang/crates.io-index"
4871 | checksum = "3dbc01390fc626ce8d1cffe3376ded2b72a11bb70e1c75f404a210e4daa4def2"
4872 | dependencies = [
4873 | "crossbeam-queue",
4874 | ]
4875 |
4876 | [[package]]
4877 | name = "synstructure"
4878 | version = "0.13.2"
4879 | source = "registry+https://github.com/rust-lang/crates.io-index"
4880 | checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2"
4881 | dependencies = [
4882 | "proc-macro2",
4883 | "quote",
4884 | "syn 2.0.101",
4885 | ]
4886 |
4887 | [[package]]
4888 | name = "sysctl"
4889 | version = "0.5.5"
4890 | source = "registry+https://github.com/rust-lang/crates.io-index"
4891 | checksum = "ec7dddc5f0fee506baf8b9fdb989e242f17e4b11c61dfbb0635b705217199eea"
4892 | dependencies = [
4893 | "bitflags 2.9.1",
4894 | "byteorder",
4895 | "enum-as-inner",
4896 | "libc",
4897 | "thiserror 1.0.69",
4898 | "walkdir",
4899 | ]
4900 |
4901 | [[package]]
4902 | name = "sysctl"
4903 | version = "0.6.0"
4904 | source = "registry+https://github.com/rust-lang/crates.io-index"
4905 | checksum = "01198a2debb237c62b6826ec7081082d951f46dbb64b0e8c7649a452230d1dfc"
4906 | dependencies = [
4907 | "bitflags 2.9.1",
4908 | "byteorder",
4909 | "enum-as-inner",
4910 | "libc",
4911 | "thiserror 1.0.69",
4912 | "walkdir",
4913 | ]
4914 |
4915 | [[package]]
4916 | name = "system-configuration"
4917 | version = "0.5.1"
4918 | source = "registry+https://github.com/rust-lang/crates.io-index"
4919 | checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
4920 | dependencies = [
4921 | "bitflags 1.3.2",
4922 | "core-foundation",
4923 | "system-configuration-sys",
4924 | ]
4925 |
4926 | [[package]]
4927 | name = "system-configuration-sys"
4928 | version = "0.5.0"
4929 | source = "registry+https://github.com/rust-lang/crates.io-index"
4930 | checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
4931 | dependencies = [
4932 | "core-foundation-sys",
4933 | "libc",
4934 | ]
4935 |
4936 | [[package]]
4937 | name = "tar"
4938 | version = "0.4.44"
4939 | source = "registry+https://github.com/rust-lang/crates.io-index"
4940 | checksum = "1d863878d212c87a19c1a610eb53bb01fe12951c0501cf5a0d65f724914a667a"
4941 | dependencies = [
4942 | "filetime",
4943 | "libc",
4944 | "xattr",
4945 | ]
4946 |
4947 | [[package]]
4948 | name = "tempfile"
4949 | version = "3.20.0"
4950 | source = "registry+https://github.com/rust-lang/crates.io-index"
4951 | checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1"
4952 | dependencies = [
4953 | "fastrand",
4954 | "getrandom 0.3.3",
4955 | "once_cell",
4956 | "rustix 1.0.7",
4957 | "windows-sys 0.59.0",
4958 | ]
4959 |
4960 | [[package]]
4961 | name = "tendril"
4962 | version = "0.4.3"
4963 | source = "registry+https://github.com/rust-lang/crates.io-index"
4964 | checksum = "d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0"
4965 | dependencies = [
4966 | "futf",
4967 | "mac",
4968 | "utf-8",
4969 | ]
4970 |
4971 | [[package]]
4972 | name = "termcolor"
4973 | version = "1.4.1"
4974 | source = "registry+https://github.com/rust-lang/crates.io-index"
4975 | checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
4976 | dependencies = [
4977 | "winapi-util",
4978 | ]
4979 |
4980 | [[package]]
4981 | name = "textwrap"
4982 | version = "0.16.2"
4983 | source = "registry+https://github.com/rust-lang/crates.io-index"
4984 | checksum = "c13547615a44dc9c452a8a534638acdf07120d4b6847c8178705da06306a3057"
4985 |
4986 | [[package]]
4987 | name = "thiserror"
4988 | version = "1.0.69"
4989 | source = "registry+https://github.com/rust-lang/crates.io-index"
4990 | checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
4991 | dependencies = [
4992 | "thiserror-impl 1.0.69",
4993 | ]
4994 |
4995 | [[package]]
4996 | name = "thiserror"
4997 | version = "2.0.12"
4998 | source = "registry+https://github.com/rust-lang/crates.io-index"
4999 | checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708"
5000 | dependencies = [
5001 | "thiserror-impl 2.0.12",
5002 | ]
5003 |
5004 | [[package]]
5005 | name = "thiserror-impl"
5006 | version = "1.0.69"
5007 | source = "registry+https://github.com/rust-lang/crates.io-index"
5008 | checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
5009 | dependencies = [
5010 | "proc-macro2",
5011 | "quote",
5012 | "syn 2.0.101",
5013 | ]
5014 |
5015 | [[package]]
5016 | name = "thiserror-impl"
5017 | version = "2.0.12"
5018 | source = "registry+https://github.com/rust-lang/crates.io-index"
5019 | checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d"
5020 | dependencies = [
5021 | "proc-macro2",
5022 | "quote",
5023 | "syn 2.0.101",
5024 | ]
5025 |
5026 | [[package]]
5027 | name = "thread_local"
5028 | version = "1.1.8"
5029 | source = "registry+https://github.com/rust-lang/crates.io-index"
5030 | checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
5031 | dependencies = [
5032 | "cfg-if",
5033 | "once_cell",
5034 | ]
5035 |
5036 | [[package]]
5037 | name = "tiff"
5038 | version = "0.9.1"
5039 | source = "registry+https://github.com/rust-lang/crates.io-index"
5040 | checksum = "ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e"
5041 | dependencies = [
5042 | "flate2",
5043 | "jpeg-decoder",
5044 | "weezl",
5045 | ]
5046 |
5047 | [[package]]
5048 | name = "time"
5049 | version = "0.1.45"
5050 | source = "registry+https://github.com/rust-lang/crates.io-index"
5051 | checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a"
5052 | dependencies = [
5053 | "libc",
5054 | "wasi 0.10.0+wasi-snapshot-preview1",
5055 | "winapi",
5056 | ]
5057 |
5058 | [[package]]
5059 | name = "time"
5060 | version = "0.3.41"
5061 | source = "registry+https://github.com/rust-lang/crates.io-index"
5062 | checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40"
5063 | dependencies = [
5064 | "deranged",
5065 | "itoa",
5066 | "num-conv",
5067 | "powerfmt",
5068 | "serde",
5069 | "time-core",
5070 | "time-macros",
5071 | ]
5072 |
5073 | [[package]]
5074 | name = "time-core"
5075 | version = "0.1.4"
5076 | source = "registry+https://github.com/rust-lang/crates.io-index"
5077 | checksum = "c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c"
5078 |
5079 | [[package]]
5080 | name = "time-macros"
5081 | version = "0.2.22"
5082 | source = "registry+https://github.com/rust-lang/crates.io-index"
5083 | checksum = "3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49"
5084 | dependencies = [
5085 | "num-conv",
5086 | "time-core",
5087 | ]
5088 |
5089 | [[package]]
5090 | name = "tinystr"
5091 | version = "0.8.1"
5092 | source = "registry+https://github.com/rust-lang/crates.io-index"
5093 | checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b"
5094 | dependencies = [
5095 | "displaydoc",
5096 | "zerovec",
5097 | ]
5098 |
5099 | [[package]]
5100 | name = "tinyvec"
5101 | version = "1.9.0"
5102 | source = "registry+https://github.com/rust-lang/crates.io-index"
5103 | checksum = "09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71"
5104 | dependencies = [
5105 | "tinyvec_macros",
5106 | ]
5107 |
5108 | [[package]]
5109 | name = "tinyvec_macros"
5110 | version = "0.1.1"
5111 | source = "registry+https://github.com/rust-lang/crates.io-index"
5112 | checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
5113 |
5114 | [[package]]
5115 | name = "tokenizers"
5116 | version = "0.21.1"
5117 | source = "registry+https://github.com/rust-lang/crates.io-index"
5118 | checksum = "3169b3195f925496c895caee7978a335d49218488ef22375267fba5a46a40bd7"
5119 | dependencies = [
5120 | "aho-corasick",
5121 | "derive_builder",
5122 | "esaxx-rs",
5123 | "getrandom 0.2.16",
5124 | "indicatif",
5125 | "itertools 0.13.0",
5126 | "lazy_static",
5127 | "log",
5128 | "macro_rules_attribute",
5129 | "monostate",
5130 | "onig",
5131 | "paste",
5132 | "rand 0.8.5",
5133 | "rayon",
5134 | "rayon-cond",
5135 | "regex",
5136 | "regex-syntax",
5137 | "serde",
5138 | "serde_json",
5139 | "spm_precompiled",
5140 | "thiserror 2.0.12",
5141 | "unicode-normalization-alignments",
5142 | "unicode-segmentation",
5143 | "unicode_categories",
5144 | ]
5145 |
5146 | [[package]]
5147 | name = "tokio"
5148 | version = "1.45.0"
5149 | source = "registry+https://github.com/rust-lang/crates.io-index"
5150 | checksum = "2513ca694ef9ede0fb23fe71a4ee4107cb102b9dc1930f6d0fd77aae068ae165"
5151 | dependencies = [
5152 | "backtrace",
5153 | "bytes",
5154 | "libc",
5155 | "mio",
5156 | "pin-project-lite",
5157 | "socket2",
5158 | "tokio-macros",
5159 | "windows-sys 0.52.0",
5160 | ]
5161 |
5162 | [[package]]
5163 | name = "tokio-macros"
5164 | version = "2.5.0"
5165 | source = "registry+https://github.com/rust-lang/crates.io-index"
5166 | checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8"
5167 | dependencies = [
5168 | "proc-macro2",
5169 | "quote",
5170 | "syn 2.0.101",
5171 | ]
5172 |
5173 | [[package]]
5174 | name = "tokio-native-tls"
5175 | version = "0.3.1"
5176 | source = "registry+https://github.com/rust-lang/crates.io-index"
5177 | checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
5178 | dependencies = [
5179 | "native-tls",
5180 | "tokio",
5181 | ]
5182 |
5183 | [[package]]
5184 | name = "tokio-util"
5185 | version = "0.7.15"
5186 | source = "registry+https://github.com/rust-lang/crates.io-index"
5187 | checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df"
5188 | dependencies = [
5189 | "bytes",
5190 | "futures-core",
5191 | "futures-sink",
5192 | "futures-util",
5193 | "hashbrown 0.15.3",
5194 | "pin-project-lite",
5195 | "tokio",
5196 | ]
5197 |
5198 | [[package]]
5199 | name = "toml_datetime"
5200 | version = "0.6.9"
5201 | source = "registry+https://github.com/rust-lang/crates.io-index"
5202 | checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3"
5203 |
5204 | [[package]]
5205 | name = "toml_edit"
5206 | version = "0.22.26"
5207 | source = "registry+https://github.com/rust-lang/crates.io-index"
5208 | checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e"
5209 | dependencies = [
5210 | "indexmap 2.9.0",
5211 | "toml_datetime",
5212 | "winnow",
5213 | ]
5214 |
5215 | [[package]]
5216 | name = "tower-service"
5217 | version = "0.3.3"
5218 | source = "registry+https://github.com/rust-lang/crates.io-index"
5219 | checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3"
5220 |
5221 | [[package]]
5222 | name = "tracing"
5223 | version = "0.1.41"
5224 | source = "registry+https://github.com/rust-lang/crates.io-index"
5225 | checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0"
5226 | dependencies = [
5227 | "pin-project-lite",
5228 | "tracing-attributes",
5229 | "tracing-core",
5230 | ]
5231 |
5232 | [[package]]
5233 | name = "tracing-attributes"
5234 | version = "0.1.28"
5235 | source = "registry+https://github.com/rust-lang/crates.io-index"
5236 | checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d"
5237 | dependencies = [
5238 | "proc-macro2",
5239 | "quote",
5240 | "syn 2.0.101",
5241 | ]
5242 |
5243 | [[package]]
5244 | name = "tracing-core"
5245 | version = "0.1.33"
5246 | source = "registry+https://github.com/rust-lang/crates.io-index"
5247 | checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c"
5248 | dependencies = [
5249 | "once_cell",
5250 | "valuable",
5251 | ]
5252 |
5253 | [[package]]
5254 | name = "tracing-error"
5255 | version = "0.2.1"
5256 | source = "registry+https://github.com/rust-lang/crates.io-index"
5257 | checksum = "8b1581020d7a273442f5b45074a6a57d5757ad0a47dac0e9f0bd57b81936f3db"
5258 | dependencies = [
5259 | "tracing",
5260 | "tracing-subscriber",
5261 | ]
5262 |
5263 | [[package]]
5264 | name = "tracing-subscriber"
5265 | version = "0.3.19"
5266 | source = "registry+https://github.com/rust-lang/crates.io-index"
5267 | checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008"
5268 | dependencies = [
5269 | "sharded-slab",
5270 | "thread_local",
5271 | "tracing-core",
5272 | ]
5273 |
5274 | [[package]]
5275 | name = "transpose"
5276 | version = "0.2.3"
5277 | source = "registry+https://github.com/rust-lang/crates.io-index"
5278 | checksum = "1ad61aed86bc3faea4300c7aee358b4c6d0c8d6ccc36524c96e4c92ccf26e77e"
5279 | dependencies = [
5280 | "num-integer",
5281 | "strength_reduce",
5282 | ]
5283 |
5284 | [[package]]
5285 | name = "transvibe"
5286 | version = "0.1.0"
5287 | dependencies = [
5288 | "anyhow",
5289 | "color-eyre",
5290 | "crossterm 0.29.0",
5291 | "futures-util",
5292 | "kalosm",
5293 | "ratatui",
5294 | "tokio",
5295 | ]
5296 |
5297 | [[package]]
5298 | name = "try-lock"
5299 | version = "0.2.5"
5300 | source = "registry+https://github.com/rust-lang/crates.io-index"
5301 | checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
5302 |
5303 | [[package]]
5304 | name = "typed-builder"
5305 | version = "0.18.2"
5306 | source = "registry+https://github.com/rust-lang/crates.io-index"
5307 | checksum = "77739c880e00693faef3d65ea3aad725f196da38b22fdc7ea6ded6e1ce4d3add"
5308 | dependencies = [
5309 | "typed-builder-macro",
5310 | ]
5311 |
5312 | [[package]]
5313 | name = "typed-builder-macro"
5314 | version = "0.18.2"
5315 | source = "registry+https://github.com/rust-lang/crates.io-index"
5316 | checksum = "1f718dfaf347dcb5b983bfc87608144b0bad87970aebcbea5ce44d2a30c08e63"
5317 | dependencies = [
5318 | "proc-macro2",
5319 | "quote",
5320 | "syn 2.0.101",
5321 | ]
5322 |
5323 | [[package]]
5324 | name = "typenum"
5325 | version = "1.18.0"
5326 | source = "registry+https://github.com/rust-lang/crates.io-index"
5327 | checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f"
5328 |
5329 | [[package]]
5330 | name = "ug"
5331 | version = "0.1.0"
5332 | source = "registry+https://github.com/rust-lang/crates.io-index"
5333 | checksum = "03719c61a91b51541f076dfdba45caacf750b230cefaa4b32d6f5411c3f7f437"
5334 | dependencies = [
5335 | "gemm 0.18.2",
5336 | "half",
5337 | "libloading",
5338 | "memmap2",
5339 | "num",
5340 | "num-traits",
5341 | "num_cpus",
5342 | "rayon",
5343 | "safetensors",
5344 | "serde",
5345 | "thiserror 1.0.69",
5346 | "tracing",
5347 | "yoke 0.7.5",
5348 | ]
5349 |
5350 | [[package]]
5351 | name = "ug-metal"
5352 | version = "0.1.0"
5353 | source = "registry+https://github.com/rust-lang/crates.io-index"
5354 | checksum = "a02ddc17bf32f7dcaaf016b6735f7198082b82f122df7b3ca15d8ead5911ccef"
5355 | dependencies = [
5356 | "half",
5357 | "metal 0.29.0",
5358 | "objc",
5359 | "serde",
5360 | "thiserror 1.0.69",
5361 | "ug",
5362 | ]
5363 |
5364 | [[package]]
5365 | name = "unicase"
5366 | version = "2.8.1"
5367 | source = "registry+https://github.com/rust-lang/crates.io-index"
5368 | checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539"
5369 |
5370 | [[package]]
5371 | name = "unicode-ident"
5372 | version = "1.0.18"
5373 | source = "registry+https://github.com/rust-lang/crates.io-index"
5374 | checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512"
5375 |
5376 | [[package]]
5377 | name = "unicode-normalization-alignments"
5378 | version = "0.1.12"
5379 | source = "registry+https://github.com/rust-lang/crates.io-index"
5380 | checksum = "43f613e4fa046e69818dd287fdc4bc78175ff20331479dab6e1b0f98d57062de"
5381 | dependencies = [
5382 | "smallvec",
5383 | ]
5384 |
5385 | [[package]]
5386 | name = "unicode-segmentation"
5387 | version = "1.12.0"
5388 | source = "registry+https://github.com/rust-lang/crates.io-index"
5389 | checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493"
5390 |
5391 | [[package]]
5392 | name = "unicode-truncate"
5393 | version = "1.1.0"
5394 | source = "registry+https://github.com/rust-lang/crates.io-index"
5395 | checksum = "b3644627a5af5fa321c95b9b235a72fd24cd29c648c2c379431e6628655627bf"
5396 | dependencies = [
5397 | "itertools 0.13.0",
5398 | "unicode-segmentation",
5399 | "unicode-width 0.1.14",
5400 | ]
5401 |
5402 | [[package]]
5403 | name = "unicode-width"
5404 | version = "0.1.14"
5405 | source = "registry+https://github.com/rust-lang/crates.io-index"
5406 | checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af"
5407 |
5408 | [[package]]
5409 | name = "unicode-width"
5410 | version = "0.2.0"
5411 | source = "registry+https://github.com/rust-lang/crates.io-index"
5412 | checksum = "1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd"
5413 |
5414 | [[package]]
5415 | name = "unicode_categories"
5416 | version = "0.1.1"
5417 | source = "registry+https://github.com/rust-lang/crates.io-index"
5418 | checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e"
5419 |
5420 | [[package]]
5421 | name = "untrusted"
5422 | version = "0.9.0"
5423 | source = "registry+https://github.com/rust-lang/crates.io-index"
5424 | checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
5425 |
5426 | [[package]]
5427 | name = "ureq"
5428 | version = "2.12.1"
5429 | source = "registry+https://github.com/rust-lang/crates.io-index"
5430 | checksum = "02d1a66277ed75f640d608235660df48c8e3c19f3b4edb6a263315626cc3c01d"
5431 | dependencies = [
5432 | "base64 0.22.1",
5433 | "flate2",
5434 | "log",
5435 | "native-tls",
5436 | "once_cell",
5437 | "rustls",
5438 | "rustls-pki-types",
5439 | "serde",
5440 | "serde_json",
5441 | "socks",
5442 | "url",
5443 | "webpki-roots 0.26.11",
5444 | ]
5445 |
5446 | [[package]]
5447 | name = "url"
5448 | version = "2.5.4"
5449 | source = "registry+https://github.com/rust-lang/crates.io-index"
5450 | checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60"
5451 | dependencies = [
5452 | "form_urlencoded",
5453 | "idna",
5454 | "percent-encoding",
5455 | ]
5456 |
5457 | [[package]]
5458 | name = "utf-8"
5459 | version = "0.7.6"
5460 | source = "registry+https://github.com/rust-lang/crates.io-index"
5461 | checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
5462 |
5463 | [[package]]
5464 | name = "utf8_iter"
5465 | version = "1.0.4"
5466 | source = "registry+https://github.com/rust-lang/crates.io-index"
5467 | checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be"
5468 |
5469 | [[package]]
5470 | name = "valuable"
5471 | version = "0.1.1"
5472 | source = "registry+https://github.com/rust-lang/crates.io-index"
5473 | checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65"
5474 |
5475 | [[package]]
5476 | name = "vcpkg"
5477 | version = "0.2.15"
5478 | source = "registry+https://github.com/rust-lang/crates.io-index"
5479 | checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
5480 |
5481 | [[package]]
5482 | name = "version_check"
5483 | version = "0.9.5"
5484 | source = "registry+https://github.com/rust-lang/crates.io-index"
5485 | checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
5486 |
5487 | [[package]]
5488 | name = "voice_activity_detector"
5489 | version = "0.1.1"
5490 | source = "registry+https://github.com/rust-lang/crates.io-index"
5491 | checksum = "83c59bade37f522e92ce257d0b3c889c8739b4dec00aac79ea4775cfd9afd10d"
5492 | dependencies = [
5493 | "futures",
5494 | "ndarray",
5495 | "ort",
5496 | "pin-project",
5497 | "thiserror 1.0.69",
5498 | "typed-builder",
5499 | ]
5500 |
5501 | [[package]]
5502 | name = "walkdir"
5503 | version = "2.5.0"
5504 | source = "registry+https://github.com/rust-lang/crates.io-index"
5505 | checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
5506 | dependencies = [
5507 | "same-file",
5508 | "winapi-util",
5509 | ]
5510 |
5511 | [[package]]
5512 | name = "want"
5513 | version = "0.3.1"
5514 | source = "registry+https://github.com/rust-lang/crates.io-index"
5515 | checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
5516 | dependencies = [
5517 | "try-lock",
5518 | ]
5519 |
5520 | [[package]]
5521 | name = "wasi"
5522 | version = "0.9.0+wasi-snapshot-preview1"
5523 | source = "registry+https://github.com/rust-lang/crates.io-index"
5524 | checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
5525 |
5526 | [[package]]
5527 | name = "wasi"
5528 | version = "0.10.0+wasi-snapshot-preview1"
5529 | source = "registry+https://github.com/rust-lang/crates.io-index"
5530 | checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
5531 |
5532 | [[package]]
5533 | name = "wasi"
5534 | version = "0.11.0+wasi-snapshot-preview1"
5535 | source = "registry+https://github.com/rust-lang/crates.io-index"
5536 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
5537 |
5538 | [[package]]
5539 | name = "wasi"
5540 | version = "0.14.2+wasi-0.2.4"
5541 | source = "registry+https://github.com/rust-lang/crates.io-index"
5542 | checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3"
5543 | dependencies = [
5544 | "wit-bindgen-rt",
5545 | ]
5546 |
5547 | [[package]]
5548 | name = "wasm-bindgen"
5549 | version = "0.2.100"
5550 | source = "registry+https://github.com/rust-lang/crates.io-index"
5551 | checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5"
5552 | dependencies = [
5553 | "cfg-if",
5554 | "once_cell",
5555 | "rustversion",
5556 | "wasm-bindgen-macro",
5557 | ]
5558 |
5559 | [[package]]
5560 | name = "wasm-bindgen-backend"
5561 | version = "0.2.100"
5562 | source = "registry+https://github.com/rust-lang/crates.io-index"
5563 | checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6"
5564 | dependencies = [
5565 | "bumpalo",
5566 | "log",
5567 | "proc-macro2",
5568 | "quote",
5569 | "syn 2.0.101",
5570 | "wasm-bindgen-shared",
5571 | ]
5572 |
5573 | [[package]]
5574 | name = "wasm-bindgen-futures"
5575 | version = "0.4.50"
5576 | source = "registry+https://github.com/rust-lang/crates.io-index"
5577 | checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61"
5578 | dependencies = [
5579 | "cfg-if",
5580 | "js-sys",
5581 | "once_cell",
5582 | "wasm-bindgen",
5583 | "web-sys",
5584 | ]
5585 |
5586 | [[package]]
5587 | name = "wasm-bindgen-macro"
5588 | version = "0.2.100"
5589 | source = "registry+https://github.com/rust-lang/crates.io-index"
5590 | checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407"
5591 | dependencies = [
5592 | "quote",
5593 | "wasm-bindgen-macro-support",
5594 | ]
5595 |
5596 | [[package]]
5597 | name = "wasm-bindgen-macro-support"
5598 | version = "0.2.100"
5599 | source = "registry+https://github.com/rust-lang/crates.io-index"
5600 | checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de"
5601 | dependencies = [
5602 | "proc-macro2",
5603 | "quote",
5604 | "syn 2.0.101",
5605 | "wasm-bindgen-backend",
5606 | "wasm-bindgen-shared",
5607 | ]
5608 |
5609 | [[package]]
5610 | name = "wasm-bindgen-shared"
5611 | version = "0.2.100"
5612 | source = "registry+https://github.com/rust-lang/crates.io-index"
5613 | checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d"
5614 | dependencies = [
5615 | "unicode-ident",
5616 | ]
5617 |
5618 | [[package]]
5619 | name = "wasm-streams"
5620 | version = "0.4.2"
5621 | source = "registry+https://github.com/rust-lang/crates.io-index"
5622 | checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65"
5623 | dependencies = [
5624 | "futures-util",
5625 | "js-sys",
5626 | "wasm-bindgen",
5627 | "wasm-bindgen-futures",
5628 | "web-sys",
5629 | ]
5630 |
5631 | [[package]]
5632 | name = "web-sys"
5633 | version = "0.3.77"
5634 | source = "registry+https://github.com/rust-lang/crates.io-index"
5635 | checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2"
5636 | dependencies = [
5637 | "js-sys",
5638 | "wasm-bindgen",
5639 | ]
5640 |
5641 | [[package]]
5642 | name = "web-time"
5643 | version = "1.1.0"
5644 | source = "registry+https://github.com/rust-lang/crates.io-index"
5645 | checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb"
5646 | dependencies = [
5647 | "js-sys",
5648 | "wasm-bindgen",
5649 | ]
5650 |
5651 | [[package]]
5652 | name = "webpki-roots"
5653 | version = "0.26.11"
5654 | source = "registry+https://github.com/rust-lang/crates.io-index"
5655 | checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9"
5656 | dependencies = [
5657 | "webpki-roots 1.0.0",
5658 | ]
5659 |
5660 | [[package]]
5661 | name = "webpki-roots"
5662 | version = "1.0.0"
5663 | source = "registry+https://github.com/rust-lang/crates.io-index"
5664 | checksum = "2853738d1cc4f2da3a225c18ec6c3721abb31961096e9dbf5ab35fa88b19cfdb"
5665 | dependencies = [
5666 | "rustls-pki-types",
5667 | ]
5668 |
5669 | [[package]]
5670 | name = "weezl"
5671 | version = "0.1.8"
5672 | source = "registry+https://github.com/rust-lang/crates.io-index"
5673 | checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
5674 |
5675 | [[package]]
5676 | name = "whatlang"
5677 | version = "0.16.4"
5678 | source = "registry+https://github.com/rust-lang/crates.io-index"
5679 | checksum = "471d1c1645d361eb782a1650b1786a8fb58dd625e681a04c09f5ff7c8764a7b0"
5680 | dependencies = [
5681 | "hashbrown 0.14.5",
5682 | "once_cell",
5683 | ]
5684 |
5685 | [[package]]
5686 | name = "winapi"
5687 | version = "0.3.9"
5688 | source = "registry+https://github.com/rust-lang/crates.io-index"
5689 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
5690 | dependencies = [
5691 | "winapi-i686-pc-windows-gnu",
5692 | "winapi-x86_64-pc-windows-gnu",
5693 | ]
5694 |
5695 | [[package]]
5696 | name = "winapi-i686-pc-windows-gnu"
5697 | version = "0.4.0"
5698 | source = "registry+https://github.com/rust-lang/crates.io-index"
5699 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
5700 |
5701 | [[package]]
5702 | name = "winapi-util"
5703 | version = "0.1.9"
5704 | source = "registry+https://github.com/rust-lang/crates.io-index"
5705 | checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb"
5706 | dependencies = [
5707 | "windows-sys 0.59.0",
5708 | ]
5709 |
5710 | [[package]]
5711 | name = "winapi-x86_64-pc-windows-gnu"
5712 | version = "0.4.0"
5713 | source = "registry+https://github.com/rust-lang/crates.io-index"
5714 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
5715 |
5716 | [[package]]
5717 | name = "windows"
5718 | version = "0.54.0"
5719 | source = "registry+https://github.com/rust-lang/crates.io-index"
5720 | checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49"
5721 | dependencies = [
5722 | "windows-core 0.54.0",
5723 | "windows-targets 0.52.6",
5724 | ]
5725 |
5726 | [[package]]
5727 | name = "windows-core"
5728 | version = "0.54.0"
5729 | source = "registry+https://github.com/rust-lang/crates.io-index"
5730 | checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65"
5731 | dependencies = [
5732 | "windows-result 0.1.2",
5733 | "windows-targets 0.52.6",
5734 | ]
5735 |
5736 | [[package]]
5737 | name = "windows-core"
5738 | version = "0.61.1"
5739 | source = "registry+https://github.com/rust-lang/crates.io-index"
5740 | checksum = "46ec44dc15085cea82cf9c78f85a9114c463a369786585ad2882d1ff0b0acf40"
5741 | dependencies = [
5742 | "windows-implement",
5743 | "windows-interface",
5744 | "windows-link",
5745 | "windows-result 0.3.3",
5746 | "windows-strings",
5747 | ]
5748 |
5749 | [[package]]
5750 | name = "windows-implement"
5751 | version = "0.60.0"
5752 | source = "registry+https://github.com/rust-lang/crates.io-index"
5753 | checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836"
5754 | dependencies = [
5755 | "proc-macro2",
5756 | "quote",
5757 | "syn 2.0.101",
5758 | ]
5759 |
5760 | [[package]]
5761 | name = "windows-interface"
5762 | version = "0.59.1"
5763 | source = "registry+https://github.com/rust-lang/crates.io-index"
5764 | checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8"
5765 | dependencies = [
5766 | "proc-macro2",
5767 | "quote",
5768 | "syn 2.0.101",
5769 | ]
5770 |
5771 | [[package]]
5772 | name = "windows-link"
5773 | version = "0.1.1"
5774 | source = "registry+https://github.com/rust-lang/crates.io-index"
5775 | checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38"
5776 |
5777 | [[package]]
5778 | name = "windows-result"
5779 | version = "0.1.2"
5780 | source = "registry+https://github.com/rust-lang/crates.io-index"
5781 | checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8"
5782 | dependencies = [
5783 | "windows-targets 0.52.6",
5784 | ]
5785 |
5786 | [[package]]
5787 | name = "windows-result"
5788 | version = "0.3.3"
5789 | source = "registry+https://github.com/rust-lang/crates.io-index"
5790 | checksum = "4b895b5356fc36103d0f64dd1e94dfa7ac5633f1c9dd6e80fe9ec4adef69e09d"
5791 | dependencies = [
5792 | "windows-link",
5793 | ]
5794 |
5795 | [[package]]
5796 | name = "windows-strings"
5797 | version = "0.4.1"
5798 | source = "registry+https://github.com/rust-lang/crates.io-index"
5799 | checksum = "2a7ab927b2637c19b3dbe0965e75d8f2d30bdd697a1516191cad2ec4df8fb28a"
5800 | dependencies = [
5801 | "windows-link",
5802 | ]
5803 |
5804 | [[package]]
5805 | name = "windows-sys"
5806 | version = "0.45.0"
5807 | source = "registry+https://github.com/rust-lang/crates.io-index"
5808 | checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
5809 | dependencies = [
5810 | "windows-targets 0.42.2",
5811 | ]
5812 |
5813 | [[package]]
5814 | name = "windows-sys"
5815 | version = "0.48.0"
5816 | source = "registry+https://github.com/rust-lang/crates.io-index"
5817 | checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
5818 | dependencies = [
5819 | "windows-targets 0.48.5",
5820 | ]
5821 |
5822 | [[package]]
5823 | name = "windows-sys"
5824 | version = "0.52.0"
5825 | source = "registry+https://github.com/rust-lang/crates.io-index"
5826 | checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
5827 | dependencies = [
5828 | "windows-targets 0.52.6",
5829 | ]
5830 |
5831 | [[package]]
5832 | name = "windows-sys"
5833 | version = "0.59.0"
5834 | source = "registry+https://github.com/rust-lang/crates.io-index"
5835 | checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
5836 | dependencies = [
5837 | "windows-targets 0.52.6",
5838 | ]
5839 |
5840 | [[package]]
5841 | name = "windows-targets"
5842 | version = "0.42.2"
5843 | source = "registry+https://github.com/rust-lang/crates.io-index"
5844 | checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
5845 | dependencies = [
5846 | "windows_aarch64_gnullvm 0.42.2",
5847 | "windows_aarch64_msvc 0.42.2",
5848 | "windows_i686_gnu 0.42.2",
5849 | "windows_i686_msvc 0.42.2",
5850 | "windows_x86_64_gnu 0.42.2",
5851 | "windows_x86_64_gnullvm 0.42.2",
5852 | "windows_x86_64_msvc 0.42.2",
5853 | ]
5854 |
5855 | [[package]]
5856 | name = "windows-targets"
5857 | version = "0.48.5"
5858 | source = "registry+https://github.com/rust-lang/crates.io-index"
5859 | checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
5860 | dependencies = [
5861 | "windows_aarch64_gnullvm 0.48.5",
5862 | "windows_aarch64_msvc 0.48.5",
5863 | "windows_i686_gnu 0.48.5",
5864 | "windows_i686_msvc 0.48.5",
5865 | "windows_x86_64_gnu 0.48.5",
5866 | "windows_x86_64_gnullvm 0.48.5",
5867 | "windows_x86_64_msvc 0.48.5",
5868 | ]
5869 |
5870 | [[package]]
5871 | name = "windows-targets"
5872 | version = "0.52.6"
5873 | source = "registry+https://github.com/rust-lang/crates.io-index"
5874 | checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
5875 | dependencies = [
5876 | "windows_aarch64_gnullvm 0.52.6",
5877 | "windows_aarch64_msvc 0.52.6",
5878 | "windows_i686_gnu 0.52.6",
5879 | "windows_i686_gnullvm 0.52.6",
5880 | "windows_i686_msvc 0.52.6",
5881 | "windows_x86_64_gnu 0.52.6",
5882 | "windows_x86_64_gnullvm 0.52.6",
5883 | "windows_x86_64_msvc 0.52.6",
5884 | ]
5885 |
5886 | [[package]]
5887 | name = "windows-targets"
5888 | version = "0.53.0"
5889 | source = "registry+https://github.com/rust-lang/crates.io-index"
5890 | checksum = "b1e4c7e8ceaaf9cb7d7507c974735728ab453b67ef8f18febdd7c11fe59dca8b"
5891 | dependencies = [
5892 | "windows_aarch64_gnullvm 0.53.0",
5893 | "windows_aarch64_msvc 0.53.0",
5894 | "windows_i686_gnu 0.53.0",
5895 | "windows_i686_gnullvm 0.53.0",
5896 | "windows_i686_msvc 0.53.0",
5897 | "windows_x86_64_gnu 0.53.0",
5898 | "windows_x86_64_gnullvm 0.53.0",
5899 | "windows_x86_64_msvc 0.53.0",
5900 | ]
5901 |
5902 | [[package]]
5903 | name = "windows_aarch64_gnullvm"
5904 | version = "0.42.2"
5905 | source = "registry+https://github.com/rust-lang/crates.io-index"
5906 | checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
5907 |
5908 | [[package]]
5909 | name = "windows_aarch64_gnullvm"
5910 | version = "0.48.5"
5911 | source = "registry+https://github.com/rust-lang/crates.io-index"
5912 | checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
5913 |
5914 | [[package]]
5915 | name = "windows_aarch64_gnullvm"
5916 | version = "0.52.6"
5917 | source = "registry+https://github.com/rust-lang/crates.io-index"
5918 | checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
5919 |
5920 | [[package]]
5921 | name = "windows_aarch64_gnullvm"
5922 | version = "0.53.0"
5923 | source = "registry+https://github.com/rust-lang/crates.io-index"
5924 | checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764"
5925 |
5926 | [[package]]
5927 | name = "windows_aarch64_msvc"
5928 | version = "0.42.2"
5929 | source = "registry+https://github.com/rust-lang/crates.io-index"
5930 | checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
5931 |
5932 | [[package]]
5933 | name = "windows_aarch64_msvc"
5934 | version = "0.48.5"
5935 | source = "registry+https://github.com/rust-lang/crates.io-index"
5936 | checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
5937 |
5938 | [[package]]
5939 | name = "windows_aarch64_msvc"
5940 | version = "0.52.6"
5941 | source = "registry+https://github.com/rust-lang/crates.io-index"
5942 | checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
5943 |
5944 | [[package]]
5945 | name = "windows_aarch64_msvc"
5946 | version = "0.53.0"
5947 | source = "registry+https://github.com/rust-lang/crates.io-index"
5948 | checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c"
5949 |
5950 | [[package]]
5951 | name = "windows_i686_gnu"
5952 | version = "0.42.2"
5953 | source = "registry+https://github.com/rust-lang/crates.io-index"
5954 | checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
5955 |
5956 | [[package]]
5957 | name = "windows_i686_gnu"
5958 | version = "0.48.5"
5959 | source = "registry+https://github.com/rust-lang/crates.io-index"
5960 | checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
5961 |
5962 | [[package]]
5963 | name = "windows_i686_gnu"
5964 | version = "0.52.6"
5965 | source = "registry+https://github.com/rust-lang/crates.io-index"
5966 | checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
5967 |
5968 | [[package]]
5969 | name = "windows_i686_gnu"
5970 | version = "0.53.0"
5971 | source = "registry+https://github.com/rust-lang/crates.io-index"
5972 | checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3"
5973 |
5974 | [[package]]
5975 | name = "windows_i686_gnullvm"
5976 | version = "0.52.6"
5977 | source = "registry+https://github.com/rust-lang/crates.io-index"
5978 | checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
5979 |
5980 | [[package]]
5981 | name = "windows_i686_gnullvm"
5982 | version = "0.53.0"
5983 | source = "registry+https://github.com/rust-lang/crates.io-index"
5984 | checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11"
5985 |
5986 | [[package]]
5987 | name = "windows_i686_msvc"
5988 | version = "0.42.2"
5989 | source = "registry+https://github.com/rust-lang/crates.io-index"
5990 | checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
5991 |
5992 | [[package]]
5993 | name = "windows_i686_msvc"
5994 | version = "0.48.5"
5995 | source = "registry+https://github.com/rust-lang/crates.io-index"
5996 | checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
5997 |
5998 | [[package]]
5999 | name = "windows_i686_msvc"
6000 | version = "0.52.6"
6001 | source = "registry+https://github.com/rust-lang/crates.io-index"
6002 | checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
6003 |
6004 | [[package]]
6005 | name = "windows_i686_msvc"
6006 | version = "0.53.0"
6007 | source = "registry+https://github.com/rust-lang/crates.io-index"
6008 | checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d"
6009 |
6010 | [[package]]
6011 | name = "windows_x86_64_gnu"
6012 | version = "0.42.2"
6013 | source = "registry+https://github.com/rust-lang/crates.io-index"
6014 | checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
6015 |
6016 | [[package]]
6017 | name = "windows_x86_64_gnu"
6018 | version = "0.48.5"
6019 | source = "registry+https://github.com/rust-lang/crates.io-index"
6020 | checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
6021 |
6022 | [[package]]
6023 | name = "windows_x86_64_gnu"
6024 | version = "0.52.6"
6025 | source = "registry+https://github.com/rust-lang/crates.io-index"
6026 | checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
6027 |
6028 | [[package]]
6029 | name = "windows_x86_64_gnu"
6030 | version = "0.53.0"
6031 | source = "registry+https://github.com/rust-lang/crates.io-index"
6032 | checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba"
6033 |
6034 | [[package]]
6035 | name = "windows_x86_64_gnullvm"
6036 | version = "0.42.2"
6037 | source = "registry+https://github.com/rust-lang/crates.io-index"
6038 | checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
6039 |
6040 | [[package]]
6041 | name = "windows_x86_64_gnullvm"
6042 | version = "0.48.5"
6043 | source = "registry+https://github.com/rust-lang/crates.io-index"
6044 | checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
6045 |
6046 | [[package]]
6047 | name = "windows_x86_64_gnullvm"
6048 | version = "0.52.6"
6049 | source = "registry+https://github.com/rust-lang/crates.io-index"
6050 | checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
6051 |
6052 | [[package]]
6053 | name = "windows_x86_64_gnullvm"
6054 | version = "0.53.0"
6055 | source = "registry+https://github.com/rust-lang/crates.io-index"
6056 | checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57"
6057 |
6058 | [[package]]
6059 | name = "windows_x86_64_msvc"
6060 | version = "0.42.2"
6061 | source = "registry+https://github.com/rust-lang/crates.io-index"
6062 | checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
6063 |
6064 | [[package]]
6065 | name = "windows_x86_64_msvc"
6066 | version = "0.48.5"
6067 | source = "registry+https://github.com/rust-lang/crates.io-index"
6068 | checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
6069 |
6070 | [[package]]
6071 | name = "windows_x86_64_msvc"
6072 | version = "0.52.6"
6073 | source = "registry+https://github.com/rust-lang/crates.io-index"
6074 | checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
6075 |
6076 | [[package]]
6077 | name = "windows_x86_64_msvc"
6078 | version = "0.53.0"
6079 | source = "registry+https://github.com/rust-lang/crates.io-index"
6080 | checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486"
6081 |
6082 | [[package]]
6083 | name = "winnow"
6084 | version = "0.7.10"
6085 | source = "registry+https://github.com/rust-lang/crates.io-index"
6086 | checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec"
6087 | dependencies = [
6088 | "memchr",
6089 | ]
6090 |
6091 | [[package]]
6092 | name = "winreg"
6093 | version = "0.50.0"
6094 | source = "registry+https://github.com/rust-lang/crates.io-index"
6095 | checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1"
6096 | dependencies = [
6097 | "cfg-if",
6098 | "windows-sys 0.48.0",
6099 | ]
6100 |
6101 | [[package]]
6102 | name = "wit-bindgen-rt"
6103 | version = "0.39.0"
6104 | source = "registry+https://github.com/rust-lang/crates.io-index"
6105 | checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1"
6106 | dependencies = [
6107 | "bitflags 2.9.1",
6108 | ]
6109 |
6110 | [[package]]
6111 | name = "writeable"
6112 | version = "0.6.1"
6113 | source = "registry+https://github.com/rust-lang/crates.io-index"
6114 | checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb"
6115 |
6116 | [[package]]
6117 | name = "xattr"
6118 | version = "1.5.0"
6119 | source = "registry+https://github.com/rust-lang/crates.io-index"
6120 | checksum = "0d65cbf2f12c15564212d48f4e3dfb87923d25d611f2aed18f4cb23f0413d89e"
6121 | dependencies = [
6122 | "libc",
6123 | "rustix 1.0.7",
6124 | ]
6125 |
6126 | [[package]]
6127 | name = "xml-rs"
6128 | version = "0.8.26"
6129 | source = "registry+https://github.com/rust-lang/crates.io-index"
6130 | checksum = "a62ce76d9b56901b19a74f19431b0d8b3bc7ca4ad685a746dfd78ca8f4fc6bda"
6131 |
6132 | [[package]]
6133 | name = "xml5ever"
6134 | version = "0.16.2"
6135 | source = "registry+https://github.com/rust-lang/crates.io-index"
6136 | checksum = "9234163818fd8e2418fcde330655e757900d4236acd8cc70fef345ef91f6d865"
6137 | dependencies = [
6138 | "log",
6139 | "mac",
6140 | "markup5ever 0.10.1",
6141 | "time 0.1.45",
6142 | ]
6143 |
6144 | [[package]]
6145 | name = "yoke"
6146 | version = "0.7.5"
6147 | source = "registry+https://github.com/rust-lang/crates.io-index"
6148 | checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40"
6149 | dependencies = [
6150 | "serde",
6151 | "stable_deref_trait",
6152 | "yoke-derive 0.7.5",
6153 | "zerofrom",
6154 | ]
6155 |
6156 | [[package]]
6157 | name = "yoke"
6158 | version = "0.8.0"
6159 | source = "registry+https://github.com/rust-lang/crates.io-index"
6160 | checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc"
6161 | dependencies = [
6162 | "serde",
6163 | "stable_deref_trait",
6164 | "yoke-derive 0.8.0",
6165 | "zerofrom",
6166 | ]
6167 |
6168 | [[package]]
6169 | name = "yoke-derive"
6170 | version = "0.7.5"
6171 | source = "registry+https://github.com/rust-lang/crates.io-index"
6172 | checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154"
6173 | dependencies = [
6174 | "proc-macro2",
6175 | "quote",
6176 | "syn 2.0.101",
6177 | "synstructure",
6178 | ]
6179 |
6180 | [[package]]
6181 | name = "yoke-derive"
6182 | version = "0.8.0"
6183 | source = "registry+https://github.com/rust-lang/crates.io-index"
6184 | checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6"
6185 | dependencies = [
6186 | "proc-macro2",
6187 | "quote",
6188 | "syn 2.0.101",
6189 | "synstructure",
6190 | ]
6191 |
6192 | [[package]]
6193 | name = "zerocopy"
6194 | version = "0.8.25"
6195 | source = "registry+https://github.com/rust-lang/crates.io-index"
6196 | checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb"
6197 | dependencies = [
6198 | "zerocopy-derive",
6199 | ]
6200 |
6201 | [[package]]
6202 | name = "zerocopy-derive"
6203 | version = "0.8.25"
6204 | source = "registry+https://github.com/rust-lang/crates.io-index"
6205 | checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef"
6206 | dependencies = [
6207 | "proc-macro2",
6208 | "quote",
6209 | "syn 2.0.101",
6210 | ]
6211 |
6212 | [[package]]
6213 | name = "zerofrom"
6214 | version = "0.1.6"
6215 | source = "registry+https://github.com/rust-lang/crates.io-index"
6216 | checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5"
6217 | dependencies = [
6218 | "zerofrom-derive",
6219 | ]
6220 |
6221 | [[package]]
6222 | name = "zerofrom-derive"
6223 | version = "0.1.6"
6224 | source = "registry+https://github.com/rust-lang/crates.io-index"
6225 | checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502"
6226 | dependencies = [
6227 | "proc-macro2",
6228 | "quote",
6229 | "syn 2.0.101",
6230 | "synstructure",
6231 | ]
6232 |
6233 | [[package]]
6234 | name = "zeroize"
6235 | version = "1.8.1"
6236 | source = "registry+https://github.com/rust-lang/crates.io-index"
6237 | checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde"
6238 |
6239 | [[package]]
6240 | name = "zerotrie"
6241 | version = "0.2.2"
6242 | source = "registry+https://github.com/rust-lang/crates.io-index"
6243 | checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595"
6244 | dependencies = [
6245 | "displaydoc",
6246 | "yoke 0.8.0",
6247 | "zerofrom",
6248 | ]
6249 |
6250 | [[package]]
6251 | name = "zerovec"
6252 | version = "0.11.2"
6253 | source = "registry+https://github.com/rust-lang/crates.io-index"
6254 | checksum = "4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428"
6255 | dependencies = [
6256 | "yoke 0.8.0",
6257 | "zerofrom",
6258 | "zerovec-derive",
6259 | ]
6260 |
6261 | [[package]]
6262 | name = "zerovec-derive"
6263 | version = "0.11.1"
6264 | source = "registry+https://github.com/rust-lang/crates.io-index"
6265 | checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f"
6266 | dependencies = [
6267 | "proc-macro2",
6268 | "quote",
6269 | "syn 2.0.101",
6270 | ]
6271 |
6272 | [[package]]
6273 | name = "zip"
6274 | version = "0.6.6"
6275 | source = "registry+https://github.com/rust-lang/crates.io-index"
6276 | checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261"
6277 | dependencies = [
6278 | "byteorder",
6279 | "crc32fast",
6280 | "crossbeam-utils",
6281 | "flate2",
6282 | ]
6283 |
6284 | [[package]]
6285 | name = "zip"
6286 | version = "1.1.4"
6287 | source = "registry+https://github.com/rust-lang/crates.io-index"
6288 | checksum = "9cc23c04387f4da0374be4533ad1208cbb091d5c11d070dfef13676ad6497164"
6289 | dependencies = [
6290 | "arbitrary",
6291 | "crc32fast",
6292 | "crossbeam-utils",
6293 | "displaydoc",
6294 | "indexmap 2.9.0",
6295 | "num_enum",
6296 | "thiserror 1.0.69",
6297 | ]
6298 |
6299 | [[package]]
6300 | name = "zune-inflate"
6301 | version = "0.2.54"
6302 | source = "registry+https://github.com/rust-lang/crates.io-index"
6303 | checksum = "73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02"
6304 | dependencies = [
6305 | "simd-adler32",
6306 | ]
6307 |
--------------------------------------------------------------------------------