Annonce

#1 2011-01-31 09:38:13

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

[2.2.0RC1] JS packed vs. minified

Dans la 2.2, jquery passe en version minified, car la fourniture du source packed est abandonnée au profit du minified.

Sauf que dans piwigo, seul jquery a été passé en minified, les appels a jquery.ui et tous les composants rattachés sont restés en packed.

Or, je constate que les version packed de jquery.ui ne sont pas compatibles avec les versions minified de jquery.ui.

Dans le code combiné, si j'ai :

/*BEGIN themes/default/js/jquery.min.js */
/*BEGIN themes/default/js/ui/packed/ui.core.packed.js */
/*BEGIN themes/default/js/ui/packed/ui.accordion.packed.js */
/*BEGIN themes/default/js/ui/packed/ui.sortable.packed.js */

çà passe.

Par contre, si j'ai :

/*BEGIN themes/default/js/jquery.min.js */
/*BEGIN themes/default/js/ui/packed/ui.core.packed.js */
/*BEGIN themes/default/js/ui/packed/ui.accordion.packed.js */
/*BEGIN themes/default/js/ui/minified/ui.sortable.min.js */

j'ai l'erreur : eval(function (p, a, c, k, e, d) {e = function (c) { [.......] ) is not a function (code compilé correspondant à ui.accordion.packed.js)

En fait, dès que l'on charge du code non packed à la suite d'un code packed, çà plante (sous FF du moins).
A mon avis, çà risque de poser pas mal de problème par la suite.


Je vois deux solutions :
- ne pas charger de code packed, juste du minified ; çà resterait cohérent avec l'idée de passer du jquery packed vers minified mais çà ne garanti rien pour l'usage d'autres framework
- rajouter un point-virgule à la fin de chaque code combiné ; dans le second cas, l'ajout du point virgule après les instruction eval() suffit à résoudre le problème


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

#2 2011-02-14 23:25:45

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

Re: [2.2.0RC1] JS packed vs. minified

Bon, personne ne semble concerné par le problème...

Actuellement, ma galerie 2.2 est bidouillée afin que le chargement d'un script JS non packé à la suite d'un JS packé fonctionne.

Soit :
- je ne fais rien : les utilisateurs devront désactiver la combinaison du JS pour que certains plugins puissent fonctionner
- j'ouvre un bug, je corrige selon ma façon de voir les choses et je commit

Pour la seconde solution, j'aurais néanmoins aimé avoir un avis des experts ayant implémenté la combinaison des JS, histoire d'être certain de la meilleure solution devant être réalisée.


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

#3 2011-02-14 23:46:18

Gotcha
Ex Equipe Piwigo
Pierrelatte (26)
2007-03-14
13331

Re: [2.2.0RC1] JS packed vs. minified

Heu, Grum... Tu peux "notifier" qui tu veux des message du forum :-)

Ca t'aiderai pour recueillir leurs avis ;-)


Ayez comme premier réflexe de consulter le wiki.
Ensuite, veuillez effectuer une recherche sur le forum avant de poser votre question.

LE FAIRE EST LE REVELATEUR DE L'ETRE

Hors ligne

#4 2011-02-14 23:47:21

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

Re: [2.2.0RC1] JS packed vs. minified

Gotcha a écrit:

Heu, Grum... Tu peux "notifier" qui tu veux des message du forum :-)

Ca t'aiderai pour recueillir leurs avis ;-)

vi, j'ai effectivement pas le réflexe... ^^;


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

#5 2011-02-14 23:57:50

LucMorizur
Membre
Vienne (Isère, 38)
2009-03-01
1969

Hors ligne

#6 2011-02-15 08:38:20

P@t
Ex Equipe Piwigo
Nice
2007-06-13
5695

Re: [2.2.0RC1] JS packed vs. minified

jQuery et jQuery UI ont été mis à jour.
[Subversion] r9172

Il n'y a plus aucun fichier packed.


P@t

Hors ligne

#7 2011-03-07 22:35:32

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

Re: [2.2.0RC1] JS packed vs. minified

Je reviens sur le sujet.
Certes, çà fonctionne si on n'utilise pas de packed.

Néanmoins, pour ma part j'utilise certaines librairies qui ne sont disponibles que sous forme de js packé.

A prévoir :
- soit des incompatibilités lors de l'utilisation des librairies
- soit devoir désactiver le mode combiné
- soit changer de librairie (mais dans ce cas, ayant déjà eu du mal à trouver celle que j'utilise actuellement, je n'ai aucune idée si je serais à même de migrer les plugins...)

