
Home
» Talus' Works » News » Releases » Talus' TPL - 1.11 » Lecture du Sujet » Page 1 | Forum Fermé - Sujet Fermé |
|
|
|
|
Note :: Cette version est désormais périmée, depuis la sortie de Talus' TPL 1.12. Je la laisse en téléchargement, mais sachez qu'aucune correction de bugs et autres ajouts de fonctionnalités n'aura lieu ! Bonjour, Voici une nouvelle sortie de Talus' TPL, encore une peu après la précédente. Elle apporte quelques nouveautés (telles que la possibilité de changer les extensions des fichiers templates, la possibilité de passer une variable dans un argument de filtre, ou encore des mots clés spéciaux lors de ces mêmes paramètres), mais est surtout remplie de bugfix (bien que la plupart ait été inclus jusqu'a Talus' TPL 1.10.8) et de changements. Le plus gros changement étant le changement de license. Je suis en effet passé à la CC-BY-SA (Creative Commons - Attribution - Share Alike), qui est grosso modo la même que la LGPL, mais je la préfère ; Aussi, le fichier contenant la classe Talus_TPL a été modifié en Main.php. D'ailleurs, à propos de changements, j'en ai aussi profité pour changer le root de l'archive, passant ainsi à lib/Talus_TPL/ au lieu de Talus_TPL/. Certains méchanismes pour l'injection de dépendances ont également été revus. ... Mais je pense que le CHANGELOG se chargera de mieux vous expliquer les changements que moi, ne les ayant pas tous en tête !
Code
## 1.10 ==> 1.11 (Release 18/07/11)
#WAR : Please reload your cache (delete it, ...) !
#FIX : The old block syntax was making the foreach loop undefinitely (#14)
#FIX : Notice if an array traversed by a foreach is not set (#24)
#FIX : Filters on the arrays are now properly recognized (#18)
#FIX : The stub for the blocks was not working properly (#20)
#FIX : Bad comparision for a foreach value on is_last (#20)
#FIX : Missing compat for the special block variables (#23)
#FIX : Bad filters interpretation (#15)
#FIX : Multi dimensional array (#19)
#ADD : The keywords true, false, on and off are now correctly escaped (#32)
#ADD : Filters can now accept a variable as an argument (#3)
#ADD : Possibility to change the templates' extension (#30)
#ADD : Possibility to use a property of an object in a TPL
#CHG : License is not LGPL anymore ; it became CC-BY-SA, which is equivalent
#CHG : Talus_TPL::dependencies() does not accept arrays anymore
#CHG : The parameter behaviour has completely changed
#CHG : Moved Talus_TPL directory into a lib directory
#CHG : Talus_TPL_Filters cannot be instanciated
#CHG : Talus_TPL_Filters is not final anymore
#CHG : Renamed Talus_TPL.php to Main.php
#CHG : Dependency Injection mechanism
#CHG : PHP Interpration for foreaches
#CHG : Sources headers have changed
#DEL : <set> tag is now no more
#DEL : namspaces behaviour (was not really used and was pretty useless)
#DEL : The autoloading does not throw any exception if file not found
#OPT : Array interpretation are now much faster
Et voici les fichiers : 19/07/2011 : La documentation a été mise à jour LE MOTEUR NECESSITE PHP >= 5.1 !. Plusieurs fonctionnalités de PHP, présentes que depuis la 5.1 (citons la SPL pour l'autoload), sont utilisées par le moteur. Sachez que la version 5.3 est déjà sortie (dernière stable en date : la 5.3.6) il y a de ça 2 ans, et que les versions précédentes ont été marquées comme dépréciées par le Groupe PHP ! ATTENTION, POUR UNE MISE A JOUR DE TALUS' TPL : PENSEZ A VIDER VOTRE CACHE ! Comme d'habitude, si vous avez des retours à faire, vous pouvez me contacter sur twitter, et bien évidemment suivre l'avancement du moteur, reporter des bugs ou proposer des fonctionnalités sur son espace GitHub. Dernière édition le 15/09/2011, à 15:11, par Talus Dev' de Talus' Works |
|
|
|
|
Hop, nouvelle mise à jour, pour corriger le bug #35 (merci à CrazyBHY). Voici le patch pour les curieux :
Code
diff --git a/lib/Talus_TPL/Main.php b/lib/Talus_TPL/Main.php
index f474c48..26b942c 100644
--- a/lib/Talus_TPL/Main.php
+++ b/lib/Talus_TPL/Main.php
@@ -53,7 +53,7 @@ class Talus_TPL {
const
INCLUDE_TPL = 0,
REQUIRE_TPL = 1,
- VERSION = '1.11.0';
+ VERSION = '1.11.1';
/**
* Initialisation.
diff --git a/lib/Talus_TPL/Parser.php b/lib/Talus_TPL/Parser.php
index 379865a..b8becf7 100644
--- a/lib/Talus_TPL/Parser.php
+++ b/lib/Talus_TPL/Parser.php
@@ -149,7 +149,7 @@ public function parse($script){
// -- <foreach> tags
$script = preg_replace_callback('`<foreach ar(?:ra)?y="\{\$(' . self::REGEX_PHP_ID . ')}">`', array($this, '_foreach'), $script);
- $script = preg_replace_callback('`<foreach ar(?:ra)?y="\{\$(' . self::REGEX_PHP_ID . '(?:\.value' . self::REGEX_PHP_SUFFIX . ')?)}" as="\{\$(' . self::REGEX_PHP_ID . ')}">`', array($this, '_foreach'), $script);
+ $script = preg_replace_callback('`<foreach ar(?:ra)?y="\{\$(' . self::REGEX_PHP_ID . '(?:\.val(?:ue)?' . self::REGEX_PHP_SUFFIX . ')?)}" as="\{\$(' . self::REGEX_PHP_ID . ')}">`', array($this, '_foreach'), $script);
// -- Simple regex which doesn't need any recursive treatment.
$not_recursives = array(
Dev' de Talus' Works |
| Forum Fermé - Sujet Fermé |