Участь у розробці.

Вивчення DXPR BuilderРозширенняІнструменти

Розробка DXPR Builder відбувається на GitHub у github.com/dxpr/dxpr_builder. Усі внески дотримуються робочого процесу, описаного в CONTRIBUTING.md репозиторію.

Git-процес

  1. Кожен пул-реквест мусить бути прив’язаний до задачі GitHub
  2. Конвенція іменування гілок: person/target-branch/#issue-description (напр. jur/3.x/#42-fix-carousel-autoplay)
  3. Пишіть атомарні коміти, дотримуючись стильгайду Git alphagov
  4. Пул-реквести мусять містити короткий опис рішення
  5. Тримайте зміни в межах задачі: без непов’язаного форматування чи рефакторингу

Власник коду

@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.

Перед запитом перегляду

  1. Впровадьте зміну
  2. Ретельно протестуйте
  3. Зробіть раунд прибирання/рефакторингу
  4. Перетестуйте, щоб підтвердити, що нічого не зламалося
  5. Закомітьте та запуште з чистою історією git
  6. Перевірте, що перевірки лінтерів проходять
  7. Прокоментуйте /e2e у PR, щоб запустити регресійні тести
  8. Запросіть перегляд, коли всі перевірки пройдуть