Commit 6c5a961afa06755da51b579e562faaf7e1d18548
1 parent
e23fb122
Exists in
master
and in
1 other branch
minor mods
Showing
3 changed files
with
19 additions
and
17 deletions
Show diff stats
BUGS.md
| 1 | -# BUGS | |
| 1 | +# Bugs and Wishlist | |
| 2 | + | |
| 3 | +## BUGS | |
| 2 | 4 | |
| 3 | 5 | - nao esta a respeitar o numero de tentativas `max_tries`. |
| 4 | 6 | - se na especificacao de um curso, a referencia do topico nao existir como |
| 5 | 7 | directorio, rebenta. |
| 6 | 8 | - internal server error ao fazer logout no macos python3.8 |
| 7 | -- GET can get filtered by browser cache | |
| 8 | 9 | - topicos chapter devem ser automaticamente completos assim que as dependencias |
| 9 | 10 | são satisfeitas. Nao devia ser necessario (ou possivel?) clicar neles. |
| 10 | 11 | - topicos do tipo learn deviam por defeito nao ser randomizados e assumir |
| ... | ... | @@ -23,11 +24,11 @@ |
| 23 | 24 | - shift-enter não está a funcionar |
| 24 | 25 | - default prefix should be obtained from each course (yaml conf)? |
| 25 | 26 | |
| 26 | -# TODO | |
| 27 | +## TODO | |
| 27 | 28 | |
| 28 | -- shuffle das perguntas dentro de um topico | |
| 29 | 29 | - alterar tabelas para incluir email de recuperacao de password (e outros |
| 30 | 30 | avisos) |
| 31 | +- shuffle das perguntas dentro de um topico | |
| 31 | 32 | - registar `last_seen` e remover os antigos de cada vez que houver um login. |
| 32 | 33 | - indicar qtos topicos faltam (>=50%) para terminar o curso. |
| 33 | 34 | - ao fim de 3 tentativas com password errada, envia email com nova password. |
| ... | ... | @@ -50,8 +51,9 @@ |
| 50 | 51 | mais falhadas, tempo médio por pergunta. |
| 51 | 52 | - normalizar com perguntations. |
| 52 | 53 | |
| 53 | -# FIXED | |
| 54 | +## FIXED | |
| 54 | 55 | |
| 56 | +- rankings rebenta se nunhum aluno tiver feito nenhum topico. | |
| 55 | 57 | - templates question-*.html tem input hidden question_ref que não é usado. |
| 56 | 58 | remover? |
| 57 | 59 | - goals se forem do tipo chapter deve importar todas as dependencias do chapter. | ... | ... |
aprendizations/learnapp.py
| ... | ... | @@ -599,9 +599,9 @@ class LearnApp(): |
| 599 | 599 | return self.courses[course_id] |
| 600 | 600 | |
| 601 | 601 | # ------------------------------------------------------------------------ |
| 602 | - def get_rankings(self, uid: str, course_id: str) -> Iterable[Tuple[str, str, float]]: | |
| 602 | + def get_rankings(self, uid: str, cid: str) -> Iterable[Tuple[str, str, float]]: | |
| 603 | 603 | ''' |
| 604 | - Returns rankings for a certain course_id. | |
| 604 | + Returns rankings for a certain cid (course_id). | |
| 605 | 605 | User where uid have <=2 chars are considered ghosts are hidden from |
| 606 | 606 | the rankings. This is so that there can be users for development or |
| 607 | 607 | testing purposes, which are not real users. |
| ... | ... | @@ -609,7 +609,7 @@ class LearnApp(): |
| 609 | 609 | This should be modified to have a "visible" flag |
| 610 | 610 | ''' |
| 611 | 611 | |
| 612 | - logger.info('User "%s" rankings for "%s"', uid, course_id) | |
| 612 | + logger.info('User "%s" rankings for "%s"', uid, cid) | |
| 613 | 613 | query_students = select(Student.id, Student.name) |
| 614 | 614 | query_student_topics = select(StudentTopic.student_id, |
| 615 | 615 | StudentTopic.topic_id, |
| ... | ... | @@ -625,7 +625,7 @@ class LearnApp(): |
| 625 | 625 | |
| 626 | 626 | # compute topic progress |
| 627 | 627 | now = datetime.now() |
| 628 | - goals = self.courses[course_id]['goals'] | |
| 628 | + goals = self.courses[cid]['goals'] | |
| 629 | 629 | progress: DefaultDict[str, float] = defaultdict(int) |
| 630 | 630 | |
| 631 | 631 | for student, topic, level, date in student_topics: | ... | ... |
mypy.ini
| ... | ... | @@ -2,14 +2,14 @@ |
| 2 | 2 | python_version = 3.9 |
| 3 | 3 | plugins = sqlalchemy.ext.mypy.plugin |
| 4 | 4 | |
| 5 | -[mypy-pygments.*] | |
| 6 | -ignore_missing_imports = True | |
| 5 | +; [mypy-pygments.*] | |
| 6 | +; ignore_missing_imports = True | |
| 7 | 7 | |
| 8 | -[mypy-networkx.*] | |
| 9 | -ignore_missing_imports = True | |
| 8 | +; [mypy-networkx.*] | |
| 9 | +; ignore_missing_imports = True | |
| 10 | 10 | |
| 11 | -[mypy-bcrypt.*] | |
| 12 | -ignore_missing_imports = True | |
| 11 | +; [mypy-bcrypt.*] | |
| 12 | +; ignore_missing_imports = True | |
| 13 | 13 | |
| 14 | -[mypy-mistune.*] | |
| 15 | -ignore_missing_imports = True | |
| 14 | +; [mypy-mistune.*] | |
| 15 | +; ignore_missing_imports = True | ... | ... |