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

validate: the relative-link check is case-insensitive on Windows and macOS, so a wrong-case link passes locally and fails in CI

Fermée
#139 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
57/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
javascript, node.js
Domaine
testing, tooling

Piste de recherche

Start with site/validate.mjs:185-189 and site/build.mjs:337-341, where the issue identifies the case-insensitive filesystem checks. Read how the relative-link resolver uses kindOf, then run npm run validate with a fixture link whose case differs from the on-disk path. Done means validation on Windows reports the wrong-case link with the same message as CI on Linux.

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

Description

dx priority: low

Why it matters

The maintainer develops on Windows. A link such as ../Docs/Licence-Guide.md resolves with fs.existsSync on NTFS/APFS, npm run validate says "no broken links", and the first signal is a red check on the pushed commit, or a 404 on GitHub Pages, which is case-sensitive.

Evidence (at 69387df)

site/validate.mjs:185-189 resolves the link and only calls fs.existsSync(resolved), with no case comparison. The same applies to kindOf in site/build.mjs:337-341, used by the link resolver.

Suggested approach

After existsSync, compare path.basename(fs.realpathSync.native(resolved)) with path.basename(resolved) (and the parent directory name) and report "broken link (case differs on disk: ...)" when they differ. Share the helper with build's kindOf.

Done when

A fixture link with the wrong case fails npm run validate on Windows with the same message CI gives on Linux.

Langage dominant
JavaScript
Étoiles
58
Forks
15
Merge moyen
16 h 53 min
PR mergées (30 j)
14

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 TMHSDigital/Free-Game-Dev-Assets

Toutes les issues de TMHSDigital/Free-Game-Dev-Assets

Issues similaires

Plus d'issues JavaScript

Recevez les nouvelles issues par e-mail

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