Damien Elmes
8870a9c4d5
zero out graves before comparison, instead of at creation
...
Will allow us to turn the check back on in the future without a client
update
2021-06-30 10:08:52 +10:00
Damien Elmes
c0a1c04c3c
ignore graves in sanity check
2021-06-30 09:31:02 +10:00
Damien Elmes
33a9afaa1b
add back in missing check for upload size
...
Compression now happens up-front, so we can tell in advance if the
upload size has been exceeded.
2021-06-29 10:50:03 +10:00
Damien Elmes
5b14a2968a
catch invalid card ordinals in DB check
...
https://forums.ankiweb.net/t/error-corrupted-note/10976
2021-06-29 10:50:03 +10:00
Damien Elmes
d6e3964151
PEP8 cards.py
2021-06-27 12:12:23 +10:00
Damien Elmes
14a2cc44ac
update to latest rusqlite
2021-06-25 16:22:21 +10:00
Damien Elmes
795afb7068
update most rust deps; skip rusqlite
2021-06-25 15:35:25 +10:00
Damien Elmes
78a7620079
update undo skipping; exclude deck/tag expand/collapse
...
Instead of calling a method inside the transaction body, routines
can now pass Op::SkipUndo if they wish the changes to be discarded
at the end of the transaction. The advantage of doing it this way is
that the list of changes can still be returned, allowing the sync
indicator to update immediately.
Closes #1252
2021-06-25 09:16:15 +10:00
Damien Elmes
249e009f27
cope with collections where latexsvg is not a bool
2021-06-24 15:29:21 +10:00
Damien Elmes
2f25a969e4
report object type where json decode fails
2021-06-24 15:28:24 +10:00
Damien Elmes
b959feb6e5
expose scheduler js option in deck config
2021-06-24 14:38:10 +10:00
Damien Elmes
4ffca62afe
allow customization of default search text
...
https://forums.ankiweb.net/t/whats-the-default-search-when-browsing-now-also-how-do-i-choose-to-browse-current-deck/8922
2021-06-24 11:24:30 +10:00
Damien Elmes
ff095ed57b
fix clippy lints for latest Rust
2021-06-21 13:09:36 +10:00
Damien Elmes
d89c538c48
in/out -> request/response
...
The saved characters weren't worth the increased difficulty when
reading, and the fact that we were deviating from protobuf norms.
2021-06-20 15:49:20 +10:00
Damien Elmes
63f183958a
add rustls-native-certs
...
closes #1241
2021-06-18 18:15:41 +10:00
Damien Elmes
532ac8b511
Merge pull request #1230 from RumovZ/fields-check
...
Check for misplaced or missing clozes when adding and in the editor
2021-06-17 21:26:16 +10:00
RumovZ
3004b460db
Assign dupe error the lowest precedence
2021-06-16 11:42:40 +02:00
Henrik Giesel
76e885c65e
Add escape_anki_wildcards_for_search_node
2021-06-16 09:25:27 +02:00
Henrik Giesel
3585bf0157
Revert "Remove special treatment of tag:none"
...
This reverts commit 95285ef66d .
2021-06-16 17:19:21 +10:00
Henrik Giesel
a6b313db5b
Remove special treatment of tag:none
2021-06-16 17:19:21 +10:00
Henrik Giesel
8fd024c020
Make Browser root nodes use "_*" uniformly
2021-06-16 17:19:21 +10:00
Damien Elmes
596e37cabc
update Rust deps
2021-06-16 16:10:57 +10:00
RumovZ
8160e05bd6
Fix missing hyphen escape when normalizing search ( #1233 )
...
* Fix missing hyphen escape when normalizing search
* Add some more tests for normalization
* Use char to satisfy clippy
2021-06-15 10:02:39 +10:00
Damien Elmes
6643780f17
handle <br/> when rendering a single line
...
+ case-insensitive matching
https://forums.ankiweb.net/t/html-editor-modifies-note-when-a-field-with-break-tags-is-opened/10772
2021-06-14 13:05:48 +10:00
RumovZ
4fb2299386
Add check for out-of-place/missing clozes
2021-06-12 10:02:21 +02:00
Damien Elmes
153e1e8d41
new change notetype implementation for the frontend
...
- changes can now be undone
- the same field can now be mapped to multiple target fields, allowing
fields to be cloned
- the old Qt dialog has been removed
- the old col.models.change() API calls the new code, to avoid
breaking existing consumers. It requires the field map to always
be passed in, but that appears to have been the common case.
- closes #1175
2021-06-10 22:19:24 +10:00
Damien Elmes
3b4bb5fafd
fix spurious text in header injected by rust analyzer
2021-06-10 09:06:37 +10:00
Damien Elmes
7f984851b4
add notetype changing to backend
2021-06-09 20:56:52 +10:00
Damien Elmes
95151f5025
add LIFO sorting options for new cards
2021-06-08 14:01:46 +10:00
Damien Elmes
aaba9a777a
fix note changes triggering a queue rebuild
2021-06-08 12:09:35 +10:00
Damien Elmes
c7381676a1
Merge pull request #1217 from RumovZ/flag-ftl
...
Mark search-invalid-flag as a new string
2021-06-03 10:50:11 +10:00
RumovZ
6e570a8ffc
search-invalid-flag -> search-invalid-flag-2
2021-06-02 21:49:33 +02:00
Damien Elmes
f3e6ffd197
handle duplicate ids in values when upgrading deck config
...
Multiple configs with the same inner id would lead to errors like the
following when trying to open the collection:
DeckConfigInner.interval_multiplier: invalid wire type: StartGroup (expected ThirtyTwoBit)
2021-06-02 17:12:59 +10:00
Damien Elmes
d38f57cf3c
Merge pull request #1213 from RumovZ/new-flags
...
Add pink, turquoise and purple flags
2021-06-02 11:22:26 +10:00
RumovZ
d6d712c4a7
Rename violet to pink
2021-06-01 18:14:43 +02:00
Damien Elmes
4daecb6771
push review randomizing into SQL
...
This makes the review backlog case more expensive, since we end up
shuffling items outside the daily limit, but for the common case it's
about the same speed, and it means we don't need two separate sorting
steps. New cards remain handled the same way, since a backlog
is common there.
Also ensures that interday learning cards honor the deck sorting, and
that the non-default sort orders shuffle at the end.
2021-06-01 14:50:35 +10:00
Damien Elmes
9a76565101
add options to sort reviews by deck
...
https://forums.ankiweb.net/t/is-studying-subdeck-by-subdeck-broken-in-2-1-44-mac/10458/2
2021-06-01 13:22:39 +10:00
Damien Elmes
afb9e92f36
fix subdeck order not being preserved by active_decks in v3
2021-06-01 11:40:25 +10:00
RumovZ
9e56a4421b
Add violet, turquoise and purple flags
2021-05-31 12:03:30 +02:00
Damien Elmes
0b6beaa1da
remove deck protobuf from frontend
...
Like the previous change, avoid exposing the protobuf as a public API
for now. It requires more thought, and is probably better done with
either extra helper accessors like decks.name(), or via a native class.
2021-05-31 16:31:06 +10:00
Damien Elmes
3d0a3a5707
fix exporting of non-default deck configs
2021-05-31 16:27:58 +10:00
Damien Elmes
8730e98778
Merge pull request #1200 from RumovZ/template-checks
...
Template checks
2021-05-29 10:28:06 +10:00
RumovZ
36c8ca32be
Use HashSet for special fields
2021-05-28 15:42:09 +02:00
RumovZ
f2f5eb8b6f
Add const for special fields and doc
2021-05-28 11:58:46 +02:00
RumovZ
b1dbebb1a6
Allow empty field name in templates
2021-05-28 11:37:05 +02:00
RumovZ
044e57075e
Add checks for parsed templates
...
Combine existing check for unparsable templates with a check for unknown
field names and a check for front sides without any field replacement.
Updating the notetype's fields now mutates the parsed templates, so the
checks can run on the final templates.
2021-05-28 10:07:31 +02:00
Damien Elmes
c848a0a41b
slightly simplify transact_inner()
2021-05-28 14:45:36 +10:00
Damien Elmes
f26982b9b1
don't depend on timer to increment between ops in unit test
2021-05-28 11:43:24 +10:00
Damien Elmes
ceb2813d5d
avoid bumping mtime when nothing has changed
...
+ update sync indicator after every op
+ skip mtime bump on undo/redo
2021-05-28 11:09:16 +10:00
Damien Elmes
b0bde454ff
add v3 scheduler to prefs screen
2021-05-27 23:09:49 +10:00