Kehittäjien ohjeet - KohaSuomi/Koha GitHub Wiki
Koha-Suomen muutostiedostojen otsikointi
Koha-Suomen ominaisuuksia sisältävät muutostiedostot eli patchit tulee nimetä seuraavasti:
[Tiketin tietovarannon ID]-[tiketin numero]: [Kuvaava otsikko]
Esimerkki, Koha-tietovarannossa sijaitsevan tiketin 1234 muutostiedosto nimetään seuraavasti:
KOHA-1234: Tämä on esimerkki
Tietovarannon ID löytyy tietovarannon kuvauksesta sekä sivulta Tietovarannot ja liitännäiset. Jos tietovarannolla ei ole vielä lyhennettä, on sellainen kehitettävä ennen kuin muutos viedään testeille.
Yhteisön muutostiedostojen nimeäminen
Yhteisössä muutostiedostot nimetään seuraavasti:
Bug [yhteisön bugzillan tiketin numero]: [Kuvaava otsikko]
Esimerkki:
Bug 12345: This is an example
Yhteisöön ei hyväksytä muutostiedostoja jotka eivät noudata yllä olevaa nimeämistapaa. Virheellisestä otsikoinnista ilmoitetaan qa-tools-työkalussa. Poikkeuksena tästä ovat skeemamuutokset, joita ei ole tarkoitus lisätä sellaisenaan yhteisön main-kehityshaaraan. Ne nimetään seuraavasti:
DO NOT PUSH! Schema changes
Koha-Suomen kehityshaarojen luominen ja nimeäminen
HUOM! Ennen uuden kehityshaaran luomista sen tiedot tulee täyttää Tuotannossa olevat branchit-taulukkoon. Taulukosta löytyvät myös jo olemassa olevien kehityshaarojen järjestysnumerot. Uuden kehityshaaran järjestynumerona tulee aina käyttää isointa mahdollista käytettävissä olevaa numeroa.
Koha-Suomen kehityshaarat luodaan lähtökohtaisesti aina ks24-kehityshaaran pohjalta. Jos kyseessä on kuitenkin ominaisuus, joka on jollain tavalla riippuvainen toisen kehityshaaran koodista, kehityshaara on luotava tämän ominaisuuden kehityshaaran pohjalta
Koha-Suomen kehityshaarat eli branchit voidaan nimetä kahdella tavalla riippuen siitä, onko kyseessä Koha-Suomen oma ominaisuus vai yhteisöstä tuotu ominaisuus. Jos kyseessä on Koha-Suomi muutos, nimetään kehityshaara seuraavasti:
ksdev/ks-[kehityshaaran järjestysnumero]-[tietovarannon ID]-[tiketin numero]-[lyhyt kuvaus]
Esimerkki:
ksdev/ks-9999-KOHA-1234-this-is-an-example
Yhteisöstä tuotujen ominaisuuksien kehityshaarat nimetään seuraavasti:
ksdev/ks-[kehityshaaran järjestysnumero]-bug-[yhteisön bugzillan tiketin numero]-[lyhyt kuvaus]
Esimerkki:
ksdev/ks-9999-bug-12345-this-is-an-example
Koha-Suomen koodin checklist
Ennen kuin laitat koodia GitHubiin muistathan nämä:
- Selkeä nimeäminen tiedostoille, tauluille, metodeille ja muuttujille.
- Selkeä kommentointi koodille + pidä huoli sisennyksistä, käytä sisennykseen neljää (4) välilyöntiä. Perl-koodin kanssa voi käyttää perltidyn sisennystapaa.
- Tietokantamuutoksille atomicupdate installer/data/mysql/atomicupdate/, nimeä kommitilla ja tiedostopääte .pl. Lisäksi asennusta varten kohastructure.sql ja/tai sysprefs.sql
- Uudet järjestelmäasetukset oikeille paikoilleen koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences -hakemiston alla oleviin .pref -tiedostoihin
- Uudet CPAN-moduuliriippuvuudet PerlDependencies-tiedostoon.
- Nimeä commitit ja branchit Koha-Suomi nimeämistavan mukaisesti.
- Jos muutos on menossa myös yhteisöön, pyri ottamaan alusta asti huomioon myös yhteisön koodauslinjaukset. Näin vältyt turhalta työltä siinä vaiheessa, kun yrität saada muutosta läpi yhteisössä.
Yhteisön koodin checklist
Yllä olevan Koha-Suomen checklistin lisäksi muista nämä:
- Jos muutat metodeja/funktioita, muista testata että testit toimivat ja muuta niitä tarvittaessa. Jos kirjoitat uuden metodin/funktion, tee sille oma testi.
- HUOM! Jos muutat esimerkiksi C4::Circulation.pm moduulia, ei välttämättä riitä että teet muutokset testiin Circulation.t. Aja terminaalissa t/db_dependent/Circulation*, jolloin kaikki C4::Circulationiin liittyvät testit tarkistetaan.
- HUOM! Aja testit mieluummin yhteisön testikantaan, jossa ei ole paljoa dataa. Jo Siilin testikanta on liian iso esimerkiksi Circulation.t testeille.
- Kirjoita mahdollisimman kattava testausohje.
- Lisää patchin kuvauksen loppuu "Sponsored-by: Koha-Suomi Oy"
- Yhteisön qa-test-tools on hyvä apuväline omien patchien testaamiseen ennen yhteisöön vientiä. Asennusohjeet löydät täältä.
- Varmista koodisi oikea muotoilu perl-tidylla.
Muutostiedoston vieminen Bugzillaan:
- klikkaa "Add an attachment"
- liitä muutostiedosto
- kopioi muutostiedoston otsikko "Description" tekstikenttään
- klikkaa "patch" checkboxia
- kopioi muutostiedoston kuvaus "Comment" tekstikenttään
HUOM! Muista merkitä bugin assigneeksi itsesi ja asettaa bugi "Needs Signoff"-tilaan
Tarkemmat yhteisön ohjeet löydät seuraavien linkkien takaa: