CSSPreprocessor + Foundation : Pb après mise à jour -
cyrcle - 06/08/2017
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 2.2.2
#~ Url du site :
#~ Hébergeur / Soft : OVH Mutualisé avec PHP 7.0
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 2.2.2
#~ Installed Modules:
#~ AdminSearch: 1.0.4
#~ CGCalendar: 2.4.8
#~ CGExtensions: 1.56.1
#~ CGJobMgr: 1.3.6
#~ CGSimpleSmarty: 2.1.6
#~ CGSmartImage: 1.21.12
#~ CMSContentManager: 1.1.5
#~ CMSMailer: 6.2.14
#~ CSSPreprocessor: 3.0-beta1
#~ CmsJobManager: 0.1
#~ DesignManager: 1.1.3
#~ FileManager: 1.6.3
#~ FilePicker: 1.0
#~ FrontEndUsers: 2.5.1
#~ MenuManager: 1.50.3
#~ MicroTiny: 2.2
#~ ModuleManager: 2.1.1
#~ NMS: 2.12.2
#~ Navigator: 1.0.7
#~ News: 2.51.2
#~ Search: 1.51.2
#~ TinyMCE: 3.2-beta3
#~ Config Information:
#~ php_memory_limit:
#~ max_upload_size: 128000000
#~ url_rewriting: mod_rewrite
#~ page_extension:
#~ query_var: page
#~ auto_alias_content: true
#~ locale: fr_FR.utf-8
#~ set_names: true
#~ timezone: Europe/Paris
#~ permissive_smarty: false
#~ Php Information:
#~ phpversion: 7.0.21
#~ md5_function: On (Vrai)
#~ json_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_ALL: 32759
#~ E_STRICT: 2048
#~ E_DEPRECATED: 8192
#~ test_file_timedifference: Aucune différence de date du système trouvée
#~ test_db_timedifference: Aucune différence de date du système trouvée
#~ create_dir_and_file: 1
#~ memory_limit: 512M
#~ max_execution_time: 300
#~ register_globals: Off (Faux)
#~ output_buffering: 4096
#~ disable_functions: _dyuweyrj4, _dyuweyrj4r, dl
#~ open_basedir:
#~ test_remote_url: Valable
#~ file_uploads: On (Vrai)
#~ post_max_size: 64M
#~ upload_max_filesize: 128M
#~ session_save_path: /tmp (0700)
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ xmlreader_class: On (Vrai)
#~ check_ini_set: On (Vrai)
#~ curl: On
#~ Performance Information:
#~ allow_browser_cache: Off (Faux)
#~ browser_cache_expiry: 60
#~ php_opcache: On (Vrai)
#~ smarty_cache: Off (Faux)
#~ smarty_compilecheck: Off (Faux)
#~ auto_clear_cache_age: On (Vrai)
#~ Server Information:
#~ Server Software: Apache
#~ Server Api: fpm-fcgi
#~ Server Os: Linux 4.4.67-ovh-vps-grsec-zfs-classid On x86_64
#~ Server Db Type: MySQL (mysqli)
#~ Server Db Version: 5.6.34
#~ Server Db Grants: Trouvé un privilège "GRANT ALL" qui semble être adapté
#~ Permission Information:
#~ tmp: /home/test/www/tmp (0705)
#~ tmp_cache: /home/test/www/tmp/cache (0705)
#~ templates_c: /home/test/www/tmp/templates_c (0705)
#~ modules: /home/test/www/modules (0705)
#~ uploads: /home/test/www/uploads (0705)
#~ Masque de création de fichier (umask) : /home/test/www/tmp/cache (0705)
#~ config_file: 0444
#~ ----------------------------------------------
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~
CSSPreprocessor ne fonctionne plus après une mise à jour de CMSMS 2.1.6 vers 2.2.2
CSSPreprocessor fonctionnait correctement en version 2 avec CMSMS 2.1.6
Après la mise à jour vers CMSMS 2.2.2, j'ai mis à jour CSSPreprocessor en 3.0-beta1 et maintenant le CSS n'est plus généré.
J'utilise ScssPHP pour charger les fichier SCSS de Foundation 6.3.1.
J'ai passé plusieurs heures à chercher pourquoi, mais je n'ai pas trouvé.
Aucune remonté d'erreur ni dans le journal d'administration, ni dans le fichier error.log d'Apache et c'est bien dommage parce-que du coup je n'ai aucun indice pour solutionner ce problème.
Aucune erreur dans le navigateur non plus.
Tous les fichiers SCSS sont sur le serveur web.
J'appelle bien @import 'foundation';
Est-ce que quelqu'un a réussi à faire fonctionner CSSPreprocessor 3.0-beta1 avec CMSMS 2.2.2 ?
Sur un hébergement mutualisé OVH ?
Avec Foundation 6.3.1 ou 6.4.1 ?
CSSPreprocessor + Foundation : Pb après mise à jour -
airelibre - 07/08/2017
Bonjour,
tu as bien désinstallé / réinstallé le module comme indiqué dans les release notes ? La prochaine version corrigera cela
a+
CSSPreprocessor + Foundation : Pb après mise à jour -
cyrcle - 07/08/2017
Bonjour Mathieu,
Oui, j'ai désinstallé CSSPreprocessor 2 depuis la page "Gestionnaire de modules".
Je viens d'essayer d'installer CSSPreprocessor 3.0-beta1 sur une "fresh install" de CMSMS 2.2.2 avec PHP 7.1. Je n'arrive pas à le faire fonctionner non plus…
1. J'ai téléchargé la dernière version de Foundation 6.4.1 à l'adresse
https://github.com/zurb/foundation-sites/releases/
2. Sur mon installation CMSMS 2.2.2, j'ai placé dans assets/foundation les dossiers suivants :
_vendor
assets
dist
scss
3. Dans les préférences CSSPreprocessor, j'ai coché ScssPHP et j'ai indiqué le répertoire des fichiers SCSS : assets/foundation/scss
4. J'ai créé un gabarit "Foundation" de type "Core:
age", dans lequel avant la balise </body> j'appelle les scripts suivants :
<script src="assets/js/jquery-3.2.1.min.js"></script>
<script src="assets/js/what-input.min.js"></script>
<script src="assets/foundation/dist/js/foundation.min.js"></script>
<script>
$(document).foundation();
</script>
5. J'ai créé une feuille de style "Foundation" qui ne contient que :
@import 'foundation';
6. Enfin, j'ai créé une page de contenu qui utilise le gabarit "Foundation" lui-même lié à ma feuille de style "Foundation" via un Design "Foundation".
7. Quand j'appelle ma page de contenu en frontend, je constate que le CSS de Foundation n'est pas ajouté à la feuille de style. Elle contient toujours @import 'foundation';
8. J'ai beau vider le cache dans "Maintenance du système" ou même désinstaller/réinstaller CSSPreprocessor, Foundation ne s'active pas.
9. Pas d'erreur ni dans Apache, ni dans le navigateur.
Je sais que cette absence de compilation pourrait venir d'une erreur dans ma feuille de style, mais là elle ne contient que @import 'foundation'; donc ce n'est pas le problème.
Ça pourrait aussi venir d'un fichier SCSS manquant, mais je ne pense pas en avoir oublié.
Voilà, je n'ai plus trop d'idées.
CSSPreprocessor + Foundation : Pb après mise à jour -
airelibre - 07/08/2017
Est-ce que du Sass "simple" compile ? Déclaration d'une variable puis attribution dans une règle par exemple (sans Foundation)
CSSPreprocessor + Foundation : Pb après mise à jour -
cyrcle - 07/08/2017
Oui.
J'ai remplacé @import 'foundation'; par :
$primary-color: #333;
body {
color: $primary-color;
}
La sortie est compilée :
/* cmsms stylesheet: Foundation modified: 08/07/17 10:49:33 */
body {
color: #333; }
CSSPreprocessor + Foundation : Pb après mise à jour -
cyrcle - 07/08/2017
Ok, du coup j'ai désactivé puis réactivé tous les composants un à un dans foundation.scss
Pour que la compilation fonctionne avec @import 'foundation';
Il faut désactiver :
@import 'components/breadcrumbs';
Pour que la compilation fonctionne avec @import 'foundation'; et @include foundation-everything;
Il faut désactiver :
@import 'components/breadcrumbs';
@include foundation-breadcrumbs;
@include foundation-off-canvas;
Il y a bien du code Foundation qui fait planter le compilateur ScssPHP by Leaf.
CSSPreprocessor + Foundation : Pb après mise à jour -
cyrcle - 07/08/2017
Pour _breadcrumbs.scss, c'est la ligne 52 :
$breadcrumbs-item-separator-item-rtl: '\\' !default;
qui fait planter le compilateur.
La remplacer par exemple par :
$breadcrumbs-item-separator-item-rtl: '-' !default;
résout le problème.
C'est effectivement une portion de code qui a été changée depuis la version 6.3.1.
CSSPreprocessor + Foundation : Pb après mise à jour -
cyrcle - 07/08/2017
À qui dois-je faire un rapport de bug, Leaf ? Ici :
https://github.com/leafo/scssphp/issues ?
Pour Off-Canvas, je ne trouve pas, si je remplace le ficher _off-canvas.scss de la version 6.4.1 par celui de la version 6.3.1, le compilateur fonctionne, mais ce n'est pas une solution qui me convient.
CSSPreprocessor + Foundation : Pb après mise à jour -
airelibre - 07/08/2017
Merci - il faut remonter au compilateur pour PHP car sur la version en ligne de commandes cela fonctionne bien avec Foundation
CSSPreprocessor + Foundation : Pb après mise à jour -
cyrcle - 07/08/2017
Ok. Pour _off-canvas.scss, c'est la ligne 341 :
@at-root .#{$content}.has-reveal-#{$position} {
margin-#{$position}: $offcanvas-size;
}
qui fait planter le compilateur.
C'est une portion de code qui a été ajouté depuis la version 6.3.1.
En 6.3.1 il n'y avait que le code qu'on retrouve ligne 346 en 6.4.1 :
// backwards compatibility (prior to v6.4)
& ~ .#{$content} {
margin-#{$position}: $offcanvas-size;
}
Dans la version 6.4.1, l'instruction @at-root ne semble pas convenir au compilateur. Je ne sais pas s'il existe une instruction équivalente qui conviendrait mieux au compilateur ?
Je vais remonter les 2 bugs à Leaf.
CSSPreprocessor + Foundation : Pb après mise à jour -
airelibre - 07/08/2017
Je vois qu'il y a une nouvelle version de SCSSPHP, je vais tester et mettre à jour CSSPreProcessor sous peu
CSSPreprocessor + Foundation : Pb après mise à jour -
airelibre - 08/08/2017
La dernière version ne corrige pas le problème - voici le fil à suivre :
https://github.com/leafo/scssphp/issues/446
Pour ma part j'arrive à compiler Foundation avec les dernières astuces de ce fil, mais tout ne passe pas - par exemple grid-padding-x fonctionne bien, mais pas grid-margin-x selon les points de rupture.
A suivre ... la version Sass en lignes de commandes fonctionne parfaitement
CSSPreprocessor + Foundation : Pb après mise à jour -
cyrcle - 08/08/2017
Merci Mathieu pour ce suivi.
J'avais lu le fil GitHub. Dommage que ScssPHP ne soit pas complètement fiable.
Quand on a goûté Foundation en SCSS c'est dur de revenir à la version CSS.
Je veux trop jouer avec
XY Grid de Foundation 6.4 !!!
Mais sur un hébergement OVH mutualisé qui n'offre pas Sass en lignes de commandes ça va être compliqué.
CSSPreprocessor + Foundation : Pb après mise à jour -
airelibre - 08/08/2017
Oui je te comprends ... la grile XY est vraiment sympa
Sinon il faut copier / coller une version compilée de la grille dans une feuille de styles, et jouer avec le reste mais on perd une partie de l'intérêt de la compilation à la volée
Wait and see