Damien Elmes
f3d2965e12
Revert "don't delete dangling facts when deleting cards" hack
...
We don't need this any more as we do conflict handling.
This reverts commit 880219567e
.
2010-07-21 18:37:35 +09:00
Damien Elmes
880219567e
don't delete dangling facts when deleting cards
...
If the user is not careful to only sync when one side has been modified, they
can end up with cards on one side and not the other. If they then delete a
card, deleting the dangling facts also deletes the fact associated with the
not-yet-synced card. In order to avoid this, we avoid deleting dangling facts
until a DB check.
2010-05-21 06:56:38 +09:00
Damien Elmes
edf121f8dc
add hex cache for dumb clients, make sure not to mark deck modified
2010-05-16 01:01:38 +09:00
Damien Elmes
5616e679f5
cache the css as a deck var, don't accidentally send it in sync
2010-05-10 21:32:36 +09:00
Damien Elmes
a1d3f13f0a
update for sqlalchemy 0.6
2010-04-21 13:21:16 +09:00
Damien Elmes
1be5943903
remove erroneous comment
2010-04-16 01:25:47 +09:00
Damien Elmes
21ec548680
more explicit setting of creation time, don't fiddle with ordinals for rand
2010-04-15 23:05:14 +09:00
Damien Elmes
783751d7ea
support ? for single char search
2010-04-06 18:47:39 +09:00
Damien Elmes
09f51e5028
when adding facts, use a small due increment for each card model
2010-03-03 02:51:05 +09:00
Damien Elmes
80197d9c2f
when generating cards, use a small creation date increment
2010-03-03 02:49:55 +09:00
Damien Elmes
220670a048
update combinedDue attr in cardAnswered(), not just on disk
2010-02-22 16:41:20 +09:00
Damien Elmes
472b68b831
don't backup when importing / saving as
2010-02-20 10:03:39 +09:00
Damien Elmes
bc345d3711
create backup dir if missing
2010-02-20 09:54:54 +09:00
Damien Elmes
6dce4e0602
add progress dialog to save as
2010-02-09 01:52:06 +09:00
Damien Elmes
ae690ccea3
don't bother with an integrity check if the deck is unchanged
2010-02-09 01:36:39 +09:00
Damien Elmes
295bacacd8
forget sync name on saveas
2010-02-09 01:30:16 +09:00
Damien Elmes
095a7dbb6f
implement save as without attaching a db
...
Attaching new to old causes old to be implicitly commited.
We also can't access old from new if a write lock has been
taken out, so the only option left is to move all the data
through Python and take the speed hit.
2010-02-09 01:27:49 +09:00
Damien Elmes
dfd88cc4c1
don't set modtime of 0
2010-02-06 01:20:50 +09:00
Damien Elmes
c659660864
don't send acq cards when there are cards to review & new cards shown last
2010-02-05 13:07:42 +09:00
Damien Elmes
09f51e27f0
return newly created card ids when generating cards
2010-02-05 12:59:54 +09:00
Damien Elmes
8378f71c73
since interval is updated first, use lastInterval in cardIsBeingLearnt()
2010-02-01 05:11:34 +09:00
Damien Elmes
9b61d86096
place a minimum bound on average factor
...
Since SM2's grading has a bias towards starting high and going down (fail/hard
decrease the interval more than easy increases it), more conservative users
find their average interval reaches the minimum allowable interval and the
times given by hard/good start to converge. In the future, the whole concept
of using the average interval for new cards should be revisited to see if the
data supports it
2010-02-01 05:01:23 +09:00
Damien Elmes
d8ba9e1987
revert ease1 change
...
suspicious of the previous change, I had a look at the example pascal and
found the EF _was_ actually updated on a failure. The spec is misleading there.
2010-02-01 04:44:27 +09:00
Damien Elmes
87a0e087e5
tweak scheduler
...
- don't touch factor on fail, as per SM2 specs
- hard code no-punish-on-hard 'learning period' to 7 days so users who tweak
the initial intervals aren't punished too early
2010-02-01 03:28:46 +09:00
Damien Elmes
a6a7782030
fix another windows timer resolution bug
2010-01-22 02:16:57 +09:00
Damien Elmes
33aede4d56
document 'features' reuse, add tool to get var as string
2010-01-19 01:51:35 +09:00
Damien Elmes
20da165b6e
check backup integrity using existing db connection to avoid locking issues
2010-01-04 22:37:14 +09:00
Damien Elmes
ec9a7c3755
check db integrity on backup
2009-11-30 14:31:47 +09:00
Damien Elmes
6a8c19a889
use threadlocal for single user access
2009-11-30 08:34:31 +09:00
Damien Elmes
4bea904dc6
give the card id on cardAnswered hook, not old card
2009-11-27 15:59:58 +09:00
Damien Elmes
a50ec2649a
fix undo of deck properties bug
2009-11-27 15:26:03 +09:00
Damien Elmes
feaedccc9a
fix field ordinals on db check
2009-11-19 13:07:43 +09:00
Damien Elmes
9671d15371
rewrite expression to be clearer
2009-10-25 19:48:28 +09:00
Damien Elmes
4e83a67e00
lowercase is:foo searches
2009-10-04 19:30:21 +09:00
Damien Elmes
c786479268
timeout @ 60
2009-09-28 09:22:57 +09:00
Damien Elmes
1111cae80a
mark everything updated on full db check
2009-09-26 23:13:28 +09:00
Damien Elmes
0863acc160
make pool an argument instead of progress handling; timeout=30
2009-09-25 18:08:53 +09:00
Damien Elmes
1028b04d9c
default timeout of 90 seconds
2009-09-22 18:35:31 +09:00
Damien Elmes
2e2444f488
apsw -> nullpool
2009-09-21 20:48:04 +09:00
Damien Elmes
fa6d1f9528
set isolation_level=None when using apsw
2009-09-20 19:55:56 +09:00
Damien Elmes
dce35eda06
disable progress handler if apsw enabled
2009-09-17 01:33:29 +09:00
Damien Elmes
2a72a4dc70
apsw wants unicode
2009-09-17 01:08:19 +09:00
Damien Elmes
090529c4d7
add option to initialize via apsw
2009-09-17 00:25:53 +09:00
Damien Elmes
1b1b69e966
don't die on resetUndo() if undo disabled
2009-09-14 15:30:20 +09:00
Damien Elmes
a9f3e4dca7
don't throw a traceback with an invalid fid
2009-09-06 17:31:47 +09:00
Damien Elmes
5fed1f7f35
support rtl in html too
2009-08-17 07:42:19 +09:00
Damien Elmes
fd9ce1a876
random(0, time())
2009-08-17 06:52:26 +09:00
Damien Elmes
c33c6318b2
handle text:field in rename & delete
2009-08-17 04:53:29 +09:00
Damien Elmes
2f2487e5b8
increase 5 year max scheduling time to 100 years
2009-07-09 23:07:38 +09:00
Damien Elmes
fdb9327864
fix locking in ubuntu
2009-07-08 14:38:40 +09:00