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

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

С нами с 08 декабря 2012; Место в рейтинге пользователей: #1
Василий Наумкин
27 марта 2024, 13:23
0
И по факту будет сайт с двумя видами дополнений.
Именно так, да — переходный период.

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

Заодно это неплохой предлог перевести текущие актуальные компоненты на новые рельсы, выкинув всякое старьё. Мы же чисто теоретически.

Но другого в ближайшее время в MODX не будет.
С таким подходом — тем более.

В любом случае, спорить я не буду и работа с транспортными пакетами останется головной болью того, кто ими будет заниматься.
Василий Наумкин
27 марта 2024, 12:30
0
ну явно что не rest.modx.com.
То есть ты еще и какой-то репозиторий доработаешь, и в админку MODX новые функции для работы с пакетами протолкнёшь?

Прям не терпится почитать, что тебе в MODX LLC ответят на pull-request.

в случае с закрытым репозиторием как подписывать и узнавать об обновлении?
А как из него код качать? Если есть доступ — будут и уведомления. Тем более, если за доступ еще и платить надо будет.
Василий Наумкин
27 марта 2024, 11:33
+1
И автоматом загружать в репозитории.

И всё для того, чтобы пользователи не начинали развиваться.

Я эти дополнения сделал с противоположной целью, если что — заставить юзеров MODX пользоваться композером.
Василий Наумкин
27 марта 2024, 11:32
0
из наиболее логичного это инфу должен давать репозиторий на запрос CheckUpdates
Это как? Какой репозиторий будет проверять версию пакета в packagist.org и показывать в админке кнопку «обновить»? И что будет происходить при нажатии на эту кнопку?

Еще раз говорю, что если ты хочешь завязать работу на транспортные пакеты, тебе придётся обновлять их версию в репозиториях MODX.

ну так сейчас ты не про интерфейс управления?
Нет, я про консоль в админке, где надо будет пальчиками вбивать команды composer и читать ответы. Что-то типа такого интегрировать.

И вопрос — а как юзер узнает об обновлении если поставил пакет напрямую через композер?
Я предлагаю подписываться на релизы в репозитории:

Там можно следить за любыми разработками, не только для MODX — очень удобно.
Василий Наумкин
27 марта 2024, 10:20
0
1. Ты не ответил — как юзер узнает о релизе новой версии, если ты не загрузишь новый транспортник в репозиторий MODX?

У него же в управлении пакетами не загорится обнова, сам он «переустановить» не догадается нажать, composer пользоваться не умеет. Как обновляться-то?

Но согласись не хватает интерфейса для управления в админке?
Не соглашусь, это примерно то же, что уже произошло с MODX 3 — обновили на полшишечки, чтобы юзеров не распугать, теперь разгребаем.

У Composer уже есть отличный CLI. Лучше уж сделать пакет с окошком терминала для работы с этим CLI из админки, если так страшно заходить в консоль сервера.
Василий Наумкин
27 марта 2024, 09:06
0
PS. Василий сильно не ругайся!
Не буду, но у меня два вопроса.

1. У каждого транспортника своя версия, по которой админка отслеживает обновления, и если ты опубликуешь этот транспортник в репозитории MODX или modstore, то получается, тебе же надо будет следить за моими релизами на Github, и каждый раз менять версию этого транспортника?

Потому что иначе пользователи транспортника и не узнают, что есть обновление — они же не умеют делать composer update из консоли. Ну и откат на предыдущую версию вряд ли будет работать.

2. Судя по коду, этот пакет разворачивается в core/components/mmxforms и будет лежать рядом с оригинальным core/components/mmx-forms. То есть, рядом будет 2 похожие директории: одна для транспортника, вторая для оригинального дополнения.

В общем, всё это как-то костыльно, но пусть пользователи нас рассудят. Кто хочет — будет учиться работать с composer, кто не хочет — будет скачивать виртуальные транспортники.
Василий Наумкин
26 марта 2024, 10:40
0
Думаю, речь о том, чтобы посмотреть на исходники mmxForms и делать такие же компоненты с административной частью на Vue 3.

Тогда можно будет получить (или использовать) актуальные знания, вместо ненужного древнего ExtJS 3.4.1.1, которому уже 11 лет.
Василий Наумкин
25 марта 2024, 10:29
0
Каким образом можно будет избежать конфликтов
Composer просто не позволит установить конфликтое приложение, и ничего не сломается.

