Skip to content

feat(backend): upgrade to Anki 26.09.3 - #22154

Merged
david-allison merged 4 commits into
ankidroid:mainfrom
david-allison:21926-anki-26-09-2
Oct 1, 2026
Merged

david-allison merged 4 commits into
ankidroid:mainfrom
david-allison:21926-anki-26-09-2

Conversation

@david-allison

@david-allison david-allison commented Sep 28, 2026 •

Copy link
Copy Markdown
Member

Note

Assisted-by: GPT-6

Purpose / Description

Bump the backend

Fixes

Approach

Pretty simple bump:

How Has This Been Tested?

Unit tests and integration tests for Card Info and Deck Options have been added.

MathJax is now tested, thanks to a code review.

Learning (optional, can help others)

In future, specify that I want GPT to fix bugs which are introduced, not 'bugs', as it debugged the entire implementation

Checklist

  • You have a descriptive commit message with a short title (first line, max 50 chars).
  • You have commented your code, particularly in hard-to-understand areas
  • You have performed a self-review of your own code
  • UI changes: include screenshots of all affected screens (in particular showing any new or changed strings)
  • UI Changes: You have tested your change using the Google Accessibility Scanner

@david-allison david-allison added the Review High Priority Request for high priority review label Sep 28, 2026
@github-actions

github-actions Bot commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

Snapshot diff report vs main. Open screenshot-diff for diffs.

  • PreferencesScreenshotTest: 1 change
All 1 changed screenshots

PreferencesScreenshotTest

  • AboutFragment_compare.png

@david-allison

Copy link
Copy Markdown
Member Author
AboutFragment_compare

@david-allison david-allison added Needs Author Reply Waiting for a reply from the original author and removed Review High Priority Request for high priority review Needs Review labels Sep 28, 2026
@david-allison
david-allison marked this pull request as draft September 28, 2026 20:17
@david-allison david-allison added the Blocked by dependency Currently blocked by some other dependent / related change label Sep 28, 2026
@david-allison david-allison removed the Blocked by dependency Currently blocked by some other dependent / related change label Sep 30, 2026
@david-allison david-allison added Review High Priority Request for high priority review and removed Needs Author Reply Waiting for a reply from the original author labels Sep 30, 2026
@david-allison
david-allison marked this pull request as ready for review September 30, 2026 17:16
@mikehardy

mikehardy commented Sep 30, 2026 •

Copy link
Copy Markdown
Member

In future, specify that I want GPT to fix bugs which are introduced, not 'bugs', as it debugged the entire implementation

😆

("oops! sorry I fixed that")

@mikehardy

Copy link
Copy Markdown
Member

Seems reasonable enough on a human scan. It's in the queue for auto review as well

@mikehardy
mikehardy force-pushed the 21926-anki-26-09-2 branch 2 times, most recently from 26f6d00 to e7817c7 Compare September 30, 2026 19:10

@mikehardy mikehardy left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Requesting changes on the rebase, not on the idea of landing 26.09.3.

Local (post-rebase e7817c7): lint / unit / package / emulator (API36_GAPI_PS16K) all green here. GitHub CI on the new tip may still be catching up — please confirm it goes green before merge.

Do not Fixes #21926. That issue is the 26.09 integration umbrella. #22156 is still open, explicitly “Part of #21926”, and already has requested changes. Use Part of #21926 here (keep Fixes #21923 only if you are willing to close that crash without an AnkiDroid-level regression).

MathJax (PreviewerHelpers.kt): Removing the eager <script> tags is the 26.09 lazy-load path. There is no test that a \(...\) card in previewer / new study screen still typesets, and bodyClassForCardOrd still always stamps mathjax-rendered. Please add a failing-then-fixed check (even stdHtml no longer contains those two asset URLs, plus @NeedsTest for actual typesetting) or say why ViewerResourceHandlerTest is enough.

