aboutsummaryrefslogtreecommitdiff
path: root/Documentation/usage/versions.rst
blob: 71f122df36c453d785a8017b257d3e869d514d4e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
================
Notes de version
================

Version 0.13
============
Changements externes
--------------------
 - Ajout de l’emploi du temps des salles
 - Ajout d’une fonctionnalité permettant de connaître les salles
   disponibles
 - Améliorations de la navigabilité du site

   - Ajout de liens pour revenir en arrière sur le site
   - Ajout de liens pour parcourir les semaines de l’emploi du temps

 - Les groupes qui n’ont plus de cours du tout ne sont plus affichés
 - Ajout d’une page contenant la liste complète des groupes
 - Ajout d’une page contenant la liste complète des semaines de cours
   pour les groupes et les salles
 - Ajout d’un texte de description sur la page des ICS
 - Création de la documentation

Changements internes
--------------------
 - Passage à Django 2.0

   - Utilisation des routes ``path()`` au lieu de ``url()``

 - Création d’une table ``Source`` pour stocker la source des emplois
   du temps. Cela permet d’éviter de récupérer plusieurs fois le même
   fichier et d’éviter les doublons sur les emplois du temps des
   salles.
 - Ajout de la commande :doc:`reparse <commands/reparse>`
 - Meilleure abstraction des templates, notamment de ``index.html``

.. _ref-ver-0.14:

Version 0.14
============
Changements externes
--------------------
 - Tri des salles par ordre alphabétique dans l’interface
   d’administration.
 - Les champs de mention, de semestre et de sous-groupe d’un groupe ne
   sont plus en lecture seule dans l’interface d’administration.

Changements internes
--------------------
 - Modularisation du parseur d’emplois du temps.
 - Nouveau parseur pour supporter le format utilisé en 2018 par
   l’Université Paul Sabatier.
 - Correction d’un bogue qui faisait planter le parseur si on
   demandait une mise à jour complète alors que la source ne contenait
   pas de semaines ; désormais, si une source ne contient pas de
   semaines, la date de mise à jour de la source est modifiée, et
   aucun cours n’est supprimé ou rajouté.
 - Correction du format des semaines dans ``get_week()``. Elles
   étaient parsées avec le format de base de Python au lieu du format
   ISO-8601. Selon le format de Python, le 1er janvier 2019 fait
   partie de la 53ème semaine de l’an 2018, alors que selon ISO, il
   fait partie de la 1ère semaine de 2019.  Étant donné que d’autres
   parties de celcatsanitizer gèrent les dates selon ISO, cela posait
   des problèmes de cohérence.
 - Support des sous-groupes contenant un chiffre avant le premier
   caractère.
 - Augmentation du nombre de caractères maximum du nom d’un cours de
   255 à 511 caractères.

Remarques supplémentaires
-------------------------
Les objectifs originaux de celcatsanitizer consistaient en ceux de la
:ref:`version 0.15 <ref-ver-0.15>`, à savoir :

 - Optimisation des requêtes en utilisant des fonctionnalités
   spécifiques à PostgreSQL si nécessaire
 - Remplacement du moteur de templates de Django par Jinja2_.
 - Utilisation de Django 2.1 et de l’aggrégat ``TruncWeek``.

.. _Jinja2: http://jinja.pocoo.org/

Ils n’ont pas pu être suivis à cause d’un manque de temps et de tests
et ont étés reportés à la version 0.15.

Version 0.14.1
--------------
 - Correction d’un bogue qui faisait planter la recherche de salles si
   l’heure de début est après l’heure de fin.
 - Correction d’un bogue lorsqu’un cours ne possède ni nom ni type
   dans le parseur UPS2018, résultant en un échec de mise à jour.

Version 0.14.2
--------------
 - Renvoi d’un code d’erreur 400 lorsque le formulaire de QSJPS est
   invalide.
 - Correction du texte d’erreur du formulaire de QSJPS.
 - Changement des textes « semaine N » par « semaine
   précédente/suivante » dans les calendriers.
 - Correction d’un bogue qui faisait croire au parseur que l’heure de
   début et de fin d’un cours était son type.
 - Correction d’un bogue qui faisait que le parseur créait un cours
   vide quand il traitait un événement global, alors qu’il ne devrait
   pas en créer du tout.
 - Lorsqu’un cours a plusieurs noms, la technique de déduplication
   utilisée jusqu’alors faisait que l’ordre des noms n’était pas
   forcément identique d’une mise à jour à une autre. Cette technique
   a été changée par une autre permettant de conserver cet ordre.

Version 0.14.3
--------------
 - Il arrive que la source renvoie des pages incomplètes ne contenant
   aucun cours, ce qui peut donner des mois complètement vides. Ajout
   d’une vérification lors de la récupération des pages ; si une page
   est invalide, elle est re-demandée tant qu’elle est incomplète, et
   ce trois fois au maximum.