Merge pull request #705 from mkrump/help-wanted-4-add-type-hints-3

Add type hints for aqt.importing, aqt.errors and aqt.models
This commit is contained in:
Damien Elmes 2020-07-25 11:44:05 +10:00 committed by GitHub
commit ca8265a695
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 15 additions and 6 deletions

View file

@ -54,7 +54,7 @@ class ErrorHandler(QObject):
def setTimer(self): def setTimer(self):
# we can't create a timer from a different thread, so we post a # we can't create a timer from a different thread, so we post a
# message to the object on the main thread # message to the object on the main thread
self.errorTimer.emit() self.errorTimer.emit() # type: ignore
def _setTimer(self): def _setTimer(self):
if not self.timer: if not self.timer:

View file

@ -10,6 +10,7 @@ import traceback
import unicodedata import unicodedata
import zipfile import zipfile
from concurrent.futures import Future from concurrent.futures import Future
from typing import Optional
import anki.importing as importing import anki.importing as importing
import aqt.deckchooser import aqt.deckchooser
@ -55,7 +56,7 @@ class ChangeMap(QDialog):
self.frm.fields.setCurrentRow(n) self.frm.fields.setCurrentRow(n)
else: else:
self.frm.fields.setCurrentRow(n + 1) self.frm.fields.setCurrentRow(n + 1)
self.field = None self.field: Optional[str] = None
def getField(self): def getField(self):
self.exec_() self.exec_()
@ -488,7 +489,9 @@ def _replaceWithApkg(mw, filename, backup):
colname = "collection.anki2" colname = "collection.anki2"
with z.open(colname) as source, open(mw.pm.collectionPath(), "wb") as target: with z.open(colname) as source, open(mw.pm.collectionPath(), "wb") as target:
shutil.copyfileobj(source, target) # ignore appears related to https://github.com/python/typeshed/issues/4349
# see if can turn off once issue fix is merged in
shutil.copyfileobj(source, target) # type: ignore
d = os.path.join(mw.pm.profileFolder(), "collection.media") d = os.path.join(mw.pm.profileFolder(), "collection.media")
for n, (cStr, file) in enumerate( for n, (cStr, file) in enumerate(

View file

@ -6,6 +6,7 @@ from typing import List, Optional
import aqt.clayout import aqt.clayout
from anki import stdmodels from anki import stdmodels
from anki.backend_pb2 import NoteTypeNameIDUseCount
from anki.lang import _, ngettext from anki.lang import _, ngettext
from anki.models import NoteType from anki.models import NoteType
from anki.notes import Note from anki.notes import Note
@ -88,7 +89,7 @@ class Models(QDialog):
self.mw.taskman.with_progress(save, on_done, self) self.mw.taskman.with_progress(save, on_done, self)
def updateModelsList(self, notetypes): def updateModelsList(self, notetypes: List[NoteTypeNameIDUseCount]) -> None:
row = self.form.modelsList.currentRow() row = self.form.modelsList.currentRow()
if row == -1: if row == -1:
row = 0 row = 0
@ -96,8 +97,7 @@ class Models(QDialog):
self.models = notetypes self.models = notetypes
for m in self.models: for m in self.models:
mUse = m.use_count mUse = ngettext("%d note", "%d notes", m.use_count) % m.use_count
mUse = ngettext("%d note", "%d notes", mUse) % mUse
item = QListWidgetItem("%s [%s]" % (m.name, mUse)) item = QListWidgetItem("%s [%s]" % (m.name, mUse))
self.form.modelsList.addItem(item) self.form.modelsList.addItem(item)
self.form.modelsList.setCurrentRow(row) self.form.modelsList.setCurrentRow(row)

View file

@ -68,5 +68,11 @@ check_untyped_defs=true
check_untyped_defs=true check_untyped_defs=true
[mypy-aqt.dyndeckconf] [mypy-aqt.dyndeckconf]
check_untyped_defs=true check_untyped_defs=true
[mypy-aqt.models]
check_untyped_defs=true
[mypy-aqt.errors]
check_untyped_defs=true
[mypy-aqt.importing]
check_untyped_defs=true
[mypy-aqt.deckconf] [mypy-aqt.deckconf]
check_untyped_defs=true check_untyped_defs=true