Files
Mohamed Boudra 5c581c2486 fix(server): convert content-search coordinates in one pass per file
Translating ripgrep byte offsets by decoding and splitting the whole prefix
and suffix for every occurrence costs the file per match. A 1,001,400-byte
file of a million empty lines followed by 200 matches blocked the host for
5,888ms and then answered "ok", 888ms after its own five-second budget.

A single forward cursor per file answers every occurrence, decoding each
needed line once and advancing the UTF-16 column from the previous match on
that line. Byte bounds, saved-revision validation, CR/CRLF/LF lines, BOM
handling, columns and original match text are unchanged.

Conversion also checks the operation deadline directly. The timer alone
cannot end an operation that overruns inside synchronous conversion, because
cleanup clears it before it can run.

Also scope the Windows skip in the content-search browser spec to the
literal-backslash fixture. At file scope it annotated the whole suite and
disabled all 12 journeys on Windows.
2026-09-10 15:17:14 +02:00
..
2026-08-27 14:25:31 +02:00
2026-06-09 10:00:33 +07:00
2026-09-08 10:19:53 +02:00
2025-11-24 22:31:41 +01:00

Welcome to your Expo app 👋

This is an Expo project created with create-expo-app.

Get started

  1. Install dependencies

    npm install
    
  2. Start the app

    npx expo start
    

In the output, you'll find options to open the app in a

You can start developing by editing the files inside the app directory. This project uses file-based routing.

Get a fresh project

When you're ready, run:

npm run reset-project

This command will move the starter code to the app-example directory and create a blank app directory where you can start developing.

Learn more

To learn more about developing your project with Expo, look at the following resources:

Join the community

Join our community of developers creating universal apps.

Dictation debugging

Set EXPO_PUBLIC_ENABLE_AUDIO_DEBUG=1 before running npx expo start to render the in-app audio debug card. Pair it with the server-side STT_DEBUG_AUDIO_DIR flag so every dictation includes a copyable path to the saved raw audio file.