These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)
| Commit: | 3c3da8a | |
|---|---|---|
| Author: | daveight | |
migration
The documentation is generated from this commit.
| Commit: | 7d9ef82 | |
|---|---|---|
| Author: | daveight | |
| Committer: | GitHub | |
v1.0.0 (#5) v1.0.0 version - new deck type "CodingQuiz" - integrated code editor - support of Java and Python
| Commit: | 0cc7f36 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
rename some card+note fields in backend
| Commit: | 56ceb6b | |
|---|---|---|
| Author: | Damien Elmes | |
set_deck()
| Commit: | b65174a | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
move card sorting and resetting to backend
| Commit: | 39212a3 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
move reschedCards() to backend
| Commit: | ce49ca9 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
log manual reschedule, but ignore the log entry in the stats
| Commit: | 8f9037c | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
move filtered deck empty/fill to backend emptying of individual card ids still to be done
| Commit: | ccfa989 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
move unbury/unsuspend routines into backend
| Commit: | a834df6 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
rename some card+note fields in backend
| Commit: | d3dede0 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
move bury/suspend into backend
| Commit: | e568525 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
reimplement congrats screen in Rust+Typescript
| Commit: | f7a7c95 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
fix early reviews not appearing in graph https://forums.ankiweb.net/t/differences-between-new-and-old-stats-2-1-28/1602
| Commit: | 4692726 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
fix hour graph not handling timezones west of UTC https://forums.ankiweb.net/t/statistics-bugs-after-update-2-1-5-to-2-1-29/1620
| Commit: | 19541c4 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
fix deck tree with a day delta, and support arbitrary timestamps
| Commit: | 329186f | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
qt's js code now shares ts/node_modules; more graph work
| Commit: | 28a6755 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
i18n card counts
| Commit: | 41d77b0 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
get i18n working in typescript
| Commit: | 0cab26d | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
cards added graph
| Commit: | 510f8b8 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
some initial work on updating the graphs
| Commit: | 82568a1 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
experiment with exposing raw card/revlog data to frontend
| Commit: | 3ca4a13 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
protobuf package should be in PascalCase
| Commit: | b51f030 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
migrate card stats to backend Currently this renders the HTML directly like the previous Python implementation - doing it in JS would probably make more sense in the future.
| Commit: | 7c444b4 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
add progress to db check
| Commit: | 1fe1871 | |
|---|---|---|
| Author: | Damien Elmes | |
add daily count updating to backend
| Commit: | fee6cdf | |
|---|---|---|
| Author: | Damien Elmes | |
support generating a due tree for a different date
| Commit: | 4a69b55 | |
|---|---|---|
| Author: | Damien Elmes | |
add note/card removal to backend
| Commit: | 4d7e231 | |
|---|---|---|
| Author: | Damien Elmes | |
change sync label to indicate sync state - blue for normal sync, red for full sync required - refactor status fetching code so we don't hold a collection lock during the network request, which slows things down - fix sync spinner restarting when returning to deck list
| Commit: | b254b1f | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
another snapshot of sync work progress handler is going to need to be reworked to function across threads
| Commit: | 90e19da | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
handle aborting normal sync - Use a separate abort handle, as the media sync is running in the background and we need to be able to target them separately. The current progress handling is going to need a rethink if we introduce any other background tasks in the future. - Roll back the transaction when interrupting.
| Commit: | c6f0710 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
report normal sync progress Also: - provide a way for the progress handler to skip the throttling so that we can ensure progress is updated at the end of a stage - show 'checking' at the end of full sync
| Commit: | 0e5b7da | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
login/full up/full down plugged in
| Commit: | ee6d7f8 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
rework progress handling - client now polls status instead of backend pushing it - supports multiple threads - update throttling happens in one place
| Commit: | f10d0ee | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
more syncing work no checks yet
| Commit: | c8d1320 | |
|---|---|---|
| Author: | Damien Elmes | |
move dupe check to backend
| Commit: | 38508c3 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
use keyword args for calls with more than one argument
| Commit: | 89dde3a | |
|---|---|---|
| Author: | Damien Elmes | |
migrate the remaining methods
| Commit: | 4bf8175 | |
|---|---|---|
| Author: | Damien Elmes | |
migrate more scheduling/media/etc almost there
| Commit: | a105037 | |
|---|---|---|
| Author: | Damien Elmes | |
migrate notetypes, update GIL list
| Commit: | 6710e3d | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
add some more newtypes to the RPC defs
| Commit: | 95735f1 | |
|---|---|---|
| Author: | Damien Elmes | |
migrate cards and notes
| Commit: | 7550e62 | |
|---|---|---|
| Author: | Damien Elmes | |
migrate decks and dconf methods
| Commit: | 081a61a | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
more methods
| Commit: | 175afa9 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
migrate more methods to service
| Commit: | 9c20d9a | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
start reworking protobuf handling Will allow us to cut down on boilerplate by automatically generating code from RPC service definitions
| Commit: | 68465ae | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
protobuf tidyups
| Commit: | 6114836 | |
|---|---|---|
| Author: | Damien Elmes | |
move deck config to protobuf
| Commit: | 5467058 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
add option to limit deck tree counts to a particular node
| Commit: | f2086fc | |
|---|---|---|
| Author: | Damien Elmes | |
switch to new deck tree in deck browser Saves us having to look up collapsed/filtered as we render, and gives us type completion.
| Commit: | 964a69e | |
|---|---|---|
| Author: | Damien Elmes | |
handle default deck and filtered deck suppression in the backend
| Commit: | 2ac3350 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
fetch stock notetypes from backend
| Commit: | 7829114 | |
|---|---|---|
| Author: | Damien Elmes | |
add "fill empty" checkbox
| Commit: | f23eb35 | |
|---|---|---|
| Author: | Damien Elmes | |
drop availOrds(), and use backend for getting cloze numbers
| Commit: | 6680cdf | |
|---|---|---|
| Author: | Damien Elmes | |
update the card layout screen - changes are now committed in bulk when closing the dialog, and can be canceled - it's not necessary to save the note to the database to preview it - duplicate fields are now shown as duplicates in the top list - redraw preview more quickly - use + instead of _ when deduplicating names, as the latter is a glob character
| Commit: | 826cbb0 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
fetch template and note fields in backend during normal card render Saves having to serialize the note fields and q/a templates, which is particularly a win when rendering question/answer in the browse screen. Also some work towards being able to preview notes without having to commit them to the database.
| Commit: | a7a485d | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
use backend for genCards() and updateFieldCache()
| Commit: | 9317cee | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
handle scheduling preferences in the backend
| Commit: | ea4f150 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
fetch timing_today() params in backend
| Commit: | eee0d7e | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
switch server back into a bool and rely on config
| Commit: | 70cc169 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
rewrite DB check - notes with wrong field count are now recovered instead of being deleted - notes with missing note types are now recovered - notes with missing cards are now recovered - recover_missing_deck() still needs implementing - checks required
| Commit: | 2413f28 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
bulk tag add/remove/update; canonify on note save also remove the tag list updated hook - we'll need a better solution in the future than having the library code call back into the GUI code
| Commit: | 8b557ec | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
move find&replace to backend
| Commit: | 805a3a7 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
split note types into separate tables - store the config in protobuf instead of json - still loading+saving in bulk for now - code using the schema11 structs needs to be migrated
| Commit: | 238441f | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
use the backend for the deck due tree - approx 3x faster on a large test deck - counts are no longer capped to 1000 in the tree
| Commit: | 5fb5338 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
add missing decks in backend - need to compare parents with unicode case folding - duplicate check enforced by the DB
| Commit: | 67421e0 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
add browserCollapsed as part of tree build
| Commit: | a88bc1e | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
speed up browser load by rendering deck tree in Rust and skipping counts
| Commit: | f592672 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
add separate decks table, and start on moving deck handling to Rust The Python tests are passing, but there are still a number of issues to work through, and the table/protobuf schema is not yet finalized.
| Commit: | 6e1d299 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
remove unused _updateRequired and associated code
| Commit: | bee0eb1 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
empty card handling
| Commit: | 6cc2bdb | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
start on exposing notes and individual note type methods changes to note: - add_note() now takes a provided deck id instead of looking it up in the notetype - note type use counts fetched using a single table scan - make sure note type changes are persisted - expose optionalness of ords in templates and fields json
| Commit: | 527c8bf | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
embed enum to avoid conflicts
| Commit: | a17ddfd | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
native struct for CardTemplate
| Commit: | 9080f60 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
native struct for NoteField ord is made optional so we can keep track of changes in the future
| Commit: | d6646a6 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
expose stock notetypes
| Commit: | 5408926 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
add stock note types in backend
| Commit: | b557425 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
embed sort kind enum to avoid future namespace conflicts
| Commit: | 4c7210b | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
(de)serialize decks in backend
| Commit: | 36ec783 | |
|---|---|---|
| Author: | Damien Elmes | |
load/save note types in backend This allows us to normalize bad data, and is the first step towards splitting note types into separate tables.
| Commit: | 75faba1 | |
|---|---|---|
| Author: | Damien Elmes | |
add separate json error
| Commit: | dc62d50 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
use bytes for deck config proto
| Commit: | 164bd29 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
use bytes for config proto
| Commit: | 676f4e7 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
store config in separate DB table - mtime is tracked on each key individually, which will allow merging of config changes when syncing in the future - added col.(get|set|remove)_config() - in order to support existing code that was mutating returned values (eg col.conf["something"]["another"] = 5), the returned list/dict will be automatically wrapped so that when the value is dropped, it will save the mutated item back to the DB if it's changed. Code that is fetching lists/dicts from the config like so: col.conf["foo"]["bar"] = baz col.setMod() will continue to work in most case, but should be gradually updated to: conf = col.get_config("foo") conf["bar"] = baz col.set_config("foo", conf)
| Commit: | ac4284b | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
update tag handling - tag list stored in a separate DB table - non-wildcard searches now do full unicode case folding (eg tag:masse matches 'Maße') - wildcard matches do simple unicode case folding - some functions haven't been updated yet, so ascii folding will continue to be used in some operations
| Commit: | 333d073 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
preserve mtime/usn when syncing deck config, and add snake_case names
| Commit: | c9da4bc | |
|---|---|---|
| Author: | Damien Elmes | |
allow aborting a media sync while http req in flight The progress handling code needs a rethink, as we now have two separate ways to flag that the media sync should abort. In the future, it may make sense to switch to polling the backend for progress, instead of passing a callback in.
| Commit: | 35c03af | |
|---|---|---|
| Author: | Damien Elmes | |
split deck config into separate SQL table - on collection load, the schema is upgraded to 12 - on collection close, the changes are reversed so older clients can continue to open the collection - in the future, we could potentially skip the reversal except when exporting/doing a full sync - the same approach should work for decks, note types and tags in the future too - the deck list code needs updating to cache the deck confs for the life of the call
| Commit: | 004cc2b | |
|---|---|---|
| Author: | Damien Elmes | |
move deck conf handling to backend
| Commit: | 84b84ae | |
|---|---|---|
| Author: | Damien Elmes | |
use add_card()
| Commit: | 7f16f43 | |
|---|---|---|
| Author: | Damien Elmes | |
handle mtime/usn bump in backend, and tweak integer sizes
| Commit: | 4750424 | |
|---|---|---|
| Author: | Damien Elmes | |
update_card()
| Commit: | 7ddaf93 | |
|---|---|---|
| Author: | Damien Elmes | |
use backend to get card
| Commit: | 69d8cdd | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
use backend for v1 and v2 cutoff calculations this should also fix the CI failures, which were happening because the datetime module wasn't matching the shifted time.time()
| Commit: | f28e57a | |
|---|---|---|
| Author: | Damien Elmes | |
add enum for controlling sort order eg col.find_cards("", order=BuiltinSortKind.CARD_DUE)
| Commit: | a578778 | |
|---|---|---|
| Author: | Damien Elmes | |
add note searching
| Commit: | 5debd3e | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
add the ability to provide a custom sort order; use backend for find
| Commit: | b51e575 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
drop the protobuf prototype
| Commit: | bca5f2d | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
prototype of integration no ordering yet, and no tests
| Commit: | 874bc08 | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
support opening and closing the DB while keeping backend alive This is safer than just dropping the backend, as .close() will block if something else is holding the mutex. Also means we can drop the extra I18nBackend code. Media syncing still needs fixing.
| Commit: | 1322d8c | |
|---|---|---|
| Author: | Damien Elmes | |
| Committer: | Damien Elmes | |
make the collection optional