Создаём у себя на хостинге новый пустой сайт и пустую базу данных. Версию PHP поставьте 7.1. После этого подключаемся к серверу по SSH (с помощью Putty, например). На хостинге Beget есть SSH прямо в личном кабинете:
Заходим в корень новой пустой папки и скачиваем MODX с гитхаба:
cd modx-test.dev/public_html/ rm -rf * git clone https://github.com/modxcms/revolution .Точка в конце — это не опечатка. Она указывает, что нужно не создавать дочернюю папку revolution, а загружать прямо в текущую директорию.
После этого вводим такую команду (вроде, для простого теста необязательно, но не помешает):
git remote add upstream https://github.com/modxcms/revolution
Теперь выбираем, какой PR будем тестировать. Вот, например, реквест Ивана Климчука: github.com/modxcms/revolution/pull/14031
В нём нет комментариев, значит, наша помощь очень требуется. В самом верху написано
Alroniks wants to merge 13 commits into modxcms:3.x from Alroniks:3x-feature-13849_fa_and_updated_libs
Это значит, что Иван хочет «влить» 13 коммитов в ветку modxcms:3.x из своей ветки Alroniks:3x-feature-13849_fa_and_updated_libs.
Нам надо воспроизвести это действие. Сначала переключаемся на ветку modxcms:3.x (ту, куда автор хочет «влить» свои коммиты). После этого «собираем» MODX (если с консолью особо не знакомы, вводите каждую строчку отдельно):
git checkout 3.x composer install cd _build cp build.config.sample.php build.config.php cp build.properties.sample.php build.properties.php php transport.core.phpЕсли консоль что-то спрашивает, скорее всего, нужно нажать [y] и [Enter]
После этого запускаем site.ru/setup/ и устанавливаем MODX как обычно, только НЕ УДАЛЯЕМ папку setup (галочка должна быть снята).
Заходим в админку, любуемся MODX 3 и наполняем сайт каким-нибудь контентом. Я устанавливаю siteExtra. А вы придумайте что-то своё — тестировать надо на разных системах, с разными решениями.
Когда тестовый сайт будет готов, наполнен и будет нормально работать, мы можем приступать к тестированию. «Вливаем» коммиты Ивана на свой сайт:
git remote add Alroniks https://github.com/Alroniks/revolution git fetch Alroniks git checkout 3x-feature-13849_fa_and_updated_libsAlroniks и 3x-feature-13849_fa_and_updated_libs я взял всё в той же верхней строке пулл-реквеста на гитхабе.
После этого отключаем сжатие CSS и JS в системных настройках, очищаем кеш своего браузера и кеш MODX (чтобы изменения, собственно, увидеть).
Ну и начинается работа на Open source — читаем описание, переводим через Яндекс или Гугл. Понимаем, что Иван предлагает обновить FontAwesome, чтобы появились новые иконки. Идём на сайт FontAwesome, ищем старую версию и ту, которую предлагает интегрировать Иван, узнаём, какие иконки в этой версии появились и пробуем их назначить, например, шаблону.
У меня не получилось это сделать с первого раза, я спросил совета в чате MODX (в Telegram) и мне подсказали, что для этого PR нужно установить NodeJS и запустить команду grunt build. Вот инструкция по установке NodeJS на Beget: beget.com/ru/articles/webapp_nodejs
Когда всё сделано, переходим в _build/templates/default и вводим
npm i npm install -g grunt-cli grunt buildПосле этого иконки появились:
Багов, вроде, не обнаружено, поэтому я отписался в комментариях
I tested this PR. New icons work. No bugs found
Если не знаете точно, что можно писать, или как лучше сформулировать, напишите сначала Ивану лично — думаю, он поможет =)
После того, как один PR протестировали, делаем просто
git checkout 3.xи приступаем к следующему PR (начиная с места git remote add Alroniks...) — заново всю процедуру проделывать не нужно.
Это нужно для того, чтобы можно было легко обновить, например, phpThumb, не трогая MODX. Было бы такое раньше, не было бы последней волны взломов.
Даже сейчас иной раз такие перлы чез Fenom разработчики вставляют, что волосы дыбом.
Но добавится возможность устанавливать его через терминал — с помощью Composer.
Если кто-то не может в composer, то наверное стоит посмотреть в сторону дизайна. Хотя если человек не может в composer, то ему и в фотошоп тяжко будет. Если не усложнять modx, то он вскоре умрет.
И еще по поводу «Они кучу денег собрали, пусть сами тестируют.»… это каким мудаком нужно быть? Ты зарабатываешь на этой cmf деньги, (никто не принуждает конечно но....) можно поддержать проект если не рублем, то хотя-бы пр. Если ни то ни другое не устраивает, то просто притворись умным и помолчи.
99% разработчиков MODX просто собирают сайт, без элементарных знаний PHP, максимум немного вёрстки. И хостингов с таким окружением единицы.
Composer нужен программистам PHP.
grunt, gulp, npm профессиональным верстальщикам.
Много таких?
Норма для любого джуна, это основы при работе на реальном проекте, где есть что-то сложнее «Hello! Its my first html page».
Если хочешь статистики, то сам проведи опрос. А еще лучше зайди на гитхаб или поковыряй по тематическим сообществам и форумам, поймешь насколько популярны данные сборщики. Не нужно быть гением чтобы освоить эти инструменты, тем более, что при желании делается это за пару вечеров а в последствии экономят кучу времени при разработке/верстке.
>>> grunt, gulp, npm профессиональным верстальщикам
Мне вот интересно а верстаешь ты в блокноте? Наверное sublime, brackets и т.п. редакторы слишком сложны и нужны только профессионалам?!
>>> Composer нужен программистам PHP
Понимаешь в чем дело, modx написан на php. Компоненты на для modx тоже пишутся на php. Думаю ты сможешь связать два логических выражения…
Более того, даже когда ты просто собираешь сайт на modx, без знаний php, то так или иначе, он там задействован, или по твоему это все держится на темной магии?
Трудно было сделать дистрибутив, который элементарно ставится через /setup/?
Тем более пытаться что-то объяснить незнакомому человеку в интернете, который не может связать 2+2. С таким успехом я могу и с табуреткой поговорить.
Думаю на этом можно закончить диалог.
И где такие 99%? Лично я всячески пытаюсь подружить библиотеки на node js с modx. Ибо облегчает жизнь.То что хостингов мало с использованием Нод-ы, то это они отстали от нас, прогрессивных.
Мораль! Выходите из зоны комфорта.
IMHO
Пришлось добавить
Чтобы проверить соеденение с базой данных
Хотя вроде пространство имен должно было загузится от сюда
Теперь через composer ставится самая крайняя версия с последними изменениями!