Sorbet, yon sistèm tcheke kalite estatik pou Ruby, se sous louvri.

Konpayi Stripe, ki espesyalize nan devlopman platfòm pou peman sou entènèt, louvri kòd sous pwojè yo Sorbe, nan ki te prepare yon sistèm tcheke kalite estatik pou lang Ruby la. Kòd la ekri nan C++ ak distribiye pa ki gen lisans anba Apache 2.0.

Enfòmasyon sou kalite nan kòd la ka kalkile dinamik, epi yo ka espesifye tou nan fòm lan nan senp annotations, ki ka espesifye nan kòd lè l sèvi avèk metòd sig la (pa egzanp, "sig {params(x: Integer).returns(String)}") oswa mete yo nan dosye separe ak ekstansyon rbi. Disponib kòm preliminè analiz kòd estatik san egzekite li, epi tcheke jan li egzekite (vire sou lè w ajoute "mande 'sorbet-runtime'" nan kòd la.

Posiblite bay tradiksyon gradyèl pwojè yo sèvi ak Sorbet - kòd la ka konbine tou de blòk tape anote ak zòn ki pa tape ki pa kouvri pa verifikasyon. Karakteristik yo gen ladan tou pèfòmans trè wo ak kapasite nan echèl pou baz kòd ki gen dè milyon de liy kòd.

Pwojè a gen ladan yon nwayo pou tcheke kalite estatik,
yon bwat zouti pou kreye nouvo pwojè lè l sèvi avèk Sorbet, yon twous zouti pou transfè etap pa etap pwojè ki egziste deja yo pou itilize Sorbet, yon tan ki ekzekite ak yon lang espesifik domèn pou ekri anons sou kalite ak depo ak definisyon kalite pare pou plizyè pakè Ruby gems.

Okòmansman, Sorbet te devlope pou tcheke pwojè entèn nan konpayi Stripe, pi fò nan sistèm peman ak analyse yo ekri nan lang Ruby, epi yo te transfere nan kategori a nan sous louvri apre yon ane ak yon mwatye nan devlopman ak aplikasyon. Anvan ouvri kòd la, tès beta te fèt, kote plis pase 30 konpayi te patisipe. Nan etap devlopman aktyèl la, Sorbet sipòte lansman pifò pwojè estanda nan Ruby, men ka gen kèk enkonpatibilite.

Sous: opennet.ru

Add nouvo kòmantè