Вышла первая бета-версия Drupal 7.0

Версия для печатиВерсия для печати

Финальная альфа-версия Drupal 7 вышла три недели назад, а сегодня разработчики с гордостью заявляют о первой бета-версии Drupal 7.x!

Выход бета-версии взамен альфа означает следующее:

  • Разработчики считают, что исправили все баги, связанные с потерей данных или дырах в безопасности Drupal 7.
  • Разработчики считают, что новый API стабилен достаточно для создания модулей и тем.
  • Разработчики считают, что нашли и исправили большинство проблем, связанных с переходом со старой версии Drupal на новую. Кроме того им удалось успешно обновить базу данных веб-сайта Drupal.org на версию Drupal 7.

Наиболее важные изменения по сравнению с Drupal 6

  • Базы данных:
    • Полностью переписан уровень работы с БД с использованием уровня абстракции PDO PHP 5.
    • В настоящее время для установки и работы Drupal необходима СУБД MySQL >= 5.0.15 и PostgreSQL >= 8.3.
    • Добавлены построители запросов для INSERT, UPDATE, DELETE, MERGE и SELECT.
    • Поддержка репликации master/slave, транзакций, запросы на множественную вставку и другие функции.
    • Добавлена поддержка баз данных SQLite.
    • Если доступна СУБД MySQL, то движком БД по умолчанию будет InnoDB, а не MyISAM, как было раньше. Это обеспечивает высокую масштабируемость и целостность данных.
  • Безопасность:
    • Добавлена защита запуска cron.php — крон запустится, только если указан правильных ключ доступа.
    • Реализовано ограничение попыток входа в систему для предотвращения подбора паролей, а также доступа пользователей к ресурсам (например, загрузки файлов).
    • Модуль "Update status" преобразован в "Update manager", который позволит безопасно устанавливать и обновлять модули и темы через веб-интерфейс.
  • Удобство:
    • Добавлены контекстные ссылки (известные как local tasks) для элементов страницы, таких как блоки, ноды или комментарии, которые позволяют выполнить большинство распространенных задач в один клик.
    • Улучшена проверка требований при установке Drupal.
    • Улучшена интеграция с WYSIWYG-редакторами.
    • Реализовано перетаскивание в списке фильтров ввода.
    • Реализовано перетаскивание в списке языков.
    • Реализовано перетаскивание в списке вариантов ответа для опросов.
    • Предоставлена возможность указать описания и понятные названия для разрешений пользователей.
    • Удалены элементы управления комментариями для пользователей.
    • Удалены настройки отображения комментариев в модуле Comment. Теперь порядок отображения комментариев можно настроить с помощью модуля Views.
    • Удалена функция 'связанные термины' из модуля Taxonomy, так как того же функционала можно добиться с помощью Field API.
    • Добавлены дополнительные функции для профиля установки по умолчанию и реализован специальный профиль установки для разработчиков.
    • Добавлена встроенная функция автоматического запуска крона, срабатываемого при посещениях сайта пользователями.
    • Добавлена роль администратора, которой автоматически назначаются все разрешения для установленных модулей.
    • Графические библиотеки теперь предоставляются модулями (раньше они хранились в файлах каталога includes).
    • Добавлена вкладка редактирования на странице термина таксономии.
    • Изменен дизайн при проверке надежности пароля.
    • Изменен дизайн окна добавления типа содержимого.
    • Добавлено подсвечивание дублирующих URL-алиасов.
    • "Input formats" переименовано в "text formats".
    • Разрешения на текстовые форматы перемещены на основную страницу разрешений.
    • Добавлена настраиваемая функция для пользователей, позволяющая удалить им свой аккаунт.
    • Добавлены "вертикальные вкладки", новый компонент интерфейса.
    • Раскрывающиеся группы полей на странице добавления и редактирования ноды заменены на вертикальные вкладки.
  • Производительность:
    • Повышена производительность на некешируемых страницах благодаря загрузке нескольких объектов ядра в одном запросе к БД.
    • Повышена производительность для пользователей, вошедших в систему, благодаря уменьшению количества запросов для определения алиасов пути.
    • Улучшена поддержка HTTP-прокси, позволяя обслуживать просмотр страниц пользователями, не вошедшими в систему, через прокси.
  • Документирование:
    • Документация по Hook API теперь включена в ядро Drupal.
  • Агрегатор новостей:
    • Добавлены функции импорта OPML для RSS-лент.
  • Поиск:
    • Добавлена поддержка для многоязычного поиска.
  • Агрегатор:
    • Внедрена архитектура, которая позволяет подключаемым парсерам и процессорам публиковать ленты RSS и Atom.
    • Добавлены функции для приостановки обновления отдельных лент RSS.
  • Тестирование:
    • Добавлен фреймворк тестов и тестовые наборы.
  • Улучшенная поддержка временных зон:
    • Теперь Drupal использует базу данных временных зон PHP при отображении дат в локальном формате. Сдвиги временных зон для всего сайта и конкретных пользователей преобразуются в названия временных зон, например Европа/Москва.
    • Если ваш сайт обновляется с Drupal 6 и у вас не были установлены модули Date или Event, временные зоны пользователей будут изменены на временную зону сайта.
    • Временные зоны для пользователей теперь используются в качестве временной зоны по умолчанию в функциях date/time PHP.
  • Система HTML-фильтров:
    • Обновлен API фильтров и способ хранения текстовых форматов.
    • Добавлена возможность назначения форматов по умолчанию для отдельных ролей.
    • Выполнен рефакторинг HTML-корректора с использованием преимуществ PHP 5.
  • Управление пользователями:
    • Добавлены понятные API функции для создания, получения, изменения и удаления ролей и разрешений пользователей.
    • Выполнен рефакторинг компонента "правил доступа" в модуле User: Теперь модуль User предоставляет простой интерфейс для блокировки отдельных IP-адресов. Прежний функционал в модуле User для ограничения доступа по конкретным E-mail адресам или логинам теперь предоставляется другим модулем. Кроме того, блокировка по диапазону IP-адресов больше не поддерживается и должна реализовываться на уровне ОС.
    • Удалена настройка тем для отдельных пользователей: существуют модули, предоставляющие похожие функции.
  • OpenID:
    • Добавлена поддержка для Gmail и Google Apps для идентификаторов доменов. Теперь пользователи могут входить с помощью их идентификаторов вида user@domain.com, если domain.com поддерживается Google.
    • Модуль OpenID стал более легкоподключаемым.
  • Добавлен реестр исходного кода
    • Используя реестр, модули объявляют свои файлы с помощью файла .info, позволяя Drupal подключать классы и интерфейсы по необходимости.
  • Темизация:
    • Удалены темы Bluemarine, Chameleon и Pushbutton. Теперь они устанавливаются отдельно (http://drupal.org/project/bluemarine, http://drupal.org/project/chameleon и http://drupal.org/project/pushbutton).
    • Добавлена тема Stark для предоставления более простого анализа HTML и CSS параметров Drupal, заданных по умолчанию.
    • Добавлена тема Seven в качестве темы по умолчанию для интерфейса администрирования.
    • Предварительная обработка переменных в хуках тем перед обработкой шаблона теперь проходит два этапа: этап 'preprocess' и новый этап 'process'. Подробности можно узнать по адресу http://api.drupal.org/api/function/theme/7.
    • Хуки тем, реализованные в виде функций (а не в виде шаблонов) теперь могут также иметь функции preprocess (and process). Подробности на http://api.drupal.org/api/function/theme/7.
  • Работа с файлами:
    • Теперь файлы являются первым классом в Drupal c функциями file_load(), file_save() и file_validate() и соответствующими хуками.
    • Функции file_move(), file_copy() и file_delete() теперь манипулируют объектами файлов и вызывают хуки файлов, передавая сообщения модулям, которые могут ответить на изменения.
    • В случаях, когда необходимы только базовые операции с файлами, когда не требуется усиленная работа с БД и хуками, следуют использовать неуправляемые варианты функций file_move(), file_copy() и file_delete(), которые называются также но с префиксом file_unmanaged_*() вместо file_*().
    • Переписан механизм обработки файлов для использования поточной работы с файлами в PHP, которая включает поддержку публичной и защищенной файловой системы Drupal и настраиваемые механизмы хранения и доступа к удаленным ресурсам (например, фотографиям Flickr).
    • Переменная mime_extension_mapping была удалена. Модули, которым необходимо изменять сопоставление MIME-типов расширениям файлов следует использовать хук hook_file_mimetype_mapping_alter().
    • Добавлен хук hook_file_url_alter() hook, который делает возможным работу с файлами через CDN.
    • Добавлен специальный тип полей для загружаемых файлов, который ранее был реализован в модуле FileField.
  • Обработка изображений:
    • Усовершенствована обработка изображений, включая улучшенную поддержку для дополнительных библиотек по работе с изображениями.
    • Добавлен API и интерфейс для создания эскизов изображений (уменьшенных копий).
    • Добавлены новые эффекты, такие как поворот и обесцвечивание.
    • Добавлен специальный тип полей для загружаемых изображений, который ранее был реализован в модуле ImageField.
  • Добавлена поддержка алиасов при многосайтовости:
    • Добавлена поддержка сопоставления имен доменов с директориями сайта.
  • Добавлена поддержка RDF:
    • Модули могут объявлять пространства имен RDF, которые могут быть сериализованы в теге <html> для поддержки RDFa.
    • Модули могут указывать, каким образом их структуры данных сопоставляются с RDF.
    • Добавлена поддержка экспорта RDFa для нод, комментариев, терминов, пользователей и т.д, включая поля.
  • SEO и ссылки:
    • Добавлена ссылка с rel="canonical" страницах нод и комментариев для предотвращения индексирования дублированного контента поисковыми системами.
    • Добавлена ссылка по умолчанию с rel="shortlink" для страниц нод и комментариев в качестве альтернативного URL-адреса для внешних сервисов.
    • Мета-информация теперь изменяется любыми модулями до момента вывода.
  • Field API:
    • Настраиваемые поля могут быть прикреплены к нодам, пользователям, комментариям и терминам таксономии.
    • Текст и аннотации нод теперь являются полями Field API.
    • Предоставляется больше функций бывшего модуля Content Construction Kit (CCK).
    • Термины таксономии теперь являются полями Field API, которые могут быть добавлены к любому объекту, допускающие поля Field API.
  • Установщик:
    • Выполнен рефакторинг установщика в API, который позволяет устанавливать Drupal с помощью скрипта в режиме командной строки.
  • Организация страниц:
    • Область с текстом помощи реализована в качестве региона с блоками.
    • Настройка миссии сайта была удалена.
    • Настройка сообщения внизу страницы была удалена, так как такой же функционал предоставляют блоки.
    • Основное содержимое страницы реализовано в виде блока, который может быть перемещен в любом регионе на странице.
    • Теперь блоки могут возвращать структурированные массивы для последующей обработки.
  • Система перевода:
    • Система перевода теперь поддерживает контекст сообщений (msgctxt).
    • Добавлена поддержка переводимых полей в Field API.
  • Изменения в JavaScript:
    • Обновлена библиотека JavaScript на jQuery 1.4.2.
    • Обновлена библиотека jQuery Forms до версии 2.36.
    • Добавлен jQuery UI 1.8, который вносит значительные улучшения в интерфейс пользователя Drupal.
  • Улучшенная поддержка версионности модулей:
    • Теперь модули могут указывать, от каких версий других модулей они зависят.
  • Модули, удаленные из ядра Следующие модули были удалены из ядра, так как существуют другие модули с похожей функциональностью:
    • Blog API
    • Ping
    • Throttle
  • Улучшена система контроля доступа к нодам:
    • Теперь любой модуль может повлиять на доступ к нодам во время выполнения, а не только определив соответствующие ноды.
    • Теперь пользователи могут получать доступ к отдельным нодам без предоставления им полного доступа к сайту.
    • Контроль доступа влияет как на опубликованные, так и на неопубликованные ноды.
    • Другие многочисленные усовершенствования системы доступа к нодам.
  • Система действий и триггеров:
    • Упрощена установка действий и триггеров.
    • Устранена зависимость от комбинации хуков и операций. Теперь триггеры обращаются напрямую к хукам модулей.
  • Обработка задач:
    • Добавлен API очередей для обработки нескольких задач или задач, выполняющихся долгое время.
    • Добавлена поддержка API очередей для API крона.
    • Добавлен фреймворк блокировки для управления операций, выполняющихся долгое время.
Источник: http://drupal.org/drupal-7.0-beta1