<feed xmlns='http://www.w3.org/2005/Atom'>
<title>celcatsanitizer/management, branch ag/rene</title>
<subtitle>A sane interface to celcat calendar.  This project is now abandonware.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/'/>
<entry>
<title>ups2018: vérification de la présence des événements dans la page</title>
<updated>2018-10-09T18:30:07+00:00</updated>
<author>
<name>Alban Gruin</name>
</author>
<published>2018-10-09T18:30:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/commit/?id=11f340b4c3adb4200ff41e7e4587392b10b13e47'/>
<id>11f340b4c3adb4200ff41e7e4587392b10b13e47</id>
<content type='text'>
Il arrive que les pages retournées par la source sont incomplètes et
ne contiennent pas d’événement, et parfois des mois entiers sont
vides.

On tente donc de récupérer une page trois fois au maximum, et, si cela
échoue toujours, on abandonne en renvoyant une exception.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Il arrive que les pages retournées par la source sont incomplètes et
ne contiennent pas d’événement, et parfois des mois entiers sont
vides.

On tente donc de récupérer une page trois fois au maximum, et, si cela
échoue toujours, on abandonne en renvoyant une exception.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>parsers: ajout d’une exception pour les parseurs</title>
<updated>2018-10-09T18:29:56+00:00</updated>
<author>
<name>Alban Gruin</name>
</author>
<published>2018-10-09T18:29:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/commit/?id=536061a041b5ea0ea0b64a8f4e5fa3b99a49861a'/>
<id>536061a041b5ea0ea0b64a8f4e5fa3b99a49861a</id>
<content type='text'>
Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ups2018: pas de création de cours si l’événement est global</title>
<updated>2018-09-29T14:51:15+00:00</updated>
<author>
<name>Alban Gruin</name>
</author>
<published>2018-09-29T14:45:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/commit/?id=0533690d2423214c3cd1c013cab6242c10f9d094'/>
<id>0533690d2423214c3cd1c013cab6242c10f9d094</id>
<content type='text'>
Pour l’instant, on ne souhaite pas enregistrer les événement globaux.
On vérifie donc si l’événement est global, et, si c’est le cas, on ne
traite pas l’événement. Or, on insérait un cours dans la base de
données avant de faire ce test. Un cours avec aucun attribut était
donc laissé dans la base de données.

Ce commit déplace donc la création du cours après avoir vérifié si un
événement est global.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pour l’instant, on ne souhaite pas enregistrer les événement globaux.
On vérifie donc si l’événement est global, et, si c’est le cas, on ne
traite pas l’événement. Or, on insérait un cours dans la base de
données avant de faire ce test. Un cours avec aucun attribut était
donc laissé dans la base de données.

Ce commit déplace donc la création du cours après avoir vérifié si un
événement est global.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ups2018: détection du premier élément « utile » des données du cours</title>
<updated>2018-09-23T17:40:17+00:00</updated>
<author>
<name>Alban Gruin</name>
</author>
<published>2018-09-23T17:40:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/commit/?id=f9da11d173229ac9dc197fa25163479686b5d0d6'/>
<id>f9da11d173229ac9dc197fa25163479686b5d0d6</id>
<content type='text'>
La plupart des cours contiennent un élément correspondant à l’heure de
début et de fin du cours.  Lorsqu’un cours ne possède pas de nom, il
se peut que cet élément soit utilisé comme type, ce qui n’a pas de
sens.  On va donc détecter la présence de cet élément à la première
place à l’aide d’une regex, et, si jamais il est présent, on n’utilise
pas le premier élément de la liste.

