Статья

Новости и Полезные статьи

Наши услуги


Oops, an error occurred! Code: 202007110350547a91deb7

X Марка: TYPO3 v10.0 уже доступна

Logo

TYPO3 версия 10.0 является первым спринт-выпуском на пути к LTS-версии (долгосрочная поддержка) в 2020 году.

Поскольку основное внимание в версии 10.0 уделяется задачам упрощения, неудивительно, что в этом выпуске было внесено большое количество критических изменений. Этот подход позволяет нам внедрять новые библиотеки, современные концепции и оптимизировать API на ранней стадии разработки, чтобы TYPO3 оставалась одной из лучших систем управления корпоративным контентом на рынке.

Планы на серию TYPO3 v10

Мы поставили амбициозные и важные цели для TYPO3 v10 LTS. Следующие улучшения очень важны в нашем списке, и вы увидите, что они постоянно развиваются во всех будущих спринт-релизах:

  • Позволить интеграторам TYPO3 легко настроить сложную и мощную систему.
  • Редакторы TYPO3, администраторы, а также разработчики расширений извлекут выгоду из лучших практик.
  • Использовать надежные и установленные стандарты и пакеты PHP для достижения стабильных API во всем ядре TYPO3.
  • Сделать повседневную работу с TYPO3 еще более приятной.

Ключевые изменения в TYPO3 v10.0

Поскольку версия 10.0 знаменует собой первую версию серии v10, ее основная цель - избавиться от старой функциональности, которая считается устаревшей или сохраненной по старым причинам. Новые концепции и методы были введены в TYPO3 v9 и оказались успешными. Теперь пришло время удалить устаревший слой и стабилизировать новые API. Кроме того, мы представили новые концепции в версии 10.0, которые будут еще более улучшены в последующих спринт-выпусках серии TYPO3 v10.

Давайте поближе рассмотрим, что все это означает, немного подробнее.

Управление сайтом

Собственная обработка сайта была введена в TYPO3 v9 LTS - фундаменте для детерминированной обработки URL, а также функциональности на нескольких сайтах и на нескольких языках. TYPO3 v9 по-прежнему позволяет интеграторам использовать записи sys_domain (старый метод многодоменной настройки). Эта совместимость была удалена и настройка сайта теперь обязательна в v10.0. Интеграторы TYPO3 извлекают выгоду из многочисленных преимуществ последовательной и стандартизированной обработки сайтов и более быстрого времени запуска новых сайтов.

PHP класс / анализ свойств

Extbase (мощная инфраструктура MVC, используемая в TYPO3) позволяет разработчикам ядра и расширений писать удивительные функции для TYPO3 чистым и последовательным способом («соглашение о конфигурации»). Анализ пользовательских классов PHP и их свойств является ключевой функцией Extbase. Эта важная задача теперь решается с помощью Symfony's PropertyInfo Component. Используя пакет PHP, который соответствует отраслевым стандартам, хорошо известен и поддерживается огромным сообществом, мы гарантируем, что этот компонент Extbase останется самым современным на долгие годы. В то же время мы сокращаем наши усилия по обслуживанию и открываем двери для новых функциональных возможностей для авторов расширений.

Внедрение новой зависимости

Вышеупомянутая цель использовать надежные и установленные стандарты и пакеты PHP в ядре TYPO3 также очевидна в другой области первостепенной важности: «внедрение зависимостей» (DI). Эта техника вступает в игру, когда один объект предоставляет зависимости другого объекта. Объекты PHP, которые не содержат состояния, называются сервисами и логически инкапсулируются в контейнеры сервисов.

Применяя архитектуру Symfony’s Service Containers, мы выводим управление зависимостями и внедрение зависимостей для классов PHP на новый уровень. Этот подход направлен на замену контейнера ввода зависимостей Extbase и диспетчера объектов, что означает, что мы можем обойтись без GeneralUtility::makeInstance() для извлечения синглетонов и статических методов, таких как getInstance(), в будущем.

Разработчикам рекомендуется прочитать документацию Symfony и следить за инициативой PSR-11 и ее подзадачами.

Диспетчер событий

Мы говорили вам: версия 10.0 TYPO3 - это идеальный выпуск, чтобы представить новые современные технологии, чтобы взволновать каждого разработчика TYPO3. Фактически, мы активно участвовали в разработке стандарта PSR-14 за последний год и добавили его во вселенную TYPO3.

Хуки и концепция Сигнал/Слот - одна из суперспособностей TYPO3. Последнее позволяет расширить функциональные возможности ядра за счет излучения сигнала и уведомления других компонентов о конкретном событии. Разработчики расширений TYPO3 могут использовать эту технологию и опираться на основную функцию.

Теперь мы добавили диспетчер событий в ядро TYPO3 (четко определенное в PSR-14), которое имеет тот же API, что и Zend Framework или компонент EventDispatcher Symfony. «События» будут добавлены в ходе следующих спринтерских выпусков TYPO3, и эта технология нацелена на замену хуков и сигналов/слотов в среднесрочной перспективе.

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

