# Firenook 0.2.0-next.5 release notes

> Firenook 0.2.0-next.5, 17 October 2026: the seed check reads file details, files operating systems write never block a start, and more.

Saved data: a quick seed check, quick repairs, clean stops. Published on 17 October 2026, as a preview.

`npm install --save-dev firenook@0.2.0-next.5`

[Every release](https://firenook.dev/changelog)

A newer release is out: [Firenook 0.2.0](https://firenook.dev/changelog/0.2.0), the first release for public use.

## What changed

9 changes you will notice, as the release notes give them.

1. ### The seed check reads file details

   Saved data (`--state-dir` with `--resume-state`) is picked up after comparing each seed file's size and times with the record made at the import (`native-seed.json`, beside the receipt); only a file whose details changed is read. On a 7.8 GB seed the check went from 23 to 26 s to under a second.

2. ### Files operating systems write never block a start

   : `.DS_Store`, `._*`, `Thumbs.db`, `desktop.ini`, `__MACOSX` and the like are ignored, and the Storage import skips `._*` files.

3. ### A first import hashes the seed beside the import

   , on worker threads, instead of reading it twice in full around it.

4. ### A changed seed names its files

   , and `firenook state:adopt-seed --state-dir DIR --import DIR` keeps the data with the seed as it is now (the previous receipt is kept beside the new one).

5. ### Quick repairs

   The store's durable commits save what a repair needs, so a start after a crash or a killed process repairs in moments instead of reading the whole store. `--durability per-commit` leaves it out to keep its commit latency.

6. ### A repair shows its progress

   : the Firestore row reads `repairing NN%` with the store's size, and the plain log prints how far it has got.

7. ### A stop while starting closes the data cleanly

   Ctrl-C, SIGTERM, a closed terminal and the launcher's pipe are listened for from the first moment: a seed check or a repair is abandoned with nothing opened, an import into a fresh run's directory ends at once, one into saved data finishes first. Nothing is exported before the emulators served anything.

8. ### The start-up limit counts quiet time

   : a start that reports as it goes, such as a long repair, is not stopped after 20 minutes.

9. ### Saved data from 0.2.0-next.4 and earlier

   is checked in full once, then recorded; data saved by 0.2.0-next.5 stays readable by 0.2.0-next.4. The state format is unchanged: the record is a new file beside the receipt.

## What got faster

Measured on the same data with 0.2.0-next.4 and with 0.2.0-next.5. Lower is better.

### Checking a 7.8 GB seed before a resumed start

23× sooner, at least

- [0.2.0-next.4](https://firenook.dev/changelog/0.2.0-next.4)

  23–26 s

- [0.2.0-next.5](https://firenook.dev/changelog/0.2.0-next.5)

  under 1 s

Every multiple is rounded down. [Every release’s measures](https://firenook.dev/changelog#faster).

## Your data

What this release does to data an earlier one kept, and to the ports and protocols.

- No emulator protocol or port changed.

## How it was checked

The source it was built from, the runs it passed, and how it was published.

- Pin the engine to `18becb031bed1459133a5307790edb0afe19b0ca`, the merge of [PR #85](https://github.com/firenook-dev/firenook/pull/85) (the seed record, quick repairs, clean stops while starting) on 0.2.0-next.4. Its tree is the PR head's, `2651940`, which passed CI ([run 39048498837](https://github.com/firenook-dev/firenook/actions/runs/39048498837)) and the five-platform packed-install matrix ([run 39048498797](https://github.com/firenook-dev/firenook/actions/runs/39048498797)).

[The release on GitHub](https://github.com/firenook-dev/firenook/releases/tag/npm-v0.2.0-next.5).

## The latest is 0.2.0

The first release for public use. Install it, and read what changed on the way.

`npm install --save-dev firenook@0.2.0`

[Read the 0.2.0 notes](https://firenook.dev/changelog/0.2.0)
