Damien Elmes
5ff7944a26
add getter/setter for boolean config values
2021-01-29 21:03:19 +10:00
Henrik Giesel
250b89be60
Adjust pyblib test_find
2021-01-10 16:25:52 +01:00
Damien Elmes
1b98e7e48f
add ability to specify an individual Python test
2020-12-16 10:40:29 +10:00
Damien Elmes
e23d40e850
Merge pull request #823 from RumovZ/rework-search-parser
...
Rework search parser
2020-11-20 16:22:12 +10:00
abdo
e3b4802f47
Fix description of exporters
...
Description broke yet again with the full migration to Fluent
2020-11-19 23:52:46 +03:00
RumovZ
cb2c19aced
Add Python test for tag whitespace
...
Assert tag matches do not occur across different tags.
2020-11-19 09:28:19 +01:00
RumovZ
c185fb966b
Merge branch 'master' into rework-search-parser
...
Conflicts:
rslib/src/search/sqlwriter.rs
2020-11-18 09:04:04 +01:00
Damien Elmes
a86ce5a1d4
remove print statement from unit tests
2020-11-18 13:56:44 +10:00
Damien Elmes
9d1b6231d7
merge pylib references
2020-11-17 19:23:06 +10:00
RumovZ
d1ee507b3a
Update frontend test to new escape handling
2020-11-15 09:39:10 +01:00
cecini
62da8e6a40
Update mypy and black format check to python version 3.8
2020-11-11 09:24:28 +00:00
Damien Elmes
e99c0dbe15
Merge pull request #793 from nwwt/object-audio-tags-support
...
Audio & object tag support
2020-11-11 10:33:31 +10:00
Andreas Reis
e68a40f13e
cleanup / renames
...
・ soundRegexps → sound_regexps
・ htmlRegexps → html_media_regexps
・ HTML_TAGS → HTML_MEDIA_TAGS
・ escapeImages → escape_media_filenames + alias
・ strip_html_preserving_image_filenames → strip_html_preserving_media_filenames
2020-11-10 14:53:04 +01:00
Damien Elmes
e0817c004d
move backend.proto into rslib/
2020-11-02 16:28:31 +10:00
Damien Elmes
aea0a6fcc6
initial Bazel conversion
...
Running and testing should be working on the three platforms, but
there's still a fair bit that needs to be done:
- Wheel building + testing in a venv still needs to be implemented.
- Python requirements still need to be compiled with piptool and pinned;
need to compile on all platforms then merge
- Cargo deps in cargo/ and rslib/ need to be cleaned up, and ideally
unified into one place
- Currently using rustls to work around openssl compilation issues
on Linux, but this will break corporate proxies with custom SSL
authorities; need to conditionally use openssl or use
https://github.com/seanmonstar/reqwest/pull/1058
- Makefiles and docs still need cleaning up
- It may make sense to reparent ts/* to the top level, as we don't
nest the other modules under a specific language.
- rspy and pylib must always be updated in lock-step, so merging
rspy into pylib as a private module would simplify things.
- Merging desktop-ftl and mobile-ftl into the core ftl would make
managing and updating translations easier.
- Obsolete scripts need removing.
- And probably more.
2020-11-01 14:26:58 +10:00
Arthur Milchior
d6dd1849cf
NF: uses consts and update comment according to code
2020-10-15 08:22:23 +02:00
Damien Elmes
ade7f438ce
rebuild_filtered_deck() and new_filtered()
2020-09-03 18:02:47 +10:00
Damien Elmes
f87fa762be
empty_filtered_deck()
2020-09-03 17:43:07 +10:00
Damien Elmes
d3dede057a
move bury/suspend into backend
2020-09-01 10:24:38 +10:00
Damien Elmes
ccfa989c62
move unbury/unsuspend routines into backend
2020-09-01 10:24:38 +10:00
Damien Elmes
e5685254c6
reimplement congrats screen in Rust+Typescript
2020-09-01 10:24:38 +10:00
Damien Elmes
15f13145ea
Merge pull request #698 from Arthur-Milchior/remove_clear_overdue
...
remove _clearOverdue
2020-07-21 10:27:04 +10:00
Arthur Milchior
a3f8a15c37
remove unused variable
2020-07-20 10:17:23 +02:00
Arthur Milchior
5c9c5f6ebc
duplicate assignment removed
2020-07-20 06:47:47 +02:00
Arthur Milchior
e02d47a0d9
typo
2020-07-20 06:28:36 +02:00
Arthur Milchior
0449785b7a
remove useless variable cram
2020-07-20 06:24:42 +02:00
Arthur Milchior
3fd16beaa5
remove _clearOverdue
...
This member is never read
2020-07-20 05:45:18 +02:00
Damien Elmes
928a1d3a75
Merge pull request #697 from Arthur-Milchior/typos
...
Comment typo
2020-07-20 11:34:02 +10:00
Damien Elmes
2bb5826598
Merge pull request #696 from Arthur-Milchior/note_to_add_note
...
For some reason, add_note were assigned to a unused variable
2020-07-20 11:32:55 +10:00
Damien Elmes
63c0557824
Merge pull request #695 from Arthur-Milchior/note->field
...
replace "note" by "field"
2020-07-20 11:32:30 +10:00
Arthur Milchior
ff62829e6e
Comment typo
2020-07-19 11:24:58 +02:00
Arthur Milchior
35cfbc2bae
For some reason, add_note were assigned to a unused variable
...
I remove it for clarity
2020-07-19 10:58:40 +02:00
Arthur Milchior
bff784dc9a
replace "note" by "field"
...
My bad. In one case `f` did represent "field" and not "fact"
2020-07-19 08:24:43 +02:00
Arthur Milchior
23eeb84556
Uses constant in tests
2020-07-19 05:34:22 +02:00
Arthur Milchior
1b4a180fb9
d2->col2
2020-07-17 17:55:57 +02:00
Arthur Milchior
e7d75c2c8d
tmp->col in tests
2020-07-17 17:37:17 +02:00
Arthur Milchior
e7378734d2
f4->note4
2020-07-17 17:34:39 +02:00
Arthur Milchior
0db941ed98
f3->note3
2020-07-17 17:33:58 +02:00
Arthur Milchior
9c5bb199d0
f->n in id
2020-07-17 17:30:29 +02:00
Arthur Milchior
93ad194862
NF: deck2->col2
2020-07-17 17:27:40 +02:00
Arthur Milchior
1af59545bd
gn->deckn in test
...
Obtained by
```
sed -i "s/\bg1\b/deck1/g" pylib/tests/*py qt/tests/*py
sed -i "s/\bg2\b/deck2/g" pylib/tests/*py qt/tests/*py
```
2020-07-17 06:58:32 +02:00
Arthur Milchior
2c73dcb2e5
d->col in tests
...
obtained by
```
sed -i "s/\bd\b/col/g" pylib/tests/*py qt/tests/*py
```
2020-07-17 06:58:32 +02:00
Arthur Milchior
c376714a9b
deck->col in tests
...
Obtained by
```
sed -i "s/\bdeck\b/col/g" pylib/tests/*py qt/tests/*py
```
2020-07-17 06:50:46 +02:00
Arthur Milchior
425b82e6e7
f2->note2 in test
...
Obtained by
```
sed -i "s/\bf2\b/note2/g" pylib/tests/*py qt/tests/*py
```
2020-07-17 06:47:44 +02:00
Arthur Milchior
4c25835d27
f->note in test
...
Obtained by sed -i "s/\bf\b/note/g" pylib/tests/*py qt/tests/*py
2020-07-17 06:47:44 +02:00
Arthur Milchior
6a529e51cc
note->n
...
Next commit will transform f into note, and this lead to a variable clash here
2020-07-17 06:08:33 +02:00
Damien Elmes
1cb0ac3670
update unit test for leech change
2020-06-09 14:12:34 +10:00
Damien Elmes
4a69b55a90
add note/card removal to backend
2020-06-04 18:21:04 +10:00
Damien Elmes
95735f106a
migrate cards and notes
2020-05-23 16:19:48 +10:00
Damien Elmes
081a61a438
more methods
2020-05-23 14:01:36 +10:00
Damien Elmes
44ca4b32eb
use longer delay in test_timing()
...
was intermittently failing in slow Windows CI
2020-05-21 09:33:49 +10:00
evandrocoan
efb62b9528
Add missing close file descriptors using context managers
2020-05-18 15:54:20 -03:00
Damien Elmes
7daa417dc8
fix renaming corner cases and decks.update()
...
- .update() should update a single deck and preserve usn by default,
as that's what existing code expects
- decks are automatically renamed when they conflict with an existing
name
2020-05-17 19:07:15 +10:00
Damien Elmes
1cddd6d23e
only update active when selecting deck/resetting
...
We were previously doing this every time a card was answered.
2020-05-16 14:57:46 +10:00
Damien Elmes
24dd116f91
update unit tests to use deck_due_tree()
2020-05-16 12:10:40 +10:00
Damien Elmes
964a69e54e
handle default deck and filtered deck suppression in the backend
2020-05-15 21:21:10 +10:00
Damien Elmes
769bf04f75
remove unused deckDueList() and associated tree code
...
The progress bar add-ons appear to be the only active users of it;
they can switch their old code from iterating over the list to
simply locating the selected deck in deckDueTree(), as its counts should
summarize all the child decks.
2020-05-15 18:37:12 +10:00
Damien Elmes
2ac33500eb
fetch stock notetypes from backend
2020-05-15 17:08:24 +10:00
Damien Elmes
a2b7a30841
fetch/set remaining collection properties as required
2020-05-15 13:33:37 +10:00
Damien Elmes
5167bb57be
start reworking card layout screen
...
- front/back/css shown in tabs
- front/back preview switchable; only one webview needs to be loaded
- dropdown to select cloze number in preview
- search box to search in front/back/css
2020-05-14 15:24:29 +10:00
Damien Elmes
f23eb350e4
drop availOrds(), and use backend for getting cloze numbers
2020-05-14 12:14:00 +10:00
Damien Elmes
c601dcef24
remove obsolete preview code
2020-05-14 09:22:53 +10:00
Damien Elmes
826cbb0108
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.
2020-05-13 10:38:49 +10:00
Damien Elmes
ea4f150455
fetch timing_today() params in backend
2020-05-12 21:13:34 +10:00
Damien Elmes
fd4406222a
remove invalidated part of test_review_limits
...
Previously if the sum of child counts was above the parent's limit,
the deck tree would show a parent count above the parent's limit, and
clicking on the parent would show a lower count. The new deck tree
code never shows a parent count above the parent's limit, so this
part of the test is no longer valid.
2020-05-12 21:13:33 +10:00
Damien Elmes
f592672fa9
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.
2020-05-12 21:13:33 +10:00
Damien Elmes
6e8860cafa
hook the empty cards code up to the GUI
2020-05-12 21:13:33 +10:00
Damien Elmes
f637ac957d
hook up new note and note type handling
...
- notetypes are fetched from the DB as needed, and cached in Python
- handle note type changes in the backend. Multiple operations can now
be performed in one go, but this is not currently exposed in the GUI.
- extra methods to grab sorted note type names quickly, and fetch by
name
- col.models.save() without a provided notetype is now a no-op
- note loading/saving handled in the backend
- notes with no valid cards can now be added
- templates can now be deleted even if they would previously
orphan notes
a number of fixmes have been left in notes.py and models.py
2020-05-12 21:13:33 +10:00
Damien Elmes
e0de3d6b8c
add an extra second to a unit test
2020-05-12 21:13:33 +10:00
Damien Elmes
4e33775ed4
drop type answer requirement special case
...
While it makes no sense to have the typing box on the front without
another non-empty field, "the front of this card is empty" when
a typing box is on the template seems to be confusing some users, so
it is clearer to show them the box.
2020-04-29 21:29:16 +10:00
Damien Elmes
ce2890ca15
fix errorsAfterMidnight
2020-04-08 10:05:19 +10:00
Damien Elmes
e247ac3c47
hide deprecation warning triggered by supermemo test
2020-04-06 20:24:17 +10:00
Damien Elmes
e005140909
hide warning when running tests
2020-04-06 20:24:05 +10:00
Damien Elmes
8efc09d4ef
emulate named args
2020-04-06 20:09:44 +10:00
Damien Elmes
991e6bdd4c
use a new file each time when testing graphs
2020-04-06 15:39:47 +10:00
Damien Elmes
7375a0389a
add flag to skip downgrade on collection close
...
Disabled for now; when enabled it will allow faster collection
open and close in the normal case, while continuing to downgrade
when exporting or doing a full sync.
Also, when downgrading is disabled, the journal mode is no longer
changed back to delete.
2020-04-04 17:21:45 +10:00
Damien Elmes
333d0735ff
preserve mtime/usn when syncing deck config, and add snake_case names
2020-04-03 19:34:46 +10:00
Damien Elmes
5b26b20697
explicitly save deck conf after mutating it
2020-03-30 12:27:52 +10:00
Damien Elmes
bf83715ee0
initial work on undo support
2020-03-29 17:52:16 +10:00
Damien Elmes
158ce7bc01
add an extra second so slow CI server doesn't fail
2020-03-27 15:52:35 +10:00
Damien Elmes
13c7c82ae3
fix two cases where a float was being written into due
2020-03-26 19:05:18 +10:00
Damien Elmes
7ddaf93f7a
use backend to get card
2020-03-26 17:47:43 +10:00
evandrocoan
b1b3e5b87c
Merge remote-tracking branch 'danielelmes/master' into fix_tests_on_windows
...
# Conflicts:
# .github/scripts/trailing-newlines.sh
2020-03-23 18:44:11 -03:00
Damien Elmes
ac36fba90f
handle the two remaining timing issues
2020-03-22 14:43:29 +10:00
Damien Elmes
f28e57a367
add enum for controlling sort order
...
eg col.find_cards("", order=BuiltinSortKind.CARD_DUE)
2020-03-22 12:59:24 +10:00
Damien Elmes
9afbcd4178
remove old finder code; add search hooks to browser & remove old one
2020-03-21 16:38:46 +10:00
Damien Elmes
307aadfd8a
don't set deck.sched.today in test
2020-03-21 08:12:32 +10:00
Damien Elmes
daa848bb4d
update tests to reflect what now constitutes an error
2020-03-21 08:12:01 +10:00
Damien Elmes
868c463fb1
tests need to flush before searching
2020-03-21 08:10:52 +10:00
Damien Elmes
7986a79530
remove db.close()
2020-03-20 21:15:23 +10:00
Damien Elmes
ae06b9e446
add Collection struct, and get media check working again
...
- media check no longer needs collection to be closed
- use savepoints for operations initiated by Rust, so they are
atomic without forcing a commit
2020-03-20 21:15:23 +10:00
evandrocoan
88ea0b18bf
Fixed test_importing.py unit tests failing on windows with
...
PermissionError: [Errno 13] Permission denied
2020-03-17 12:49:36 -03:00
evandrocoan
9dd54c421b
Fixed UnicodeEncodeError: 'charmap' codec can't encode character
...
'\u2068' in position 2724: character maps to <undefined> for
pylib/tests/test_stats.py
2020-03-17 12:49:25 -03:00
Damien Elmes
862e2b48f0
add col.weakref() and fix more reference cycles in pylib
2020-03-05 09:47:47 +10:00
Damien Elmes
4d917cc65b
add self.col.tr() shortcut
2020-02-27 12:33:15 +10:00
Damien Elmes
0c49431719
FString -> TR
2020-02-27 12:25:19 +10:00
Damien Elmes
b1a192b384
cap answer buttons to 1 decimal place
...
we can switch to NUMBER() instead in the future, but will need
to update all the translations at the same time
2020-02-25 13:24:29 +10:00
Damien Elmes
e73157285e
remove old fmtTimeSpan() and associated strings
2020-02-23 18:47:16 +10:00
Damien Elmes
4430c67069
rework Fluent handling
...
- all .ftl files for a language are concatenated into a single file
at build time
- all languages are included in the binary
- external ftl files placed in the ftl folder can override the
built-in definitions
- constants are automatically generated for each string key
- dropped the separate StringsGroup enum
2020-02-23 13:22:50 +10:00
Damien Elmes
232a8625bf
move answer button labels into fluent
2020-02-21 15:29:38 +10:00