RPC allow-list (PostRequestHandlerTest.kt): The new skip list will hide missing handlers for any name you classified as editor/desktop-prefs. Confirm none of those names are posted by shipped pages (deck-options, card-info, graphs, import-*, image-occlusion, congrats). Prefer listing skip names next to the Anki route that owns them.

Coverage vs the 26.09 checklist: CSV close-path is the only new behavioral test. Card Info / FSRS panic / CSP javascript: / deck-options save+optimize were called out on #21926 and are not re-validated on this bump. If that work is entirely in already-merged prep PRs, say so on the PR so reviewers are not guessing.

Thanks for splitting the bump from the prep PRs — the surface area here is small and the import close emulator test is the right kind of check. I still would not merge until #21926 is not auto-closed and the MathJax/FSRS gaps are either tested or explicitly deferred with @NeedsTest.

@mikehardy mikehardy added the Needs Author Reply Waiting for a reply from the original author label Sep 30, 2026
@david-allison david-allison removed the Needs Author Reply Waiting for a reply from the original author label Sep 30, 2026
@david-allison

Copy link
Copy Markdown
Member Author

In addition on the testing front:

@mikehardy

Copy link
Copy Markdown
Member

hahahaha my review bot is harsh!

@mikehardy mikehardy left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey David 👋

Thanks for the follow-up — Part of #21926, the MathJax previewer typesetting test, Card Info + Help Me Decide, importDialogRequireClose, and the RPC skip-list docs all close out the previous RC.

GitHub CI is green on b947618; local lint / package / emulator were green on a clean rebase onto current main (same four commits; not force-pushed). Local full unit still hits the known ReminderLogTree suite-order pollution (solo green; same on main) — not blocking. LGTM.

@mikehardy mikehardy added Pending Merge Things with approval that are waiting future merge (e.g. targets a future release, CI wait, etc) and removed Review High Priority Request for high priority review Needs Review labels Oct 1, 2026
@mikehardy
mikehardy added this pull request to the merge queue Oct 1, 2026
@mikehardy

Copy link
Copy Markdown
Member

My review bot is slightly less harsh now ;-)

@david-allison

Copy link
Copy Markdown
Member Author

Thank you all

And now the fun begins 😁

@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Oct 1, 2026
@mikehardy
mikehardy added this pull request to the merge queue Oct 1, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Oct 1, 2026
@david-allison
david-allison added this pull request to the merge queue Oct 1, 2026
@david-allison
david-allison removed this pull request from the merge queue due to a manual request Oct 1, 2026
@david-allison david-allison reopened this Oct 1, 2026
@david-allison david-allison added the Needs Author Reply Waiting for a reply from the original author label Oct 1, 2026
Anki 26.09 added a lazy loader for MathJax, use the same logic
as a performance fix

Part of 21926
Implements https://redirect.github.com/ankitects/anki/pull/5171

Assisted-by: GPT-6
`importDialogRequireClose` is added in 26.09. Verify that this works

Part of 21926
See https://redirect.github.com/ankitects/anki/pull/5484

Assisted-by: GPT-6
* Assert rendered FSRS stats on Card Info
* Check 'Help Me Decide' (Issue 21923)

These were modified in 26.09.3, and we didn't cover
these situations heavily.

Part of 21926

Assisted-by: GPT-6
@david-allison david-allison removed the Needs Author Reply Waiting for a reply from the original author label Oct 1, 2026
@david-allison
david-allison added this pull request to the merge queue Oct 1, 2026
Merged via the queue into ankidroid:main with commit d255a27 Oct 1, 2026
27 of 28 checks passed
@github-actions github-actions Bot added this to the 2.26 release milestone Oct 1, 2026
@github-actions github-actions Bot removed the Pending Merge Things with approval that are waiting future merge (e.g. targets a future release, CI wait, etc) label Oct 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] FSRS - Help Me Decide - Simulate causes BackendFatalError: PoisonError

2 participants