Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Re-implement and enhance `check-formatting.yml` Github Actions workflow as a Node script

Ouverte
#226 0 commentaires 0 réactions 1 personne assignée Voir sur GitHub

@miorel y travaille déjà.

Depuis le 17/8/2024.

Évaluation

Cette issue n'a pas encore été évaluée.

Description

enhancement

The workflow introduced in #225 is currently powered by a shell command, namely yarn format && git status --porcelain piped through some not very easy to maintain inline Perl.

Let's rewrite this as a Node script that's more maintainable. This is also an opportunity to address the other TODO in the workflow file, and have it output a summary as described at https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary

The general behavior of the workflow should be:

  1. Run yarn format to rewrite any files that are not correctly formatted. This part can still happen outside Node, so for example the command we run becomes something like yarn format && node some-script.js.
  2. The script basically replaces the git status --porcelain part and the subsequent Perl expression it's piped into. The script should therefore still run git status --porcelain from within Node and capture the output.
  3. For each line in the output of git status --porcelain, the script should remove the first 3 characters (see explanation of the format at https://git-scm.com/docs/git-status#_porcelain_format_version_1 to understand why) to get only the filename. It should then output an error message (using the format described at https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#setting-an-error-message) to indicate that the file in question doesn't respect the repository's formatting rules.
  4. For bonus points (this part can be done as a separate PR) output a markdown summary at the end.
  5. If there were any files that were improperly formatted, the script should exit with a non-zero exit code so that the check fails and draws the attention of the author and reviewers.
Langage dominant
TypeScript
Étoiles
20
Forks
12
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de code-chronicles-code/leetcode-curriculum

Toutes les issues de code-chronicles-code/leetcode-curriculum

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

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