<div dir="ltr">Imi cer scuze, am marcat cumva mailul ca citit fara sa raspund si am uitat ulterior. :)<div class="gmail_extra"><br><div class="gmail_quote">În data de 29 iunie 2015, 18:52, Laura Vasilescu <span dir="ltr"><<a href="mailto:laura@rosedu.org" target="_blank">laura@rosedu.org</a>></span> a scris:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span>2015-06-25 16:07 GMT+03:00 Constantin Mihalache <<a href="mailto:mihalache.c94@gmail.com" target="_blank">mihalache.c94@gmail.com</a>>:<br>
>     Am vazut ca pe wiki, la sectiunea Detected Errors, sunt cateva<br>
> puncte care sunt legate de coding style (number of lines in a function<br>
> exceeded maximum admitted, number of character in a line exceeded<br>
> maximum admitted, etc.) asa ca am implementat un modul pentru C<br>
> (codingstyle.py) care, deocamdata, verifica numarul de caractere de pe<br>
> o linie si numarul de linii din fiecare functie si returneaza o lista<br>
> de erori.<br>
><br>
> Other things done:<br>
>     *am schimbat run-tests.sh conform issue-ului "Use pushd and popd..."<br>
>     *am adaugat un test pentru a verifica modulul codingstyle.py<br>
> (works as expected)<br>
><br>
> Toate modificarile sunt in fork-ul asta [1].<br>
<br>
<br>
</span>Sună foarte bine! Mă bucur că deja ai început chiar să și faci patch-uri! :)<br>
Singura observație e că codul respectiv poate duplică munca depusă și<br>
am prefera să ne bazăm cât mai mult pe tool-uri deja existente, if<br>
any.<br>
<br>
Spre exemplu, pentru a verifica coding style-ul în C ar exista mai<br>
multe variante, fiecare coding style având particularitățile lui. De<br>
regulă, la programare și SO se merge destul de mult pe linux kernel<br>
coding style care poate fi verificat rulând scriptul <a href="http://checkpatch.pl" rel="noreferrer" target="_blank">checkpatch.pl</a> din<br>
tree-ul de kernel.</blockquote><div><br></div><div>Este aici o mica lista de tool-uri ce planuiam sa le integram in robocheck: </div><div><a href="https://github.com/rosedu/robocheck/wiki/tools" target="_blank">https://github.com/rosedu/robocheck/wiki/tools</a><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"> <br></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
@RD: ai idee pe unde era tree-ul vechi cu sursele scrise în C? Aparent<br>
nu e niciun link către el pe wiki și ar fi fost util.<br></blockquote><div> </div><div>Found it: <span style="font-size:12.8000001907349px">git://</span><a href="http://ixlabs.cs.pub.ro/robocheck.git" rel="noreferrer" target="_blank" style="font-size:12.8000001907349px">ixlabs.cs.pub.ro/<span class="">robocheck</span>.git</a></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
O referință cu niște tool-uri care erau integrate în versiunea<br>
respectivă ar fi lucrarea mea de licență (cap. 02):<br>
<a href="http://swarm.cs.pub.ro/~laura/p/bachelor-thesis/thesis.pdf" rel="noreferrer" target="_blank">http://swarm.cs.pub.ro/~laura/p/bachelor-thesis/thesis.pdf</a><br>
<span><br>
> Nelamuriri:<br>
>     1. Nu stiu daca am gresit sau nu ca am scris eu parsarea surselor<br>
> si ca nu am integrat un tool care sa verifice chestii. (mi s-a parut<br>
> mai usor de controlat)<br>
<br>
</span>See above. :D<br>
E întradevăr mai ușor de controlat, dar se poate ajunge la cod<br>
duplicat. De regulă tool-urile externe se modifică mai greu și<br>
mentenanța rămâne la ei.</blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<span><br>
>     2. Daca abordarea mea e in regula, in fisierul codingstyle.py sunt<br>
> hardcodate la inceput numarul maxim de caractere pe linie si numarul<br>
> maxim de linii dintr-o functie si presupun ca ar trebui mutate intr-un<br>
> fisier de configurare or something. (any advice?)<br>
<br>
</span>Ca idee generală, ar fi util să fie configurabile. Chiar dacă modulul<br>
este pentru C, aș vedea mai degrabă un astfel de modul care să fie<br>
configurabil per limbaj de programare (deci să nu stea în C, unless<br>
funcționalitatea nu e strict dependentă de C). Dacă funcționalitatea<br>
(în cazul ăsta lungimea linilor și a funcțiilor) nu depinde de limbaj,<br>
ar trebui ca și în repo să fie reflectat ca atare și să fie ușor de<br>
configurat. (deci dacă ar fi așa, nu ar mai fi <a href="http://checkpatch.pl" rel="noreferrer" target="_blank">checkpatch.pl</a> din<br>
kernel)<br></blockquote><div><br></div><div>Eu as vota totusi varianta cu checkpatch, deoarece verifica mai mult decat lungimea liniilor si a functiilor. :) </div><div>Daca ramane aceasta varianta, eu as sugera sa te uiti pe implementarile modulelor de DrMemory si Valgrind, sa vezi</div><div>cum sunt apelate si cum este strans output-ul lor si apoi sa implementezi un modul similar pentru checkpatch. Tin minte</div><div>ca voiam sa definesc o interfata comuna tuturor modulelor pentru a fi foarte clar ce trebuie implementat, dar nu mai stiu</div><div>daca am facut-o.</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<span><br>
>     3. Ar fi ok introducerea de unit-test-uri ?</span></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span>
<br>
</span>Ar fi chiar super! :)<br></blockquote><div><br></div><div>+1 pentru unit teste. :) </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
> Awaiting feedback,<br>
<br>
Scuze de delay, am fost plecată. O să fiu mai responsive. :)<br>
<span><font color="#888888"><br>
Laura<br>
</font></span><div><br></div></blockquote><div><br></div><div>Am facut merge la pull request-ul tau. Pe viitor, as recomanda sa creezi branch-uri pentru a putea face pull request-uri separate (ex. branch pt unit-teste, branch pt implementarea unui modul), astfel incat sa le putem face merge separat. :)</div><div> <br></div><div>Cheers,</div><div>Andrei </div></div><br></div></div>