Skip to content

v0.22.0

Choose a tag to compare

@github-actions github-actions released this 25 Jun 18:03

What's New in v0.22.0

🩺 Diagnostic file logging

New opt-in log_to_file setting writes a rotating log to user_files/ankimcp.log (~1 MB × 3 backups) with secrets — the http_api_key, OAuth tokens, and any Bearer token — redacted before anything reaches disk. The settings dialog gains Open log folder and Copy diagnostics buttons. When the add-on can't start (for example a blocked pydantic_core download), you can now capture and share the real cause instead of a cryptic error. Off by default.

🔁 More resilient first-run dependency download

The runtime pydantic_core download is hardened: it retries transient native-library file locks, uses an atomic cache swap so a flaky re-download never destroys a working install, and reports the real failure reason (network, DNS, SSL, …) instead of a generic "not available".

🔎 Clearer dependency-conflict diagnostics

When another add-on has already loaded a shared library, the startup warning now reports the actual version and file path of the conflicting copy — making cross-add-on issues far easier to pin down.

Under the hood

  • Packaging: exclude the runtime _cache/ directory from the .ankiaddon, so a local build can never ship a stray platform-specific native binary.
  • CI: per-tag concurrency guard on the release workflow.

Validated on macOS (arm64), Windows 11 (arm64), Ubuntu/snap (aarch64), and NixOS.

Full Changelog: v0.21.2...v0.22.0