build(deps): adopt anki upstream 25.06b1 - do not merge, yet
This is a draft for feasibility check of the new release
Some interesting issues that seem persistent in local testing:
- something changed about scheduling ? We have a violated date expectation
SchedulerTest > test_nextIvlV2 FAILED
java.lang.AssertionError:
Expected: "10.8mo"
but: was "10.7mo"
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:6)
at com.ichi2.libanki.SchedulerTest.test_nextIvlV2(SchedulerTest.kt:627)
- there appears to be a new typescript function we need a handler for (what an excellent test!)
PostRequestHandlerTest > All backend typescript functions should be handled FAILED
java.lang.AssertionError: Mapping exists for every TS backend function call
Expected: iterable with items ["setWantsAbort", "getCsvMetadata", "getGraphPreferences", "importJsonString", "setGraphPreferences", "simulateFsrsReview", "getImageOcclusionFields", "getNotetypeNames", "getFieldNames", "graphs", "cardStats", "getSchedulingStatesWithContext", "getDeckConfigsForUpdate", "computeOptimalRetention", "completeTag", "computeFsrsParams", "getImageOcclusionNote", "importDone", "getImageForOcclusion", "getImportAnkiPackagePresets", "evaluateParams", "i18nResources", "setSchedulingStates", "changeNotetype", "getDeckNames", "importJsonFile", "congratsInfo", "getChangeNotetypeInfo", "importCsv", "updateDeckConfigs", "deckOptionsReady", "updateImageOcclusionNote", "deckOptionsRequireClose", "addImageOcclusionNote", "latestProgress", "searchInBrowser", "importAnkiPackage"] in any order
but: not matched: "getIgnoredBeforeCount"
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
at com.ichi2.anki.pages.PostRequestHandlerTest.All backend typescript functions should be handled(PostRequestHandlerTest.kt:34)
There may be others but these two seem pretty obviously persistent and in need of a deeper investigation + forward port
something changed about scheduling ?
I changed the definition of a month:
- https://github.com/ankitects/anki/pull/3901
Cheers! Fixed both
Next step here is user testing, especially of upstream-ish anki things (all the web-tech surfaced through Backend, e.g. Image Occlusion, deck options etc etc) to make sure things are actually working vs just seeming-to-be-working with what we check in CI here.
Seems to be a fairly easy update though, 🤞
Force push overwrote my fixes, needs reapplying
https://github.com/ankidroid/Anki-Android/commit/f6d341c6a762f7f8b3d569953f1bad833e45b265
https://github.com/ankidroid/Anki-Android/compare/2ce1d8d4a040ede46211493df6eb1d8217a884c1..f6d341c6a762f7f8b3d569953f1bad833e45b265
One new feature that's missing is the Grade now option in the browser, which was added by
- https://github.com/ankitects/anki/pull/3840
- EDIT by David: https://github.com/ankidroid/Anki-Android/issues/18604
Just wondering: Like the test for new typescript functions, can we have a test that looks for new Python functions? Would such a test be useful or would it overwhelm us with Desktop-specific changes that AnkiDroid doesn't need to be concerned about?
@user1823 Remind us in a couple of versions, I don't think anyone has capacity for this right now, and we're still catching up (removing getColUnsafe and moving to standard backend functions)
Conceptually, I've wanted to do it for a while. I suspect @Arthur-Milchior would love it
- card.decay needs to be implemented
- Can we add a test to ensure 'data loss' errors like this don't occur
Beta ~~4~~ ~~5~~ 6 is now available: https://github.com/ankitects/anki/releases/tag/25.06b5
- https://github.com/ankidroid/Anki-Android-Backend/pull/534
- https://github.com/ankidroid/Anki-Android-Backend/pull/544
does the hr element appear on the old reviewer? there were some changes to styling here: https://github.com/ankitects/anki/pull/4067
adding the css from there to the styling of a note type seems to make hr disappear on the old reviewer (probably an issue with background-color).
does the hr element appear on the old reviewer? there were some changes to styling here: https://github.com/ankitects/anki/pull/4067
changes made there don't go automatically to the old reviewer.
- PartiallyRenderedCard needs
is_empty
https://github.com/ankitects/anki/blob/fe5dfe9ec23130fa4616a4e91f10e5216df19d9d/pylib/anki/template.py#L224-L256
- https://github.com/ankidroid/Anki-Android/pull/18688
Ingested the force-push that rebased to main (thanks) altered it to point to the still-in-process b6 backend PR:
- https://github.com/ankidroid/Anki-Android-Backend/pull/544
will fail to build at the moment, but will build once it's published and available in a couple hours, so a close/re-open should have it pass CI