Нужно будет поискать более подходящее приложение, или попросить автора адаптировать своё. Например, указать другие возможные версии зависимостей, как уже сделал я с vesp/core, для нормальной работы в MODX 3.
Василий Наумкин
24 марта 2024, 19:24
0
Скорее, это что-то с настройкой веб-сервера, потому что на modhost.pro дружественные url включать не нужно.

Главное, чтобы любой запрос попадал на index.php, а там уже сработает плагин.
Василий Наумкин
24 марта 2024, 17:18
0
Все запросы в приложение перехватываются плагином на onHandleRequest, дальше проверяется адрес запроса и, если он начинается с /mmx-forms/, то передаётся контроллеру.

У тебя, судя по всему, или не работает плагин mmxForms, или запрос перехватывает раньше кто-то другой. Во всяком случае, текст ошибки не выглядит как обычная страница MODX.

Я только что проверил работу на modhost — всё отлично, проблем нет.


Попробуй и ты, я дополнил заметку инструкцией для этого хостинга.
Василий Наумкин
21 марта 2024, 16:32
+1
1. Что делать, если зависимостей много и установка прервётся по таймауту? Это же web-запрос
2. Как отвечать на вопросы от Composer при разруливании зависимостей?

Но я, конечно, никому не могу помешать так делать.
Василий Наумкин
21 марта 2024, 13:58
0
Это тоже изврат, не надо такое поддерживать.

Мало того, что это сам по себе костыль, так еще и непонятно как зависимости через админку разруливать, в случае чего. А дальше надо опять как-то собирать траспортный пакет через MODX, грузить в репозитории, там еще что-то может поломаться…

Народ даже придумал консольный сборщик GPM, который работает по json схеме. Никому не нравится собирать транспортные пакеты, это издевательство.

Куда лучше потихоньку писать новые дополнения и переводить старые на установку из Composer. Будут хорошие дополнения использовать этот подход — будут и юзеры.
Василий Наумкин
21 марта 2024, 13:47
+3
сторонние модели возможно добавлять в список поддерживаемых разработчику
Да конечно, как только mmxDatabase установлен в системе, можно писать свои модели, расширяющие класс Model из Eloquent.

Любой будущий пакет может просто указать у себя в зависимостях mmx/database, а так как у нас всё через Composer, то установлен он будет только один раз, неважно сколько пакетов его требуют.

использование компонента на фронте выливается примерно в 1,5 мб дополнительного css и js?
Это только если без gzip — а с ним 420 Кб.


Тоже многовато, но оно закэшируется и больше грузиться не будет. Для всех форм на всех страницах будет грузиться один и тот же комплект файлов.
Василий Наумкин
20 марта 2024, 16:21
+1
такое уже есть в SendIt
У Vueform всё немного сложнее. Там грузятся временные файлы до отправки формы, а потом их можно удалить или заменить.

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

В логике mmxForms это новые таблицы, модели и связи. Sendit, насколько я вижу по исходникам, с БД вообще не работает.
Василий Наумкин
13 марта 2024, 10:34
0
Стоит еще добавить, что если сайт использует современнный CSS фреймворк, то он уже может поддерживать тёмный режим из коробки.

Например, вот как это работает в Bootstrap 5.3.
Василий Наумкин
09 марта 2024, 16:05
+4
Если дело только в английском — то не парься, все всех поймут. В крайнем случае доставай телефон, переводи там и показывай, никаких проблем.

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

Больше переводчиков на тусовкох не было, насколько я помню.
Василий Наумкин
09 марта 2024, 15:59
0
а у MODX как движка есть дорожная карта?
Неа, ничего нет и ждать не стоит. Всё будет примерно как сейчас. Собственно, ровно так же, как оно было и с Evolution.

Если нужно развитите — или переходи на другие системы, или развивай сам. Других вариантов, на мой взгляд, давно уже нет.
Василий Наумкин
09 марта 2024, 04:55
+2
Я так понимаю, системе помогут твои полезные комментарии.

Неинтересно — проходи мимо, чего вонять-то.
Василий Наумкин
09 марта 2024, 04:42
0
Ну, например, я заработал много денег, сотрудничая с людьми, с которыми познакомился именно на этих ивентах. И до сих пор продолжаю зарабатывать.

Обычно всё главное происходит до и после официальной части. Презентации и доклады — это просто официальный повод встретиться и затусить.
Василий Наумкин
06 февраля 2024, 08:43
+1
Весь.

Только при работе из браузера запрос обычно обслуживает php-fpm с одним конфигом, в при запуске из консоли php-cli с другим.

MODX должен пытаться выставить правильную временную зону всё равно, но конфиг PHP может запрещать это делать.