<html>Sziasztok!<br /><br />Van egy érdekesség, amibe nem gondoltam bele:<br /><br />"If you add a dependency (to a plug-in or a package) in a fragment, then you effectively modify the class path of the host project as well."<br /><br />Tehát a helyzet a következő. Az, hogy a model.tests fragment dependál az stdlib-re, azt okozza, hogy ezáltal a model is fog implicit. Az stdlib meg már explicit dependál rá, kész a kör.<br /><br />Javasolt megoldás: a model.tests ne tartalmazzon stdlib-re dependency-t. Egyszerűen anélkül kell tesztelni. Az olyan teszteket, amik meg az stdlib-et is bevonják, az stdlib teszt fragmentjébe kell tenni. Ez lehet, hogy pont az, amit Gábor javasolt az előbb.<br /><br />Üdv,<br /> Máté<br /><br /><br />On Friday, November 20, 2015 15:01 CET, Kovács Gábor Ferenc <kovacsgabor@caesar.elte.hu> wrote:<br /> <blockquote type="cite" cite="564F27D5.4080502@caesar.elte.hu"> </blockquote><meta content="text/html; charset=UTF-8" http-equiv="Content-Type">Sziasztok!<br /><br />A Gergő által felvázolt kört feloldhatjuk egészen könnyedén, ha a Timer-t használó teszteket áttesszük egy új api.stdlib.tests projekt alá, hiszen igazság szerint ezek ide tartoznának (mikor ezek a tesztek születtek, az api.stdlib és api.model még egy projekt volt .api néven).<br /><br />Üdv:<br />Gábor<br /> <div class="moz-cite-prefix">2015.11.20. 12:54 keltezéssel, Karácsony Máté írta:</div><blockquote cite="mid:4ed7-564f0a00-9-4e730680@239252027" type="cite">Sziasztok!<br /><br />Én ebben valahogy nem látom a kört, mert a fragment-host nyíl szerintem fordítva megy.<br />Tehát ez van (jelölés: a -(label)-> b, a függ valahogy b-től amit a label ír le):<br /><br />stdlib -(manifest-dependency)-> model<br />model.tests -(fragment-host)-> model<br />model.tests -(manifest-dependency)-> stdlib -(manifest-dependency)-> model<br /><br />Szóval szerintem ez simán tranzitív, de nem kör. Vagy nem értek valamit.<br /><br />Üdv,<br /> Máté<br /><br />On Friday, November 20, 2015 11:40 CET, Dévai Gergely <a class="moz-txt-link-rfc2396E" href="mailto:deva@caesar.elte.hu"><deva@caesar.elte.hu></a> wrote:<br /> <blockquote type="cite" cite="28d2-564ef880-21-1751c720@267455926"> </blockquote> Sziasztok!<br /><br />Leírom az egyik konkrét problémát, hátha az előrébb visz:<br /><br />* hu.elte.txtuml.api.stdlib --> hu.elte.txtuml.api.model<br />Normál plugin függőség, a Timer API implementációjához szükséges az API többi része.<br />* hu.elte.txtuml.api.model --> hu.elte.txtuml.api.model.tests<br />Implicit függőség a test manifestjében lévő "Fragment-Host: hu.elte.txtuml.api.model" miatt.<br />* hu.elte.txtuml.api.model.tests --> hu.elte.txtuml.api.stdlib<br />Normál plugin függőség, a tesztek használnak Timer-t.<br /><br />Az update site generáláshoz a test pluginek nem kellenek, tehát lehet az a Jenkins megoldás, hogy a tesztek lefuttatása után csak az update site létrehozásában szerepet játszó plugineket tartjuk a workspace-ben.<br /><br />Üdv,<br />Gergő<br /><br />On Friday, November 20, 2015 09:57 CET, Karácsony Máté <a class="moz-txt-link-rfc2396E" href="mailto:kmate@caesar.elte.hu"><kmate@caesar.elte.hu></a> wrote:<br /> <blockquote type="cite" cite="6ac6-564ee080-1f-4cc47c00@185145619"> </blockquote> Sziasztok!<br /><br />Ha Eclipse-ben előjön, akkor igen nagy valószínűséggel ez lesz a helyzet a Jenkins-ben is, mert a tycho-nak ugyanúgy kellene dependency-t számolnia. Nem tudom pontosan mi a helyzet azzal a két teszttel, de ez teljesen bevett és működő dolog, hogy fragment-host-ként a teszt hivatkozik a tesztelt dologra, és nem fordítva (furcsa is lenne eléggé). Szóval szerintem az lenne az előnyös, ha ez a konkrét eset lenne valahogy kibogozva, és nem találnánk fel újra valami más, nem igazán standard eljárást a tesztek kezelésére.<br /><br />Üdv,<br /> Máté<br /><br />On Thursday, November 19, 2015 23:17 CET, Dévai Gergely <a class="moz-txt-link-rfc2396E" href="mailto:deva@caesar.elte.hu"><deva@caesar.elte.hu></a> wrote:<br /> <blockquote type="cite" cite="4f1c-564e4a80-b-769ddb00@164295345"> </blockquote> Sziasztok!<br /><br />A megbeszélésen emlegettem, hogy a 'mars' branchben elbukik az update site generálás körkörös függőség miatt. A furcsa az, hogy a plugin függőségekben nincs kör.<br />A valódi ok az, hogy a test projektjeink most "Fragment-Host: ..." deklarációval hivatkoznak a tesztelt pluginra, és ez a tesztelt pluginhoz implicit függőségként felveszi a tesztprojektet (igen, igy és nem forditva!). A körkörös függőségről szóló hibaüzenetben sajnos nem jelenik meg maga a tesztprojekt, ezért google nélkül esélytelen rájönni...<br /><a class="moz-txt-link-freetext" href="http://stackoverflow.com/questions/5516215/despite-circular-dependency-error-in-eclipse-plugin-export-i-cannot-find-cycle">http://stackoverflow.com/questions/5516215/despite-circular-dependency-error-in-eclipse-plugin-export-i-cannot-find-cycle</a><br /><br />Ha eltávolitok két teszt projektet a workspace-ből, akkor sikeres az update site generálás. Nem tudom, hogy jenkins-ben is előjön-e majd ez a gond. Mindenesetre el lehetne gondolkozni a Fragment-Host helyett valami más megoldáson.<br /><br />Üdv,<br />Gergő<br /> <br /><br /><br /> <br /><br /><br /> <br /><br /><br /> <fieldset class="mimeAttachmentHeader"> </fieldset> <pre wrap="">_______________________________________________
Modelinterpreter mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Modelinterpreter@plc.inf.elte.hu">Modelinterpreter@plc.inf.elte.hu</a>
<a class="moz-txt-link-freetext" href="https://plc.inf.elte.hu/mailman/listinfo/modelinterpreter">https://plc.inf.elte.hu/mailman/listinfo/modelinterpreter</a>
</pre></blockquote><br /><br /><br /> </html>