Новый почтовый API

TYPO3 использует многофункциональную библиотеку библиотеку SwiftMailer для генерации и отправки электронных писем. Однако активная разработка зашла в тупик, и мы решили использовать другое замечательное решение Symfony с современным API: пакет “Mime” для составления электронных писем и пакет “Mailer” для их обработки и отправки.

Оба компонента являются самыми современными и позволяют нам генерировать электронные письма на основе HTML в различных местах ядра, где в настоящее время реализуются простые текстовые электронные письма.

Системные расширения извлечены

Ранее включенные системные расширения «Аутентификация RSA» (ключ расширения rsaauth), «Центр задач» (центр задач ключа расширения), «Действия» (ключ расширения sys_action) и «Редактирование внешнего интерфейса» (ключ расширения fe_edit) были перемещены в репозиторий общедоступного расширения TYPO3.

Эти расширения будут обновляться, но на них больше не распространяется политика поддержки и обслуживания TYPO3, которая применяется к ядру TYPO3.

Стратегия выпуска TYPO3

Основная команда TYPO3 выпускает LTS-версии (долгосрочная поддержка) каждые 1,5 года. Эти версии активно поддерживаются и поддерживаются в течение 18 месяцев и получают исправления безопасности и критические обновления в течение дополнительных 18 месяцев. Это дает в общей сложности 3 года бесплатной поддержки со стороны сообщества TYPO3.

Поскольку LTS-версии выпускаются каждые 1,5 года, но поддерживаются в течение 3 лет, всегда есть две стабильные LY-версии TYPO3, которые активно поддерживаются в актуальном состоянии и защищены без существенных изменений.

Серия релизов состоит из нескольких спринт-релизов, начиная с «0». TYPO3 версии 9.0 и версии 10.0 являются типичными примерами. Новые спринт-релизы публикуются каждые 8–12 недель, пока не будет выпущена LTS-версия, которая знаменует собой конец серии релизов. Релизы Sprint являются передовыми, но в то же время хорошо протестированы и достаточно стабильны, чтобы их можно было использовать в новых проектах. Обновление между двумя выпусками спринта (например, с версии 10.1 до версии 10.2) считается тривиальным и не должно занимать много времени.

TYPO3 v9 LTS (также известная как версия 9.5.x) была выпущена в октябре 2018 года. Следующей версией LTS будет TYPO3 v10 LTS, выпуск которой запланирован на апрель 2020 года.

Загрузка и установка

Существуют различные способы установки TYPO3. Традиционным способом является загрузка исходного пакета на get.typo3.org. Вы также можете использовать современный подход и настроить проект с помощью composer (на самом деле, это рекомендуемый способ сегодня). Подробные инструкции по установке доступны по адресу get.typo3.org/version/10 и в официальном Руководстве по установке и обновлению.

Обновление от TYPO3 v9 LTS

Одна из целей, которые мы определили на ранних этапах этапа разработки TYPO3 v9, заключалась в том, чтобы максимально упростить обновление одной основной версии на другую, и мы сдержали свое обещание!

Если вы уже используете TYPO3 v9 LTS и все расширения помечены как совместимые, обновление до TYPO3 v10 должно быть простым и понятным. Мы настоятельно рекомендуем использовать сканер расширений TYPO3 (ADMIN TOOLS → Upgrade → Scan Extension Files), чтобы определить возможные проблемы перед выполнением обновления. Типичными проблемами являются специально разработанные расширения, использующие старые API, которые устарели или удалены в соответствии с политикой устаревания TYPO3. Сканер расширений содержит полезные и подробные инструкции по обновлению кода.

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

Системные Требования

Для TYPO3 v10 требуется PHP версии 7.2 или выше (те же требования PHP, что и для TYPO3 v9 LTS). Поддерживается широкий спектр серверов баз данных и механизмов баз данных. Это включает в себя MySQL, MariaDB, Microsoft SQL Server, PostgreSQL и SQLite. Версия 5.7 является минимально необходимой версией, если вы используете MySQL, а версия 8 является рекомендуемой версией для TYPO3 v10. Рекомендуемая версия MariaDB - версия 10.3. Все современные веб-серверы поддерживаются TYPO3 v10, включая, например, Apache, Nginx и IIS.

К бэкэнду TYPO3 v10 можно получить доступ со всех современных браузеров, таких как Mozilla Firefox, Microsoft Edge и Google Chrome. Хотя по-прежнему можно использовать Microsoft Internet Explorer для работы в интерфейсе администрирования TYPO3, он официально больше не поддерживается.

Что дальше

Вы согласитесь с тем, что изменения и улучшения в TYPO3 версии 10.0 удивительны, особенно для разработчиков TYPO3 - но это только начало увлекательного путешествия! Новые API, представленные в версии 10.0, прокладывают путь к появлению новых возможностей.

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

ЛогоНазваниеТипДемоСсылки
image
image