À l’origine, cet élément ne devait pas être utilisé pour cette raison,
mais ce comportement a été changé avec le commit ab6ca3c ("parsers:
correction de l’index du premier élément à analyser"), après la
détection de cours n’ayant pas cet élément.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
La plupart des cours contiennent un élément correspondant à l’heure de
début et de fin du cours.  Lorsqu’un cours ne possède pas de nom, il
se peut que cet élément soit utilisé comme type, ce qui n’a pas de
sens.  On va donc détecter la présence de cet élément à la première
place à l’aide d’une regex, et, si jamais il est présent, on n’utilise
pas le premier élément de la liste.

À l’origine, cet élément ne devait pas être utilisé pour cette raison,
mais ce comportement a été changé avec le commit ab6ca3c ("parsers:
correction de l’index du premier élément à analyser"), après la
détection de cours n’ayant pas cet élément.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ups2018: déduplication avec OrderedDict au lieu de set()</title>
<updated>2018-09-23T17:39:57+00:00</updated>
<author>
<name>Alban Gruin</name>
</author>
<published>2018-09-23T17:34:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/commit/?id=b0211666b3f3437a0496b9c9f03a3613698b9804'/>
<id>b0211666b3f3437a0496b9c9f03a3613698b9804</id>
<content type='text'>
set() ne conserve pas nécessairement l’ordre des données, ce qui a
plusieurs conséquences.  Premièrement, un cours avec plusieurs noms
séparés par un point-virgule peut changer de nom dans celcatsanitizer
d’une mise à jour à une autre.  Deuxièmement, cette fonctionnalité
devient intestable de manière certaine.

Pour remédier à cela, on utilise la structure OrderedDict à la place.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
set() ne conserve pas nécessairement l’ordre des données, ce qui a
plusieurs conséquences.  Premièrement, un cours avec plusieurs noms
séparés par un point-virgule peut changer de nom dans celcatsanitizer
d’une mise à jour à une autre.  Deuxièmement, cette fonctionnalité
devient intestable de manière certaine.

Pour remédier à cela, on utilise la structure OrderedDict à la place.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>parsers: correction de l’index du premier élément à analyser</title>
<updated>2018-09-19T19:00:28+00:00</updated>
<author>
<name>Alban Gruin</name>
</author>
<published>2018-09-19T17:23:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/commit/?id=ab6ca3c158477a7d5c055fb0cb9346c2b97d19f6'/>
<id>ab6ca3c158477a7d5c055fb0cb9346c2b97d19f6</id>
<content type='text'>
Commencer au premier élément fait planter l’étape de déduction des
éléments des cours si jamais un cours n’a ni nom, ni type.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Commencer au premier élément fait planter l’étape de déduction des
éléments des cours si jamais un cours n’a ni nom, ni type.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>timetables: ne rien faire si une source ne contient pas de semaines</title>
<updated>2018-09-06T19:03:49+00:00</updated>
<author>
<name>Alban Gruin</name>
</author>
<published>2018-09-03T11:50:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/commit/?id=066391b376649214266f48ab95a021cb98b9dfa2'/>
<id>066391b376649214266f48ab95a021cb98b9dfa2</id>
<content type='text'>
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é.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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é.

Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>parsers: nouveau parseur pour le format utilisé par l’UPS en 2018</title>
<updated>2018-09-06T19:03:49+00:00</updated>
<author>
<name>Alban Gruin</name>
</author>
<published>2018-09-03T11:55:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/commit/?id=b3c62075deb0cf082d99a647123bf1e92b8a9c7a'/>
<id>b3c62075deb0cf082d99a647123bf1e92b8a9c7a</id>
<content type='text'>
Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>parsers: parseur orienté objet avec une classe abstraite</title>
<updated>2018-09-03T17:20:54+00:00</updated>
<author>
<name>Alban Gruin</name>
</author>
<published>2018-08-27T15:43:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/commit/?id=d02046f9255a07c4eb2bda9eb73d229cdb4f4a53'/>
<id>d02046f9255a07c4eb2bda9eb73d229cdb4f4a53</id>
<content type='text'>
Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>parsers: déplacement de delete_courses_in_week() vers timetable.py</title>
<updated>2018-09-03T17:19:54+00:00</updated>
<author>
<name>Alban Gruin</name>
</author>
<published>2018-08-25T21:01:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.pa1ch.fr/alban/celcatsanitizer.git/commit/?id=77b6ade4a7d465ca0fbc6b82950f3b54689d60e3'/>
<id>77b6ade4a7d465ca0fbc6b82950f3b54689d60e3</id>
<content type='text'>
Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Alban Gruin &lt;alban@pa1ch.fr&gt;
</pre>
</div>
</content>
</entry>
</feed>
