Василий Наумкин

Василий Наумкин

С нами с 08 декабря 2012; Место в рейтинге пользователей: #1

Конфликт зависимостей Guzzle в MODX 3

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

Итак, юзер @Futuris установил новенький mmxForms и словил Fatal Error 500 на сервере, при попытке создать форму.

В логах нашли вот такое сообщение:
PHP Fatal error:  
Declaration of Slim\Psr7\Uri::withScheme($scheme) must be compatible with
Psr\Http\Message\UriInterface::withScheme(string $scheme): Psr\Http\Message\UriInterface
in ...
Как же так? Почему у меня работает, а у него нет?
Василий Наумкин
22 марта 2024, 11:29
modx.pro
1
1 047
+19

Новый тип дополнений: mmxDatabase и mmxForms

Привет, друзья, давно не виделись!

Прошло уже более 3х лет, как я перестал активно работать с MODX и занялся своим проектом Vesp. За это время я создал много разных сайтов и библиотек, неплохо освоил современные технологии, а теперь возвращаюсь порадовать сообщество MODX.

Почти год назад я уже написал заметку о фундаментальной проблеме в 3й версии MODX, и даже предложил готовый вариант её решения, но никакой реакции это не вызвало. Судя по количеству закачек (целых 10!), никто даже не попробовал установить новое дополнение и посмотреть, как оно работает.

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

А у меня есть свободное время, так что я решил немного подорвать экосистему новым типом дополнений, которые должны быть настолько хороши, чтобы заставить вас использовать Composer с MODX 3.
Василий Наумкин
20 марта 2024, 14:55
modx.pro
7
662
+25

Про перспективы MODX 3

Последние полгода работаю в голландской компании Sterc, в основном, с MODX 3, хотя и не собирался. Не то, чтобы мне это очень нравилось, но деньги платят отличные.

Sterc интенсивно проводит апгрейды своих клиентов на 3ю версию MODX, в ходе которых обнаружилась очень неприятная проблема, и это — Composer. Да-да, тот самый composer, который мы дружно в MODX запихивали, стал причиной больших проблем. Точнее, не он сам, а его реализация.



Несмотря на прикрученный composer, MODX 3 всё еще использует свой собственный формат дополнений. Более того, MODX не устанавливает composer.json по умолчанию, предлагая уже скачанную директорию core/vendor со всеми зависимостями.
Василий Наумкин
23 июня 2023, 19:35
modx.pro
1
1 548
+17

MODX + Docker

Всем привет!

Увидел тут в комментариях к одной заметке вопрос про MODX в Docker. Так уж совпало, что я как раз недавно освоил работу с Docker для своих проектов на Vesp, и Pixmill попросили меня сделать что-то такое же и для MODX.



Вызов был принят — и вот результат github.com/bezumkin/modx-docker, можете использовать. Ниже будут пояснения.
Василий Наумкин
15 ноября 2022, 07:09
modx.pro
8
2 087
+22

pdoParser против modParser

Третьего дня Сергей Шлоков провёл новый тест скорости работы парсера MODX и шаблонизаторов Fenom и Smarty.

До Smarty мне дела нет, но с итоговыми выводами, что никакой разницы в скорости между синтаксисом MODX и Fenom не видно, я категорически не согласен.



Итак, что нужно прояснить. У оригинального парсера MODX modParser есть две, на мой взгляд, фундаментальные проблемы:

Во-первых, каждый тег при разборе превращается в PHP объект modTag и в нём запускается метод process. То есть, если в чанке указан просто [[+id]], то MODX вместо обычной замены его через str_replace будет создавать новый объект и парсить.

Во-вторых, из-за своей рекурсивной природы, MODX выполняет все условия в чанках. Он просто не знает, во что могут превратиться эти условия на пятой, например, итерации. Причём делает он это изнутри наружу.
То есть, если вы прячете какой-то кусок оформления для вывода только нужным пользователям за условиями в чанке — именно этот кусок и будет первым делом разобран, а потом MODX решит, нужно ли его выводить, когда проверит условие с юзером. Народ придумывает разные костыли для обхода этого момента, чтобы парсить только нужное, типа [[![[+user:is=`admin`:then=`auth`:else=`guest`]]]].
Василий Наумкин
26 апреля 2022, 08:11
modx.pro
1 535
+27

Почему AjaxForm использует сессии?

Всем привет, давно не виделись!

Переодически почитываю новости на сайте и вот увидел ветку комментариев про хранение данных в сессии.

Казалось бы, совершенно заслуженный камень в мой огород, как автора дополнения. Зачем использовать сессии для ajax сниппетов, ведь сама по себе эта технология сессий не требует? Так-то оно так, но в мире MODX всё несколько сложнее.
Василий Наумкин
04 августа 2021, 10:03
modx.pro
1
2 642
+20

Завершение работы с MODX

Не знаю, заметили вы или нет, но из обещанного на 2020 год я так ничего и не сделал. Пытался, садился что-то делать много раз.
Больше чем на половину даже сделал новый modx.pro на Vue, но и там вдохновение закончилось как только понял, что сам им пользоваться уже не буду. Больше не прёт, увы.

Думаю что всё, что я мог сделать для MODX, уже сделал. Соответственно, пора перестать страдать фигней и просто уйти.

Поэтому в течение 2х месяцев, до 2021 года, нам нужно разобраться с кое-какими вопросами.
Василий Наумкин
05 ноября 2020, 13:22
modx.pro
4
3 576
+58

Деплой проекта на сервер из Github

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

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

А потом я наткнулся на ранее неизвестные мне возможности Git — его хуки.
Василий Наумкин
01 октября 2020, 11:54
modx.pro
12
15 815
+19

Отказ от поддержки modx.com

Не хочу писать эту заметку, но нужно информировать общественность.

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

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



Конечно, я не был там особо активен, но вот так просто взять и выкинуть — это перебор. Возможно конечно, что чат и вовсе закрыли, но у нормальных людей принято о подобном предупреждать.
Василий Наумкин
19 сентября 2020, 05:07
modx.pro
4 591
+19

Платные дополнения Sterc уходят в Open Source

Получил на почту анонс с просьбой перевести и разместить у нас тут.

Вот, размещаю, и перевожу как могу. Для начала оригинал:
On August 1st, 2020 all premium MODX Extras created by ​Sterc​ will be free. We have
decided to stop with paid MODX plugins so we can focus on our core-business. This is of
course creating awesome websites and web applications based on MODX and especially
MODX3.

This decision will offer other developers in the MODX community to improve our extras even
faster, as you are used to with our free extras. This also means that we may hire (remote)
MODX developers to work on these extras or ​MODX3​ itself, because we highly value those
two things and we feel they should continue to be improved. Open source doesn’t mean all
work has to be done free of charge. Where some people can offer development resources
by offering their talents and time, other people can fund them. Let’s speed up innovation
together!
Василий Наумкин
29 мая 2020, 15:56
modx.pro
5
2 050
+27