Menyumbang
Persediaan
Buat satu perubahan kecil di tempat yang betul dan hantar sebagai pull request.
Sebelum bermula
Pautan ke Sebelum bermula- Buka isu dahulu, atau beri komen pada isu yang sedia ada. Nyatakan apa yang anda mahu ubah dan sebabnya.
- Tunggu balasan, supaya anda tidak membina sesuatu yang tidak akan digabungkan.
- Selesaikan Persediaan supaya anda boleh membina dan menjalankan HolyArrs.
Soalan ke Discord. Idea ke r/HolyArrs. Isu untuk pepijat dan pelan hala tuju.
Hantar pull request pertama anda
Pautan ke Hantar pull request pertama anda-
Cari modul tempat perubahan anda berada. Nama dalam Modul sama dengan nama folder, jadi amaran Discord yang salah ialah perubahan dalam
alerts. -
Buat perubahan dalam
app/backend/internal/<module>/danapp/frontend/src/lib/<module>/. Hadkan kepada satu pembetulan atau satu ciri. -
Bina app web, kemudian program, dan cuba perubahan itu dalam pelayar. Lihat Persediaan.
-
Jalankan semakan dalam Pengujian.
Anda tidak akan nampak sebarang kegagalan.
-
Jika anda mengubah sesuatu halaman, jalankan projek hujung ke hujungnya, contohnya
npm --prefix app/frontend run e2e -- --project=movies. -
Buka pull request. Pautkan isu itu, nyatakan apa yang berubah dan cara anda mengujinya, serta tambah atau kemas kini ujian untuk perubahan itu.
-
Pada pull request pertama anda, bot akan meminta anda menandatangani perjanjian lesen penyumbang. Balas dengan satu ayat yang diminta.
Pilihan
Pautan ke PilihanKe mana perubahan pergi
Pautan ke Ke mana perubahan pergi| Perubahan | Pergi ke |
|---|---|
| Laluan baharu | Modul |
| Modul baharu | Modul. Buka isu dahulu |
| Ciri ditahan | Persediaan |
| Satu keluaran | Pengeluaran. Untuk penyelenggara sahaja |
Rupa pull request yang baik
Pautan ke Rupa pull request yang baik- Tulis komen yang menyatakan sebab kod berbuat demikian. Tiada nombor pelan hala tuju, tarikh, nama atau sengkang em dalam komen.
- Biarkan perkataan dalam app seperti sedia ada melainkan isu itu mengenai perkataan.
- Kekalkan laluan API yang sudah dikeluarkan, nama medan, kunci tetapan, nama jadual dan nama tugas seperti asalnya. Tambah, jangan namakan semula.
Jika tidak berfungsi
Pautan ke Jika tidak berfungsiGejala. Satu semakan struktur gagal. Punca. Mesej itu menamakan fail dan peraturannya. Penyelesaian. Alihkan kod, atau hantar data biasa dari modul yang lebih tinggi. Lihat Modul.
Gejala. App web nampak lama. Punca. Program menggunakan binaan yang dibenamkan padanya. Penyelesaian. Bina app web sekali lagi sebelum program.
Gejala. Ujian hujung ke hujung tidak dapat bermula.
Punca. Pelayar ujian belum dipasang.
Penyelesaian. Jalankan npx --prefix app/frontend playwright install chromium.
Untuk pakar
Pautan ke Untuk pakarPeraturan yang mesti dipatuhi pull request
- Sesuatu modul bercakap dengan modul lain hanya melalui servisnya (Go) atau
index.tsnya (web). Tidak pernah melalui stor atau failnya. - SQL hanya berada dalam fail
store*.gomilik modul, untuk jadual modul itu sendiri. - Bahagian web masuk ke
lib/uihanya apabila 2 atau lebih modul menggunakannya. - Tiada pakej
util,common,sharedatauhelpers. - Setiap panggilan ke luar melalui
core/outbound.
Ujian menyemak peraturan ini, jadi import yang salah menggagalkan binaan. Senarai penuh dan nama semakan ada dalam Modul.
Apa yang CI jalankan
| Tugas | Menjalankan |
|---|---|
| Web | check, lint, test, build dan suite hujung ke hujung |
| Go | go build, go vet dan go test -timeout 60m ./... pada amd64 dan arm64, secara natif dan di bawah emulasi |
| Race | go test -race ./... |
| Kontrak | Padanan openapi.json, semakan skop pada setiap laluan, suite pemuat turun |
| Kerosakan dan skala | Larian ranap, tulis perlahan, perkhidmatan luar yang rosak dan memori |
| Imej | Imej pembangunan dibina, bermula dan melaporkan versinya |
Butiran larian panjang ada dalam Pengujian.
Berkaitan
Pautan ke BerkaitanHolyArrs percuma. Jika ia menjimatkan masa anda, beri bintang di GitHub, taja projek ini atau belanja saya kopi.