developer.jelix.org is not used any more and exists only for history. Post new tickets on the Github account.
developer.jelix.org n'est plus utilisée, et existe uniquement pour son historique. Postez les nouveaux tickets sur le compte github.

Opened 12 years ago

Closed 11 years ago

#663 closed bug (invalid)

Vérification de l'existance de defaultconfig.ini.php

Reported by: analogue Owned by: laurentj
Priority: normal Milestone: Jelix 1.0.6
Component: jelix:core Version: 1.0.5
Severity: normal Keywords:
Cc: Blocked By:
Blocking: Documentation needed: no
Hosting Provider: Php version: 5.2.0-8+etch11

Description

Lors d'une première génération de page, donc avec un temp/ vide, on obtient le warning suivant:

Warning: parse_ini_file(/home/laurent/public_html/overblog/config/defaultconfig.ini.php) [function.parse-ini-file]: failed to open stream: No such file or directory in /usr/local/share/jelix/lib/jelix/core/jConfigCompiler.class.php on line 34

Il peut être évité en vérifiant l'existence du fichier JELIX_APP_CONFIG_PATH.'defaultconfig.ini.php' avant d'en parser le contenu.

Ci-joint un patch à appliquer sur la 1.0.5 qui fait cette vérification.

Attachments (1)

diff.patch (786 bytes) - added by analogue 12 years ago.

Download all attachments as: .zip

Change History (10)

Changed 12 years ago by analogue

comment:1 Changed 11 years ago by Julien

  • review set to review?

Je viens de faire des tests avec la version dev et optimized de 1.0.5, je n'arrive pas à reproduire le bug.

cd jelix-1.0.5-dev/
php lib/jelix-scripts/jelix.php --test createapp
cd test/www/
ln -s ../../lib/jelix-www/ jelix
cd ../../

et l'appli fonctionne sans prob

cd jelix-1.0.5-opt/
cp -pr ../jelix-1.0.5-dev/test .
mkdir temp/test

et l'appli fonctionne sans prob

je n'arrive pas à reproduire ce bug.

comment:2 Changed 11 years ago by laurentj

  • review changed from review? to review-

On pourrait faire effectivement cette vérification, si avec certaine configs ça crie.

Mais de toute façon, le patch est invalide

  • pas fait sur les sources svn (manque les éventuelles modifs pour le cas de la version opt, et peut être aussi sources C de l'extension à patcher (je ne sais plus si il fait cette vérification ou non)
  • coding style non respecté (accolades)

comment:3 Changed 11 years ago by Julien

yup, de plus je crois que l'erreur est mal identifiée :

le fichier qui est introuvable est

/home/laurent/public_html/overblog/config/defaultconfig.ini.php

or il n'a rien à voir avec le temp vide à mon avis, mais plutôt la variable JELIX_APP_CONFIG_PATH qui est mal renseignée dans application.init.php, car en tout état de cause, le fichier à parser devrait être

/home/laurent/public_html/overblog/VAR/config/defaultconfig.ini.php

NB : je mets "var" en majuscules pour bien voir la diff, il doit bien entendu être en minuscules...

donc la question est : est-ce que application.init.php a été mal généré par jelix-scripts, et dans ce cas il faut trouver et fixer le bug, ou bien il a été (mal) modifié à la main ?

bref, à mon sens, le bug reste invalide.

comment:4 Changed 11 years ago by Julien

euh, comme c'est overblog, qui utilise jelix depuis les alpha, il n'y aurait pas moyen qu'avant la config était dans /config/ au lieu de var/config/, tout simplement ?

comment:5 Changed 11 years ago by analogue

J'ai compris le problème: Avant on avait la conf dans le fichier config.classic.ini.php puis on a upgradé jelix qui utilisait defaultconfig.ini.php. Hors on utilisait toujours config.classic.ini.php et jConfgiCompiler fait un parse_ini_file de config/defaultconfig.ini.php Comme on ne l'avait pas (encore), on avait le warning donc y a 2 solutions:

  • soit jelix ne supporte plus le config.classic.ini.php et il est normal d'avoir un warning
  • soit jelix assure la retrocompatibilité avec config.classic.ini.php, et doit gerer la retrocompatibilité en ajouter le test sur l'existance de defaultconfig.ini.php

Je vote pour la 1ere, on a migré la conf jelix au nouveau format recemment ;)

comment:6 Changed 11 years ago by Julien

j'avoue ne pas savoir quand ce comportement a changé, mais je pense que ça fait un moment.

