Ionic-framework: PostCSS pourrait générer une erreur de carte source incorrecte

Créé le 4 janv. 2018  ·  27Commentaires  ·  Source: ionic-team/ionic-framework

Version ionique : (cocher une avec "x")
(Pour les problèmes Ionic 1.x, veuillez utiliser https://github.com/ionic-team/ionic-v1)
[ ] 2.x
[x] 3.x
[ ] 4.x

Je soumets un ... (cochez un avec "x")
[x] rapport de bogue
[ ] demande de fonctionnalité

Veuillez ne pas soumettre de demandes d'assistance ou de questions « Comment faire » ici. Utilisez plutôt l'un de ces canaux : https://forum.ionicframework.com/ ou http://ionicworldwide.herokuapp.com/

Comportement actuel :
Si nous créons une nouvelle application à l'aide de votre démarreur vierge ou de tout autre modèle créant l'application Android, nous rencontrons cette erreur

[16:52:18]  sass started ... 
Witout `from` option PostCSS could generate wrong source map or do not find Browserslist config. Set it to CSS file path or to `undefined` to prevent this warning
[16:52:19]  sass finished in 1.13 s 

Comportement prévisible:
Le message de bogue ne doit pas être

Étapes à reproduire :
Créez une nouvelle application vierge en utilisant
ionic start postcss
construire l'application Android
ionic cordova build android

et vous pouvez voir le journal avec le message d'avertissement ou d'erreur

[16:57:54]  sass started ... 
Witout `from` option PostCSS could generate wrong source map or do not find Browserslist config. Set it to CSS file path or to `undefined` to prevent this warning
[16:57:55]  sass finished in 793 ms 

Informations ioniques : (exécutez ionic info partir d'une invite de terminal/cmd et collez la sortie ci-dessous) :

cli packages: (/usr/lib/node_modules)

    @ionic/cli-utils  : 1.19.0
    ionic (Ionic CLI) : 3.19.0

global packages:

    cordova (Cordova CLI) : 8.0.0 

local packages:

    @ionic/app-scripts : 3.1.6
    Cordova Platforms  : android 7.0.0
    Ionic Framework    : ionic-angular 3.9.2

System:

    Android SDK Tools : 26.1.1
    Node              : v8.9.4
    npm               : 5.6.0 
    OS                : Linux 4.13

Environment Variables:
    ANDROID_HOME : /abcdef/android/sdk

Misc:
    backend : legacy
v3

Commentaire le plus utile

Jusqu'à ce que cela soit corrigé, une possibilité consiste à rétablir certains correctifs avant l'introduction de l'erreur :

npm i -D -E [email protected]

CHANGELOG.md de PostCSS

6.0.16
Correction du texte d'avertissement (par Michael Keller).
6.0.15
Ajout d'un avertissement concernant l'option manquée lors de l'appel à process().then().
Ajoutez la prise en charge d'IE 10.

https://github.com/postcss/postcss/blame/master/lib/lazy-result.es6#L192

Dans le : package.json de ionic-app-scripts
ce "postcss": "^6.0.13" installe également le nouveau patch 6.0.15 , qui a le nouvel avertissement.

Tous les 27 commentaires

Comme le dit l'avertissement :

Sans l'option from , PostCSS pourrait générer une mauvaise carte source ou ne pas trouver la configuration de Browserslist. Définissez-le sur le chemin du fichier CSS ou sur undefined pour éviter cet avertissement

J'ai ajouté le champ from et je l'ai défini sur non défini et j'ai créé une pull request.

https://github.com/StefanRein/ionic-app-scripts/blob/29873ae96611ae209ca4b065fd9940d6b7b96bda/src/sass.ts#L285

Cela résout cet avertissement. Mais je ne sais pas si cela a d'autres conséquences et l'équipe Ionic doit y indiquer un chemin vers le fichier css généré ou quelque chose comme ça.

@danbucholtz Pourriez-vous revoir ceci s'il vous plaît ? Nos versions automatisées échouent à cause de cela.
(L'"avertissement" est interprété comme une erreur..)

Edit: PostCSS utilise finalement console.warn, mais cela va sur le nœud du tuyau stderr et notre TeamFS échoue.

stderr est utilisé pour la sortie d'avertissement ou d'erreur. La source

Jusqu'à ce que cela soit corrigé, une possibilité consiste à rétablir certains correctifs avant l'introduction de l'erreur :

npm i -D -E [email protected]

CHANGELOG.md de PostCSS

6.0.16
Correction du texte d'avertissement (par Michael Keller).
6.0.15
Ajout d'un avertissement concernant l'option manquée lors de l'appel à process().then().
Ajoutez la prise en charge d'IE 10.

https://github.com/postcss/postcss/blame/master/lib/lazy-result.es6#L192

Dans le : package.json de ionic-app-scripts
ce "postcss": "^6.0.13" installe également le nouveau patch 6.0.15 , qui a le nouvel avertissement.

est-ce que ça a été réglé ?

@thezakman Pas encore. La question est ouverte. L'avertissement existe toujours.

trouver le fichier sass.js. sous /node_modules/@ionic/app-scripts/dist/sass.js.
recherchez var postcssOptions et ajoutez à partir de : undefined,

Enfin devrait être comme ceci:
var optionspostcss = {
de : non défini,
à : path_1.basename(sassConfig.outFile),
carte : autoPrefixerMapOptions
} ;

https://github.com/ionic-team/ionic-app-scripts/pull/1364#issuecomment-358557878

Vous ne devez modifier aucun fichier dans le répertoire node_modules. Si vous mettez à jour des packages, réinstallez-les, installez-les dans un nouveau projet, toutes les modifications ont disparu.

Veuillez utiliser la suggestion ci-dessus pour le moment.

je résous le problème en utilisant ceci (merci aussi à @AlbenJohn)
https://stackoverflow.com/a/48315414

Un correctif à ce sujet ?

Bien qu'il ne casse pas mes builds, cet avertissement s'affiche également pour moi. Il s'agit d'une solution rapide d'une ligne, existe-t-il déjà une demande d'extraction pour cela ?

@ johnroper100 Oui et il a été approuvé (il est lié ci-dessus).

Edit : Les fichiers de carte fonctionnent correctement.

Cet avertissement apparaît toujours.

Cet avertissement apparaît toujours.

Cet avertissement apparaît toujours.

@JosepAlacid @Veyhunk @ajmalhassan essayez d'utiliser le correctif suggéré par @hanifmazlan . Cela fonctionne en fait pour moi. https://stackoverflow.com/a/48315414/3288671

C'est vrai, mais comme le suggère @StefanRein , c'est encore à des kilomètres de tout environnement de production. mieux vaut éviter node_modules. Toujours en attente d'un correctif approprié. Des nouvelles de l'équipe Ionic ?

Cet avertissement apparaît toujours.

Cet avertissement apparaît toujours.

Cet avertissement apparaît toujours.

Cet avertissement apparaît toujours.

Cet avertissement apparaît toujours.

S'il te plaît, arrête. Cela n'aide en rien.
Il s'agit d'un projet open source. Si les gens ont le temps, ils le répareront.
Il existe des solutions mentionnées ci-dessus pour corriger l'avertissement.

Bien que je ne veuille pas parler au nom de l'équipe IONIC, j'ai l'impression qu'il faut dire quelque chose ici :

Ce problème ne se rapproche pas de la résolution proportionnellement au nombre de commentaires qui disent "Cet avertissement apparaît toujours". / "Toute mise à jour à ce sujet" / "Tout correctif pour cela" / etc.

Si vous êtes bloqué, lisez le fil de discussion – il existe une solution de contournement qui, comme son nom l'indique, vous permettra de travailler. Si vous souhaitez obtenir des mises à jour à ce sujet, enregistrez quelques frappes en cliquant sur le bouton « S'abonner » – cela vous permet de recevoir des mises à jour dans votre e-mail. Vous recevrez également des mises à jour à chaque fois que quelqu'un commente « Une mise à jour à ce sujet ? », alors s'il vous plaît, ne soyez pas cette personne.

Cet avertissement apparaît toujours.

@jhonnhenry mec, sérieusement ? Nous savons - la question est toujours ouverte. Abonnez-vous et passez votre chemin...

Si vous insistez pour laisser un commentaire, aidez-nous à être plus productifs en nous donnant un aperçu des versions que vous utilisez.

J'ai trouvé cette solution de contournement

Trouvez d'abord le fichier sass.js sous /node_modules/@ionic/app-scripts/dist/sass.js. à l'intérieur de la recherche var postcssOptions et ajoutez à partir de : undefined,

Enfin devrait être comme ceci:

var optionspostcss = {
de : non défini,
à : path_1.basename(sassConfig.outFile),
carte : autoPrefixerMapOptions
} ;

https://stackoverflow.com/questions/48162738/without-from-option-postcss-could-generate-wrong-source-map-or-do-not-find-bro

J'ai toujours eu son avertissement. Sauter dans node_modules n'est pas sérieux ::/

Merci pour le problème ! Nous avons déplacé le code source et les problèmes d'Ionic 3 dans un référentiel séparé. Je déplace ce problème vers le référentiel pour Ionic 3. Veuillez suivre ce problème là-bas.

Merci d'avoir utilisé Ionic !

Cette page vous a été utile?
0 / 5 - 0 notes