Commit f37c5e307dd0efe0d54b19679998a0b6ea7b6c38
1 parent
f865b05a
Exists in
master
and in
1 other branch
minor update in critical error reporting
Showing
5 changed files
with
20 additions
and
12 deletions
Show diff stats
BUGS.md
1 | 1 | ||
2 | # BUGS | 2 | # BUGS |
3 | 3 | ||
4 | -- ir para inicio da pagina quando le nova pergunta. | 4 | +- dependencias que não são goals de um curso, só devem aparecer se ainda não tiverem sido feitas. |
5 | +- goals se forem do tipo chapter deve importar todas as dependencias do chapter (e não mostrar chapters?). | ||
5 | - nao esta a seguir o max_tries definido no ficheiro de dependencias. | 6 | - nao esta a seguir o max_tries definido no ficheiro de dependencias. |
6 | - devia mostrar timeout para o aluno saber a razao. | 7 | - devia mostrar timeout para o aluno saber a razao. |
7 | - permitir configuracao para escolher entre static files locais ou remotos | 8 | - permitir configuracao para escolher entre static files locais ou remotos |
@@ -12,6 +13,7 @@ | @@ -12,6 +13,7 @@ | ||
12 | 13 | ||
13 | # TODO | 14 | # TODO |
14 | 15 | ||
16 | +- alterar tabelas para incluir email de recuperacao de password (e outros avisos) | ||
15 | - registar last_seen e remover os antigos de cada vez que houver um login. | 17 | - registar last_seen e remover os antigos de cada vez que houver um login. |
16 | - indicar qtos topicos faltam (>=50%) para terminar o curso. | 18 | - indicar qtos topicos faltam (>=50%) para terminar o curso. |
17 | - ao fim de 3 tentativas com password errada, envia email com nova password. | 19 | - ao fim de 3 tentativas com password errada, envia email com nova password. |
@@ -32,6 +34,7 @@ | @@ -32,6 +34,7 @@ | ||
32 | 34 | ||
33 | # FIXED | 35 | # FIXED |
34 | 36 | ||
37 | +- ir para inicio da pagina quando le nova pergunta. | ||
35 | - CRITICAL nao esta a guardar o progresso na base de dados. | 38 | - CRITICAL nao esta a guardar o progresso na base de dados. |
36 | - mesma ref no mesmo ficheiro não é detectado. | 39 | - mesma ref no mesmo ficheiro não é detectado. |
37 | - enter nas respostas mostra json | 40 | - enter nas respostas mostra json |
aprendizations/learnapp.py
@@ -67,7 +67,12 @@ class LearnApp(object): | @@ -67,7 +67,12 @@ class LearnApp(object): | ||
67 | self.db_setup(db) # setup database and check students | 67 | self.db_setup(db) # setup database and check students |
68 | self.online: Dict[str, Dict] = dict() # online students | 68 | self.online: Dict[str, Dict] = dict() # online students |
69 | 69 | ||
70 | - config: Dict[str, Any] = load_yaml(courses) | 70 | + try: |
71 | + config: Dict[str, Any] = load_yaml(courses) | ||
72 | + except Exception: | ||
73 | + msg = f'Failed to load yaml file "{courses}"' | ||
74 | + logger.error(msg) | ||
75 | + raise LearnException(msg) | ||
71 | 76 | ||
72 | # --- topic dependencies are shared between all courses | 77 | # --- topic dependencies are shared between all courses |
73 | self.deps = nx.DiGraph(prefix=prefix) | 78 | self.deps = nx.DiGraph(prefix=prefix) |
aprendizations/main.py
@@ -179,10 +179,10 @@ def main(): | @@ -179,10 +179,10 @@ def main(): | ||
179 | sep='\n') | 179 | sep='\n') |
180 | sys.exit(1) | 180 | sys.exit(1) |
181 | except LearnException as e: | 181 | except LearnException as e: |
182 | - logging.critical(e) | 182 | + logging.critical('Failed to start backend') |
183 | sys.exit(1) | 183 | sys.exit(1) |
184 | except Exception: | 184 | except Exception: |
185 | - logging.critical('Failed to start backend.') | 185 | + logging.critical('Unknown error') |
186 | sys.exit(1) | 186 | sys.exit(1) |
187 | else: | 187 | else: |
188 | logging.info('LearnApp started') | 188 | logging.info('LearnApp started') |
package-lock.json
@@ -8,14 +8,14 @@ | @@ -8,14 +8,14 @@ | ||
8 | "integrity": "sha512-vKDJUuE2GAdBERaQWmmtsciAMzjwNrROXA5KTGSZvayAsmuTGjam5z6QNqNPCwDfVljLWuov1nEC3mEQf/n6fQ==" | 8 | "integrity": "sha512-vKDJUuE2GAdBERaQWmmtsciAMzjwNrROXA5KTGSZvayAsmuTGjam5z6QNqNPCwDfVljLWuov1nEC3mEQf/n6fQ==" |
9 | }, | 9 | }, |
10 | "codemirror": { | 10 | "codemirror": { |
11 | - "version": "5.50.0", | ||
12 | - "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.50.0.tgz", | ||
13 | - "integrity": "sha512-32LAmGcBNhKtJP4WGgkcaCVQDyChAyaWA6jasg778ziZzo3PWBuhpAQIJMO8//Id45RoaLyXjuhcRUBoS8Vg+Q==" | 11 | + "version": "5.51.0", |
12 | + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.51.0.tgz", | ||
13 | + "integrity": "sha512-vyuYYRv3eXL0SCuZA4spRFlKNzQAewHcipRQCOKgRy7VNAvZxTKzbItdbCl4S5AgPZ5g3WkHp+ibWQwv9TLG7Q==" | ||
14 | }, | 14 | }, |
15 | "mdbootstrap": { | 15 | "mdbootstrap": { |
16 | - "version": "4.11.0", | ||
17 | - "resolved": "https://registry.npmjs.org/mdbootstrap/-/mdbootstrap-4.11.0.tgz", | ||
18 | - "integrity": "sha512-3yhRRo8UQDqRgeEutSpx9jIECzkyPebOq/oYsG2TLAmXVmujDBb+OoTW6+yZ1MtaQZCu8AF8D1/pM9Y8sLj3uA==" | 16 | + "version": "4.12.0", |
17 | + "resolved": "https://registry.npmjs.org/mdbootstrap/-/mdbootstrap-4.12.0.tgz", | ||
18 | + "integrity": "sha512-+X4x63tE96zpVOcRlVUGdcR65M9Ud+/l1TvdmcwUjEGo3ktn9TO3e6S3DBLTvchO9U5eKuJh/MIWIGac7+569g==" | ||
19 | } | 19 | } |
20 | } | 20 | } |
21 | } | 21 | } |
package.json
@@ -3,8 +3,8 @@ | @@ -3,8 +3,8 @@ | ||
3 | "email": "mjsb@uevora.pt", | 3 | "email": "mjsb@uevora.pt", |
4 | "dependencies": { | 4 | "dependencies": { |
5 | "@fortawesome/fontawesome-free": "^5.12.0", | 5 | "@fortawesome/fontawesome-free": "^5.12.0", |
6 | - "codemirror": "^5.50.0", | ||
7 | - "mdbootstrap": "^4.11.0" | 6 | + "codemirror": "^5.51.0", |
7 | + "mdbootstrap": "^4.12.0" | ||
8 | }, | 8 | }, |
9 | "private": true | 9 | "private": true |
10 | } | 10 | } |