Donc le bug est bien invalide, non ?

comment:7 Changed 11 years ago by analogue

Oui, à part si le config.classic.ini.php est toujours supporté, auquel cas il faut appliquer le patch (que je peux réécrire)

comment:8 Changed 11 years ago by Julien

d'après le changelog, defaultconfig.ini.php est utilisé depuis Jelix 1.0 alpha 4

je n'ai pas trouvé de mention de config.classic.ini.php dans l'ensemble des fichiers du code source du trunk ou des branches.

En fouillant dans les releases passées, j'ai trouvé des occurences dans :

./release_1.0alpha4/testapp/www/index.php
./release_1.0alpha4/myapp/www/index.php
./release_1.0alpha4/build/manifests/testapp.mn
./release_1.0alpha4/build/manifests/jelix-dev.mn
./release_1.0alpha4/build/manifests/myapp.mn
./release_1.0alpha4/build/manifests/jelix-modules.mn
./release_1.0alpha4/lib/jelix-modules/xulapp/install/www/index.php
./release_1.0alpha4/lib/jelix-scripts/scripts.conf.php
./release_1.0alpha4/lib/jelix-scripts/commands/createapp.cmd.php
./release_1.0alpha4/lib/jelix-scripts/templates/www/index.php.tpl
./release_1.0beta2.1/build/manifests/jelix-modules.mn
./release_1.0beta2.1/lib/jelix-modules/jxxulapp/install/www/index.php
./release_1.0alpha1/testapp/www/index.php
./release_1.0alpha1/myapp/www/index.php
./release_1.0alpha1/build/manifests/testapp.mn
./release_1.0alpha1/build/manifests/jelix-dev.mn
./release_1.0alpha1/build/manifests/myapp.mn
./release_1.0alpha1/lib/jelix-scripts/scripts.conf.php
./release_1.0alpha1/lib/jelix-scripts/commands/createapp.cmd.php
./release_1.0alpha1/lib/jelix-scripts/templates/www/index.php.tpl
./release_1.0beta2/build/manifests/jelix-modules.mn
./release_1.0beta2/lib/jelix-modules/jxxulapp/install/www/index.php
./release_1.0alpha2/testapp/www/index.php
./release_1.0alpha2/myapp/www/index.php
./release_1.0alpha2/build/manifests/testapp.mn
./release_1.0alpha2/build/manifests/jelix-dev.mn
./release_1.0alpha2/build/manifests/myapp.mn
./release_1.0alpha2/lib/jelix-scripts/scripts.conf.php
./release_1.0alpha2/lib/jelix-scripts/commands/createapp.cmd.php
./release_1.0alpha2/lib/jelix-scripts/templates/www/index.php.tpl
./release_1.0pre-alpha/testapp/www/index.php
./release_1.0pre-alpha/myapp/www/index.php
./release_1.0pre-alpha/lib/jelix-scripts/scripts.conf.php
./release_1.0pre-alpha/lib/jelix-scripts/commands/createapp.cmd.php
./release_1.0pre-alpha/lib/jelix-scripts/templates/www/index.php.tpl
./release_1.0beta1/build/manifests/jelix-modules.mn
./release_1.0beta1/lib/jelix-modules/jxxulapp/install/www/index.php
./release_1.0alpha3/testapp/www/index.php
./release_1.0alpha3/myapp/www/index.php
./release_1.0alpha3/build/manifests/testapp.mn
./release_1.0alpha3/build/manifests/jelix-dev.mn
./release_1.0alpha3/build/manifests/myapp.mn
./release_1.0alpha3/lib/jelix-scripts/scripts.conf.php
./release_1.0alpha3/lib/jelix-scripts/commands/createapp.cmd.php
./release_1.0alpha3/lib/jelix-scripts/templates/www/index.php.tpl
./release_1.0alpha5/myapp/www/index.php
./release_1.0alpha5/build/manifests/myapp.mn
./release_1.0alpha5/build/manifests/jelix-modules.mn
./release_1.0alpha5/lib/jelix-modules/jxxulapp/install/www/index.php
./release_1.0alpha5/lib/jelix-scripts/scripts.conf.php
./release_1.0alpha5/lib/jelix-scripts/templates/www/index.php.tpl

bref, je pense qu'on peut dire que ce n'est plus supporté

comment:9 Changed 11 years ago by analogue

  • Resolution set to invalid
  • Status changed from new to closed

Ok nickel

Note: See TracTickets for help on using tickets.