1.5
Past due by over 8 years
60% complete
Tale Jade 1.5 will be the first completely breaking change.
You might always stick to 1.4.*, since 1.5. won't introduce new features, I promise!
It will be a structure overhaul.
Things that got changed already:
- Lexer has been split into Tokens, Scanners, a State and the Lexer that composes them
- The lexer now uses tale-reader, which is a string-parsing li…
Tale Jade 1.5 will be the first completely breaking change.
You might always stick to 1.4.*, since 1.5. won't introduce new features, I promise!
It will be a structure overhaul.
Things that got changed already:
- Lexer has been split into Tokens, Scanners, a State and the Lexer that composes them
- The lexer now uses tale-reader, which is a string-parsing library fit to Tale Jade's needs (and possibly other lexers I will write in the future)
- tale-tree now replaces every tree-logic inside tale-jade
- Parser has been split into a ton of Nodes, a State and the Parser that composes them
- Instanciation now uses tale-factory to avoid a ton of necessary checks
- Lexer can be extended easily, either by adding Scanners that throw out existing tokens or by adding completely new tokens. Both are just extending a class and adding a config value to the lexer (or extending the lexer, whatever you prefer)
- Complete PSR-2 overhaul. No underscore-prefixes.
- All config keys of all classes will be under_scorized, not camelCased anymore (primarily to fit Symfony's style)
Things that will be changed:
- The Compiler will get a full overhaul and will use a Formatter and probably some further classes for a modular structure to easily extend it (I'm not done yet, I didn't find the best structure yet and that is probably the main reason why 1.5 is not released yet)
- Filters will be changed and will give a possibility to change deeper parts and format filterered content easier
- All functions have been put into a small Utility that will be compressed and compiled in stand_alone mode
Things that might be important:
- Tale Jade now handles scalars quite differently.
Before a code likea(class=col-md-5)
renderered toa(class="col-md-5")
. It will now probably throw an error, because it tries to subtract the constantscol
,md
and the digit5
. A scalar string will now be a scalar string only if it's enclosed in quotes of any kind. Everything behind = is essentially PHP (or rather, an expression. That won't mean that all attribute values get printed as PHP. Tale Jade now checks for scalar values quite cleaner
Also, some more stuff I can't think of at the moment and will add here later probably.
Thanks for your interest!