MODX-Дайджест #2 (11 марта – 25 марта 2019)



Свежая подборка новостей о MODX. В выпуске: ночные сборки 3 версии, новый SEO Tab, большое обновление компонентов Василия Наумкина, упоминания пользователей на MODX.pro и некоторые подробности рефакторинга от Джейсона.

Приятного чтения!

Новости и события


Подкаст о MODX – Модкаст

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

Ночные сборки MODX 3

Недели две назад ребята из Sterc попросили собрать рабочий билд 3 версии, так как с прошлого релиза альфа-версии прошел уже почти год, а работы было сделано не мало за это время. Я попробовал собрать, но с первого раза не получилось, начал разбираться, а потом и вовсе решил, зачем делать руками, если можно автоматизировать и сделал сервис с ночными сборками, где билды собираются каждую ночь – https://nightly.modx.by/



В планах добавить еще загрузку языков прямо с Crowdin, так как переводы обычно вливаются перед релизом, а в git-версии актуальные только тексты на английском. И вероятно, проверять, были ли изменения в репозитории и не плодить релизы без особой нужды (место на сервере тоже экономить нужно).

Разработка MODX


Так как был объявлен code freeze и Джейсон проспойлерил, что у него таки что-то получается, активность в репозитории эти две недели упала. Так это связано и с тем, что многие готовятся в митапу в Амстердаме в эту пятницу, потому нужно порешать рабочие и домашние дела, а кому-то еще и презентацию с докладом подготовить. Тем не менее, кой чего сделали.

  • MODX 3 теперь требует минимально установленную версии PHP – 7.0. Да, многие могут удивиться, почему не что-то посвежее, ведь 7.0 уже не поддерживается. Ответ прост, есть статистика (пускай и не всеобъемлющая), которая говорит, что около 40% пользователей все еще используют именно версию 7.0, поэтому лишать такое количество пользователей возможности обновления без серьезных на то основание (мы так решили и все тут) неразумно.

  • В рамках работы над сервисом с ночными сборками MODX 3 пришлось поправить немного скрипт сборки, чтобы он делал то, что должен. В частности, старый скрипт не умел устанавливать зависимости через Composer, теперь умеет.

  • Хорошую попытку сделать всем хорошо предпринял Михаил Воеводский, добавив системные биндинги code, file, inline прямо в ядро, чтобы можно было более эффективно писать код, как это сейчас возможно с компонентами, совместимыми с pdoTools. Однако есть вопросы в плане безопасности и вероятность того, что этот pull request будет принят, пока под вопросом.

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

Рефакторинг от Джейсона

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

Теперь все классы загружаются через PSR-4, что означает, что никаких больше require_once и loadClass, теперь достаточно подключить один autoload.php и использовать любые классы системы.

Модели теперь могут генерироваться и вероятно работают на xpdo 3.0, так же больше не будет строковых ссылок на классы: раньше писали 'modResource', теперь стоит писать modResource:class. Это повысит не только читабельность кода, но и даст возможность IDE более правильно анализировать код и давать подсказки.

Это все пока на словах, так как кода пока нет, но будем надеяться, что хотя бы к митапу будет результат. Если же нет, то есть план Б, о нем слушайте в подкасте.

Интересные заметки и статьи


  • Упоминание пользователей – Василий Наумкин на сайте сообщества добавил возможность упоминать пользователей через "@". Причем работает как в заметках, так и в комментариях. Может быть удобно, если нужно привлечь человека в какой-то тред, в котором он не участвует и следовательно, не следит за ним.

  • Чистка пользователей сообщества – пока делали упоминания, выяснилось, что в базе с пользователи некоторый бардак, которые мешает нормально новой функцией пользоваться, так что ряды пользователей поредели, неактивные были удалены, а остальным «причесали» логины, чтобы не сбоили.

  • [jwtSession] Перенос сессии в куки браузера – пример использования JWT-токенов в связке с MODX. Как эксперимент и решение отдельной задачи, штука весьма интересная, но повсеместное практическое применения вряд ли найдет. Однако ознакомиться стоит.

  • Защищаем MODX Revolution – пускай и не свежая, но все еще актуальная заметка о том, как позаботиться о безопасности и защите от взлома сайта на MODX.

  • Неплохие видео-уроки о MODX от Coddes. А еще у них сайт симпатичный.

