Raccourcis : Contenu - rubriques - sous rubriques
EN FR

Piste : 1.4

Ceci est une ancienne révision du document !


Jelix 1.4

Voici la liste complète des améliorations apportées depuis la version 1.3.x, et qui seront disponibles dans la future version 1.4.

Date de sortie : Encore en développement

Jelix 1.4 beta 1 Disponible !

Améliorations principales

  • Nouvelles méthodes: jApp::config() pour récupérer la configuration et jApp::loadConfig() pour la charger. $gJConfig est déprécié
  • Nouvelles méthodes: jApp::coord() pour récupérer le coordinateur et jApp::setCoord() pour définir le coordinateur dans l'environnement Jelix. $gJCoord est déprécié
  • Nouveau système d’auto-chargement. Les classes à charger automatiquement peuvent être indiquées dans le fichier module.xml de vos modules. Le système d'auto-chargement supporte la spécification PSR0
  • Templates virtuels
  • Nouvelle API pour utiliser le cache HTTP
  • Nouvelles classes pour lire les flux Atom et RSS
  • Nouvelle classe jPref pour définir et obtenir des options de configuration dynamique et fonctionnelle. Une interface permettant à un webmaster de gérer ces préférences est disponible.
  • Les modules peuvent fournir leurs propres objets de réponse et les indiquer directement dans la configuration
  • Les modules peuvent fournir leurs propres fichiers CSS et JS sans avoir à les placer dans le répertoire www
  • Les Jelix-scripts recherchent désormais un fichier .jelix-scripts.ini dans le répertoire courant et ses répertoires parents, avant de chercher dans le répertoire de base
  • Nouveau driver jDb utilisant l'API mysqli (FlorianLB)

Mettre à jour depuis Jelix 1.3.x

Détails des changements

Améliorations

  • Coeur:
    • La variable globale $gJConfig est maintenant obsolète. Vous devez utiliser jApp::config() pour récupérer la configuration. Les points d'entrées doivent indiquer la configuration à utiliser avec jApp::loadConfig(), et non plus avec l'objet coordinateur.
    • La variable globale $gJCoord est maintenant obsolète. Vous devez utiliser jApp::coord() pour récupérer le coordinateur. Les points d'entrées doivent stocker le coordinateur dans jApp.
    • Nouvelle API pour utiliser le cache HTTP, dans les objets réponse: cleanCacheHeaders(), setExpires(), setLifetime(), isValidCache(). @FlorianLB
    • jXmlResponse permet maintenant de spécifier votre propre type mime. @Thomas PT
    • Dans la configuration, on peut indiquer une classe de réponse qui est stockée dans un module. Syntaxe: {responsetype}=module:{modulename}~{classname}. Et la classe doit être stockée dans un fichier {modulename}/responses/{classname}.class.php.
    • Les méthodes isModuleEnabled et getModulePath ont été déplacée de jCoordinator vers jApp. Ces méthodes sont encore disponibles sur jCoordinator mais sont obsolètes
    • nouvelle classe jAutoloader, pour pouvoir être utilisée comme chargeur automatique de classes
    • Prise en charge de nouveaux elements xml dans module.xml pour indiquer les classes à charger automatiques.
    • la gestion des erreurs et exceptions a été retravaillée
    • Des messages plus explicites (sans pour autant être détaillée pour des raisons de sécurité) sont maintenant affiché sur la page d'erreur au démarrage
    • Nouveau plugin de coordinateur pour tracer les executions (FlorianLB)
    • Les actions dans les controllers peuvent maintenant être implémentés avec __call (flav)
  • jUrl
    • Nouvelle méthode getRootUrl($keyword) (et un plugin jTpl correspondant) pour associer des urls à des mots clés. @bricet #1073
  • jTpl:
    • Templates virtuels. Vous pouvez utiliser jTpl avec des simple chaînes (et non pas obligatoirement des fichiers comme dans les versions précédentes) : jTpl::fetchFromString(). @doubleface, @laurentj, #545
    • Nouvelles instructions meta dans les templates : meta_if, meta_else, meta_endif. @bricet
    • plugins: ajout de la prise en charge de IE8 et IE9 dans meta_html
  • jDao:
    • Nouvelle méthode jDaoRecordBase::save. (Sid-Ali Djenadi)
  • jAuth:
    • nouvelle fonction de hash bcrypt() utilisant les algorithmes blowfish. @FlorianLB
  • jAcl, jAclDb and jAcl2Db utilisent maitnenant le nouveau système autoload. Toutes les classes jAclDb* et jAcl2Db*, ainsi que les plugins de coordinateur acl et acl2, ont été déplacés dans leurs modules respectifs.
  • Utilitaires:
    • Nouvelles classes pour récupérer et parser les flux Atom et RSS: jAtom10Reader et jRSS20Reader. Les données retournées sont compatibles avec les réponses qui génèrent des flus Atom et RSS. @FlorianLB #23
    • jIniFileModifier: nouvelles methodes getValues et setValues
  • nouvelle classe jPref : un système pour stocker des options de configuration dynamiques (qui ne sont pas des options systèmes du framework). Une interface est disponible pour l'administration, pour gérer toutes ces préférences. jPref utilises jKVDb comme moyen de stockage.
  • Jelix-scripts:
    • le système de commande cherche maintenant le fichier .jelix-scripts.ini dans le répertoire courant et les répertoires parents, avant de chercher dans le répertoire de l'utilisateur.
    • createapp genères maintenant un fichier .gitignore et un fichier .dummy dans les repertoires vides, ce qui permet d'inclure ceux-ci dans un dépôt Git.
    • la debug bar est activée par défaut quand on créé une nouvelle application avec createapp

Bugs corrigés

  • toutes les corrections de bug de la branche 1.3.x

fr/changelog/1.4.1339229418.txt.gz · Dernière modification : 2012/06/09 08:10 de laurent

Fils rss des changements récents dans le wiki Creative Commons License