-
Notifications
You must be signed in to change notification settings - Fork 52
Ru:1.0to1.1
AlexeyDsov edited this page Sep 13, 2012
·
20 revisions
Сейчас пока 1.1 это мастер. По мере дополнения новыми фичами статья будет расширяться.
- Переименование классов Memcached -> SocketMemcached
- Добавлен более статический вариант Enumeration - Enum. Для перехода на него нужно изменить в наследнике параметр
protected $names = array(...);
на$protected static $names = array()
. API Класса тот же самый что и Enumeration + дополнен несколькими статическими методами, которых так не хватало. Требует php 5.3. Класс Enumeration никуда не пропал. - Переименования в классах работающих с мемкешом. Решает проблему пересечения имен с php классом Memcached
- В DB добавлена работа с savepoint'ами.
- Добавлены классы InnerTransaction и InnerTransactionWrapper, для упрощения создания вложенных транзакций на savepoint'ах. Т.е. позволяет не задумываться - находимся ли мы в текущий момент внутри транзакции или нет.
- Переписано раскешивание, теперь оно работает через специальные классы Uncachers. Это позволило сделать корректным раскешивание внутри транзакции - оно происходит после "COMMIT;" в базе данных. Само же кэширование внутри транзакции использует теперь всегда RuntimeMemory, что может увеличить число запросов в базу, но позволяет не портить общий кэш незакомиченными данными.
- Улучшена логика сравнения старого и нового объектов в *DAO::merge() + сама логика сравнения вынесена большей частью в AbstractProtoClass и LightMetaProperty
- Полная поддержка типа данных баз
timesamp with time zone
в виде объектов TimestampTZ, PrimitiveTimestampTZ и прочих вспомогательных. - PrimitiveHstore::exportValue возвращает ассоциативный массив, а не объект Hstore.
- Обновление CurlHttpClient.
- Теперь если используется метод POST, то get параметры из реквеста дописываются к url'у так же как и при методе get
- Теперь get и post параметры могут быть многомерными массивами, а не только двумерными. Для совместимости со старой версией конвертирования массива (добавлена временная константа ONPHP_CURL_CLIENT_OLD_TO_STRING по умолчанию установленная в false, но если true, то используется старое конвертирование)
- Реализована отправка файлов, в реквесте в массив files нужно помещать пути до файлов.
Список еще не закончен.
- Использование InnerTransaction внутри onPHP кода.
- Переписанный автолоадер.