New toolkit and packaging test (Windows)

Yes. You have two options:

  1. Use inline CSS <span style="font-weight: bold">My text</span>
  2. Use classes and style those classes in the template CSS.
2 Likes

Ok, thanks.

Great work, guys. Things are really shaping up nicely :+1:

One quick observation regarding the editor, even though it’s not the main topic: Confirming tag auto-completions with Enter / Return does not seem to work at the moment. Probably unintended, but thought I should mention it just in case.

Regarding the packaging / toolkit changes:

I haven’t put the Windows build through any extensive use, yet, but it seems to be working well here so far. Can confirm the aforementioned issue with the non-visible gear icon, but no other obvious breakages in non-addon use so far. Performance seems good with no obvious regressions. Startup times on Linux feel slightly faster when running from source.

Regarding add-ons:

The way Anki is packaged has changed. More of the standard library should be available by default

That’s great to hear!

As expected from the toolkit upgrade, add-on breakages are very extensive, with the majority of all add-ons affected. I have a PR in the works that should address a large portion of them, perhaps even most, but one way or another, many breakages are likely to remain.

@dae I know there are other considerations that go into this beyond semantic versioning, but how would you feel about jumping to 2.2 for these changes? Addon-support wise, this definitely marks the biggest cut we’ve had since the 2.0 → 2.1 jump and feature-wise we’re also looking at fairly significant additions.

From an add-on dev standpoint it would just be nice to have an easy way to communicate that this is not just another point update, but a fairly significant break in Anki’s development history. Personally I’d love to have bumps like this more frequently to delineate milestone releases, but I also understand how that would mark a change from AnkI’s versioning scheme so far, and as a result does take some additional thought.

Perhaps more generally asked: What timeline do you think we might be looking at until the first stable Qt6 release? The PR should hopefully eliminate the majority of obvious breakages (if it’s mergeable), but other more subtle breakages sadly remain and will take time to adjust to.

8 Likes

For what it’s worth, I definitely agree we should jump to 2.2 as this will be a very significant change

2 Likes

I’m having two problems with clozes and the MathJax editor:

  1. Sometimes, after adding a cloze to a text that contains a MathJax formula, the formula text gets deleted:
    image
    becomes
    image

  2. After adding a note that contains a cloze with a MathJax formula inside, the formula is replaced by some HTML text, both in the “Add note” window and in the added note (I don’t know if it is related, but the sticky option for the field that contains that cloze is on):


    in the HTML editor:

1 Like

Thanks for the report. I am already working on the fix.

3 Likes

Anki has a long history of not-so-great version numbers. :sweat_smile:

Semver is a bit of a tricky subject. From the perspective of add-ons, it’s a breaking API change, and you could argue that should make it 3.0. But that’s not really practical - because add-ons are so tightly coupled, we’d end up bumping the major version every few releases that way. So I mainly focus on what’s exposed to end users outside of add-ons. This update doesn’t change how cards are stored on disk, or require a downgrade before moving back to .48 for example.

When we upgraded to Qt5, that involved a bump to 2.1. But that was a much bigger move, as we had to transition from WebKit to WebEngine, and asynchronous JS requests, and it wasn’t feasible to support Qt4 and Qt5 in parallel. That is not the case this time - the web API is closer, and Anki still works on Qt5.

But regardless of whether it makes sense or not, it’s not a change that can be easily made at the moment, because AnkiWeb’s update and add-on handling code was hacked together while I was busy with the 2.1 work, and it wasn’t written with support for future minor versions in mind. Teaching it how to deal with semantic versions (or even just a single new minor version) will take some time, and it’s probably not something I’ll be able to get to before this release unfortunately.

4 Likes