Выпуск первой альфа версии drupal 7

Закончилось празднование нового года и, несмотря, на холода , грипп и прочие препятствия хочу отметить важную веху в развитии продукта, которому посвятил последние 3 года своей жизни, а именнно запуск drupal 7 alpha 1.

Спасибо всем, кто терпиливо ждет и тем, кто ждал и терпел... и, конечно, тем кто помогал, а это очень большое количество людей!

Итак, почему же данный этап развития так важен для меня лично...

Думаю в ближайшие дни будет много написано об особенностях (фичах), недочетах и ошибках - оставлю это на суд сообщества. Официальный анонс доступен, как и версия для загрузки желающим ознакомится.

Лично для меня эта версия является детищем порядка тысячи, а может даже больше, разработчиков или просто людей, которые уделяли часть своего внимания общему делу. Это сосредоточие опыта отражает результат коллективного видения сегодняшних течений и веяний в web-разработке, а так же наработок профессионалов из многих стран мира.

С моей стороны, как архитектора-разработчика и программиста самыми важными изменениями стали следущие.

Изменение модели отношений сущностей в системе.

Drupal 7 сохранил преемственность с предыдущими версиями, система информационных узлов была сохранена и даже дополнена системой дополнительных полей Field API (текстовых, численных, список, файлов, изображений и полей основанных на словарях - таксономии). Поля типа даты и интервалов дат оставлены за пределами ядра для более гибкого внесения изменений.

Очень важным считаю появление Entity API в ядре - это возможность создавать атомарные сущности (entity) и объединять их в коллекции (bundle). Очень вероятно, что в следущей 8й версии, эта система вытеснит систему узлов (материалов), которая является просто одним из подмножеств сущностей.

Также сделан упор на надежность - разработа целая инфраструктура для автоматического тестирования фукционала, которая в ближайшее время будет доступна для тестирования не только ядра, но и сторонних модулей. Господа программисты, если вы еще не пишете тесты для своего кода, пора этим срочно заняться, иначе ваш код так и останется доморощенным и маловостребованным.

Следущий пункт масштабируемость - безусловно, что ценой этому стало незначительно снизившаяся производительность «из коробки», но сие не считаю вообще проблемой, так как за 2 года разработки возможности комьютеров выросли значительно больше. А в идеологии drupal мы не орентируемся на устаревшие продукты! Поэтому системные требования соответствуют сегодняшнему дню:

Серьезные изменения произошли в слое работы с базами данных DB API, который полностью переписан и сталь объектно-орентированным, гибким: легко расширяемым и перекрываемым. Так же теперь система работает по умолчанию в транзакционном режиме - нужны ли серьезной системе не транзакционные базы данных (для совместимости оставлено)? Появились новые механизмы для работы с файлами, в частности возможность выбирать хранилище для классов сущностей, работа с публичными и приватными файлами - все работает через php streams.

Реализована система очередей Job Queue API (Drupal Queue) посредством которой теперь реализован механизм заданий Batch API. Вернувшийся в систему механизм последовательностей Sequence API, возможно и будет востребован, для PostgreSQL он использует последовательности системы!

Много изменений в пользовательском интерфейсе, самое заметное - уход от использования слова please - система должна выполнять команды, а не упрашивать пользователя! Также отмечу наличие модуля toolbar, который заменяет модуль admin menu, удобные контекстные ссылки для изменения содержания прямо со страницы и пока еще сырой overlay - позволяет выволнять действия во всплывающем IFRAME окне над контентом сайта.

Суммарно

Система претелпела много глобальных изменений в основном стараясь выдержать паритет между опытом разработчиков и пользователей. Как и прежде это будет и framework и система управления сайтом.

Функционально система готова, изменения в архитектуре и API производиться не будут, фактически сейчас идет работа над ошибками, помощь в которой могут оказать все пользователи способные выполнить установку.

Много изменений в строковых ресурсах, так что самое время продолжать работу над локализацией.

P.S.

На вопрос: «Когда ждать финальной версии?» - как и прежде ответ: «Когда будет готово!»

Пояснить это можно так:
когда очередь критических прецедентов достигнет 0

Comments

Спасибо за обзор

Спасибо за обзор, вчера поставил себе 7.0 потестировать, буду следить за анонсами и в меру быстрый переход как девелоперов так и юзеров на новую систему...

Спасибо за анонс! Андрей, а

Спасибо за анонс!
Андрей, а планируется в следующих версиях полностью перевести на ООП? Или это вообще не рассматривается?

"Очень вероятно, что в следущей 8й версии, эта система вытеснит систему узлов"
Я правильно предполагаю, что новая модель отношений сущностей обкатывается на модуле ctools?)

ООП

Не вижу никакой необходимости в усложнении-утяжелении движка при помощи ООП. Где это разумно - там оно используется. Помимо иллюзорного удобства ООП в нем предостаточно граблей, так что учите матчасть...

Ctools не имеет никакого отношения к Entity API (http://api.drupal.org/api/function/hook_...).

По ООП: я ведь не спрашивал

По ООП: я ведь не спрашивал по поводу удобства и усложнения.

Посмотрите лучше на ctools.

ООП

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

ctools - куда смотреть? Использую, но видимо мы о разных вещах говорим... для меня сущность не в коде, а в совокупности данных и логики.

Увы, но для меня, владельца

Увы, но для меня, владельца 2х маленьких сайтов, всё это - к черту.
у меня drupal умудрялся и так сжигать 60 мб datasize.

Зачем нужна такая "мегауниверсальная" система - непонятно.
Более того, у меня возникло ощущение противоречивости направления движения 7ки. Хотим сделать более простым для освоения новичками (типа как подвытеснить wordpress с ниши новичковых сайтов?), но при этом сама система - совсем не для новичков.

Идеологически( не для программиста)... по мне - важно только то, что внесли cck в ядро. Удивительной тупостью было не сделать это версии эдак с пятой. Обидно, что contemplater всё ещё вне ядра, обидно что views всё еще вне ядра.

PS Кстати, php код и правда разрешен в комментариях ?

Владелец сайта не должен думать о базе данных.

Система сделана для того, чтобы решать задачи, а не беспокоиться о размере базы или о чем там речь... И задачи решать нужно по мере их поступления.

Система не для "новичков" и не для "чайников", для этой категории, лучше сказать - "начинающих" и предлагаются сервисы с предустановленным drupal, в частности, анонсированный недавно Drupal Gardens

Идеологически, не для программиста, а для пользователя вообще не должно существовать понятий cck, ядро, модули - пользователь должен заниматься наполнением и структурированием, возможно продвинутый пользователь сможет оперировать представлениями... но как показала практика программ а-ля MS Access - таких продвинутых пользователей еще меньше.

PS: подсветка php и другой код разрешены для публикации.

правильно, если владелец

>правильно, если владелец заказал сайт у других и сам в ем не разбирается, зачем ему беспокойства о размере базы