Libyears

Mubvunzo: Ndeipi zera rekutsamira kwepurojekiti kana ichienzaniswa neyakagadzika yaburitswa?

tsananguro

Libyears anotsanangura zera re dependencies pane iyo purojekiti (repository, kana repositories yeinovakwa software) inotsamira, zvichienzaniswa nekutsiga kwazvino kuburitswa kweavo vanotsamira. A dependency's "current stable" kuburitswa kuburitswa kwakagadzirirwa kushandiswa zvakajairika, uye hakusanganisire mumiriri / gwaro rinoburitswa. Zera rinosanganisirwa pane zvese zvinoenderana neprojekiti, uye rinogona kuwonekwa nenzira dzakawanda sekutaura zera rose, avhareji yezera, uye pamwe zera repakati (ona kuti zera repakati rinogona kuvanza nyaya kana paine muswe wakareba wezera). Kazhinji, nhamba yakaderera yeLibyear iri nani. Zvishandiso zvinofanirwa kupawo runyoro rwezvinotsamira zvakarongwa nezera kuti zvipe nzwisiso yakawanda. Pfungwa yekuyera iyi yakatsanangurwa mu "Kuyera Dependency Freshness muSoftware Systems" naCox et al [Cox 2015].

Cherechedza: Mune zvimwe zviitiko, kushandisa shanduro yekare pane yemazuva ano inogona kuva sarudzo yekuchenjera; izvo zvakati, metric iyi inopa nzwisiso yekubatsira vamwe kuona kuti iwo ekare mavhezheni ari kushandiswa.

zvinangwa

Chinangwa cheLibyears metric ndechekubatsira mukucherechedzwa kwevanotsamira vane mukana wepamusoro wekuisa kugadzikana, chengetedzo, uye njodzi yekusagadzikana kupurojekiti. Chinhu chisisashandiswe kwenguva refu chinowanzova nekusagadzikana kunozivikanwa neruzhinji, uye zvakare hachinyanyi kutsigirwa zvakanaka. Iyo inobatsira yekutanga sefa yekugadzirisa zvinotsamira kubatsira kuona zvinotsamira zvakanyanya izvo zvinopa kunyatsoongorora purojekiti.

Kutevedzera

Iko kushandiswa uye kuparadzirwa kwehutano metrics kunogona kukonzera kukanganisa kwekuvanzika. Masangano anogona kusangana nenjodzi. Njodzi idzi dzinogona kubva mukutevedzera GDPR muEU, nemutemo wenyika muUS, kana nemumwe mutemo. Panogona zvakare kuve nenjodzi dzekondirakiti dzinoyerera kubva kumatemu ebasa kune vanopa data vakaita seGitHub neGitLab. Iko kushandiswa kwema metrics kunofanirwa kuongororwa kune njodzi uye zvinogona kuitika dambudziko re data. Ndapota onai CHAOSS Data Ethics gwaro kune rimwe gwara.

Parameters

Nekutadza ruzivo urwu ruchave mukati me ecosystem (semuenzaniso, JavaScript kana Maven), sezvo zviri nyore kuverenga. Iyi metric inogona kuverengerwa kune akawanda ecosystems, asi izvo zvinowanzoda rumwe ruzivo, semuenzaniso, muchinjika-ecosystem Software Bill yeZvinhu (SBOM).

Ruzivo urwu rungango tarisa kutsamira kwakananga, kana kuti rungango sanganisira zvese zvinoenderana nezvinobatika. Zvinonyanya kuratidza matambudziko anogona kuitika kana transitive dependencies akaiswa, asi izvi hazvitsigirwe nematurusi ese akadaro.

Kana purojekiti ine matavi akawanda akagadzikana / anotsigirwa, zvinotenderwa kufunga nezve "ikozvino" mune chero bazi? Nekumisikidza, chete ichangobva kugadzikana bazi rinotariswa, sezvo kazhinji nekufamba kwenguva matavi ekare anogamuchira kushomeka kwekugadzirisa. Imwe nzira (kunyangwe isiri iyo yakasarudzika) ndeye kugamuchira zvekare shanduro se "ikozvino" kana iyo yekare vhezheni ichitsigirwa nesimba; mishumo inofanira kucherechedzwa zvakajeka kana imwe nzira iyi yashandiswa. Panofanira kuva nenguva yenyasha here apo kutsamira kutsva kuchiri kunzi "ikozvino"? By default, mhinduro kwete; chero nguva yenyasha haidikanirwi, uye pfungwa yacho ndeyekuedza kuramba iripo

Masefa (sarudzo)

Dependency level (yakananga chete, inosanganisira transitive dependencies, nezvimwewo sezvinotsanangurwa mu[Upstream Code Dependencies]((https://github.com/chaoss/wg-risk/blob/master/focus-areas/dependency-risk-assessment/upstream-code-dependencies.md) metric.

  • Cumulative Libyears sezera rose.
  • Avhareji yezera rekutsamira
  • Zera repakati rekutsamira
  • Rondedzero yakarongwa yezvinotarisirwa (yakarongwa yekare-yekutanga) kuitira kuti "zvine njodzi zvakanyanya nekuda kwezera" zvinotariswa kutanga zvinozivikanwa.

Kuona (kusarudza)

Uyu muenzaniso weLibyear seyero yekuwedzera yeLibyears yekutsamira zvakananga, mune iyi nyaya ine kukosha kwekuwedzera kwe103.78 cumulative libyears.

LibYear Visualization

Mufananidzo uyu wakatorwa kubva https://github.com/nasirhjafri/libyear

Zvishandiso zvinopa iyo Metric (sarudzo)

Ziva kuti mamwe maturusi anogona kuverengera misiyano pakati peidhi yeshanduro (semuenzaniso, 1.1.1 vs. 1.2.3); izvi zvinogona kuve neruzivo, asi havasi vese vanotsamira vanoshandisa nzira imwechete yekuverenga nhamba, saka kuti zvive nyore isu tiri kutarisa pakuyera nguva.

Heino muenzaniso wezvimwe zvishandiso zvinoshandisa libyersars:

References

Vabatsiri

  • Sophia Vargas (Google)
  • David A. Wheeler (Linux Foundation)
  • Vinod Ahuja (Yunivhesiti yeNebraska Omaha)
  • Kate Stewart (Linux Foundation)
  • Duane O'Brien
  • Sean Goggins (Yunivhesiti yeMissouri / CHAOSS Project)