Контент


Kohana v3.1.5

Недавно вышла новая (и судя по всему последняя) версия из ветки 3.1. В данной статье я перечислю основные изменения.

Ядро

  • Метод Date::formatted_time() не должен игнорировать переданный параметр $timezone, даже если зона уже указана в метке времени (#3902).
  • Request::factory() игнорировал переданный параметр $injected_routes (#4019).
  • Файлы с функциями UTF8 теперь можно расширять через каскадную файловую систему (ранее они жестко брались из system) (#4215).
  • Исправлен баг с невозможностью установить куки в Request через Request::cookie() (#4278).
  • Первоначальный запрос «терял» куки (#4280).
  • Глобальные переменные теперь можно изменять (#4431).
  • Добавлены методы File::mimes_by_ext(), File::exts_by_mime() и File::ext_by_mime() (#3167).
  • Метод Arr::flatten() не объединяет значения для индексированных (не ассоциативных) массивов (#3326).
  • Актуализация справочника для класса Inflector (#4322). Добавлена нестандартная пара realease => releases (#3659).

Database

  • В настройках подключения к БД не обязательно указывать параметр ‘table_prefix’ (#4033).
  • Некоторые классы (Model_Database, Session_Database, Config_Database) по умолчанию не использовали Database::$default (#4289).
  • Исправлен баг с неправильной обработкой полей типа enum (#4393).

ORM

  • При выборке записей из таблицы теперь явно указываются имена полей (вместо SELECT *). Ранее были проблемы с виртуальными таблицами sqlite (#3587).
  • Вызов clear() не сбрасывал свойство $_loaded (#4071).
  • При загрузке связанной через BelongsTo модели необходимо проверять установленный внешний ключ, чтобы не извлекать данные по NULL-значению. (#4406).
  • Модель должна проходить валидацию, если она не изменилась, но была передана внешняя валидация (#4424).
  • В таблице user_tokens для поля expires добавлен индекс (поле используется при очистке токенов) (#3031).
  • Очистка токенов вызывала несуществующий метод delete_all() (#3714, #4070).
  • В таблице user_tokens поле created добавлено в $_created_column, т.е. будет заполняться автоматически (#3889).
  • В метод Auth_ORM::get_user() добавлен параметр $default (значение по умолчанию) (#4018).
  • Если в конфиге отсутствует параметр hash_key, метод Auth::hash() должен выбрасывать исключение (#3542).

OAuth

  • Добавлены обязательные параметры в объект Oauth_Request_Credentials (#4004).
  • В заголовки авторизации добавлен параметр realm (#4171).

Cache

  • Поправлена ошибка в драйвере Memcache (попытка использовать protected callback) (#3332).
  • Если директория для хранения файла кэша не существовала, выбрасывалось неперехватываемое исключение (PHP 5.2) (#3419).

Image

  • Для метода Image::resize() добавлен новый вариант: Image::PRECISE (#3584). Это нечто противоположное Image::AUTO: пропорции тоже сохраняются, но изображение не вписывается в указанные габариты, а как бы накрывает его, совпадая с одним из размеров. Т.е. после такого ресайза можно обрезать изображение и получить нужную превьюшку без искажения.

Userguide

  • Контроллер Controller_Userguide перенесли в Kohana_Controller_Userguide (для расширяемости) (#3376).
  • Поправлен поиск в API browser (#3665).
  • Прямые вызовы функции Markdown() заменены на обертку Kodoc_Markdown::markdown() (#3695).
  • Исправлена ошибка с (несуществующими) подключаемыми шаблонами Kohana (#4030).
  • Используемые в шаблоне идентификаторы блоков могут конфликтовать с методами классов (Userguide API). Исправлено добавлением префиксов kodoc- (#4037).
  • Отключение API browser приводило к выбросу Kohana_Exception из-за неизвестного роута (#4046).
  • Добавлена возможность отключить комментарии в Userguide (по умолчанию смотрит на Kohana::$environment) (#4274).
  • Userguide должен загружать только файлы со стандартным расширением (константа EXT, обычно ‘.php’) (#4358).
  • API browser должен показывать реализованные интерфейсы (#3486).
  • Добавлены статьи по работе с модулем Image (#3970).
  • Добавлена статья по использованию Kohana в качестве сторонней библиотеки (#4006).
  • Значительно расширена статья по использованию фильтров в ORM (#4056).

Заключение

Как-то так. В следующей статье опишу изменения в 3.2.1-3.2.2. Частично они будут пересекаться с упомянутыми сегодня, но будет и кое-что новое.

Google Bookmarks Digg Reddit del.icio.us Ma.gnolia Technorati Slashdot Yahoo My Web News2.ru БобрДобр.ru RUmarkz Ваау! Memori.ru rucity.com МоёМесто.ru Mister Wong

Опубликовано в Kohana3.

Теги: , , .


Комментарии (0)

Будьте в курсе обсуждения, подпишитесь на RSS ленту комментариев к этой записи.



Можно включить подсветку кода: <code><pre lang="">...</pre></code>
Разрешены некоторые HTML теги

или используйте trackback.