Skip to content

bug: icônes FontAwesome / build Turbopack impossible (module not found) #5

Description

@bebagodfried

Bug : icônes FontAwesome / build Turbopack impossible

Symptômes

En consommant le paquet archcss (3.0.0 / 3.0.0-beta.1) dans un projet Next.js 16.3.4 (Turbopack) :

  • Module not found: Can't resolve '../webfonts/fontawesome/css/fontawessome.min.css' (importé depuis globals.css du projet).
  • Échec de compilation : Parsing CSS source code failed sur arch.css (ligne 307578, massivement).

Causes racines (identifiées dans le build publié)

  1. Sélecteur CSS invalide ::first-letter::selection émis dans le CSS compilé → rejeté par le parseur PostCSS/Turbopack.
  2. @import url(...) relatifs dans le CSS distribué (@import url("./webfonts/...")). Les bundlers re-résolvent ces chemins par rapport au fichier importeur (le globals.css de l'utilisateur), pas par rapport au fichier du paquet → module not found.
  3. Paquet incomplet : le CSS FontAwesome/Google Fonts n'était pas copié dans le webfonts/ de la distribution.

Correction livrée en 3.0.0-beta.2

  • Suppression du sélecteur invalide (::selection conservé).
  • Le build inline désormais les CSS FontAwesome/Lucide/Google Fonts directement dans dist/index.css et réécrit les url() des polices relativement au fichier CSS ; les @import https://... absolus (Google Fonts) sont remontés en tête de fichier.
  • Arborescence webfonts/ complète copiée dans dist/.
  • Point d'entrée : dist/index.css.

Vérification

  • pnpm pack → tarball contenant dist/ + webfonts/ complets.
  • Installé dans un projet Next.js 16.3.4 (Turbopack) frais : next build réussit, les polices fa-*.woff2/ttf sont émises dans .next/static/media/, rendu HTTP 200 en dev.
  • Aucun @import url() relatif restant dans le CSS distribué.

Environnement

  • archcss@3.0.0-beta.2 • Next.js 16.3.4 (Turbopack) • pnpm

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions