Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Changer le processus de génération des documents #25

Open
matteodelabre opened this issue Aug 27, 2024 · 5 comments
Open

Changer le processus de génération des documents #25

matteodelabre opened this issue Aug 27, 2024 · 5 comments

Comments

@matteodelabre
Copy link
Member

De nos politiques, nous voulons une version PDF (pour pouvoir les remettre à l’université ou d’autres instances officielles) et une version HTML (pour faciliter leur consultation sur notre site web). En ce moment, les règlements sont écrits en TeX, et de cette source sont générées les deux versions.

Le moteur TeX est lourd à installer et lent à exécuter. Au total, à chaque fois que le site est mis à jour, le processus de compilation des politiques prend environ 10 à 15 minutes. Pourrait-on trouver une façon plus efficace pour remplacer ce processus?

Typst est une alternative prometteuse pour générer des PDF rapidement, mais ne possède pas encore de sortie HTML. À la place, on pourrait écrire les règlements en Markdown et utiliser Pandoc pour générer automatiquement le HTML d’une part, et le code Typst d’autre part. Ou un autre format que Markdown supporté par Pandoc qui soit un peu plus expressif, au besoin.

@Overengined
Copy link
Contributor

Overengined commented Sep 24, 2024

Est-ce que l'Action dans son état actuel utilise les fonctionnalités de mise en cache utilisable dans ce contexte ? En mettant le moteur Tex en cache (si c'est possible), on pourrait gagner du temps.

@leo-ard
Copy link
Contributor

leo-ard commented Sep 24, 2024

Je viens de faire le test sur mon ordinateur et la compilation des fichiers pdf/html a pris environ 9 secondes (3 pour les pdfs et 6 pour les fichiers html) :

> make pdf 
...
make pdf  3.53s user 0.47s system 75% cpu 5.318 total
> make html
...
make html  6.89s user 0.73s system 82% cpu 9.284 total

C'est vrai qu'en regardant le CI, on voit que l'installation de TeX prend ~10 minutes, mais ça pourrait être réglé avec du caching comme @Overengined a mentionné. Si on veut améliorer le temps de compilation des fichiers vers pdf/Markdown, aller vers pandoc/typst va probablement pas nous sauver du temps (il faut prendre en compte l'installation de ces outils aussi; je ne sais pas si typst ou pandoc s'installe rapidement sur un ordinateur). Personnellement, je trouve que 10 minutes c'est raisonnable pour un CI qui est exécuté seulement quelques fois par années seulement (à moins que je me trompe ?).

Ceci étant dit, je peux voir l'attrait d'avoir la charte écrite en Markdown pour rendre les modifications plus accessibles. GitHub a même un éditeur de Markdown inclus dans l'interface web, ça pourrait permettre à n'importe qui de proposé des changements sans nécessairement connaitre TeX ou Typst. En plus, les fichiers TeX sont surtout des définitions de titre/sous-titre et quelques listes, donc ça serait pas très difficile de les convertir en Markdown.

@Overengined
Copy link
Contributor

Je viens de faire le test sur mon ordinateur et la compilation des fichiers pdf/html a pris environ 9 secondes (3 pour les pdfs et 6 pour les fichiers html) :

> make pdf 
...
make pdf  3.53s user 0.47s system 75% cpu 5.318 total
> make html
...
make html  6.89s user 0.73s system 82% cpu 9.284 total

C'est vrai qu'en regardant le CI, on voit que l'installation de TeX prend ~10 minutes, mais ça pourrait être réglé avec du caching comme @Overengined a mentionné. Si on veut améliorer le temps de compilation des fichiers vers pdf/Markdown, aller vers pandoc/typst va probablement pas nous sauver du temps (il faut prendre en compte l'installation de ces outils aussi; je ne sais pas si typst ou pandoc s'installe rapidement sur un ordinateur). Personnellement, je trouve que 10 minutes c'est raisonnable pour un CI qui est exécuté seulement quelques fois par années seulement (à moins que je me trompe ?).

Ceci étant dit, je peux voir l'attrait d'avoir la charte écrite en Markdown pour rendre les modifications plus accessibles. GitHub a même un éditeur de Markdown inclus dans l'interface web, ça pourrait permettre à n'importe qui de proposé des changements sans nécessairement connaitre TeX ou Typst. En plus, les fichiers TeX sont surtout des définitions de titre/sous-titre et quelques listes, donc ça serait pas très difficile de les convertir en Markdown.

Il ne faut pas oublier que markdown nous retirerai pas mal de fonctionnalités sympa, style mettre des images, les références et les numérotations formelles.

@matteodelabre
Copy link
Member Author

Merci à vous deux pour les tests! Oui, je n’ai jamais réussi à faire fonctionner la cache des GitHub Actions comme du monde, alors si vous y parvenez ce serait good aussi!

@Overengined
Copy link
Contributor

Overengined commented Sep 24, 2024

Pas de souci, on comprends que les Actions c'est rarement une partie de plaisir.
J'ai cherché, et je crois qu'on pourrait s'inspirer de/réutiliser ceci.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants