Bidra med kod
Webperf Core är öppen källkod under MIT-licens och har utvecklats av ett community sedan 2019. Bidrag är välkomna, och de behandlas likadant oavsett vem som skickar in dem.
Innan du börjar
Titta i issues om någon redan arbetar med samma sak, och säg till i Slack om du tänker ge dig på något större. Det sparar tid för alla.
Arbetsgång
- Forka repot
- Klona din fork och skapa en gren för ändringen
- Följ lokal installation
- Gör ändringen
- Kör linting och relevanta tester
- Skicka en pull request mot
main
Kodkvalitet
Python-koden kontrolleras med PyLint och JavaScript med ESLint. Båda körs automatiskt på varje pull request. Lintningen körs mot Python 3.10 och 3.13, medan regressionstesterna bara körs på 3.13.
pylint *.py
npm run lint
Regressionstester
Varje test har ett eget arbetsflöde under .github/workflows/, till exempel regression-test-http.yml. De kör testet mot en känd webbplats och jämför utfallet med ett förväntat resultat.
Ändrar du något i tests/utils.py eller helpers/ påverkar du fler tester än det du tittar på. Kör då fler regressionstester än det uppenbara.
Att tänka på
Testnumren är permanenta. Ett pensionerat test ersätts med TEST_DEPRECATED på sin plats i tupeln. Det tas aldrig bort. Se arkitektur.
Betygsändringar får konsekvenser. Ändrar du hur ett betyg räknas ut ändras historiken för alla webbplatser på Webperf.se. Sådana ändringar bör diskuteras innan de görs.
Nya strängar ska översättas. Lägger du till text som visas för användaren behöver den finnas i språkfilerna. Se översättningar.
Bidra på andra sätt
Det behövs inte kod för att hjälpa till:
- Rapportera buggar och beskriv hur de går att återskapa
- Förbättra dokumentationen, både här och i repot
- Översätta till fler språk
- Svara på frågor i Slack