-
Notifications
You must be signed in to change notification settings - Fork 1
/
changelog.txt
74 lines (61 loc) · 4.43 KB
/
changelog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
v1.6, 07.08.2017
- Переход на использование Composer и psr-4
- (Ломает совместимость) Пользовательские пайп-функции теперь регистрируются сразу по имени
- (Ломает совместимость) Настройка кеширования перенесена в TemplateOptions
- Добавлен класс настроек TemplateOptions, передающийся в Template::init()
- Добавлены инлайн-массивы, как в php
- Добавлен оператор "not", аналогичный "!"
- Добавлены пайп-функции replace и date
- Исправлен вызов параметров-функций с несколькими аргументами
v1.5, 30.11.2016
- Добавлена конструкция include_once
- Добавлена поддержка переноса строк Windows-формата
- Добавлена возможность отключения кэширования
- Исправлено присваивание вложенных полей (f1.f2.f3)
- Добавлен оператор ??
v1.4, 21.08.2016
- Поддержка операторов присваивания (= += -= *= /=)
- Расширенный синтаксис для for: for <var> = <value> while <condition> next <post-action>
v1.3, 28.07.2016
- Поддержка нескольких выражений в одном блоке {{ }} или {? ?}
- Оператор ';' для разделения нескольких выражений в одном блоке
- Добавлено кэширование результата компиляции в файл (в том же месте с расширением .ctpl)
v1.2, 22.07.2016
- Добавлена поддержка доступа к свойствам и методам объектов через оператор '.'
- Добавлена поддержка синтаксиса вызова функций (...)
- Добавлена возможность установки глобальных переменных, общих для всех шаблонов. Использование: $gvar_name, добавление: Template::addGlobalVar('name', $var)
v1.1, 10.07.2016
- Реализована машина состояний для поиска TOK_ESC ('{{', '<<' и т.п.)
- Добавлены автозакрывающиеся теги виджета ('/>>')
- Добавлена функция Template::buildStr, компилирующая шаблон из строки, а не файла
- Поправлена пайп-функция urlparam (не энкодила некоторые символы типа '#')
- Поправлен баг с недостающими пробелами при обработке через |text
- Добавлена поддержка комментариев {* block *}
v1.0, 18.04.2016
- Добавлено экранирование символов в строковом литерале
- Релиз
v0.9
- Разделение на TemplateLexer, TemplateCompiler и Template (виртуальную машину)
- Убрано ограничение на рекурсию в инклудах
- Блоки теперь становятся видны в момент их определения в шаблоне, но не до (так было раньше)
- Пофикшен стрип пробелов перед началом блока {?
- Добавлены <<виджеты>>
v0.7.6
- Добавлен else if
- Ошибки теперь указывают строку, в которой она обнаружена
v0.7
- Реализован лексер
- Код переделан на использование лексем
- Убран парс регулярками
v0.5
- Разделение на два файла: библиотечный и пользовательский
- Добавлены пользовательские обработчики пайп-функций
- Добавлен обработчик ббкодов
v0.3
- Добавлена поддержка блоков с передачей им параметров
v0.2
- Добавлена компиляция в синтаксическое дерево
v0.1
- Первая стабильная версия
- Поддержка простых if, for, include
- функции через | (пайп-функции)