Comments (12)
TL;DR: So you're a new user then I would definitely recommend trying out the new sync server as linked above. If it works for your needs then great! If not, then read below.
My guess is that all 3 Anki server's under the Anki Community have been affected by this breaking change. But I haven't had the time to actually investigate is it so I suggest also looking at https://github.com/ankicommunity/anki-sync-server-rs and https://github.com/ankicommunity/anki-api-server.
We've been using the anki python module to handle changes to the anki syncing logic. To my understanding all that code is rust now so maybe the Rust server has been able to adapt quicker.
@dobefore can you confirm?
That being said, I'm aware that a lot of people use the Python sync server (this one) so the goal to catch up to the latest sync protocol. So I will try and find the time to better understand the changes and close the gap.
Or even better, one of our community members with more time is able to raise a PR!
An overview of the approach I was thinking is:
- End-to-end testing with Anki Desktop <= 5.1.57
- End-to-end testing with Anki Desktop > 5.1.57
- Handle the changes in the Sync protocol to pass both test cases.
If the changes are so different that the anki module becomes an hindrance, it might be worth using the custom implementation (called unki
) used in the anki-api-server. This might provide a more stable experience for us since we'd only be tied to the sync protocol and not the whole anki module.
from ankicommunity-sync-server.
I am not sure this repo has been affected by protocol update,but users have reported the similar problem in repository https://github.com/ankicommunity/anki-sync-server-rs ,of which I have abandoned the development.
I agree with @VikashKothary about recommending trying out new sync server.
from ankicommunity-sync-server.
I think the project should mention in the readme that the sync server is incompatible with the current anki clients.
see pr #171
from ankicommunity-sync-server.
Due to the syncing protocol update ankitects/anki#2329 sync server is not available for Anki clients 2.1.57+ until the server catches up with new changes.
Here is the available offocial sync server embeded with Anki https://docs.ankiweb.net/sync-server.html
hi, for win10 i use v2.1.54 so luckily ok.
but how about ankidroid, it always update itself.
i think i am on the latest. v2.15.6 of ankidroid.
thanks
from ankicommunity-sync-server.
Is anki-sync-server incompatible with the current clients? I was going to try it out, but I notice that this issue hasn't been resolved.
Is the suggested workaround to try ankiweb's built-in mini sync server?
from ankicommunity-sync-server.
TL;DR: So you're a new user then I would definitely recommend trying out the new sync server as linked above. If it works for your needs then great! If not, then read below.
My guess is that all 3 Anki server's under the Anki Community have been affected by this breaking change. But I haven't had the time to actually investigate is it so I suggest also looking at https://github.com/ankicommunity/anki-sync-server-rs and https://github.com/ankicommunity/anki-api-server.
We've been using the anki python module to handle changes to the anki syncing logic. To my understanding all that code is rust now so maybe the Rust server has been able to adapt quicker.
@dobefore can you confirm?
That being said, I'm aware that a lot of people use the Python sync server (this one) so the goal to catch up to the latest sync protocol. So I will try and find the time to better understand the changes and close the gap.
Or even better, one of our community members with more time is able to raise a PR!
An overview of the approach I was thinking is:
- End-to-end testing with Anki Desktop < 5.1.57
- End-to-end testing with Anki Desktop >= 5.1.57
- Handle the changes in the Sync protocol to pass both test cases.
If the changes are so different that the anki module becomes an hindrance, it might be worth using the custom implementation (called unki
) used in the anki-api-server. This might provide a more stable experience for us since we'd only be tied to the sync protocol and not the whole anki module.
from ankicommunity-sync-server.
Thanks, that's exactly what I wanted to know.
from ankicommunity-sync-server.
When exactly did this broke? I remember that this server has still work middle last year, when I had made the docker pr. But anki 2.1.57 is over 2 years olds.
from ankicommunity-sync-server.
If there is something I can test let me know
from ankicommunity-sync-server.
@kuklinistvan Can you answer the question from @LuckyTurtleDev
from ankicommunity-sync-server.
This issue was when it was brought to my attention. It's not clear when it broke for other users but I assume it depends on when you updated your AnkiDesktop version that the server may stop working for you.
To provide an update otherwise, I've started writing some code to generate acceptance tests for different AnkiDesktop versions (in this case the versions around 2.1.57). Once it's clearer what as changed, we should be able to write a workaround to initially fix the incompatibility.
Once that's solved, it should allow us to build a more stable server. While we will have to match the Anki Sync API, it will allow us to make much needed changes to the core code.
If you would like to assist in the development, the first step is reverse engineering the AnkiDesktop Sync API. My plan is to use MITMProxy to do this. I welcome any volunteers who can assist me with this.
from ankicommunity-sync-server.
here is the link for a docker container for the anki-sync-server: https://forums.ankiweb.net/t/docker-container-for-sync-self-hosted/40134
from ankicommunity-sync-server.
Related Issues (20)
- [Feature Request] LDAP Authentication HOT 2
- protobuf version issue HOT 4
- Anki (dektop) prompts to log in to AnkiWeb HOT 1
- Create Releases with Github HOT 2
- Docker Releases HOT 4
- Sync errors when trying to sync using anki 2.0.52 HOT 2
- AttributeError: module 'ankisyncd.config' has no attribute 'load' HOT 3
- Anki 2.1.49 will not sync via https proxy HOT 2
- network error HOT 1
- 'MediaManager' object has no attribute 'close' HOT 2
- Link in README leading to nothing HOT 1
- Anki desktop can't connect self-hosted server while ankiDroid could. HOT 6
- ci: Deploy docker image to DockerHub HOT 2
- Authentication failed for nonexistent user None. HOT 2
- anki23.10 generates JsonError { info: "missing field media usn at line 1 column 114" }
- Fix For: Python Error ./ankisyncctl.py - No Module named "ankisyncd"
- Windows new version v23.10.1 client cannot synchronize
- How to put the server on USB HDD? i am on 2.1.54 thx
- "IndexError: list index out of range" when syncing from Anki Desktop HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ankicommunity-sync-server.