exercism / exercism/cpp

Update shared files and make sure they stay in sync

Ouverte
#1,029 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
C++
Étoiles
290
Forks
244
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Over at arm64-assembly we have a [templates](https://github.com/exercism/arm64-assembly/blob/main/templates) directory that holds files shared by all exercises plus a [script](https://github.com/exercism/arm64-assembly/blob/main/bin/update-from-templates) that synchronizes all exercises with the contents of that directory. This way we have a single source of truth in `templates`, the sync to all exercises happens automatically. By having the script return a non-zero exit code if it made any changes, we can also use that in a pre-commit check in CI.

We should setup something similar here as well and also use that chance to upgrade Catch2 and CMake scripts.

Note: Not having to copy files in the first place, but instead referencing a single source of truth wherever it is needed, would obviously be the much cleaner solution here, but due to the way the Exercism downloader works, for now exercises need to be self-contained.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Commencez par inspecter les fichiers d’exercices partagés et les scripts CMake du dépôt, puis comparez le répertoire templates référencé et le script bin/update-from-templates dans arm64-assembly. Le travail est terminé lorsqu’une source unique de vérité peut synchroniser tous les exercices, que le script de synchronisation renvoie une valeur différente de zéro après des modifications pour une vérification pre-commit, et que Catch2 et les scripts CMake sont mis à niveau.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
cmake, cpp
Domaine
build-system, testing
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
48/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.