Bijdragen.
De ontwikkeling van DXPR Builder gebeurt op GitHub op github.com/dxpr/dxpr_builder. Alle bijdragen volgen de workflow die is beschreven in CONTRIBUTING.md van de repository.
Git-workflow
- Elke pull request moet gekoppeld zijn aan een GitHub-issue
- Naamgevingsconventie voor branches:
person/target-branch/#issue-description(bijv.jur/3.x/#42-fix-carousel-autoplay) - Schrijf atomaire commits volgens de alphagov Git styleguide
- Pull requests moeten een korte beschrijving van de oplossing bevatten
- Houd wijzigingen binnen de scope van de issue: geen niet-gerelateerde opmaak of refactoring
Code-eigenaar
@jjroelofs is de code-eigenaar. Zonder hun review kan geen enkele pull request worden gemergd.
Codeerstandaarden
- PHP: Drupal-codeerstandaarden
- JavaScript: alleen ES6+ (geen
var, geen jQuery in nieuwe code). Volg de Airbnb JavaScript-codeerstandaarden met projectuitzonderingen - CSS: volg het Design System voor custom properties en tokennamen
- Een wijziging aan de
showed-methode van een element moet de bijgewerktedxpr_frontend.jsbevatten. Genereer deze uit de volledige output die de editor naar de browserconsole print wanneer je op de opslaanknop van een container klikt. - Nieuwe functies hebben QA Analytics-dekking nodig.
Draai npm install één keer na het klonen. Het installeert de Husky
pre-commit hook, die je gestagede bestanden lint; zie
Testen.
E2E-tests draaien
Tests worden gestart via slash-opdrachten in PR-reacties:
| Opdracht | Beschrijving |
|---|---|
/e2e |
Draai de volledige BS5-editor- en anonieme suites |
/e2e groups=group-name |
Draai specifieke testgroepen |
/e2e tests=ClassName |
Draai specifieke testklassen |
/e2e-bs3 |
Draai de BS3-editorsuite |
/e2eV2 |
Draai de BS5-suites op de DXPR CMS-stack |
/e2e maven_ref=branch |
Test met een aangepaste dxpr_maven-branch |
Wanneer een builderwijziging een testwijziging nodig heeft, werkt de QA-engineer
dxpr_maven bij op een branch en draai je /e2e maven_ref=<branch> op
je pull request. De pull request van de builder wordt eerst gemergd, daarna die
van dxpr_maven.
Voordat je een review aanvraagt
- Implementeer de wijziging
- Test zorgvuldig
- Doe een opschoon- en refactorronde
- Test opnieuw om te bevestigen dat er niets stuk is
- Commit en push met een schone git-geschiedenis
- Controleer of de lintercontroles slagen
- Plaats
/e2eals reactie op de PR om regressietests te draaien - Vraag een review aan nadat alle controles zijn geslaagd