Новинки и обновления дополнений


  • Theme.Bootstrap 3.0.0-pl – обновление стартового пакета с версткой Bootstrap до 4 версии CSS-фреймворка. Обновление затронуло и другие дополнения (pdoTools, miniShop2, mSearch2 и Office), которые его используют, как зависимость, так что перед обновлением ознакомьтесь подробнее с изменениями в заметке – https://modx.pro/components/17790.

  • SEO Tab 2.2.0-pl – большое обновление компонента, помогающего с SEO. Чего-то радикального не добавилось, но исправлено порядко 10 багов и с пяток мелких улучшений.

  • Jevix 1.3.1-pl – обновление типографа для MODX. Пару мелочей и подкапотные дела. Пост в поддержку – https://modx.pro/components/17827.

  • mSearсh2 1.13.1-pl – основное обновление – правильный учет цен после применения всяких разных плагинов, меняющих цену товара (как правло различные скидки). Теперь фильтры умеют правильно учитывать подобные изменения и показывают актуальные цифры в слайдерах и других местах.
    Подробнее в посте – https://modx.pro/news/17738.

  • SeoFilter 1.6.4-beta – добавлена поддержка ajax пагинации mFilter2, теперь совместим с MODX 3.

  • ResVideoGallery 2.0.0-beta – большое обновление сразу до 2 версии. Добавлена куча событий, теперь умеет в Fenom и может показывать фото из галереи miniShop2.

  • cityFields 1.2.2-pl – новые чанки на bootstrap, возможность изменить город через get-запрос и много других полезных исправлений и улучшений.

  • logRotation 1.0.0-beta – позволяет уменьшить размер лога с ошибками, путем удаления старых записей из лога при превышении заданного размера файла. Обсуждение и предложения по улучшению компонента в посте на сайте сообщества – https://modx.pro/components/17837.

  • Context Export 1.0.0-pl – компонент от Sterc, позволяющий экспортировать целый контекст в XML-формате. Умеет так же эскпортировать права доступа и медиа-элементы (то есть картинки и файлы).

  • Point of Interest 1.0.0-pl – еще один компонент от Sterc, который позволяет на карте Google вывести точки, заданные в MODX. Это могут быть ресурсы или какие-то записи другого компонента, или любые другие данные. Документация пока хромает.

Спасибо за внимание!

Если заметили ошибку – напишите мне, пожалуйста.
Вопросы и предложения пишите в телеграм.
Прислать ссылку в дайджест можно через эту форму.
Больше новостей и комментариев в Telegram-канале MODX Digest.

← Предыдущий выпуск

Не забывайте сказать спасибо автору!

P.S. Из дайджеста вырезаны ссылки на платные компоненты, чтобы не нарушать правила сайтов, где публикуется дайджест. Где их найти, вы сами прекрасно знаете.
Иван Климчук
27 марта 2019, 11:03
modx.pro
1
1 383
+30
Поблагодарить автора Отправить деньги

Комментарии: 12

Антон Тарасов
27 марта 2019, 11:23
+1
@Иван Климчук Спасибо за очередную большую работу и удачи на митапе!
Решил вот поблагодарить рублем, а мне Яндекс техническую ошибку рисует, не бывало такого ранее? take.ms/E7PIy Карта Visa от Альфа-банка.
Василий Наумкин
27 марта 2019, 11:26
+2
Рефакторинг от Джейсона
Судя по его комментариям, он пришёл ровно к тем же решениям, что и я год назад. Но теперь, зато, сам — и не нужно разбирать большой непонятный PR. Ну, хоть так.

P.S. Из дайджеста вырезаны ссылки на платные компоненты, чтобы не нарушать правила сайтов, где публикуется дайджест. Где их найти, вы сами прекрасно знаете.
Ага, справа вверху от заметки =)
    Иван Климчук
    27 марта 2019, 11:28
    0
    Ну на modx.pro не проблема ссылки написать, а на том же Хабре лучше не рисковать, поэтому без ссылок. Ну а править несколько версий для разных сайтов накладно по ресурсам и увеливичает риск ошибки, так что лучше однообразно везде. Тем более что не особо мешает.
    Руслан Алеев
    27 марта 2019, 12:54
    +2
    Спасибо за дайджест! Ждем подкаста!
      Сергей Шлоков
      27 марта 2019, 19:55
      0
      А что такое «теги на modx.pro»?
      Kiten
      07 апреля 2019, 18:26
      0
      Здравствуйте!
      Едва ли не первый вопрос, который приходит в голову (и не только мне), будет ли MODX 3 нативно поддерживать RESTful API и GraphQL, а не возвращать ошибку 405?
      Не передать словами, как хочется это увидеть!!!)))
      Спасибо за дайджест!
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        12