Bref, pour moi, le problème n'est pas vraiment résolu.


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

#8 2011-03-07 22:47:23

LucMorizur
Membre
Vienne (Isère, 38)
2009-03-01
1969

Re: [2.2.0RC1] JS packed vs. minified

grum a écrit:

Bref, pour moi, le problème n'est pas vraiment résolu.

"Eh ! oui" (Othello, ac. 2, sc. 3)

Hors ligne

#9 2011-03-08 17:02:37

P@t
Ex Equipe Piwigo
Nice
2007-06-13
5695

Re: [2.2.0RC1] JS packed vs. minified

grum a écrit:

Je reviens sur le sujet.
Certes, çà fonctionne si on n'utilise pas de packed.

Néanmoins, pour ma part j'utilise certaines librairies qui ne sont disponibles que sous forme de js packé.

Est-ce que tes librairies sont bien nommées xxx.packed.js?


P@t

Hors ligne

#10 2011-03-08 21:21:16

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

Re: [2.2.0RC1] JS packed vs. minified

P@t a écrit:

Est-ce que tes librairies sont bien nommées xxx.packed.js?

non.

c'est xxx.pack.js

si je met packed çà va fonctionner ?


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

#11 2011-03-09 16:17:43

P@t
Ex Equipe Piwigo
Nice
2007-06-13
5695

Re: [2.2.0RC1] JS packed vs. minified

grum a écrit:

P@t a écrit:

Est-ce que tes librairies sont bien nommées xxx.packed.js?

non.

c'est xxx.pack.js

si je met packed çà va fonctionner ?

Je ne sais pas si ca va fonctionner, mais en tout cas, combine_script minimise tous les fichiers javascripts, excepté ceux dont le nom comporte .min ou .packed
Peut-etre qu'il essait de minimiser ton fichier packed, et ca doit donner un résultat improbable.

Autre piste: est-ce que ton fichier js appelle d'autres fichiers js? Si c'est le cas, c'est mort pour utiliser le combine_script.


P@t

Hors ligne

#12 2011-03-10 19:45:05

grum
Former Piwigo Team
50% Nantes - 50% Paris
2007-09-10
2502

Re: [2.2.0RC1] JS packed vs. minified

pas réessayé avec la dernière RC, mais le fichier se charge parfaitement.

C'est juste qu'après une instruction eval(), tout code js merdoie.

J'ai trouvé la solution pour éviter d'intervenir sur piwigo : je modifie le fichier packé, je rajoute le point-virgule à la mano à la main à la fin du fichier, et hop c'est bon !


Faut juste avoir en tête que si quelqu'un réalise un plugin avec des librairies packée (quelque soit le nom du fichier, .min.js ou .truc.js), si le fichier ne finit pas par un point-virgule y a un fort potentiel pour que çà bloque tout.


Mes photos avec Piwigo évidemment !
[ www.grum.fr ] [ photos.grum.fr ]

Hors ligne

#13 2011-03-10 20:51:01

P@t
Ex Equipe Piwigo
Nice
2007-06-13
5695

Re: [2.2.0RC1] JS packed vs. minified

Bon, si on rajoute automatiquement un ; à la fin de chaque script combiné, il ne devrait plus y avoir de soucis...


P@t

Hors ligne

#14 2011-03-11 10:09:51

P@t
Ex Equipe Piwigo
Nice
2007-06-13
5695

Re: [2.2.0RC1] JS packed vs. minified

grum a écrit:

Faut juste avoir en tête que si quelqu'un réalise un plugin avec des librairies packée (quelque soit le nom du fichier, .min.js ou .truc.js), si le fichier ne finit pas par un point-virgule y a un fort potentiel pour que çà bloque tout.

C'est corrigé: [Subversion] r9606
Un point virgule est systématiquement ajouté à la fin de chaque script combiné s'il n'y est pas.


P@t

Hors ligne

#15 2011-03-11 10:32:02

cljosse
Former Piwigo Team
2006-11-12
1167

Re: [2.2.0RC1] JS packed vs. minified

Bonjour.

Il me semble que c'est en tête  de chaque script combiné  et non en fin, à la suite d'un script packed.
C'est du moins ce qui m'avait semblé quand j'avais été confronté à ce problème.

A+

Hors ligne

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact