{
  "schema_version": 2,
  "slug": "anki",
  "name": "Anki",
  "publisher": "Anki",
  "author": "Ankitects",
  "ids": {
    "winget": "Anki.Anki",
    "moniker": "anki",
    "homebrew_cask": "anki"
  },
  "platforms": [
    "windows",
    "macos"
  ],
  "summary": "Powerful and intelligent flash cards.",
  "description": "Anki is a program which makes remembering things easy.\nBecause it's a lot more efficient than traditional study methods, you can either greatly decrease your time spent studying, or greatly increase the amount you learn.\nAnyone who needs to remember things in their daily life can benefit from Anki.\nSince it is content-agnostic and supports images, audio, videos and scientific markup (via LaTeX), the possibilities are endless.",
  "tags": [
    "education",
    "flashcard",
    "learn"
  ],
  "locale": "en-US",
  "urls": {
    "homepage": "https://apps.ankiweb.net/",
    "publisher": "https://github.com/ankitects/anki",
    "support": "https://github.com/ankitects/anki/issues",
    "bug_tracker": "https://github.com/ankitects/anki/issues",
    "release_notes": "https://github.com/ankitects/anki/releases/tag/26.09.3",
    "documentation": [
      {
        "label": "Anki Manual",
        "url": "https://docs.ankiweb.net/"
      },
      {
        "label": "FAQ",
        "url": "https://faqs.ankiweb.net/"
      }
    ]
  },
  "license": {
    "name": "AGPL-3.0-or-later",
    "url": "https://github.com/ankitects/anki/blob/HEAD/LICENSE",
    "spdx": "AGPL-3.0-or-later",
    "copyright_url": "https://github.com/ankitects/anki/blob/HEAD/LICENSE"
  },
  "pricing": {
    "status": "open-source",
    "source": "derived-from-license"
  },
  "latest_versions": {
    "windows": "26.09.3",
    "macos": "26.09.3"
  },
  "last_updated": "2026-09-23",
  "versions_total": {
    "windows": 46,
    "macos": 1
  },
  "versions": [
    {
      "platform": "windows",
      "version": "26.09.3",
      "release_date": "2026-09-23",
      "release_notes": "## What's Changed\r\n\r\n⚠️ Please upgrade to [26.09](https://github.com/ankitects/anki/releases/tag/26.09)+ as soon as possible as it includes important security fixes.\r\n\r\n### Fixes\r\n\r\n• Fix system-wide app upgrades on Windows not properly replacing old versions and causing startup crashes by @abdnh in https://github.com/ankitects/anki/pull/5626\r\n• Fix \"Card modified\" error in the Cards Info screen when FSRS disabled or memory state is missing by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5648\r\n• Append app version to the extracted tarball directory name on Linux by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5662\r\n• Force software rendering in safe mode by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5637\r\n• Fix the \"Please restart to save changes\" message shown multiple times in the preferences screen in some cases by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5641\r\n\r\n### Documentation\r\n\r\n• Improve manual translation instructions by @wofiporia in https://github.com/ankitects/anki/pull/5519\r\n\r\n### Development\r\n\r\n• Update Python dependencies to match bundled dependencies in 26.05+ by @abdnh in https://github.com/ankitects/anki/pull/5625\r\n• Update Rust dependencies to fix CI failure by @abdnh in https://github.com/ankitects/anki/pull/5608\r\n• Add tests for config.py and stdmodels.py by @roostwp07 and @fernandolins in https://github.com/ankitects/anki/pull/5513\r\n• CI：Track releases in the SonarCloud project version by @fernandolins in https://github.com/ankitects/anki/pull/5634\r\n• CI：Fetch PR base branch so SonarCloud diffs only changed files by @fernandolins in https://github.com/ankitects/anki/pull/5659\r\n• Refactor：use col.fsrs_enabled in more places by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5651\r\n\r\n## New Contributors\r\n\r\n• @wofiporia made their first contribution in https://github.com/ankitects/anki/pull/5519\r\n\r\n**Full Changelog**：https://github.com/ankitects/anki/compare/26.09.2...26.09.3",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/26.09.3",
      "manifest_version": "1.12.0",
      "manifest_dir": "manifests/a/Anki/Anki/26.09.3",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "wix",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/26.09.3/anki-26.09.3-win-x64.msi",
          "host": "github.com",
          "filename": "anki-26.09.3-win-x64.msi",
          "sha256": "8a45823d1c31017cebb7d3af4493d69b6ae3c185345fcb2390ede4af01e0a950",
          "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "publisher": "Damien Elmes",
              "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
              "upgrade_code": "{F8DAE92C-75C4-5C37-9337-CE5208C5F179}"
            }
          ]
        },
        {
          "platform": "windows",
          "architecture": "arm64",
          "type": "wix",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/26.09.3/anki-26.09.3-win-arm64.msi",
          "host": "github.com",
          "filename": "anki-26.09.3-win-arm64.msi",
          "sha256": "445d5973ec92e8ed4fb09d606aed084e2aaeeaba853b53b5608a6f6cae66ee2a",
          "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "publisher": "Damien Elmes",
              "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
              "upgrade_code": "{F8DAE92C-75C4-5C37-9337-CE5208C5F179}"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "26.09.2",
      "release_date": "2026-09-15",
      "release_notes": "## What's Changed\r\n\r\nThis is a bugfix/security patch for issues reported in [26.09](https://github.com/ankitects/anki/releases/tag/26.09).\r\n\r\n**⚠️ Please upgrade to 26.09+ as soon as possible as it includes important security fixes.**\r\n\r\n### Notable Changes\r\n\r\n• Fix a startup crash on Windows affecting users who have leftover files from pre-25.07 installations by @abdnh in https://github.com/ankitects/anki/pull/5605\r\n• Security：Prevent external links in deck descriptions rendered in the overview/congrats screen from manipulating the page in certain cases when clicked.\r\n\r\n### Development\r\n\r\n• Run static SonarCloud analysis on fork PRs by @fernandolins in https://github.com/ankitects/anki/pull/5596\r\n• Testing：Improve tests for the get_scheduling_states API by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5145\r\n• Reduce differences between development and packaged builds by locking bundled dependencies by @abdnh in https://github.com/ankitects/anki/pull/5593\r\n• Testing：cover media/service.rs by @iamllama in https://github.com/ankitects/anki/pull/5588\r\n• Testing：add unit coverage for card_rendering service by @fernandolins in https://github.com/ankitects/anki/pull/5587\r\n• Testing：cover tags/service.rs by @fernandolins in https://github.com/ankitects/anki/pull/5606\r\n\r\n### Documentation\r\n\r\n• Document Linux TTS setup by @argrig666 in https://github.com/ankitects/anki/pull/5600\r\n• Add redirects for mdbook pages by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5601\r\n\r\n## New Contributors\r\n\r\n• @argrig666 made their first contribution in https://github.com/ankitects/anki/pull/5600\r\n\r\n**Full Changelog**：https://github.com/ankitects/anki/compare/26.09...26.09.2",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/26.09.2",
      "manifest_version": "1.12.0",
      "manifest_dir": "manifests/a/Anki/Anki/26.09.2",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "wix",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/26.09.2/anki-26.09.2-win-x64.msi",
          "host": "github.com",
          "filename": "anki-26.09.2-win-x64.msi",
          "sha256": "91e211db3d9f61e6a7dfed966966d677c9fb580cb8b1a97891a4f7bcdd8629b5",
          "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "publisher": "Damien Elmes",
              "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
              "upgrade_code": "{F8DAE92C-75C4-5C37-9337-CE5208C5F179}"
            }
          ]
        },
        {
          "platform": "windows",
          "architecture": "arm64",
          "type": "wix",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/26.09.2/anki-26.09.2-win-arm64.msi",
          "host": "github.com",
          "filename": "anki-26.09.2-win-arm64.msi",
          "sha256": "81aaaa0600de30aea8514c392de2a068f5b290cb9b6a31058dd187280e57e924",
          "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "publisher": "Damien Elmes",
              "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
              "upgrade_code": "{F8DAE92C-75C4-5C37-9337-CE5208C5F179}"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "26.09",
      "release_date": "2026-09-14",
      "release_notes": "## What's Changed\r\n\r\n### Security Fixes\r\n\r\n**⚠️ This update contains important security fixes. Please upgrade as soon as possible**.\r\n\r\n• Notes had the ability to read local files when viewed in the editor. (Thanks to @caleblee789 for the report)\r\n• The \"Open image\" context menu action in the editor did not validate the file's extension, which allowed decks to execute dangerous files on some systems. (Thanks to @lappas-m for the report)\r\n\r\n### Add-on Compatibility Note\r\n\r\nThe following legacy modules have been removed：`anki.importing` and `anki.exporting`. See the [docs](https://anki.mintlify.app/addons/the-anki-module) for alternatives.\r\n\r\n_Some compatibility wrappers were added but they were only tested with AnkiConnect add-on and will be removed in the future._\r\n\r\n### Notable Changes\r\n\r\n• Fix audio playback in macOS 27 by @abdnh in https://github.com/ankitects/anki/pull/5363\r\n• Fix audio not being played automatically when attached in the editor by @JaksonSouza in https://github.com/ankitects/anki/pull/5320\r\n• Recompute FSRS data after changing deck by @user1823 in https://github.com/ankitects/anki/pull/5339\r\n• Update FSRS to [6.6.2](https://github.com/open-spaced-repetition/fsrs-rs/releases/tag/v6.6.2) by @asukaminato0721 in https://github.com/ankitects/anki/pull/5494\r\n• Improve performance of reviewer initialization by lazy-loading MathJax by @BrayanDSO and @iamllama in https://github.com/ankitects/anki/pull/5171\r\n• Remove Python-based legacy importing/exporting handling by @chrislongros in https://github.com/ankitects/anki/pull/5153\r\n\r\n### Other Fixes\r\n\r\n• Fix HTML dropdowns/datepickers growing indefinitely with scaled UI on Windows by @abdnh in https://github.com/ankitects/anki/pull/5396\r\n• Fix macOS/Linux crashes when the SIGPIPE signal is triggered (reported in some add-ons) by @abdnh in https://github.com/ankitects/anki/pull/5545\r\n• Fix the deck selector in the Stats screen not refreshing graphs in some cases by @iamllama in https://github.com/ankitects/anki/pull/5486\r\n• Disallow future dates in \"Ignore cards reviewed before\" by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5294\r\n• Fix font size in the FSRS simulator graph by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5099\r\n• Improve display of error messages in the CSV import screen by @MendezCarl in https://github.com/ankitects/anki/pull/5484\r\n• Hide FSRS-only sort orders in filtered deck dialog when FSRS is disabled by @zaveshaa in https://github.com/ankitects/anki/pull/5407\r\n• Refresh the reviewer toolbar's background after theme changes by @jamesliuai in https://github.com/ankitects/anki/pull/5241\r\n• Add wrappers for the AnkiPackageImporter/AnkiPackageExporter APIs for compatibility with the AnkiConnect add-on by @abdnh in https://github.com/ankitects/anki/pull/5547\r\n• Relax CSP restrictions to allow iframes in decks to load CSS styles by @twwn in https://github.com/ankitects/anki/pull/5525\r\n• Update to Qt 6.11.2 by @abdnh in https://github.com/ankitects/anki/pull/5539\r\n• Write logs to crash.log in the base Anki folder after crashes by @abdnh in https://github.com/ankitects/anki/pull/5546\r\n• Fix audio copy & paste handling in the experimental editor by @iamllama in https://github.com/ankitects/anki/pull/5337\r\n• Hide ease when FSRS is enabled but there is no memory state by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5277\r\n• Improve error reporting for the Tools>Check for Updates feature by @abdnh in https://github.com/ankitects/anki/pull/5295\r\n• Update FSRS memory state when card info opened by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5326\r\n• Fix MSI install is blocked if uninstall.exe exists at a drive root by @abdnh in https://github.com/ankitects/anki/pull/5360\r\n• Fix MathJax lazy loading causing flickering in some templates by @iamllama in https://github.com/ankitects/anki/pull/5254\r\n• Fix Add/Edit screens not closing in the experimental editor on some systems by @iamllama in https://github.com/ankitects/anki/pull/5373\r\n• Treat $ literally in non-regex find&replace replacements by @krMaynard in https://github.com/ankitects/anki/pull/5216\r\n• Fix experimental editor not playing pasted/dropped audio by @abdnh in https://github.com/ankitects/anki/pull/5329\r\n• Fix calendar graph year navigation buttons position in RTL layouts by @iDavi in https://github.com/ankitects/anki/pull/5103\r\n• Mirror help icon for arabic script rtl langs by @iDavi in https://github.com/ankitects/anki/pull/5105\r\n• Mirror toggle switches in RTL layouts by @iDavi in https://github.com/ankitects/anki/pull/5214\r\n• Apply RTL direction for some languages such as Uyghur in webview pages by @abdnh in https://github.com/ankitects/anki/pull/5274\r\n• Set webview font size to system font size in preferences menu by @GithubAnon0000 in https://github.com/ankitects/anki/pull/5174\r\n• Preserve scroll position after collapsing/expanding decks by @abdnh in https://github.com/ankitects/anki/pull/5378\r\n• Separate add-on entries in Tools menu with separator by @qais8r in https://github.com/ankitects/anki/pull/5124\r\n• Rename Markdown deck description checkbox to be clearer by @zaveshaa in https://github.com/ankitects/anki/pull/5489\r\n• Update redirected Browse Add-ons URL by @schmidhauser in https://github.com/ankitects/anki/pull/5290\r\n• Add a plural form for the tags field label in the editor by @Arthur-Milchior in https://github.com/ankitects/anki/pull/5305\r\n• Preserve pasted editor images and respect their format preference in the experimental editor by @praxish in https://github.com/ankitects/anki/pull/5568\r\n• Prefer packaged add-on name for AnkiWeb installs by @schmidhauser in https://github.com/ankitects/anki/pull/5362\r\n• Ensure editor is initialized before triggering browser hooks by @abdnh in https://github.com/ankitects/anki/pull/5348\r\n• Avoid KeyError on missing Content-type header in mediasrv by @fernandolins in https://github.com/ankitects/anki/pull/5366\r\n• Replace asserts inside except clauses with explicit error handling by @fernandolins in https://github.com/ankitects/anki/pull/5365\r\n• Use 'Add Media' string for the title of the media file picker in the editor by @abdnh in https://github.com/ankitects/anki/pull/5402\r\n\r\n### Documentation Changes\r\n\r\n• Add a script to convert documentation in the old mdBook format for inclusion in the new Mintlify-based website by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5483\r\n• Update Persian manual translation link by @MSadraShakouri in https://github.com/ankitects/anki/pull/5405\r\n• Document the import_anki_package and export_anki_package APIs by @roostwp07 in https://github.com/ankitects/anki/pull/5328\r\n• Add tip to disable \"check on save\" in Rust analyzer on low-end machines by @user1823 in https://github.com/ankitects/anki/pull/4489\r\n• Clarify docs license by @abdnh in https://github.com/ankitects/anki/pull/5292\r\n• Exclude docs contributions from BSD license check by @SzilvasiPeter in https://github.com/ankitects/anki/pull/5267\r\n• Fix typos in https://github.com/ankitects/anki/pull/5158\r\n• Sync post-migration manual updates by @MSadraShakouri in https://github.com/ankitects/anki/pull/5393\r\n• Replace docs/ with symlinks by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5031\r\n• Fix broken links in dev docs by @abdnh in https://github.com/ankitects/anki/pull/5410\r\n• Clarify Windows x64 and ARM64 installation requirements by @praxish in https://github.com/ankitects/anki/pull/5582\r\n\r\n### Development Changes\r\n\r\n• Add unit testing guidelines by @fernandolins in https://github.com/ankitects/anki/pull/5522\r\n• Reduce dependabot noise with quarterly schedule and major grouping by @fernandolins in https://github.com/ankitects/anki/pull/5280\r\n• Document dependabot update process by @fernandolins in https://github.com/ankitects/anki/pull/5370\r\n• Testing：Improve coverage of notes service by @abdnh in https://github.com/ankitects/anki/pull/5509\r\n• Testing：Cover the decks service layer by @fernandolins in https://github.com/ankitects/anki/pull/5514\r\n• Preserve FSRS unlock timeout across mounts by @caleblee789 in https://github.com/ankitects/anki/pull/5536\r\n• Update browser compatibility database to fix CI failure by @abdnh in https://github.com/ankitects/anki/pull/5520\r\n• Unhook AnkiWebView when destroyed by @iamllama in https://github.com/ankitects/anki/pull/5255\r\n• Fix legacy editor's media buttons not using the legacy routines by @abdnh in https://github.com/ankitects/anki/pull/5330\r\n• Update VS Code's settings.json by @abdnh in https://github.com/ankitects/anki/pull/5303\r\n• Configure mypy extension for VS Code by @abdnh in https://github.com/ankitects/anki/pull/5317\r\n• Add browse empty/error state i18n strings by @ianoff in https://github.com/ankitects/anki/pull/5263\r\n• Set CARGO_TARGET_DIR for coverage-rust scripts by @abdnh in https://github.com/ankitects/anki/pull/5266\r\n• Replace use of EmbarkStudios/cargo-deny-action by @iamllama in https://github.com/ankitects/anki/pull/5180\r\n• Update Python test coverage threshold by @abdnh in https://github.com/ankitects/anki/pull/5299\r\n• Replace prepare-release workflow with local script (closes #5273) by @roostwp07 in https://github.com/ankitects/anki/pull/5288\r\n• Use cargo-nextest for Rust coverage tests (closes #5162) by @roostwp07 in https://github.com/ankitects/anki/pull/5169\r\n• Add tests for FSRS simulator by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5150\r\n• Add tests for fixing incorrect last review time entries by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5146\r\n• Do not let ftl string copy/move land new strings in deprecated sections by @ianoff in https://github.com/ankitects/anki/pull/5332\r\n• Add portability fixes for FreeBSD by @chrislongros in https://github.com/ankitects/anki/pull/5300\r\n• Apply a consistent Cargo profile in CI by @abdnh in https://github.com/ankitects/anki/pull/5133\r\n• Fix missing issue bot does not allow url in linked issues by @Luc-Mcgrady in https://github.com/ankitects/anki/pull/5287\r\n• Mov",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/26.09",
      "manifest_version": "1.12.0",
      "manifest_dir": "manifests/a/Anki/Anki/26.09",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "wix",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/26.09/anki-26.09-win-x64.msi",
          "host": "github.com",
          "filename": "anki-26.09-win-x64.msi",
          "sha256": "6490598460fe65c501cac19ad987a54457ccd49feb5706be0c0a0f7b0c0656a3",
          "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "publisher": "Damien Elmes",
              "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
              "upgrade_code": "{F8DAE92C-75C4-5C37-9337-CE5208C5F179}"
            }
          ]
        },
        {
          "platform": "windows",
          "architecture": "arm64",
          "type": "wix",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/26.09/anki-26.09-win-arm64.msi",
          "host": "github.com",
          "filename": "anki-26.09-win-arm64.msi",
          "sha256": "cbc6b07fc75dbd56a98501038f35b127f6c876b95ec2e204c9037bb9e4154695",
          "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "publisher": "Damien Elmes",
              "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
              "upgrade_code": "{F8DAE92C-75C4-5C37-9337-CE5208C5F179}"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "26.08.1",
      "release_date": "2026-06-15",
      "release_notes": "What's Changed\nNew Installer\nThis release replaces the terminal-based launcher introduced in 25.07 with a more standard installation process:\n• Anki no longer shows a terminal on installation/update.\n• Installation no longer requires network access.\n• Updates can be installed using Tools>Check For Updates.\n• A standard MSI installer is provided for Windows.\n• A Windows ARM64 build is available.\n• The macOS builds require macOS 13 or later.\n• The Linux x86_64 build requires glibc 2.35+.\n• The Linux aarch64 build requires glibc 2.39+.\n• The minimum supported Python version is now 3.10 (The official builds still ship Python 3.13).\n• Qt has been updated to 6.11\nNote：The Tools>Upgrade/Downgrade option in 25.07+ cannot be used to upgrade to this version due to packaging changes.\nBy @abdnh @andrewsanchez @fernandolins @Luc-Mcgrady @iamllama in #4629\nDocumentation Improvements\n• All user/developer documentation is now unified under a single website deployed from the main repo. The different docs repos will be archived and existing issues moved soon. By @andrewsanchez @Luc-Mcgrady @abdnh in #4882\n• Python API docs can now be viewed in dev-docs.ankiweb.net. By @andrewsanchez in #4579\nFSRS/Scheduling Changes\n• Rework the efficiency ratio graph in FSRS Help Me Decide by @Luc-Mcgrady in #4452\n• Require three left-clicks to unlock FSRS parameter editing by @Luc-Mcgrady in #4372\n• Speed up FSRS memory state updates by batching calculations by @DanielPechersky in #4335\n• Improve performance of reviews_for_fsrs function by @L-M-Sherlock in #4339\n• Fix/first and latest review dates should only consider entries with a rating. by @L-M-Sherlock in #4360\n• Fix/Ensure fuzz doesn't go backward during rescheduling by @user1823 in #4364\n• Fix/Per deck retention not used when card is moved to filtered deck by @Luc-Mcgrady in #4413\n• Restore retrievability SQL fix that was accidentally reverted by @Luc-Mcgrady in #4424\n• Fix/rounded corners on FSRS Simulator modal by @Luc-Mcgrady in #4535\n• Fix FSRS short-term schedule being ignored when using default parameters by @L-M-Sherlock in #4412\n• Use quantiles for FSRS retrievability stat ranges by @Luc-Mcgrady in #4425\n• Make descending retrievability a pure R sort by @user1823 in #4400\n• Don't reschedule suspended cards by @L-M-Sherlock in #4453\n• Apply deck-specific load balancer settings to filtered deck study by @MoamenAbdelsattar in #4574\n• Prioritize previously-attempted cards in the intraday learning queue by @user1823 in #4393\n• Improve sibling dispersal in the load balancer, including across presets by @jakeprobst in #4640\n• Fix desired retention not refreshing when switching deck option presets by @barisayyildiz in #4610\n• Improve FSRS invalid parameters error message with FAQ link by @AmandaSternberg-creator in #4342\n• Clarify ambiguous \"this value\" wording in desired retention tooltip by @Expertium in #4647\n• Expose setParameterUnlockClickTimeoutMs for FSRS parameter unlock timeout by @Luc-Mcgrady in #4810\n• Export last_interval to Python by @user1823 in #4365\n• Expose card decay and desired retention to the custom scheduler by @user1823 in #4880\n• Remove broken retention rate help link in stats by @Hannanilsenn in #4329\nOther Notable Changes\n• Show saved custom colours in the image-occlusion fill tool colour picker on mobile by @iamllama in #4348\n• Add support for tag:nc:... (case-insensitive) tag searches by @iamllama in #4344\n• Treat newlines as term breaks in search queries by @eliasjlara in #4336\n• Add syntax for multi-card cloze deletions by @tfpgh in #4333\n• Remember image-occlusion translucency toggle between sessions by @dspilleb in #4366\n• Fix \"Restore to Default\" picking the wrong template for basic notetype variants by @arold0 in #4382\n• Let the \"Limit to\" spin box grow with its content in the filtered deck dialog by @jcznk in #4398\n• Fix unescaped HTML in correct type-in answers by @Eltaurus-Lt in #4407\n• Always show text boxes on image-occlusion cards during review by @jariji in #4387\n• Fix FindDuplicates dialog size exceeding screen bounds by @Nechaiter in #4426\n• Fall back to Apple Samantha for TTS on macOS when no requested voice matches by @leedoughty in #4420\n• Allow variable field counts per row when CSV import uses a notetype column by @iamllama in #4421\n• Improve handling of media files differing only in letter case by @iamllama in #4355 #4851 #4860 #4861 #4852\n• Keep non-breaking spaces outside cloze deletions when wrapping text by @leedoughty in #4446\n• Start decoding images immediately by @SelfishPig in #4471\n• Revert ForceDarkMode change that interfered with Anki's native dark theme by @GithubAnon0000 in #4483\n• Apply the nightMode class to the editor in dark mode so custom HTML styles correctly by @leedoughty in #4473\n• Auto-select the relevant note type in the Manage Note Types dialog after add/rename by @Arthur-Milchior in #4479\n• Fix field rename by matching on the old name rather than field position by @Arthur-Milchior in #4488\n• Allow horizontal scrolling on the deck options screen so AnkiDroid handles large font sizes by @defkorean in #4501\n• Fix {{#Tags}} conditional not triggering card generation by @Yuukidiv in #4533\n• Silence console spam from image decoding errors during preload by @SelfishPig in #4534\n• Add note type and GUID column headers to deleted.txt for easier reimport by @hnvy in #4454\n• Apply Ctrl/Cmd+W window-closing shortcut globally to all dialogs by @beyondcompute in #4475\n• Fix overlapping date ranges in graphs when \"all history\" is selected by @JMannervik in #4430\n• Add a preference to disable the startup add-on update check by @SecretX33 in #4478\n• Add dir=\"auto\" to cards so text direction no longer depends on the UI language by @MoamenAbdelsattar in #4428\n• Accept images with capitalized extensions in the Browse \"Attach\" dialog by @miggazElquez in #4474\n• Re-enable WindowsRT TTS player on Windows 11 by @abdnh in #4512\n• Fix HTML editor collapsing after toggling sticky fields and adding a note by @Yuukidiv in #4566\n• Fix image occlusion editor layout for right-to-left languages by @MoamenAbdelsattar in #4594\n• Speed up tag autocomplete by using the Rust backend's complete_tag() by @user1823 in #4626\n• Detect cloze fields nested inside conditionals during card generation by @maskady in #4651\n• Prompt to save unsaved changes when closing or switching debug console scripts by @Arthur-Milchior in #4625\n• Roll back the sidebar tag name when the backend rejects a rename by @chrislongros in #4718\n• Improve word wrapping on the Deck Options screen for narrow viewports by @defkorean in #4558\n• Update to mpv 0.41.0 by @abdnh in #4913\n• Bundle Fcitx plugin on Linux by @abdnh in #4886\n• Install required Linux system dependencies in install.sh by @abdnh in #4895\n• Render sync server messages as rich text by @timarnoldev in #4560\nOther Improvements\n• Fix progress bar overflow crash when one-way uploads exceed 2 GB by @matbe766 in #4354\n• Fix fatal error from rapidly double-clicking the Add button by @arold0 in #4377\n• Use the native crypto.randomUUID() instead of a custom UUID implementation by @leedoughty in #4384\n• Credit Arabic translation contributor in the About window by @hnvy in #4720\n• Tighten Collection.add_notes type annotation so single-pass iterables aren't accepted by @jfly in #4758\n• Set a friendly process job name for mpv on Windows by @abdnh in #4438\n• Add Rust unit tests for the card-generation logic by @Yuukidiv in #4551\n• Add punctuation, convert raw URLs to markdown links in READMEs by @oliolioli in #4570\n• Reorder and comment .ftl files in UI order to help translators by @RolfMaster in #4514\n• Show tooltips for truncated sidebar items in the Browse window by @nav1s in #4385\n• Stop showing an error toast when saving an image-occlusion note twice on mobile by @iamllama in #4458\n• Render <br> as a line break in card template error messages instead of literal text by @leedoughty in #4451\n• Use a true minus sign instead of a hyphen in the deck browser by @GithubAnon0000 in #4437\n• Fix sync login dialog ignoring a freshly-set custom sync server URL by @ranjitodedra in #4396\n• Add plural forms to unit labels next to spin boxes in the Custom Study dialog by @RolfMaster in #4520\n• Don't expose collection.media.db2 over the API by @dae in #4653\n• Update media sync progress dialog correctly after an error occurs in #4486\n• Disable the Custom Study OK button when the selected deck is empty by @tunamayo04 in #4463\n• Warn the user when renaming a profile would exceed the OS path length limit in #4552\n• Fix regex error by @chiragjagga in #4837\n• Preserve browser focus after note export by @Tfc538 in #4845\n• Avoid loading unused cacert.pem by @abdnh in #4858\n• Strip HTML from note type names in Empty Cards dialog by @abdnh in #4902\n• Parameterize inputs of prop:cd* queries by @abdnh in #4905\n• Validate add-on zip entries by @abdnh in #4901\n• Repaint UI after answer reveal to reduce glitches on cards with images by @abdnh in #4970\nDeveloper Improvements\n• The release build process is now fully automated using GitHub Actions. By @andrewsanchez @abdnh @fernandolins in #4632\n• Migrate CI from BuildKite to GitHub Actions. By @andrewsanchez @abdnh @fernandolins in #4593\n• Update to Rust 1.92 by @abdnh in #4461\n• Add Dependabot config with monthly grouped updates by @fernandolins in #4726\n• Update PyCharm docs by @abdnh in #4389\n• Update VS Code config by @abdnh in #4397\n• Treat proto/i18n's implicit outputs as inputs by @iamllama in #4439\n• Respect .python-version when generating pyenv by @iamllama in #4436\n• Add more required packages to Linux build guide by @user1823 in #4432\n• Only run cargo-deny if there are dependency changes by @abdnh in #4644\n• Remove old GPG public key by @dae in #4707\n• Raise dependabot open-pull-requests-limit to 3 by @fernandolins in #4746\n• Add release-age controls for uv and Yarn dependencies by @fernandolins in #4761",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/26.05",
      "manifest_version": "1.12.0",
      "manifest_dir": "manifests/a/Anki/Anki/26.08.1",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "wix",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/26.08.1/anki-26.08.1-win-x64.msi",
          "host": "github.com",
          "filename": "anki-26.08.1-win-x64.msi",
          "sha256": "d79170c3cd2e6225f9c2ba33212117a8fe70c10735c3f0e5a2864e2f0ccf7c8c",
          "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "publisher": "Damien Elmes",
              "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
              "upgrade_code": "{F8DAE92C-75C4-5C37-9337-CE5208C5F179}"
            }
          ]
        },
        {
          "platform": "windows",
          "architecture": "arm64",
          "type": "wix",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/26.08.1/anki-26.08.1-win-arm64.msi",
          "host": "github.com",
          "filename": "anki-26.08.1-win-arm64.msi",
          "sha256": "0f3821d09faabfc742642bed649e207e6692344dd0632c62bc66313c3880eba5",
          "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "publisher": "Damien Elmes",
              "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
              "upgrade_code": "{F8DAE92C-75C4-5C37-9337-CE5208C5F179}"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "26.05",
      "release_date": "2026-06-15",
      "release_notes": "What's Changed\nNew Installer\nThis release replaces the terminal-based launcher introduced in 25.07 with a more standard installation process:\n- Anki no longer shows a terminal on installation/update.\n- Installation no longer requires network access.\n- Updates can be installed using Tools>Check For Updates.\n- A standard MSI installer is provided for Windows.\n- A Windows ARM64 build is available.\n- The macOS builds require macOS 13 or later.\n- The Linux x86_64 build requires glibc 2.35+.\n- The Linux aarch64 build requires glibc 2.39+.\n- The minimum supported Python version is now 3.10 (The official builds still ship Python 3.13).\n- Qt has been updated to 6.11\nNote: The Tools>Upgrade/Downgrade option in 25.07+ cannot be used to upgrade to this version due to packaging changes.\nBy @abdnh @andrewsanchez @fernandolins @Luc-Mcgrady @iamllama in #4629\nDocumentation Improvements\n- All user/developer documentation is now unified under a single website deployed from the main repo. The different docs repos will be archived and existing issues moved soon. By @andrewsanchez @Luc-Mcgrady @abdnh in #4882\n- Python API docs can now be viewed in dev-docs.ankiweb.net. By @andrewsanchez in #4579\nFSRS/Scheduling Changes\n- Rework the efficiency ratio graph in FSRS Help Me Decide by @Luc-Mcgrady in #4452\n- Require three left-clicks to unlock FSRS parameter editing by @Luc-Mcgrady in #4372\n- Speed up FSRS memory state updates by batching calculations by @DanielPechersky in #4335\n- Improve performance of reviews_for_fsrs function by @L-M-Sherlock in #4339\n- Fix/first and latest review dates should only consider entries with a rating. by @L-M-Sherlock in #4360\n- Fix/Ensure fuzz doesn't go backward during rescheduling by @user1823 in #4364\n- Fix/Per deck retention not used when card is moved to filtered deck by @Luc-Mcgrady in #4413\n- Restore retrievability SQL fix that was accidentally reverted by @Luc-Mcgrady in #4424\n- Fix/rounded corners on FSRS Simulator modal by @Luc-Mcgrady in #4535\n- Fix FSRS short-term schedule being ignored when using default parameters by @L-M-Sherlock in #4412\n- Use quantiles for FSRS retrievability stat ranges by @Luc-Mcgrady in #4425\n- Make descending retrievability a pure R sort by @user1823 in #4400\n- Don't reschedule suspended cards by @L-M-Sherlock in #4453\n- Apply deck-specific load balancer settings to filtered deck study by @MoamenAbdelsattar in #4574\n- Prioritize previously-attempted cards in the intraday learning queue by @user1823 in #4393\n- Improve sibling dispersal in the load balancer, including across presets by @jakeprobst in #4640\n- Fix desired retention not refreshing when switching deck option presets by @barisayyildiz in #4610\n- Improve FSRS invalid parameters error message with FAQ link by @AmandaSternberg-creator in #4342\n- Clarify ambiguous \"this value\" wording in desired retention tooltip by @Expertium in #4647\n- Expose setParameterUnlockClickTimeoutMs for FSRS parameter unlock timeout by @Luc-Mcgrady in #4810\n- Export last_interval to Python by @user1823 in #4365\n- Expose card decay and desired retention to the custom scheduler by @user1823 in #4880\n- Remove broken retention rate help link in stats by @Hannanilsenn in #4329\nOther Notable Changes\n- Show saved custom colours in the image-occlusion fill tool colour picker on mobile by @iamllama in #4348\n- Add support for tag:nc:... (case-insensitive) tag searches by @iamllama in #4344\n- Treat newlines as term breaks in search queries by @eliasjlara in #4336\n- Add syntax for multi-card cloze deletions by @tfpgh in #4333\n- Remember image-occlusion translucency toggle between sessions by @dspilleb in #4366\n- Fix \"Restore to Default\" picking the wrong template for basic notetype variants by @arold0 in #4382\n- Let the \"Limit to\" spin box grow with its content in the filtered deck dialog by @jcznk in #4398\n- Fix unescaped HTML in correct type-in answers by @Eltaurus-Lt in #4407\n- Always show text boxes on image-occlusion cards during review by @jariji in #4387\n- Fix FindDuplicates dialog size exceeding screen bounds by @Nechaiter in #4426\n- Fall back to Apple Samantha for TTS on macOS when no requested voice matches by @leedoughty in #4420\n- Allow variable field counts per row when CSV import uses a notetype column by @iamllama in #4421\n- Improve handling of media files differing only in letter case by @iamllama in #4355 #4851 #4860 #4861 #4852\n- Keep non-breaking spaces outside cloze deletions when wrapping text by @leedoughty in #4446\n- Start decoding images immediately by @SelfishPig in #4471\n- Revert ForceDarkMode change that interfered with Anki's native dark theme by @GithubAnon0000 in #4483\n- Apply the nightMode class to the editor in dark mode so custom HTML styles correctly by @leedoughty in #4473\n- Auto-select the relevant note type in the Manage Note Types dialog after add/rename by @Arthur-Milchior in #4479\n- Fix field rename by matching on the old name rather than field position by @Arthur-Milchior in #4488\n- Allow horizontal scrolling on the deck options screen so AnkiDroid handles large font sizes by @defkorean in #4501\n- Fix {{#Tags}} conditional not triggering card generation by @Yuukidiv in #4533\n- Silence console spam from image decoding errors during preload by @SelfishPig in #4534\n- Add note type and GUID column headers to deleted.txt for easier reimport by @hnvy in #4454\n- Apply Ctrl/Cmd+W window-closing shortcut globally to all dialogs by @beyondcompute in #4475\n- Fix overlapping date ranges in graphs when \"all history\" is selected by @JMannervik in #4430\n- Add a preference to disable the startup add-on update check by @SecretX33 in #4478\n- Add dir=\"auto\" to cards so text direction no longer depends on the UI language by @MoamenAbdelsattar in #4428\n- Accept images with capitalized extensions in the Browse \"Attach\" dialog by @miggazElquez in #4474\n- Re-enable WindowsRT TTS player on Windows 11 by @abdnh in #4512\n- Fix HTML editor collapsing after toggling sticky fields and adding a note by @Yuukidiv in #4566\n- Fix image occlusion editor layout for right-to-left languages by @MoamenAbdelsattar in #4594\n- Speed up tag autocomplete by using the Rust backend's complete_tag() by @user1823 in #4626\n- Detect cloze fields nested inside conditionals during card generation by @maskady in #4651\n- Prompt to save unsaved changes when closing or switching debug console scripts by @Arthur-Milchior in #4625\n- Roll back the sidebar tag name when the backend rejects a rename by @chrislongros in #4718\n- Improve word wrapping on the Deck Options screen for narrow viewports by @defkorean in #4558\n- Update to mpv 0.41.0 by @abdnh in #4913\n- Bundle Fcitx plugin on Linux by @abdnh in #4886\n- Install required Linux system dependencies in install.sh by @abdnh in #4895\n- Render sync server messages as rich text by @timarnoldev in #4560\nOther Improvements\n- Fix progress bar overflow crash when one-way uploads exceed 2 GB by @matbe766 in #4354\n- Fix fatal error from rapidly double-clicking the Add button by @arold0 in #4377\n- Use the native crypto.randomUUID() instead of a custom UUID implementation by @leedoughty in #4384\n- Credit Arabic translation contributor in the About window by @hnvy in #4720\n- Tighten Collection.add_notes type annotation so single-pass iterables aren't accepted by @jfly in #4758\n- Set a friendly process job name for mpv on Windows by @abdnh in #4438\n- Add Rust unit tests for the card-generation logic by @Yuukidiv in #4551\n- Add punctuation, convert raw URLs to markdown links in READMEs by @oliolioli in #4570\n- Reorder and comment .ftl files in UI order to help translators by @RolfMaster in #4514\n- Show tooltips for truncated sidebar items in the Browse window by @nav1s in #4385\n- Stop showing an error toast when saving an image-occlusion note twice on mobile by @iamllama in #4458\n- Render <br> as a line break in card template error messages instead of literal text by @leedoughty in #4451\n- Use a true minus sign instead of a hyphen in the deck browser by @GithubAnon0000 in #4437\n- Fix sync login dialog ignoring a freshly-set custom sync server URL by @ranjitodedra in #4396\n- Add plural forms to unit labels next to spin boxes in the Custom Study dialog by @RolfMaster in #4520\n- Don't expose collection.media.db2 over the API by @dae in #4653\n- Update media sync progress dialog correctly after an error occurs in #4486\n- Disable the Custom Study OK button when the selected deck is empty by @tunamayo04 in #4463\n- Warn the user when renaming a profile would exceed the OS path length limit in #4552\n- Fix regex error by @chiragjagga in #4837\n- Preserve browser focus after note export by @Tfc538 in #4845\n- Avoid loading unused cacert.pem by @abdnh in #4858\n- Strip HTML from note type names in Empty Cards dialog by @abdnh in #4902\n- Parameterize inputs of prop:cd* queries by @abdnh in #4905\n- Validate add-on zip entries by @abdnh in #4901\n- Repaint UI after answer reveal to reduce glitches on cards with images by @abdnh in #4970\nDeveloper Improvements\n- The release build process is now fully automated using GitHub Actions. By @andrewsanchez @abdnh @fernandolins in #4632\n- Migrate CI from BuildKite to GitHub Actions. By @andrewsanchez @abdnh @fernandolins in #4593\n- Update to Rust 1.92 by @abdnh in #4461\n- Add Dependabot config with monthly grouped updates by @fernandolins in #4726\n- Update PyCharm docs by @abdnh in #4389\n- Update VS Code config by @abdnh in #4397\n- Treat proto/i18n's implicit outputs as inputs by @iamllama in #4439\n- Respect .python-version when generating pyenv by @iamllama in #4436\n- Add more required packages to Linux build guide by @user1823 in #4432\n- Only run cargo-deny if there are dependency changes by @abdnh in #4644\n- Remove old GPG public key by @dae in #4707\n- Raise dependabot open-pull-requests-limit to 3 by @fernandolins in #4746\n- Add release-age controls for uv and Yarn dependencies by @fernandolins in #4761",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/26.05",
      "manifest_version": "1.12.0",
      "manifest_dir": "manifests/a/Anki/Anki/26.05",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "wix",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/26.05/anki-26.05-win-x64.msi",
          "host": "github.com",
          "filename": "anki-26.05-win-x64.msi",
          "sha256": "2047f71d7771add993e15f2f01a56ea41617967ae5b3d6d3f402cbc40716c5e0",
          "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "publisher": "Damien Elmes",
              "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
              "upgrade_code": "{F8DAE92C-75C4-5C37-9337-CE5208C5F179}"
            }
          ]
        },
        {
          "platform": "windows",
          "architecture": "arm64",
          "type": "wix",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/26.05/anki-26.05-win-arm64.msi",
          "host": "github.com",
          "filename": "anki-26.05-win-arm64.msi",
          "sha256": "c354b8d2df56232a8a4158b17a155b6e132a1be56bded66e8c0fed0fa4ac8005",
          "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "publisher": "Damien Elmes",
              "product_code": "{5BBAE28F-5330-4C93-B84A-BACBEC97A2B3}",
              "upgrade_code": "{F8DAE92C-75C4-5C37-9337-CE5208C5F179}"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "25.09",
      "release_date": "2025-09-06",
      "release_notes": "Installing\n- Install the latest launcher from below\n- Run Anki. If you already had it installed, use Tools>Upgrade/Downgrade\nWhat's Changed\nNew Features\n- Per-deck desired retention by @L-M-Sherlock in #4194\n- Desired retention info graphs by @Luc-Mcgrady in #4199\n- Use cached workload values by @Luc-Mcgrady in #4208\n- Expected_workload_with_existing_cards implementation by @Luc-Mcgrady in #4243\n- Show health check and already optimal at the same time by @Luc-Mcgrady in #4238\n- Card stats update review time by @Luc-Mcgrady in #4236\n- Neaten dr graph x-axis by @Luc-Mcgrady in #4251\n- Enable nc: to only search in a specific field (#4276) by @maxr777 in #4312\n- Show the number of cards added when adding by @iamllama in #4310\n- Expose control over AppNap for AnkiConnect\nLauncher Updates\nWindows\n- You can now tell the launcher to store files in a custom location. Updated flash drive instructions here: https://github.com/ankitects/anki-manual/pull/444/files\n- Fix 'applink' startup errors on some systems\n- Fix launcher display on Upgrade/Downgrade on Windows 10\nmacOS\n- New users will no longer see pop-ups prompting you to install developer tools, or warnings about install_name_tool.\n- Fix install failures on systems with the wrong Xcode arch installed.\n- Fix the launcher sometimes respawning terminals repeatedly.\nLinux\n- Added an experimental new mode to use your system's Qt version, for things like Fcitx: https://github.com/ankitects/anki-manual/pull/445/files\n- Possible fix for launcher failing to appear to some Linux systems\nAll platforms\n- The launcher now has a download mirror option for users in China, and no longer auto-downloads on first run. The version check should now also work with SOCKS proxies.\n- Fix mirror configuration not working during launcher download by @aldlss in #4280\n- Fix install problems on some systems with UV_* env vars defined.\nOther Improvements\n- A small clarification in deck-config.ftl by @Expertium in #4264\n- Add desired_retention field to NormalDeckSchema11 by @L-M-Sherlock in #4292\n- Chore/Remove CMRR from fsrs help modal by @Luc-Mcgrady in #4290\n- Fix #4253 by @Luc-Mcgrady in #4259\n- Fix crash when disabling FSRS\n- FIX gap above bury by @GithubAnon0000 in #4298\n- Fix importing of Mnemosyne collections with missing cards\n- Fix LRT database check for cards with no usable reviews by @user1823 in #4284\n- Fix Mnemosyne fact ID in error messages by @abdnh in #4266\n- Fix ninja BuildAction name sanitization by @memchr in #4291\n- Fix recording errors on some system\n- Fix sync errors not being reported in some cases by @abdnh in #4281\n- Fix theme/checkboxes when path contains an apostrophe\n- Fix/Invalid memory states in simulator after parameters changed by @Luc-Mcgrady in #4317\n- Fix/Learn count not included in workload graph by @Luc-Mcgrady in #4274\n- Fix/recompute memory state when deck-specific DR is changed by @L-M-Sherlock in #4293\n- Fix/Simulator intervals decending overflows by @Luc-Mcgrady in #4275\n- Fix/System locale for simulator percentages by @Luc-Mcgrady in #4260\n- Fix/Workload simulator config deck_size unset by @Luc-Mcgrady in #4283\n- Hi res microhpone icon for the recording dialog by @Madoshakalaka in #4262\n- Improve elapsed seconds calculation for learning cards in browser table by @user1823 in #4255\n- Increase randomness in random sorting of new cards by @user1823 in #4286\n- Make simulator fill missing values of DR and decay too by @user1823 in #4269\n- Replace activeWindow() with activeModalWidget() by @abdnh in #4267\n- Replace deprecated $app/stores with $app/state in SvelteKit frontend by @leedoughty in #4282\n- Revert \"Fix/Retention help button bounds\" by @dae in #4258\n- Update record dialog microphone icon to respect dark mode by @leedoughty in #4297\n- Use existing translation instead of adding new one (#4310) by @iamllama in #4316\n- Update stale comment by @user1823 in #4235\n- \"Workload\" variable typo by @Luc-Mcgrady in #4239\n- Fix/use real step count to simulate by @L-M-Sherlock in #4240\n- Statistics \"Reviews\" graph, make the color of \"New\" and \"Learning\" cards consistent with the color of card count by @thomasrixen in #4245\n- Fix simulator graph not visible when viewport height < 400px by @iamllama in #4248\n- Fix show_exception's messagebox always formatting as plaintext by @iamllama in #4246\n- Limit time studied today to minutes by @user1823 in #4242\n- Fix Cards with Missing Last Review Time During Database Check by @L-M-Sherlock in #4237\n- Use space-around for tabbed values by @Luc-Mcgrady in #4252\n- Fix/Retention help button bounds by @Luc-Mcgrady in #4253\n- Fix/Exclude new cards from is_due_in_days by @user1823 in #4249\n- Refactor IO fill tool target check logic by @iamllama in #4222\n- Fix/use current_retrievability_seconds in SQL to keep consistent with card info by @L-M-Sherlock in #4231\n- Update deck-config.ftl by @sommerluk in #4319\nNew Contributors\n- @thomasrixen made their first contribution in #4245\n- @Madoshakalaka made their first contribution in #4262\n- @leedoughty made their first contribution in #4282\n- @memchr made their first contribution in #4291\n- @aldlss made their first contribution in #4280\n- @maxr777 made their first contribution in #4312\nFull Changelog: 25.07.5...25.09",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/25.09",
      "manifest_version": "1.10.0",
      "manifest_dir": "manifests/a/Anki/Anki/25.09",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/25.09/anki-launcher-25.09-windows.exe",
          "host": "github.com",
          "filename": "anki-launcher-25.09-windows.exe",
          "sha256": "398f690a8208bd381dc2d4220720a82f6d2249c1fd1b38f46a90db356cb7c69e",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "display_name": "Anki Launcher",
              "product_code": "Anki"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "25.02.7",
      "release_date": "2025-06-06",
      "release_notes": "- Fix some add-ons broken by the security update a few days ago (thanks to @tatsumoto-ren)\n- Fix 'record own voice' and TTS breakages (thanks to @abdnh)\n- Silence an \"unknown error\" message that appears on some devices.",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/25.02.7",
      "manifest_version": "1.10.0",
      "manifest_dir": "manifests/a/Anki/Anki/25.02.7",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/25.02.7/anki-25.02.7-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-25.02.7-windows-qt6.exe",
          "sha256": "1e8d1f3291bd5e473b36766f2dec2a931658cf788499a85125458ac9f3237a57",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "product_code": "Anki"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "25.02.6",
      "release_date": "2025-06-01",
      "release_notes": "Another security update. Windows users are strongly recommended to update.\n- Specially-crafted sound file references could cause files to be written to arbitrary locations on Windows. Thanks again to Michael Lappas for his investigation.\n- References to audio files outside of the media folder are no longer allowed.\n- Ensure mpv is tidied up even on a crash, which should fix the mpv errors some people got when updating.\nFull Changelog: 25.02.5...25.02.6",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/25.02.6",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/25.02.6",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/25.02.6/anki-25.02.6-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-25.02.6-windows-qt6.exe",
          "sha256": "1532223833b45d52da30ed315f3ba275d9cad6c67842a0e54fbf394dfdb8bfb6",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "product_code": "Anki"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "25.02.5",
      "release_date": "2025-05-15",
      "release_notes": "More security fixes, thanks to some reports by Michael Lappas:\n- Plug a hole that could allow a malicious shared deck on Windows to execute arbitrary commands when playing audio.\n- Links to other apps (eg obsidian://...) will now request permission to open. Thanks to @soleuniverse101 for the UI improvements here.\nAlso, building of the Docker image for this release should be fixed, thanks to @KolbyML.\nFull Changelog: 25.02.4...25.02.5",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/25.02.5",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/25.02.5",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/25.02.5/anki-25.02.5-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-25.02.5-windows-qt6.exe",
          "sha256": "e094517f40f0c35aa37e8ab7101aaaa7b141c558cac4a95600b6c6f7c7635353",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "product_code": "Anki"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "25.02.4",
      "release_date": "2025-04-24",
      "release_notes": "Fixes regressions in the 25.02.1 security update:\n- Use an alternative approach for securing the editor, which should be less disruptive.\n- Improve add-on compatibility (thanks in part to @glutanimate and @iamllama).\n- Don't check collection size when syncing with a custom sync server.\nThe following add-ons have been reported as currently incompatible:\n- Syntax Highlighting\n- Anki IPA\nIf you run into issues with other add-ons, please let us know on the forums.",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/25.02.4",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/25.02.4",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/25.02.4/anki-25.02.4-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-25.02.4-windows-qt6.exe",
          "sha256": "5d1041ad76457c79a6915ac612b8a2fcd6b9216370d03d199d4b54e5bb3678ee",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "product_code": "Anki"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "25.02",
      "release_date": "2025-02-11",
      "release_notes": "What's Changed\nPlatform Support\n- Qt 5 builds are no longer provided.\n- Intel Mac builds now require macOS 12+.\n- Linux builds now require glibc 2.35+.\nFeatures\n- Add \"Show image in folder\" and \"Open image\" context menu actions for IO by @iamllama in #3779\n- Add drag/drop support when adding IO images by @iamllama in #3776\n- Add future projection to forgetting curve by @L-M-Sherlock in #3732\n- Add support for copied image files when adding IO notes by @iamllama in #3733\n- FSRS updates by @L-M-Sherlock in #3737\n- Recognise and check for media referenced in tags by @iamllama in #3763\n- Tweaks the Dockerfile by @omarkohl in #3714, #3716, etc\n- When 'add' reveals the card window, it now resets deck/notetype like close+open. By @iamllama in #3756\n- Add \"Copy template as markdown\" button. by @Luc-Mcgrady in #3719\nFixes\n- Add \"No reviews to optimize\" message by @Luc-Mcgrady in #3610\n- Add contributor to about.py by @gregorylearns in #3738\n- Add margin to the bottom of forgetting curve by @L-M-Sherlock in #3805\n- Add memorized option to FSRS simulation graph by @Luc-Mcgrady in #3655\n- Add percentage to FSRS spinner by @Arthur-Milchior in #3679\n- Add some unit tests by @user1823 in #3678\n- Add support for html comments to template syntax by @iamllama in #3662\n- Add translation strings for True Retention table by @rbrownwsws in #3745\n- Added \"preset\" to \"Optimize all\" and \"Optimize current\" by @Expertium in #3778\n- Added colour to simulator tooltip by @Luc-Mcgrady in #3692\n- Added: SpinnerBox percentage symbol. by @Luc-Mcgrady in #3777\n- Allow choosing filtered decks in stats by @iamllama in #3687\n- Allow object to move to right edge and bottom edge and allow scroll of note fields when not using IO by @krmanik in #3630\n- Apply gradient effect to forgetting curve by @OuOu2021 in #3604\n- avoid warning by setting SYNC_PORT as ARG in Dockerfile by @omarkohl in #3675\n- Cap preview cols to prevent stall when csv is parsed with the wrong delimiter by @iamllama in #3786\n- Change font of debug console to Consolas by @user1823 in #3606\n- Cleanup av_player on profile close by @kelciour in #3754\n- Clear memory states during bulk action if item is None by @user1823 in #3717\n- Comments for translators by @sommerluk in #3729\n- Deck options without bridge by @Arthur-Milchior in #3571\n- Delete y-axis titles for graphs by @Luc-Mcgrady in #3789\n- Don't Exclude Suspended Cards from Retreivability Graph by @brishtibheja in #3665\n- Don't treat manually scheduled cards with no reps as new cards by @user1823 in #3727\n- Easy days: revisited by @jakeprobst in #3661\n- Ensure data is stored in a volume in anki-sync-server Docker image by @omarkohl in #3674\n- Fall back to SM2 relative order when memory state missing by @dae in #3771\n- Feat/support new cards ignore review limit in simulator by @L-M-Sherlock in #3707\n- Fix \"Create copy\" for IO notes by @iamllama in #3730\n- Fix \"discard changes\" appearing even after resetting IO note by @iamllama in #3794\n- Fix \"discard changes\" appearing on deck options by @iamllama in #3689\n- Fix \"Note Types\" dialog moving down each time it is opened by @rbrownwsws in #3718\n- Fix \"Show in folder\" on windows when path has spaces by @iamllama in #3641\n- Fix ∷ in tags not being converted to :: when cut by @iamllama in #3791\n- Fix a build error on Yarn 4 by @mikehardy in #3752\n- Fix card info failing to load with qt5 by @iamllama in #3681\n- Fix CardInfoPlaceholder not showing when card id is invalid by @iamllama in #3631\n- Fix changes to tags not being reflected when editing in IO mode by @iamllama in #3768\n- Fix content scrolling off screen when easy days labels too long\n- Fix copying pasted images when adding IO being broken if filename has reserved chars by @iamllama in #3775\n- Fix csv columns potentially being numbered wrongly in the header when exporting by @iamllama in #3690\n- Fix deck button not clickable in stats screen for smaller screens by @Sawansunar56 in #3602\n- Fix deck options button twitching on hover by @BlueGreenMagick in #3623\n- Fix discard changes randomly being a noop on certain linux systems by @iamllama in #3781\n- Fix easy days causing load balancer to disproportionately schedule graduates to the furthest day by @jakeprobst in #3643\n- Fix EasyDays not applying defaults correctly in deck options by @iamllama in #3691\n- Fix error when right-clicking empty space in update addons dialog by @iamllama in #3780\n- Fix flaky tests by @abdnh in #3724\n- Fix Fsrs simulator input problems by @Luc-Mcgrady in #3642\n- Fix image field not being saved if a mask is created too quickly by @iamllama in #3706\n- Fix IO editor always starting in \"hide all, guess one\" mode by @iamllama in #3709\n- Fix issue in regex for underscored CSS imports by @abdnh in #3728\n- FIX lang selection resetting to en_US for some langs by @GithubAnon0000 in #3744\n- Fix menubar in fullscreen by @YukiNagat0 in #3710\n- Fix missing buttons on bottom bar when window is narrow by @iamllama in #3653\n- Fix mpv loadfile syntax change 2 by @kelciour in #3711\n- Fix newer notes incorrectly being skipped when importing successive exports by @iamllama in #3693\n- Fix numeric deck and notetype names being treated as ids when importing csv by @iamllama in #3748\n- Fix reuse internal clipboard for primary selection pasting by @bpnguyen107 in #3613\n- Fix segfault when closing Anki on Linux with \"QT_DEBUG_PLUGINS=1\" by @rbrownwsws in #3620\n- Fix SpinBox and ParamsInput's rounding causing \"discard changes\" to appear in deck options by @iamllama in #3686\n- Fix True Retention table clipping on overflow by @rbrownwsws in #3735\n- Fix: Simulator Ignores New Cards Already Introduced by @Luc-Mcgrady in #3760\n- Fix/dataPoint index is off by one day in simulator & remove moving average by @L-M-Sherlock in #3645\n- Fix/disable FSRS short-term scheduler if w[17] or w[18] is zero by @L-M-Sherlock in #3788\n- Fix/fallback to non-manual entry when first_of_last_learn_entries non found by @L-M-Sherlock in #3639\n- Fix/forget to update memory state during relearning by @L-M-Sherlock in #3648\n- Fix/FSRS Simulator Failure: min > max by @L-M-Sherlock in #3644\n- Fix/last date of existing card should not be positive in simulation by @L-M-Sherlock in #3667\n- Fix/re-optimize FSRS if short-term param is weird by @L-M-Sherlock in #3742\n- Hide forgetting curve radio buttons when theres only one option by @Luc-Mcgrady in #3804\n- Hide progress when CMRR is done by @bpnguyen107 in #3609\n- Increase font size in debug console by @user1823 in #3743\n- IO: Prevent text masks from flipping by @bpnguyen107 in #3672\n- Issue 2563 - remove mhchem by @Delizald in #3705\n- Make the \"True Retention\" table pretty by @rbrownwsws in #3640\n- More accurate sorting by R by @user1823 in #3747\n- Only update notetype/deck when reopening add window if no changes to discard by @iamllama in #3798\n- Prevent simulate button spam by @Luc-Mcgrady in #3670\n- Prevent stale frames from being drawn / always ensure up-to-date contents in webview by @Lolle2000la in #3668\n- Reduce use of type casting by @wackbyte in #3723\n- Refactor/Small refactoring on fullscreen and comments for clarification by @YukiNagat0 in #3721\n- Remove broken editor image menu when on qt5 by @iamllama in #3685\n- Remove hardcoded note/card colours from switch.py by @iamllama in #3629\n- Remove infinite spinning icon for reset parameters dropdown and add a question mark by @bpnguyen107 in #3603\n- Remove unfinished polygon when undoing and redoing in IO mode by @iamllama in #3759\n- Remove use of window.location.href in CardInfoDialog by @iamllama in #3621\n- replace localhost with 127.0.0.1 in syncserver Dockerfile by @omarkohl in #3673\n- Replace use of window.postMessage in card info by @iamllama in #3646\n- Revert Editor.set_note's signature change with an alternative approach for #3730 by @iamllama in #3736\n- Set ForceDarkMode attribute in AnkiWebView for Qt 6.7 by @louwers in #3622\n- Simulator legend tooltip by @Luc-Mcgrady in #3676\n- Slider easy day gui by @Luc-Mcgrady in #3605\n- Snap: keep LD_LIBRARY_PATH when in snap environment by @boukendesho in #3618\n- Sort FSRSItems by RevlogId for training by @L-M-Sherlock in #3660\n- Stop audio playback on editor close by @iamllama in #3666\n- Translation comments for actiony-all-selected and actiony-any-selected by @sommerluk in #3658\n- TTS: Fix text starting with \"<\" being treated as XML by @bpnguyen107 in #3651\n- Tweak how the True Retention stats table displays numbers by @rbrownwsws in #3677\n- typeanswer: [type:nc] - use nfkd again by @twwn in #3627\n- Unpin svelte and update sveltekit-svg by @wackbyte in #3722\n- Update Deck Options strings to clarify Timers by @Danika-Dakika in #3792\n- update docker deps and docker docs by @niclasheinz in #3671\n- update error message by @brishtibheja in #3612\n- Update reviewer.py to prevent custom scheduler js from commenting out py code by @GithubAnon0000 in #3795\n- Update to FSRS-rs v2.0.3 (fix simulator) by @L-M-Sherlock in #3784\n- Update to Yarn 4 by @dae in #3772\n- Use platform-native button layout in dialogs and messageboxes by @iamllama in #3725\nNew Contributors\n- @Sawansunar56 made their first contribution in #3602\n- @boukendesho made their first contribution in #3618\n- @rbrownwsws made their first contribution in #3620\n- @OuOu2021 made their first contribution in #3604\n- @iamllama made their first contribution in #3629\n- @sommerluk made their first contribution in #3658\n- @omarkohl made their first contribution in #3675\n- @niclasheinz made their first contribution in #3671\n- @Delizald made their first contribution in #3705\n- @YukiNagat0 made their first contribution in #3710\n- @wackbyte made their first contribution in #3722\n- @Danika-Dakika made their first contribution in #3792\n- @Lolle2000la made their first contribution in #3668\n- @GithubAnon0000 made their first contribution in #3744\n- @mikehardy made their first contribution in #3752\nWhat's Changed\nFull Changelog: 24.11...25.02",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/25.02",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/25.02",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/25.02/anki-25.02-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-25.02-windows-qt6.exe",
          "sha256": "16e3076dde0048cf7247af001552682d96ca3d0e9ca8ce16a6bb2d63e6ac57c8",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ],
          "apps_and_features": [
            {
              "product_code": "Anki"
            }
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "24.11",
      "release_date": "2024-11-26",
      "release_notes": "What's Changed\nCompatibility\nThe Linux package now requires glibc 2.28+ (2019 Ubuntu/Fedora, and 2021 Debian).New Features\nFSRS\nFSRS has received significant changes in this release, and should be even more\nefficient. It is recommended that you optimize your presets after updating.To avoid errors on older clients, updated parameters will only be visible to\nAnki releases from 24.11 on. Older clients will continue to work, but may\ngive you different scheduling results when reviews are done on them.By @L-M-Sherlock in Other new features:\n- Add FSRS simulator to deck options by @L-M-Sherlock in #3257\n- Add forgetting curve to card info by @L-M-Sherlock in #3437\n- Let FSRS control short term schedule when no (re)learning steps are set. This is experimental. By @L-M-Sherlock in #3375 and #3505 and #3367\nScheduling\n- Load balancing: within your fuzz range, Anki will now try to pick days that have fewer reviews waiting. By @jakeprobst in \n- Easy days: you can now tell Anki to try avoid certain days of the week. By @L-M-Sherlock in #3442\n- Decks can now be sorted by descending retrievability. Simulations have shown this is a better choice\nwhen you have a backlog, and this sort order is likely to become the default in the future.\nStats/Graphs\n- Add true retention stats by @L-M-Sherlock in #3425\n- Estimated total knowledge by note, and daily load by @L-M-Sherlock in #3507\nOther Features\n- Add \"open image\" option to editor by @user1823 in #3431\n- Add an option to show image from editor in folder by @user1823 in #3412\n- Add card position column and always show position in card info by @taylorobyen in #3471\n- Add option for toggling update checks by @voczi in #3346\n- Add revert to backup option to file menu by @taylorobyen in #3434\n- Empty Cards can now be undone by @Arthur-Milchior in #3386\n- If deck options are modified, ask before closing by @Arthur-Milchior in #3410\n- Integrate AnkiHub Sign-in into the preferences screen by @abdnh in \n- Support {{type:nc:...}} to ignore combining characters by @twwn in #3422\nOther Changes\nThis is not a comprehensive list; a big thank you also to people who have contributed\nthings like behind-the-scenes improvements, and fixes to regressions that occurred during\ndevelopment.\n- Allow maximizing the notetypes screen by @cdonat2 in #3328\n- Apply fuzz to SM2 lapse interval and respect max ivl by @user1823 in #3275\n- Do not show warning if Browser Appearance has no field references by @abdnh in #3566\n- Do not strip quotation marks from deck/tag names by @abdnh in #3407\n- Don't exclude suspended cards when updating all FSRS params.\n- Don't hide text when hiding I/O masks by @escribapetrus in #3277\n- Don't ignore buried cards in future due graph by @jakeprobst in #3368\n- Ensure profile name is treated in a case-insensitive manner by @abdnh in #3372\n- Escape special search characters in preset name by @abdnh in #3554\n- Exclude new cards from Future Due stats by @user1823 in #3576\n- Fix .DS_Store file shown as an unused media file by @bpnguyen107 in #3380\n- Fix 'NoneType object is not subscriptable' error by @davidculley in #3286\n- Fix bug with “A 100 day interval will become X days.” by @bpnguyen107 in #3432\n- Fix editor loses focus when toggling list if list item empty by @cy7sh in #3483\n- Fix editor losing focus when toggling list and copy selects wrong target deck for filtered decks by @singurty in #3465\n- Fix error when exporting from empty cards screen\n- Fix field focus lost when pressing alt in the editor by @abdnh in #3378\n- Fix FSRS progress sometime shows 0 reviews by @L-M-Sherlock in #3591\n- Fix FSRS progress update issues by @abdnh in #3420\n- Fix graph averages by @abdnh in #3406\n- Fix imports of decks with file paths using special URL characters by @themis-d in #3377\n- Fix inconsistent retrievability calculations between normal/filtered decks and display/sorting by @L-M-Sherlock in #3582\n- Fix incorrect canvas bounds calculations in image occlusion by @taylorobyen in #3457\n- Fix invalid preset search matching cards in filtered decks\n- Fix minimum interval warning shown when FSRS is enabled by @abdnh in #3409\n- Fix Mnemosyne importer choking on due dates >= 2038 by @bpnguyen107 in #3459\n- Fix reschedule not working on cards in filtered deck by @L-M-Sherlock in #3441\n- Fix setting tags column to first unmapped column in CSV importer by @RumovZ in #3568\n- Fix UI hanging when update check stalls\n- Fix unused parent tags getting cleared by @abdnh in #3299\n- Hide right click copy option in deck list by @bpnguyen107 in #3363\n- Improve the accessibility of the Preferences dialog by @RastislavKish in #3255\n- Include backlog cards in today in future due graph by @jakeprobst in #3379\n- More closely match performance of Python FSRS optimizer by @L-M-Sherlock in #3540\n- Remove legacy import option by @abdnh in #3536\n- Stop automatically adding Image Occlusion type in Add screen by @abdnh in #3408\n- Truncate in the middle of a deck name in the browse screen, not the end by @bpnguyen107 in #3387\nNew Contributors\n- @RastislavKish made their first contribution in #3255\n- @davidculley made their first contribution in #3293\n- @isym444 made their first contribution in #3284\n- @brishtibheja made their first contribution in #3288\n- @Expertium made their first contribution in #3314\n- @cdonat2 made their first contribution in #3328\n- @asukaminato0721 made their first contribution in #3330\n- @DillBal made their first contribution in #3345\n- @bpnguyen107 made their first contribution in #3356\n- @jakeprobst made their first contribution in #3230\n- @themis-d made their first contribution in #3377\n- @gregorylearns made their first contribution in #3399\n- @taylorobyen made their first contribution in #3404\n- @lukesbart made their first contribution in #3398\n- @krischerven made their first contribution in #3413\n- @cy7sh made their first contribution in #3465\n- @phu54321 made their first contribution in #3467\n- @lima-limon-inc made their first contribution in #3485\nFull Changelog: https://github.com/ankitects/anki/compare/24.06.3...24.11",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/24.11",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/24.11",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/24.11/anki-24.11-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-24.11-windows-qt6.exe",
          "sha256": "e202346a0b91293229c73eef2393b733d4a95ff25b25814852825d76621b55c8",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "24.06.3",
      "release_date": "2024-06-28",
      "release_notes": "What's Changed\nPlease see  for earlier changes, including security fixes.- Fix deck options failing to appear in Qt5 build\n- Fix deck config input's background color in Qt5 by @abdnh in #3243\n- Fix relearning cards' Intervals don't update after changing Desired Retention by @L-M-Sherlock in #3236\n- Fix renaming note fields not updating custom browser appearance by @jamesnelmore in #3245\n- Fix image occlusion flicker caused by setupI18n() by @abdnh in #3253\n- Restore $deckOptions by @abdnh in #3265\n- Fix FSRS easy interval being same as good interval in relearning cards by @user1823 in #3256\n- Remove threshold of compute minimum recommended retention by @L-M-Sherlock in #3246\n- Shuffle identical values in filtered deck sort by @abdnh in #3259\n- Make SvelteCheck and ViteTest respect YARN_BINARY by @antecrescent in #3231\nNew Contributors\n- @jamesnelmore made their first contribution in #3245\nFull Changelog: https://github.com/ankitects/anki/compare/24.06.2...24.06.3rc1",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/24.06.3",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/24.06.3",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/24.06.3/anki-24.06.3-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-24.06.3-windows-qt6.exe",
          "sha256": "e11ade8b94dbb5374102669ea589bc1072ea07b93897f3b36fa045f5192ef0ba",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "24.06.2",
      "release_date": "2024-06-09",
      "release_notes": "What's Changed\nPlease see https://github.com/ankitects/anki/releases/tag/24.06 for earlier changes, including security fixes.\n- Fix image occlusion errors in previewer and card template editor by @glutanimate in #3228\nFull Changelog: https://github.com/ankitects/anki/compare/24.06.1...24.06.2",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/24.06.2",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/24.06.2",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/24.06.2/anki-24.06.2-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-24.06.2-windows-qt6.exe",
          "sha256": "4d70fdf8652ba910263d66466d7a94165fe593fc863b9a10c593013ef2828a35",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "24.06.1",
      "release_date": "2024-06-08",
      "release_notes": "What's Changed\n- Fix image occlusion not working during review\n- Fix for building with custom yarn by @AlexBocken in #3226\nPlease see https://github.com/ankitects/anki/releases/tag/24.06 for earlier changes, including security fixes.New Contributors\n- @AlexBocken made their first contribution in #3226\nFull Changelog: https://github.com/ankitects/anki/compare/24.06...24.06.1",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/24.06.1",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/24.06.1",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/24.06.1/anki-24.06.1-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-24.06.1-windows-qt6.exe",
          "sha256": "feff79fbde38eaa0102c95d74cd77b05f42d2514ac3522b2087c2aa19a40ae78",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "24.06",
      "release_date": "2024-06-07",
      "release_notes": "What's Changed\nThis release includes some security fixes for the handling of shared decks. If you make use of shared decks from untrusted authors, updating to the latest version is recommended. A big thank you to Autumn and Jay for the reports.Changes in FSRS:\n- Update to latest FSRS by @L-M-Sherlock in #3106 and #3200\n- Return current weights if fsrs items is zero & handle error in evaluation and optimal retention by @L-M-Sherlock in #3141\n- Update optimal retention and parameters tooltip by @L-M-Sherlock in #3148\n- Show review count with FSRS evaluation results by @abdnh in #3165\n- Show review count for Evaluate/Optimize button by @abdnh in #3170\n- Use median in calculating cost and remove outliers by @L-M-Sherlock in #3181\n- Fix/exclude suspended cards when optimize all presets by @L-M-Sherlock in #3198\n- Fix/ignore revlogs when there is not learn entry after the last forget entry by @L-M-Sherlock in #3199\n- Tweaks to the 'optimize all presets' progress\nOther improvements:\n- Highlight the current I/O shape during review by @krmanik in #3098\n- Auto-answer can now show reminder instead of answer (#3064) by @Loudwig in #3119\n- Switch to SvelteKit by @dae in #3077\n- Optimum → Minimum retention by @user1823 in #3133\n- Add Margins on the Buttons on the About Page by @Ianwu0812 in #3137\n- Improve typing of custom fabric.Object properties by @abdnh in #3134\n- Fix IO text size in review screen by @abdnh in #2986\n- Ignore errors in do_window_cleanup to fix shutdown issue by @abdnh in #3142\n- Fix spacebar causing stutter when editing cards by @abdnh in #3150\n- Fix auto sync not working on Windows shutdown by @abdnh in #3153\n- Add minimalist mode tooltip by @hnvy in #3155\n- Fix dark mode icons by @RumovZ in #3135\n- Add number truncation before back-end translation by @lucasscharenbroch in #3162\n- Add keyboard shortcuts for empty cards and toggle mask on image occlusion by @escribapetrus in #3136\n- Use key instead of code in type-in field by @abdnh in #3166\n- Improve and unify web dialog styling by @RumovZ in #3167\n- fix polygon tool draw by @krmanik in #3184\n- Clean up #3167 by @RumovZ in #3186\n- Do not clear unused parent tags by @abdnh in #3174\n- Fix '366 of 365 days studied' by @abdnh in #3182\n- Fix IO event handlers being run on normal notes by @abdnh in #3195\n- Fix finished preview learning cards being repeated by @abdnh in #3196\n- Use SplashScreen flag for all aqt tooltips by @voczi in #3194\n- Do not show media auto sync errors by @abdnh in #3197\n- HMR on Windows by @RumovZ in #3144\n- Mnemosyne importer now handles float values for due date and interval\n- Fix Mnemosyne importer clobbering source file\n- Ensure DB check tooltip appears in main window\n- Call profile_did_open hook at the end of loadProfile by @abdnh in #3202\n- Fix future due search missing cards on last day by @abdnh in #3206\n- Do not recreate io page when toggle button used by @krmanik in #3208\n- Reschedule → Reposition by @user1823 in #3209\n- Add support for custom certificates by @voczi in #3203\n- Another try at fixing IO events issue by @abdnh in #3210\n- Fixes shift click selection after programmatic selection in most cases, Issue #2469 by @RRomeroJr in #3213\n- Reword sync conflict explanation by @abdnh in #3221\n- Add a preference to toggle LaTeX generation by @abdnh in #3218\n- Pass -- to mpv/mplayer before filename by @abdnh in #3219\n- Add starting window class by @upsuper in #3216\n- Remove empty cards shortcut key, as it conflicts.\n- Honor night mode when switching between cards in card info.\n- Probable fix for crash when syncing from preferences screen.\n- Avoid askUser() in sync dialogs by @abdnh in #3222\n- Work around RuntimeError in _update_button_label() by @abdnh in #3224\n- Mention missing field's name in CardTypeError by @abdnh in #3225\n- Fix missing i18n module in IO review screen by @abdnh in #3223\nNew Contributors\n- @jthulhu made their first contribution in #3108\n- @escape0707 made their first contribution in #3114\n- @Ianwu0812 made their first contribution in #3137\n- @Loudwig made their first contribution in #3119\n- @voczi made their first contribution in #3194\n- @RRomeroJr made their first contribution in #3213\n- @upsuper made their first contribution in #3216\nFull Changelog: https://github.com/ankitects/anki/compare/24.04.1...24.06",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/24.06",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/24.06",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/24.06/anki-24.06-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-24.06-windows-qt6.exe",
          "sha256": "f3a687731a2495d3af4d74463c003de180e1da996e07f521d96c09dfc6642aab",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "24.04.1",
      "release_date": "2024-04-11",
      "release_notes": "- Fix crashing on first sync.\n- Image occlusion fixes, thanks to @krmanik and @abdnh.\n- Fix dark mode not being detected on Intel Macs.\n- Another attempt at fixing a rounding issue with optimal retention.\n- Rename optimal retention and clarify wording, thanks to @AntoineQ1.\n- Fix an error that can occur when using Linux distro packages, thanks to @Escape0707.",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/24.04.1",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/24.04.1",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/24.04.1/anki-24.04.1-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-24.04.1-windows-qt6.exe",
          "sha256": "911f802f0dca3ae5c38d135e47344e8e47dbb4c89ef8ffb8cb65eb21e5038f22",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "24.04",
      "release_date": "2024-03-31",
      "release_notes": "What's Changed\n- Update Qt to 6.6.2. On macOS, this should fix issues with Japanese input.\n- Update FSRS & export benchmark API by @L-M-Sherlock in #3056\n- Keep previous FSRS parameters if they get worse when optimizing by @abdnh in #2996\n- The I/O editor better preserves images quality when zooming in, and supports two-finger pinch/drag on mobile platforms. By @krmanik in #3052\n- Improved pan/zoom in image occlusions: middle mouse button, space, or ctrl/shift/alt with two fingers by @krmanik in #3080 and #3066\n- Improvements/simplifications to FSRS optimal retention feature by @L-M-Sherlock in #3065 and #3072\n- When updating all FSRS parameters at once, exclude suspended cards.\n- Move most FSRS options into their own section of the deck options.\n- Don't hide FSRS optimization section.\n- Show a warning in the optimization section if all presets haven't been optimized for 30 days or longer.\n- Show preset and original deck in card info by @abdnh in #3055\n- Use system certificate store by @abdnh in #3050\n- Ignore some extra chars in no-combining search by @abdnh in #2929\n- Add \"select all\" shapes tool by @krmanik in #2981\n- Maintain original IO cloze order in editing mode by @abdnh in #2987\n- Fix occasional 'failed to fetch' message popping up.\n- Fix pasted images failing to download from some sites.\n- Add by creation date review sort order by @abdnh in #2957\n- Add log-in button to preferences screen by @lucasscharenbroch in #2994\n- Add support for offline builds by @knobix in #2963\n- Add support for python logging by @cav71 in #2969\n- Add View Files button to Check Media screen by @abdnh in #3006\n- Allow > inside HTML attributes by @vaxr in #2918\n- Americanize \"synchronisation\" by @hnvy in #2935\n- Change default font in code editors by @abdnh in #2985\n- Check required review count for FSRS after filtering by @abdnh in #3019\n- clamp interval before fuzz_bounds by @L-M-Sherlock in #3024\n- Clear out old FSRS progress as new operation starts\n- Default to 'Bury Card' action consistently by @abdnh in #2950\n- Do not reset original_due when card stays in filtered deck by @abdnh in #2988\n- Don't urllib.unquote when using requests by @vaxr in #2943\n- Fix 'ignore this update' not working.\n- Fix processEvents() reentrancy bug in progress manager window handling by @kieranlblack in #3030\n- Fix a 'protocol wrong type' message sometimes popping up.\n- Fix circular import in legacy importer by @abdnh in #3007\n- Fix code completion in Qt forms by @abdnh in #2993\n- Fix corner rounding of alignment buttons in editor by @lucasscharenbroch in #2989\n- Fix crash in Reviewer by @mjuhanne in #2945\n- Fix deck names differing in case being duplicated in CSV import by @abdnh in #3008\n- Fix error after notetype merge + downgrade.\n- Fix flicker when hovering over deck list by @abdnh in #2958\n- Fix Image field not hidden until user selects an image by @abdnh in #2960\n- Fix importing of Mnemosyne due dates by @dae in #2936\n- Fix inconsistent count in optimize/evaluate.\n- Fix MathJax editor not opening when navigating into blocks by @abdnh in #2953\n- Fix maybe_coalesce_note_undo_entry() by @abdnh in #2992\n- Fix misaligned image occlusions in RTL languages by @abdnh in #3018\n- Fix note id mix-up when resolving notetype conflicts by @RumovZ in #2940\n- Fix notetype conflict resolution by @RumovZ in #2967\n- Fix preset: search ignoring cards in filtered decks by @abdnh in #2997\n- Fix progress manager window race condition by @kieranlblack in #3029\n- Fix regex skipping over all src except the last by @vaxr in #3021\n- Fix text input custom style wiping out base user style by @kieranlblack in #3031\n- Fix title of Auto Advance section by @abdnh in #2949\n- Fix toolbar button shifting on hover by @BlueGreenMagick in #2928\n- Fix undo handling of group and some other IO tools by @abdnh in #2931\n- Fix visual behavior of modal buttons in editor by @lucasscharenbroch in #3009\n- Fix windows build issue by @qxo in #2947\n- Fix/ignore revlogs before Forget entry by @L-M-Sherlock in #3002\n- Flip indent/outdent buttons for RTL by @abdnh in #2930\n- FSRS - Ignore revlogs before date while optimizing by @Luc-Mcgrady in #2922\n- Honor NINJA_STATUS if already set by @knobix in #2984\n- Improve appearance of resize handles in I/O by @krmanik in #2919\n- Improve typing deck_due_tree() by @nix6839 in #3003\n- Include details on what's missing when a NotFound error is triggered.\n- Increase parent limits in custom study when 'limits start from top' is enabled by @RumovZ in #2971\n- Initialize Browser.aspect_ratio earlier to fix AttributeError by @abdnh in #2924\n- Make a deep copy in addcards/set_note by @lucasscharenbroch in #3013\n- Make image occlusion's option buttons tabbable by @PLameiras in #2966\n- Make sure editor note is saved before triggering buttons by @abdnh in #2995\n- Make tags and tag suggestions able to be styled by add-ons by @glutanimate in #2941\n- More precise percent of days studied by @user1823 in #2889\n- Refactor text attribute button components by @lucasscharenbroch in #3012\n- Shift the default network timeout back to 60 seconds.\n- Show message if current FSRS parameters are optimal by @abdnh in #3014\n- Show total review count when optimizing FSRS parameters by @abdnh in #3027\n- Tweak type-in-answer filter hack by @lucasscharenbroch in #3010\n- update FSRS to v0.2.0 by @L-M-Sherlock in #2977\n- Use card.reps - 1 when calculating fuzz by @dae in #2933\n- Use our translation of 'Discard' by @abdnh in #2920\n- Containerize anki-sync-server by @jeankhawand in #3036\n- Fix alert not appearing when FSRS parameters input is focused by @abdnh in #3053\n- Adjust HTML editor / add-on config editor font by @abdnh in #3054\n- Fix/set pretrain_only by fsrs_items by @L-M-Sherlock in #3051\n- Use Card %d for IO template names by @BrayanDSO in #3049\n- alert when the resp.weights is empty by @L-M-Sherlock in #3061\n- When cards become due on the congrats screen, switch to overview, not back into study.\n- Adding a note to the import options to indicate that leech and marked tags will be removed if disabled by @arbyste in #3067\n- Fix full sync dialog failing to appear.\n- Fix consolas not being used in editor.\n- qt/aqt/init.py: Skip GL library workaround for FreeBSD by @knobix in #3071\n- fix: cloze_numbers_in_string treating {{c0::}} as valid by @BrayanDSO in #3059\n- Display deck names when deleting by @escribapetrus in #3058\n- Rename \"Forget\" to \"Reset\" (#3078) by @vasll in #3088\n- Reset original id when cloning notetypes by @RumovZ in #3089\n- Use rmse in comparing parameters by @L-M-Sherlock in #3087\n- Fix summary string for notes that failed to be imported by @RumovZ in #3092\n- Disable ligatures in type-in highlighting by @abdnh in #3093\n- Sync-server: add option to store hashed passwords by @laalsaas in #3083\n- Refactor offline build process and add offline generation of Sphinx docs by @antecrescent in #3082\n- Replace deprecated method chrono::NaiveDateTime::timestamp_millis by @ijqq in #3097\n- Update optimal retention tooltip, and add a few extra translations.\n- Possible workaround for sporadic toolbar height warning.\n- \"Full sync\" -> \"One-way sync\".\n- rename sm2 retention to historical retention by @L-M-Sherlock in #3101\n- Use \"importing-added\" string in importing detail table by @snowtimeglass in #3104\n- Fix mpv loadfile syntax change by @kelciour in #3105\n- Improve timer interval display (#3096) by @AntoineQ1 in #3100\n- Fix incorrect search results after preset used.\nNew Contributors\n- @vaxr made their first contribution in #2918\n- @hnvy made their first contribution in #2935\n- @PLameiras made their first contribution in #2966\n- @knobix made their first contribution in #2963\n- @lucasscharenbroch made their first contribution in #2989\n- @cav71 made their first contribution in #2969\n- @nix6839 made their first contribution in #3003\n- @jeankhawand made their first contribution in #3036\n- @Foxy-null made their first contribution in #3060\n- @arbyste made their first contribution in #3067\n- @escribapetrus made their first contribution in #3058\n- @vasll made their first contribution in #3088\n- @laalsaas made their first contribution in #3083\n- @ijqq made their first contribution in #3097\n- @AntoineQ1 made their first contribution in #3100\nFull Changelog:",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/24.04",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/24.04",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/24.04/anki-24.04-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-24.04-windows-qt6.exe",
          "sha256": "5b5db854523c08b4e228e6e01d2cdb12c886403619e290e1b455a29a00689eee",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "23.12.1",
      "release_date": "2023-12-28",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/23.12.1",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/23.12.1",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/23.12.1/anki-23.12.1-windows-qt5.exe",
          "host": "github.com",
          "filename": "anki-23.12.1-windows-qt5.exe",
          "sha256": "7f1941c40dc3c520dae9eb3f1171fd5921067845e5f62414a96b9c18567aba66",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "23.12",
      "release_date": "2023-12-24",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/23.12",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/23.12",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/23.12/anki-23.12-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-23.12-windows-qt6.exe",
          "sha256": "1d180201634ffb215d46f8a76ba60bd7640aee2150b5cc528b8dd6dae9e4da43",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "23.10.1",
      "release_date": "2023-11-09",
      "release_notes": "- Update all platforms to Qt 6.6.\n  This change fixes Japanese input on macOS.\n- Fix Anki failing to run on older macOS versions.\n- The Linux Qt6 build requires a newer glibc, so older distros like Debian 11 won't work with it.\n- Fix syncserver failing to run in macOS packaged build.\n- Fix some potential security issues.\n- Fix 'creating backup' showing for longer than necessary.\n- Add tooltip to mask editor button.\n- Allow creation of empty filtered decks by @Gustaf-C in #2788\n- Add confirmation for upload when AnkiWeb collection determined empty.\n- Fix add-ons screen showing 'requires Anki >= 2.1.231000'.\n- Fix overflowing filenames displacing import button by @RumovZ in #2806\n- Fix Anki closing before 'your clock is wrong' message appears.\n- Hide \"toggle masks\" in \"Hide One, Guess One\" mode by @abdnh in #2817\n- Change tooltip strings for image occlusion center alignments by @snowtimeglass in #2815\n- Check video tags in media check.\n- Prompt user to save preset changes before they compute FSRS weights.\n- Fix panic when enabling FSRS with add-on-rescheduled cards.\n- Add an info box so the non-linear nature of desired retention can be seen\n- Improve presentation of log loss and RMSE by @user1823 in #2805\n- Rename FSRS weights to parameters\n- Handle stability < 0.5 in stability graph\nNew Contributors\n- @snowtimeglass made their first contribution in #2815",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/23.10.1",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/23.10.1",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/23.10.1/anki-23.10.1-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-23.10.1-windows-qt6.exe",
          "sha256": "151663f61bdcdde0b12489bceaba85fee479fe5bf01cd79b97838f0f9d1fa498",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "23.10",
      "release_date": "2023-10-31",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/23.10",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/23.10",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/23.10/anki-23.10-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-23.10-windows-qt6.exe",
          "sha256": "9a93874b98d5b0b81ba3a876a13106be8102845faf0578b7fef508eddf2ff8b4",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.66",
      "release_date": "2023-08-19",
      "release_notes": "- Windows and Mac builds have been updated to the latest toolkit version,\n- The v3 scheduler is now the default for new users.\n- When imports complete, a summary window is now shown (thanks to Abdo).\n- Use a different approach for detecting copy+paste from Anki fields, which may fix some crashes.\n- The minimalist/reduce motion toggles should no longer affect card content.\n- Media check now automatically extracts images that have been embedded in fields.\n- Handle importing of legacy AnkiDroid backups.\n- The built-in sync server can now be built without Python if you prefer.\n- Add keyboard shortcut for legacy stats (thanks to Luc).\n- Accessibility improvements (thanks to Derek and Kenny).\n- Fix addon update dialog showing twice (thanks to Rumo).\n- Fix bold toggle not working in certain circumstances (thanks to mmjang).\n- Align code blocks to left (thanks to shunlog).\n- Make weekday font smaller for Chinese locale (thanks to mmjang).\n- Improve performance of invalid ID fix in DB check.\n- Fix main window geometry/state not being restored in some cases (thanks to Abdo).\n- Handle invalid float mtimes in DB check.\n- Fix total note count not being logged in apkg import.\n- Report actual error when DbError occurs.\n- Fix two issues with MathJax editor (thanks to Hikaru).\n- Don't fail silently when an empty csv is imported.\n- Fix two issues that can cause editor fields to behave incorrectly (thanks to Hikaru).\n- When cards are in intraday learning queue, don't use original due.\n- Fix \"Add-ons possibly involved\" message never appearing on Windows (thanks to Abdo).\n- Add partial support for Hangul keyboard shortcuts during review (thanks to Christopher).\n- Disable add-on buttons when no field is focused by default (thanks to Abdo).\n- Fix toggleable editor button styles (thanks to Abdo).\n- Fixed a sporadic error in the review screen (thanks to mjuhanne).\n- Fixed an error that could occur when syncing between newer and older clients.\n- Fixed tab order in find&replace screen (thanks to Gabriel).\n- Various other minor fixes and behind-the-scenes changes.\n- Fix incorrect handling of locals in debug console (thanks to Rumo).\n- Add did-add-field-hook analogous to did-delete-field (thanks to 3ter).\n- Fix run-qt5.15.bat (thanks to Hikaru).\n- Support more mime types for add_extension_based_on_mime (thanks to BenYip).\n- Make set_config_help_action work with submodules (thanks to Abdo).\n- Exclude Fabric's large canvas dependency (thanks to Kavel).",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/2.1.66",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.66",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "user",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.66/anki-2.1.66-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.66-windows-qt6.exe",
          "sha256": "22f923b2e78be53b4e738da8315b85a9838dcaf46cf3279cf06aa9357f6fc470",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.65",
      "release_date": "2023-05-31",
      "release_notes": "- Default to current deck in csv import if settings allow it.\n- Disable Toggle Bury when nothing is selected (thanks to Abdo).\n- Fix broken window styling when installation path includes certain Latin1 chars on Windows.\n- Fix illegible tooltips when system in dark mode on some Linux installs.\n- Fix incorrect font sizes on X11 when fractional scaling in use.\n- If the old Anki uninstaller fails, allow installation to proceed.\n- Improve phrasing in dialog that asks which deck's options should be shown (thanks to chrissy0).\n- Fix some add-on installation errors not being reported (thanks to Abdo)\n- Add add-on installation hooks (thanks to Abdo).",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/2.1.65",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.65",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.65/anki-2.1.65-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.65-windows-qt6.exe",
          "sha256": "02d992a47fe826254b3dc707226d9d06c006f3fa0dc1e66c9e47767316896ed9",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "uninstallPrevious",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.64",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/2.1.64",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.64",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.64/anki-2.1.64-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.64-windows-qt6.exe",
          "sha256": "9fc5dd1143aebddc0b9f9ca3e433dc47810989d6dd6a8c82b4784caace3f03ed",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.63",
      "release_date": "2023-05-09",
      "release_notes": "- Add alternative review shortcuts (h,j,k,l,u) (thanks to Ren).\n- Add an option in the preferences to stop spacebar from rating card (thanks to Ren).\n- Prevent change in image aspect ratio in editor when images have an explicit size set (thanks to Matthias).\n- Fix custom sync URL not working with subpaths (thanks to XeR).\n- Fix fcitx5 failing to work in Linux Qt6 build.\n- Fix some buttons in the deck options screen being illegible when hovering.",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/2.1.63",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.63",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.63/anki-2.1.63-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.63-windows-qt6.exe",
          "sha256": "8bed2f94e2f769ddf01cc4937fa981f7b41806c20f7171b5d38c9ad0084adb93",
          "product_code": "Anki",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.61",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.61",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.61/anki-2.1.61-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.61-windows-qt6.exe",
          "sha256": "b85a18304d65879aab97674e3c9dd11c7ecde4783c32160428ebf3cea17ea6ba",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.60",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.60",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.60/anki-2.1.60-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.60-windows-qt6.exe",
          "sha256": "efd403a907ee9a206439d446af47717f1024eb5581ad6fca4da7cc7624088243",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.56",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/2.1.56",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.56",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.56/anki-2.1.56-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.56-windows-qt6.exe",
          "sha256": "3d4d6b83998cc5ff09435fb7e1bd105a0ae749423b1655bbddb2f557f689a961",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.55",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/2.1.55",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.55",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.55/anki-2.1.55-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.55-windows-qt6.exe",
          "sha256": "1dce28567a37ed3d47ae024e92ed71c0e769a0cc955e9259fdba477f9e6383d6",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.54",
      "release_date": "2022-06-24",
      "release_notes": "A new CSV importer & exporter, thanks to Rumo:\n• Shows a preview based on the selected field separator.\n• Column mapping includes field text for reference.\n• Multiple decks and notetypes can now be imported/exported at once, as columns can be mapped to deck or notetype name.\n• Supports exporting and importing a unique identifier for a note, to use instead of a matching first field. This removes the need for the 'add note id' add-on.\n• Extends the header syntax so that files can specify metadata such as the desired field separator, and the mapping of fields.\n• The new functionality is not enabled by default, and can be enabled with a checkbox in the preferences screen. This also enables\n• the new apkg import/export code introduced in 2.1.52. If you use the Special Fields add-on, you will need to disable this option\n• in order to use the add-on.\n\nUpdate to Qt 6.3.1:\n• Fixes complex-language input (eg Japanese, Hindi, etc) on macOS being flaky.\n• Fixes unwanted text when copying from the review screen on Windows.\n• Fixes a startup failure with certain Linux keyboard configurations.\n• Due to a change in Qt, you will need to reconfigure your columns in the browse screen after updating.\n\nFixes & improvements:\n• Accept .zip extension when importing add-ons (thanks to Abdo).\n• Add support for getting light/dark mode status with latest freedesktop standard (thanks to Bart).\n• Editor API improvements (thanks to Henrik).\n• Field descriptions in the editor are now shown inline, instead of in a tooltip (thanks to Matthias, Henrik and Hikaru).\n• Fixed a rounding issue when describing time intervals of a year or more.\n• Fixed an error that occurred after a one-way download fetched a collection with a different scheduler version enabled.\n• Fixed desktop hanging when attempting to add a new notetype in KDE (kwin).\n• Fixed flag names not updating after sync until Anki restarted.\n• Fixed inability to enter underscore in tags area on some keyboard layouts (thanks to Henrik).\n• Fixed undo history being cleared and error showing when double-tapping delete in Browse screen.\n• Provide a way for the review screen to support drop events (thanks to Abdo).\n• Other minor fixes and improvements.",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/2.1.54",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.54",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.54/anki-2.1.54-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.54-windows-qt6.exe",
          "sha256": "f42ad7a5d8135e184350dcc7373f54f326a42960a65072424d39cca04bd702e4",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.53",
      "release_date": "2022-05-28",
      "release_notes": "Editor Improvements\n• Rework image resizing. Images expand to the editor width by default now,\n• and images that are resized for the editor will remain that way if you switch fields, or\n• navigate to a different note and back.\n• Existing height constraints on images are stripped when resizing.\n• The MathJax editor now provides buttons/shortcuts to cloze-delete selected text.\n• MathJax preview now hides cloze markers.\n• Style tags are no longer stripped when editing.\n• <br> tags in MathJax are now handled correctly.\n• MathJax in the review screen now supports mathtools, and available packages in editor and review screen match.\n• Move focus into HTML editor when hiding normal editor.\n• Image tags now have the alt property preserved when pasting.\n\nOther Improvements\n• Fixed the Qt6 version crashing on some machines.\n• Custom study no longer includes child decks in available card count in v3 scheduler.\n• Fixed an error sometimes appearing in the browser when deleting notes.\n• Fixed automatic backups popping up progress window when Anki minimized.\n• Fixed cards not being generated after template edits.\n• Fixed deck options top bar disappearing as you scroll down.\n• Fixed duplicate Anki icons appearing in dock on macOS.\n• Fixed duplicate first character in certain ibus configurations.\n• Fixed future due graph incorrectly including new cards.\n• Fixed initially-incorrect tooltip position in graphs.\n• Fixed some MathJax directives failing to render in editor.",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/2.1.53",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.53",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.53/anki-2.1.53-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.53-windows-qt6.exe",
          "sha256": "06bd088ad764398fbae28d84440c8dbaf878066844107f8bbb0d401c630d23eb",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.52",
      "release_date": "2022-05-13",
      "release_notes": "Editor Improvements\n• Ctrl/Cmd+A in tag editing area now selects all tags (thanks to BlueGreenMagick).\n• Fixed backspace sometimes removing multiple images at once (thanks to Henrik).\n• Fixed copying and pasting MathJax on Windows (Qt6).\n• Fixed handling of < and > symbols in MathJax (thanks to Henrik).\n• Fixed intermittent editor loading failures when add-ons have injected a large amount of code.\n• Fixed pasting of local files of unsupported types that contain spaces (thanks to Abdo).\n• Fixed some formatting being lost when copying between fields on Windows (Qt6).\n• Fixed various issues with tag editing (thanks to BlueGreenMagick and Henrik).\n• Pressing tab on the last field now moves focus to tag area (thanks to Henrik).\n• Reduce size of editor buttons on Windows/Linux (thanks to Henrik).\n• Tags copied from the tag editor are no longer joined together when pasted into the add tags/remove tags dialogs (thanks to Henrik).\n• The Qt5 Mac build now caps tag autocomplete matches to 10, as showing more is extremely slow in the old toolkit version.\n\nOther Improvements\n• Update Qt to 6.3.0, which fixes slow loading of large images, and inertial scrolling on macOS.\n• Fixed an error when previewing cards and selecting multiple cards (thanks to Rumo).\n• Fixed Anki needing to close when invalid modification times encountered by the browser on Windows.\n• Fixed colpkg imports not being cancellable (thanks to Rumo).\n• Fixed current working directory changing on apkg export.\n• Fixed custom browser font not being honored (Qt6).\n• Fixed custom study applying the previously-input limit, instead of the current one.\n• Fixed due graph showing wrong date for review cards in a filtered deck with rescheduling disabled.\n• Fixed grey background in type answer text + dark mode (thanks to Matthias).\n• Fixed v3 scheduler allowing one extra card when review limit reached (thanks to Rumo).\n• Lists on cards are now aligned to the left by default (thanks to Matthias).\n• Removed the highlight on the Show Answer and Good buttons.\n• Reset page zoom when moving between different screens.\n• The Qt6 Linux build now defaults to X11/XWayland instead of Wayland due to some remaining issues; you can force-enable Wayland with ANKI_WAYLAND=1.",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/2.1.52",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.52",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.52/anki-2.1.52-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.52-windows-qt6.exe",
          "sha256": "6f996decd3efc5c4ecae6615a80a2139d3e334b8bea749b53b5f69c762249414",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.51",
      "release_date": "2022-04-25",
      "release_notes": "Changes:\n• Reviews in the V3 scheduler can now optionally be sorted by relative overdueness (thanks to Abdo).\n• Remember original card position when using 'set due date' on a card (thanks to Rumo).\n• Improve editor startup time, especially with many fields (thanks to Henrik).\n\nFixes:\n• Fixed compatibility with older macOS versions.\n• Fixed an issue that was breaking some add-ons when running on Windows without using anki-console.bat\n• Anki now closes the Browse screen before full sync or colpkg import/export, so it doesn't show errors.\n• Automatically re-enable disabled add-ons when user explicitly reinstalls them, and improve conflict handling (thanks to Aristotelis).\n• Fixed an issue with the search history when clicking on items in the sidebar (thanks to Rumo).\n• Fixed card layout screen opening too wide if card template name was long (thanks to Sam).\n• Fixed compatibility with 'card info during review' and similar add-ons.\n• Fixed formatting being turned off when pressing shift (thanks to Henrik).\n• Fixed full sync not being triggered when changing sort field.\n• Fixed illegible calendar buttons in dark mode on Mac/Linux.\n• Fixed stats PDF being illegible when saving in dark mode after scrolling down (thanks to Luka).\n• Use <b> and <i> formatting tags, instead of <strong> and <em>.",
      "release_notes_url": "https://github.com/ankitects/anki/releases/tag/2.1.51",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.51",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.51/anki-2.1.51-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.51-windows-qt6.exe",
          "sha256": "0618d7630fc376cf81ec0662fbab6f514f01dc527ef1a7c9b5cb0a673eb49edf",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.50",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.50",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.50/anki-2.1.50-windows-qt6.exe",
          "host": "github.com",
          "filename": "anki-2.1.50-windows-qt6.exe",
          "sha256": "ad42c3cfc7a0ea79e0833e31c1ec9f719982099e06d43d890000b941389215a2",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.49",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.49",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.49/anki-2.1.49-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.49-windows.exe",
          "sha256": "3c9764cb4746cfa4059633678b9dcdc0ae5754e61d99855cb0c40fa6bfd33f5e",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.48",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.48",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.48/anki-2.1.48-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.48-windows.exe",
          "sha256": "6ee8222f6a383e52bb45c8583c6e61288824cdc811ed54e7ebb6b2ce687c28a9",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.47",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.47",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.47/anki-2.1.47-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.47-windows.exe",
          "sha256": "2dd0a9a9b0bc003558f608cabd30c2e51ccae95146517da8a91f6698c7660816",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.46",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.46",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.46/anki-2.1.46-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.46-windows.exe",
          "sha256": "4c72018a76e7919401d2a5fa3377a76d15e6855878b5435c84396dfe534364e9",
          "product_code": "Anki",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.45",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.45",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.45/anki-2.1.45-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.45-windows.exe",
          "sha256": "750ffd0894dec55b8e152ec2eb178945345a2cb2d8acd40e533a709c262c1ee3",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent",
            "silentWithProgress"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.44",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.44",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.44/anki-2.1.44-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.44-windows.exe",
          "sha256": "0d71b91cd82416a6f5b02142ed54290f3689abe0261b0ba8406110dd93421be5",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent",
            "silentWithProgress"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.43",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.43",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "scope": "machine",
          "locale": "en-US",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.43/anki-2.1.43-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.43-windows.exe",
          "sha256": "89c7f11811ce2ab8eef7709165c01444dd90318e2e6c5f7a9deca660c4ae211a",
          "min_os_version": "10.0.0.0",
          "install_modes": [
            "interactive",
            "silent",
            "silentWithProgress"
          ],
          "upgrade_behavior": "install",
          "file_extensions": [
            "apkg"
          ]
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.40",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.40",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.40/anki-2.1.40-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.40-windows.exe",
          "sha256": "5f24823235610f2a4a3555eada8a90dfcd0496bdb6ccf570b76f7699852a0b1a",
          "min_os_version": "10.0.0.0"
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.33",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.33",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.33/anki-2.1.33-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.33-windows.exe",
          "sha256": "d90a1ac70821da657006c05d00b8368fa61b9f2c1b0895c516542f093194d8f3",
          "min_os_version": "10.0.0.0"
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.28",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.28",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.28/anki-2.1.28-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.28-windows.exe",
          "sha256": "184467a2124e8309daef939d2612433390818f931f1d5761897bffebc00f0e46",
          "min_os_version": "10.0.0.0"
        }
      ]
    },
    {
      "platform": "windows",
      "version": "2.1.26",
      "manifest_version": "1.9.0",
      "manifest_dir": "manifests/a/Anki/Anki/2.1.26",
      "installers": [
        {
          "platform": "windows",
          "architecture": "x64",
          "type": "nullsoft",
          "url": "https://github.com/ankitects/anki/releases/download/2.1.26/anki-2.1.26-windows.exe",
          "host": "github.com",
          "filename": "anki-2.1.26-windows.exe",
          "sha256": "5881a7424530ef75a2afdd9f579a87be288dd6d8248a9670a55b28e4f6eae8a8",
          "min_os_version": "10.0.0.0"
        }
      ]
    },
    {
      "platform": "macos",
      "version": "26.09.3",
      "installers": [
        {
          "platform": "macos",
          "architecture": "x64",
          "type": "dmg",
          "url": "https://github.com/ankitects/anki/releases/download/26.09.3/anki-26.09.3-mac-intel.dmg",
          "host": "github.com",
          "filename": "anki-26.09.3-mac-intel.dmg",
          "sha256": "7b123efecab1395d03fdf4e5df4df16efc72c9629c38b50ef8cad692d310bd77"
        },
        {
          "platform": "macos",
          "architecture": "arm64",
          "type": "dmg",
          "url": "https://github.com/ankitects/anki/releases/download/26.09.3/anki-26.09.3-mac-apple.dmg",
          "host": "github.com",
          "filename": "anki-26.09.3-mac-apple.dmg",
          "sha256": "b36fe8f6c015a602feaf3ef38f5967c27c8964ee30a5c74ca2532225cf602345"
        }
      ],
      "cask": {
        "apps": [
          "Anki.app"
        ],
        "cleanup": {
          "quit": [
            "net.ankiweb.anki"
          ],
          "zap_paths": [
            "~/Library/Application Support/Anki*",
            "~/Library/Caches/Anki",
            "~/Library/Saved Application State/net.ankiweb.dtop.savedState"
          ]
        }
      }
    }
  ],
  "verification": {
    "level": 0,
    "label": "Hashes copied from upstream package manifests (winget-pkgs, Homebrew cask). Not independently re-computed; signatures not checked.",
    "checks": {
      "hash_in_manifest": true,
      "hash_recomputed": false,
      "signature_checked": false
    }
  },
  "provenance": [
    {
      "source": "winget-pkgs",
      "platform": "windows",
      "repo": "https://github.com/microsoft/winget-pkgs",
      "commit": "21e6be824c55b3c6f476664adc0b93087cd16c82",
      "retrieved_at": "2026-11-04T01:08:06.172Z",
      "path": "manifests/a/Anki/Anki"
    },
    {
      "source": "homebrew-cask",
      "platform": "macos",
      "repo": "https://github.com/Homebrew/homebrew-cask",
      "commit": "1f44ba636b3c070723431b7ab5848c15eb34396a",
      "retrieved_at": "2026-11-04T01:08:54.374Z",
      "path": "Casks/a/anki.rb",
      "api_url": "https://formulae.brew.sh/api/cask/anki.json"
    }
  ],
  "derived": {
    "canonical_url": "https://everyversion.net/anki/",
    "title": "Download Anki and old versions",
    "h1": "Download Anki",
    "installer_summary": {
      "windows": [
        "Delivered as a Windows Installer package built with WiX (.msi) for x64 and ARM64.",
        "Installs for the current user only, so administrator rights are normally not needed.",
        "No custom silent switch is declared; winget falls back to its default for this installer type (`/quiet /norestart`).",
        "Declared install modes: interactive and silent.",
        "Associates with the file type `.apkg`.",
        "Upgrades install over the existing version."
      ],
      "macos": [
        "Delivered as a disk image (.dmg) for Intel (x64) and Apple silicon (ARM64).",
        "Installs the app `Anki.app` into the Applications folder.",
        "On uninstall, Homebrew asks the app to quit.",
        "A full “zap” removal also deletes up to 3 support, cache and preference locations in your home folder."
      ]
    }
  }
}
