v0.10.6

chaitin/SafeLinev0.10.6Jan 16, 2024by github-actions[bot]

AI Summary

A major architectural overhaul switching the codebase to asynchronous processing and introducing a JSON-based configuration system with schema validation and custom adapter support.

Key Highlights

  • Asynchronous codebase migration
  • Configurable RGA via JSON schema
  • Custom subprocess-spawning adapters
  • SQLite cache database

Breaking Changes

  • Adapter interface changed from synchronous to asynchronous
  • Cache database changed to SQLite

New Features

  • Configurable RGA via config file
  • Custom subprocess-spawning adapters
  • Mbox adapter
  • Debug logs and performance timings

Full Release Notes

# 0.10.6

This was originally supposed to be version 1.0.0, but I don't feel confident enough in the stability to call it that.

Highlights:

- rga is now configurable via a config file (~/.config/ripgrep-all/config.jsonc) that is generated on first use, including schema.
- Custom subprocess-spawning adapters can be defined via config file. See https://github.com/phiresky/ripgrep-all/wiki
- External adapters can be shared with the community at https://github.com/phiresky/ripgrep-all/discussions

Others:

- cache database is now sqlite for inspectability and robustness
- mbox adapter (@FliegendeWurst https://github.com/phiresky/ripgrep-all/pull/104)
- auto generate parts of the readme
- add loads of debug logs and performance timings when `--debug` is used
- better error messages via `anyhow`
- add cross-platform rga-fzf binary
- change whole code base to be async
- change adapter interface from `(&Read, &Write) -> ()` to `AsyncRead -> AsyncRead` to allow chaining of adapters