Участь у розробці.
Розробка DXPR Builder відбувається на GitHub у github.com/dxpr/dxpr_builder. Усі внески дотримуються робочого процесу, описаного в CONTRIBUTING.md репозиторію.
Git-процес
- Кожен пул-реквест мусить бути прив’язаний до задачі GitHub
- Конвенція іменування гілок:
person/target-branch/#issue-description(напр.jur/3.x/#42-fix-carousel-autoplay) - Пишіть атомарні коміти, дотримуючись стильгайду Git alphagov
- Пул-реквести мусять містити короткий опис рішення
- Тримайте зміни в межах задачі: без непов’язаного форматування чи рефакторингу
Власник коду
@jjroelofs власник коду. Жоден пул-реквест не може бути злитий без їхнього перегляду.
Стандарти кодування
- PHP: стандарти кодування Drupal
- JavaScript: лише ES6+ (без
var, без jQuery в новому коді). Дотримуйтеся стандартів кодування JavaScript Airbnb з винятками проєкту - CSS: дотримуйтеся дизайн-системи для власних властивостей та іменування токенів
- Зміна методу
showedелемента мусить включати оновленийdxpr_frontend.js. Генеруйте його з повного виводу, який редактор друкує в консоль браузера, коли ви натискаєте кнопку збереження контейнера. - Нові функції потребують покриття QA Analytics.
Запустіть npm install один раз після клонування. Він встановлює хук
pre-commit Husky, який лінтує ваші підготовлені файли; див.
Тестування.
Запуск E2E-тестів
Тести запускаються слеш-командами в коментарях PR:
| Команда | Опис |
|---|---|
/e2e |
Запуск повних наборів редактора BS5 та анонімних наборів |
/e2e groups=group-name |
Запуск конкретних тестових груп |
/e2e tests=ClassName |
Запуск конкретних тестових класів |
/e2e-bs3 |
Запуск набору редактора BS3 |
/e2eV2 |
Запуск наборів BS5 на стеку DXPR CMS |
/e2e maven_ref=branch |
Тест із власною dxpr_maven-гілкою |
Коли зміна конструктора потребує зміни тесту, QA-інженер оновлює
dxpr_maven у гілці, а ви запускаєте /e2e maven_ref=<branch> на
своєму пул-реквесті. Пул-реквест конструктора зливається першим, потім
dxpr_maven.
Перед запитом перегляду
- Впровадьте зміну
- Ретельно протестуйте
- Зробіть раунд прибирання/рефакторингу
- Перетестуйте, щоб підтвердити, що нічого не зламалося
- Закомітьте та запуште з чистою історією git
- Перевірте, що перевірки лінтерів проходять
- Прокоментуйте
/e2eу PR, щоб запустити регресійні тести - Запросіть перегляд, коли всі перевірки пройдуть