c805468449Refactor ankiserverctl.py to delegate database operations to SqliteUserManager and use python3 compatible print calls.
Christoph Mack
2016-05-27 21:42:52 +0200
c7d7ff3e85Merge SyncApp's SqliteUserManager and the newly introduced UserManager and group all user managers in user_managers.py.
Christoph Mack
2016-05-27 21:33:22 +0200
573aeece81Add more test helpers and integration tests for SyncApp's media sync feature using WebTest's TestApp. Add test helpers for creating, inspecting and manipulating instances of SyncApp and RestApp. Add subclasses of Anki's RemoteServer and RemoteMediaServer for communicating with the wrapped SyncApp instance under test. Add helpers for monkey patching Anki's MediaManager and DB for easier testing. Add test assets directory.
Christoph Mack
2016-02-29 09:56:28 +0100
cb574aa0a7Add test helper classes for creating and managing temporary files, working with anki collections and sqlite dbs. Add class for managing users so users can be added programmatically without using ankiserverctl.
Christoph Mack
2016-02-05 22:40:39 +0100
28e950c138Added unit tests for SimpleUserManager, SqliteUserManagerTest, SimpleSessionManager and SqliteSessionManagerTest.
Christoph Mack
2015-10-05 19:41:00 +0200
6e881bfb85Added unit test for SyncCollectionHandler. Moved CollectionTestBase to a separate file.
Christoph Mack
2015-10-05 19:21:38 +0200
99adc658d5Remove support for legacy modules
flan
2017-10-28 20:43:09 +0200
2cb5871ba3Safer handling of uploaded database files during full sync. Before overwriting its version of a user's collection database file with one uploaded by the client, the server now performs a basic integrity check using SQLite's 'pragma integrity_check'.
Christoph Mack
2015-10-08 21:41:04 +0200
f3788fc2c8fix syntax error causing failure in error handler in SyncMediaHandler._remove_media_files()
Christoph Mack
2016-08-02 19:34:17 +0200
67830218ebDrop support for Anki <2.0.27
flan
2017-03-05 00:39:06 +0100
b0cb424770Use os.path.join() for path concatenation
flan
2017-10-28 19:02:07 +0200
ceb931519dBring back authentication
flan
2017-10-28 18:37:37 +0200
e32bceccf3Not only add, but also remove files when adopting changes to client media files in SyncMediaHandler.uploadChanges(). Count added and removed files as processed and increment media usn accodingly. Refactor SyncMediaHandler.uploadChanges().
Christoph Mack
2016-01-24 13:21:00 +0100
87ee726d25Define skey once when creating user session, not each time when beginning media sync.
Christoph Mack
2016-01-22 23:27:32 +0100
1b1a3d8e22Define a random skey to return to the client when media syncing begins, so we don't send a null skey value.
Christoph Mack
2016-01-22 08:34:10 +0100
f03aea67c1SyncMediaHandler.begin(): return media database usn instead of collection database usn. If the wrong usn is returned, media syncing on the client will not finish with status "noChanges" even if there have been no changes since the last media sync.
Christoph Mack
2016-01-19 11:20:37 +0100
3baad9cfacFix syncing with AnkiDroid
jdoe0
2015-11-29 11:53:58 +0700
d3eab4266eUpdate addon code in README.md
jdoe0
2015-11-27 12:27:07 +0700
d23dd0122aFix initial user creation.
Alexander Grüneberg
2013-12-05 17:18:17 -0600
33c0fdcd1fGot ankiserverctl.py working on my system, installing into the system bin/ and working with config files in another directory.
David Snopek
2013-11-27 14:46:15 +0000