[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[RFR] wml://www.debian.org/dutch/devel/buildd/wanna-build-states.wml



Dag iedereen, 


In de git-opslagplaats webwml werd de vertaling van
dutch/devel/buildd/wanna-build-states.wml bijgewerkt.
In bijlage de bijgewerkte vertaling en een diff-bestand met de wijzigingen
tegenover de vorige versie.

-- 
Met vriendelijke groet,
Frans Spiesschaert

diff --git a/dutch/devel/buildd/wanna-build-states.wml b/dutch/devel/buildd/wanna-build-states.wml
index 06bfdda772e..7a927fdacba 100644
--- a/dutch/devel/buildd/wanna-build-states.wml
+++ b/dutch/devel/buildd/wanna-build-states.wml
@@ -1,13 +1,16 @@
 #use wml::debian::template title="Wanna-build states: een uitleg" BARETITLE="true"
-#use wml::debian::translation-check translation="b8114b588961778dbd04974c1464a2f388a90c28" maintainer="Wouter Verhelst"
+#use wml::debian::translation-check translation="e94a8736fb66463fe305fff8fd1d7c61341d298d" maintainer="Wouter Verhelst"
 
-    <p>Deze pagina probeert uit te leggen wat elke wanna-build status 
+    <p>Deze pagina probeert uit te leggen wat elke wanna-build status
       betekent, en wat er met een pakket zal gebeuren als het zich in
       die status bevindt. Het doelpubliek bestaat uit Debian pakket
       maintainers die proberen te begrijpen waarom hun pakket al dan
       niet gecompileerd is voor een bepaalde architectuur. Daarnaast
       wordt een verduidelijking gegeven van de verschillende
       log-resultaten.</p>
+    <p>
+    Als u uw pakket opnieuw wilt compileren, kunt u om <a href="https://release.debian.org/wanna-build.html";>wanna-build actions</a> vragen.
+    </p>
 
     <p>Tot slot is ook een flowchart-versie van de wanna-build states <a
       href="#graphlink">beschikbaar</a>, maar merk op dat het niet alles
@@ -49,7 +52,7 @@ hun huidige compilatiestatus. Er zijn acht states:
 	  </li>
 	  <li>De sectie waarin zich een pakket bevindt. Deze sortering
 	    is gebaseerd op welke pakketten als belangrijker beschouwd
-	    worden; zo wordt de sectie <em>games</em> gecompileerd 
+	    worden; zo wordt de sectie <em>games</em> gecompileerd
 	    na de sectie <em>base</em>, en zal de sectie <em>libs</em>
 	    gecompileerd worden vóór <em>devel</em>.
 	  </li>
#use wml::debian::template title="Wanna-build states: een uitleg" BARETITLE="true"
#use wml::debian::translation-check translation="e94a8736fb66463fe305fff8fd1d7c61341d298d" maintainer="Wouter Verhelst"

    <p>Deze pagina probeert uit te leggen wat elke wanna-build status
      betekent, en wat er met een pakket zal gebeuren als het zich in
      die status bevindt. Het doelpubliek bestaat uit Debian pakket
      maintainers die proberen te begrijpen waarom hun pakket al dan
      niet gecompileerd is voor een bepaalde architectuur. Daarnaast
      wordt een verduidelijking gegeven van de verschillende
      log-resultaten.</p>
    <p>
    Als u uw pakket opnieuw wilt compileren, kunt u om <a href="https://release.debian.org/wanna-build.html";>wanna-build actions</a> vragen.
    </p>

    <p>Tot slot is ook een flowchart-versie van de wanna-build states <a
      href="#graphlink">beschikbaar</a>, maar merk op dat het niet alles
      behandelt wat in dit document aan bod komt.</p>

<h2>De wanna-build states</h2>
<p>Voor elke architectuur die Debian ondersteunt is er een wanna-build
database geïnstalleerd op buildd.debian.org, met daarin alle pakketten en
hun huidige compilatiestatus. Er zijn acht states:
<em>needs-build</em>, <em>building</em>, <em>uploaded</em>,
<em>dep-wait</em>, <em>failed</em>, <em>not-for-us</em>, en
<em>installed</em>.</p>

<p>Hun betekenis is als volgt:</p>
    <dl>
      <dt><a name="needs-build">needs-build</a></dt>
      <dd>Een pakket dat als <em>needs-build</em> gemarkeerd staat werd
        door zijn maintainer in een nieuwe versie geuploaded, maar voor
	een andere architectuur dan die waarvoor deze wanna-build
	database is; daardoor is een hercompilatie noodzakelijk. Als de
	status <em>needs-build</em> is, dan is het nog niet opgepikt
	door een autobuilder, maar dat zal wel gebeuren (op het moment
	dat er één beschikbaar is wanneer dit specifieke pakket zich
	bovenaan de lijst bevindt). Mensen zeggen gewoonlijk <q>een
	pakket staat in de wachtrij om opnieuw gecompileerd te worden</q>
	wanneer ze het hebben over een pakket in de
	<em>needs-build</em> status.<br />
	Het is interessant om weten dat de <em>needs-build</em> wachtrij
	geen FIFO lijst is; in plaats daarvan wordt de lijst gesorteerd
	volgens de volgende criteria:
	<ol>
	  <li>De vorige compilatiestatus van een pakket; pakketten die
	    voordien reeds gecompileerd werden krijgen prioriteit over
	    nieuwe pakketten.
	  </li>
	  <li>prioriteiten (pakketten met de <em>required</em> prioriteit
	    worden gecompileerd voor pakketten met de <em>extra</em>
	    prioriteit)
	  </li>
	  <li>De sectie waarin zich een pakket bevindt. Deze sortering
	    is gebaseerd op welke pakketten als belangrijker beschouwd
	    worden; zo wordt de sectie <em>games</em> gecompileerd
	    na de sectie <em>base</em>, en zal de sectie <em>libs</em>
	    gecompileerd worden vóór <em>devel</em>.
	  </li>
	  <li>Een asciibetische sortering op de pakket naam.</li>
	</ol>
	Daarnaast is het zo dat, onder bepaalde omstandigheden, het kan
	gebeuren dat een buildd niet het pakket bovenaan de lijst zal
	nemen voor compilatie; bijvoorbeeld, wanneer een buildd de
	broncode van een gegeven pakket niet kan vinden zal hij het
	terug in de queue steken (waar het dan opnieuw op z'n vorige
	positie zal terechtkomen, dus bovenaan de lijst), maar hij zal
	het pakket voor een aantal uren negeren. Een ander voorbeeld
	waar zich dit kan voordoen is wanneer een architectuur meerdere
	autobuilders heeft; in dat geval kunnen de porters van die
	architectuur ervoor kiezen om grotere pakketten op hun snellere
	autobuilders te compileren, terwijl ze de kleinere aan de
	tragere machines overlaten. Theoretisch gezien kan een buildd
	verder ook expliciet een andere sectie-volgorde opvragen, maar
	dat wordt gewoonlijk niet gedaan.<br />
	Er kunnen nog andere situaties zijn waarin de wachtrij-volgorde
	genegeerd schijnt te zijn; maar merk op dat dit allemaal
	uitzonderingen zijn.
      </dd>
      <dt><a name="building">building</a></dt>
      <dd>Een pakket wordt als <em>building</em> gemarkeert vanaf het
        moment dat een autobuilder het oppikt bovenaan de wanna-build
	wachtrij tot het moment dat de autobuilder-beheerder een
	antwoord stuurt op de log. Vermits pakketten niet één per één uit
	de wachtrij gehaald worden, betekent dit dat een pakket als
	<em>building</em> gemarkeerd kan zijn (en gewoonlijk ook is)
	voordat de compilatie daadwerkelijk gestart is; maar vermits
	buildd de pakketten in zijn lokale wachtrij op FIFO-basis
	compileert, zou het niet te lang meer mogen duren. Daarnaast is
	het belangrijk te weten dat de status van een pakket
	<strong>niet</strong> aangepast wordt wanneer de compilatie
	afgewerkt is; dit gebeurt pas wanneer de autobuilder admin
	antwoordt op de logs.
      </dd>
      <dt><a name="uploaded">uploaded</a></dt>
      <dd>Als de poging tot compilatie succesvol was, dan wordt een
        build log verstuurd naar de autobuilder admin en naar
	buildd.debian.org. De autobuilder admin zal dan het
	.changes-bestand dat zich in die log bevindt, ondertekenen, en
	terugsturen naar de autobuilder. In reactie daarop zal de
	autobuilder het pakket uploaden en z'n status naar
	<em>uploaded</em> overzetten. Dit betekent dat een pakket in
	deze status zich (ergens) in de incoming queue bevindt.<br />
	Een autobuilder zal een pakket niet meer aanraken eens z'n
	status <em>uploaded</em> is, tenminste niet tot de volgende
	upload of totdat een porter manueel de status van een pakket
	aanpast.
      </dd>
      <dt><a name="dep-wait">dep-wait</a></dt>
      <dd>Als het compileren van een pakket niet lukt door ontbrekende
        build-dependencies, dan zal de autobuilder-beheerder een mail
	sturen naar de autobuilder, waarbij hij hem instrueert om de
	broncodes van het pakket te verwijderen en het pakket als
	<em>dep-wait</em> op de ontbrekende build-dependencies te
	markeren. Een pakket in die status zal automatisch, zonder
	menselijke interventie, terug als <em>needs-build</em>
	gemarkeerd worden wanneer de desbetreffende dependencies
	beschikbaar zijn.<br />
	Oorspronkelijk moest een buildd proberen een pakket te
	compileren vooraleer de beheerder het handmatig in de
	<em>dep-wait</em> status zou plaatsen. In augustus 2005 werd er
	echter extra functionaliteit aan wanna-build toegevoegd die
	ervoor zorgt dat een pakket automatisch van de <em><a
	href='#installed'>installed</a></em> verplaatst wordt, indien
	dat van toepassing is.<br />
	Er zijn twee specifieke situaties waarbij het kan gebeuren dat
	een pakket in de <em>dep-wait</em> status blijft; deze zijn
	wanneer een tikfout zich voorgedaan heeft bij het specifiëren va
	de dep-wait dependencies (zodat het pakket zich in de
	<em>dep-wait</em> status bevindt voor een pakket dat niet
	bestaat en ook nooit zal bestaan) en wanneer een
	build-depencency gedeclareerd is op een pakket dat als
	<em>not-for-us</em> gemarkeerd is, of dat in de
	<em>packages-arch-specific</em> lijst zit.<br />
	Als voorbeeld voor dat laatste, overweeg drie pakketten: Een
	pakket <tt>foo</tt>, dat alleen voor <tt>i386</tt> bestaat; een
	pakket <tt>bar</tt>, wat alleen voor <tt>m68k</tt> bestaat (en
	dat in grote lijnen dezelfde functionaliteit uitvoert); en
	een pakket <tt>baz</tt> dat gecompileerd kan worden met één van
	<tt>foo</tt> of <tt>bar</tt>. Indien de maintainer van het
	pakket <tt>baz</tt> nu zou vergeten om <tt>bar</tt> aan de
	Build-Depends toe te voegen, en zou hij of zij het toevoegen
	wanneer wordt opgemerkt dat <tt>baz</tt> in <em>dep-wait</em>
	staat voor een niet-bestaande <tt>foo</tt> voor <tt>m68k</tt>,
	dan zal de <em>dep-wait</em>-status voor <tt>m68k</tt> manueel
	verwijderd moeten worden door de <tt>m68k</tt> porters.
      </dd>
      <dt><a name="bd-uninstallable">BD-Uninstallable</a></dt>
      <dd>Tijdens debconf9 had <a
	href='https://lists.debian.org/debian-wb-team/2009/07/msg00089.html'>Joachim
	Breitner het idee</a> om met edos-debcheck de installeerbaarheid van
	build-dependencies te controleren van pakketten die normaal in de
	'needs-build' status zouden gaan. Op dat ogenblik had wanna-build wel
	de mogelijkheid om de onmiddelijke beschikbaarheid van een pakket te
	detecteren; maar als een pakket niet geïnstalleerd kon worden omdat het
	afhangt van pakket a dat afhangt van pakket b dat op zijn beurt afhangt
	van pakket c (&gt;=1.2.3) waarbij c nog op versie 1.2.2 is, dan werd
	dat niet gedetecteerd, en mislukte de compilatie omwille van
	niet-beschikbare build-dependencies. Uitzoeken wat daar mis liep was
	een handmatig proces voor de buildd-beheerder, en één dat gewoonlijk
	nogal veel tijd nodig had. Met de BD-Uninstallable wijziging is dit
	niet langer een probleem.  Als je pakket zich in BD-Uninstallable
	bevindt, dan betekent dat dat één van de build-dependencies niet
	installeerbaar is (hetzij onmiddelijk, hetzij omdat een deel van z'n
	afhankelijkheidsboom niet beschikbaar is).  Helaas is er geen
	informatie beschikbaar over welk pakket precies het probleem
	veroorzaakt; gelieve edos-debcheck te gebruiken om dit uit te vinden.
	Het probleem zal zichzelf echter automatisch oplossen eens de afwezige
	afhankelijkheden terug beschikbaar zijn, en op dat ogenblik zal je
	pakket automatisch terug naar Needs-Build verplaatst worden.
      </dd>
      <dt><a name="wanna-build-state-failed">failed</a></dt>
      <dd>Als een compilatiepoging mislukt is, en de
        autobuilder-beheerder beslist dat het daadwerkelijk een
	mislukking is die niet opnieuw geprobeerd moet worden, dan zal
	het pakket als <em>failed</em> gemarkeerd worden. Een pakket zal
	deze status niet verlaten totdat een porter beslist dat dat een
	goed idee is, of totdat een nieuwe versie beschikbaar is. Wel is
	het zo dat, wanneer een nieuwe versie beschikbaar is van een
	pakket dat eerder als <em>failed</em> gemarkeerd was, de
	autobuilder z'n beheerder eerst zal vragen of het pakket
	opnieuw gecompileerd moet worden; dit is opdat pakketten die
	duidelijk niet gecompileerd zullen kunnen worden, geen buildd
	tijd zullen verspillen. Hoewel dit zelden nodig is, is de
	mogelijkheid beschikbaar voor de autobuilder-beheerder.<br />
	Merk op dat een pakket <strong>nooit</strong> als
	<em>failed</em> gemarkeerd zal worden zonder menselijke
	interventie.
      </dd>
      <dt><a name="not-for-us">not-for-us</a></dt>
      <dd>Een aantal specifieke pakketten zijn architectuur-specifiek;
	zo moet bijvoorbeeld <tt>lilo</tt>, een i386 boot loader, niet
	gecompileerd worden op alpha, m68k, of s390.
	<em>Wanna-build</em> kijkt echter niet naar de control file van
	een pakket wanneer het zijn database opbouwt; alleen naar de
	naam, de sectie, en de prioriteit van een pakket. Daardoor zal
	na de eerste upload van een architectuur-specifiek pakket dat
	niet op een andere architectuur gecompileerd moet worden, toch
	een poging gedaan worden op andere architecturen (deze zal
	echter mislukken nog voor de build-dependencies gedownloaded en
	geïnstalleerd zijn)<br />
	Vermits autobuilders geen tijd moeten verspelen aan het
	compileren van pakketten die niet interessant zijn voor hun
	architectuur, is er een manier nodig om pakketten op te sommen
	waarvoor zelfs een poging om ze te compileren niet noodzakelijk
	is. De eerste oplossing voor dit probleem was
	<em>not-for-us</em>; maar gezien het feit dat dat moeilijk te
	beheren is, wordt het gebruik van <em>not-for-us</em> vandaag de
	dag afgeraden; autobuilder-beheerders gebruiken daarom best
	<em>packages-arch-specific</em> in de plaats, wat een lijst is
	van pakketten specifiek voor één of meerdere architecturen, in
	plaats van een wanna-build status.<br />
	Een pakket in <em>not-for-us</em> of
	<em>packages-arch-specific</em> zal deze status
	<strong>niet</strong> uit zichzelf verlaten; als jouw pakket een
	gegeven architectuur in zijn control file expliciet niet
	bevatte, maar die nu wel bevat, dan moet je pakket
	<strong>manueel</strong> terug in de queue gestoken worden.<br />
	Als je dit ooit tegenkomt, dan kan je de relevante
	buildd-beheerder vragen dit te doen door ze te mailen op
	$arch@buildd.debian.org.
      </dd>
      <dt><a name="installed">installed</a></dt>
      <dd>Zoals de naam al aangeeft is het zo dat een pakket met de
        status <em>installed</em> reeds gecompileerd is voor de
	architectuur waarvoor deze wanna-build database is. Voor de
	release van Woody veranderde de status van een pakket van
	<em>uploaded</em> naar <em>installed</em> na de dagelijkse katie
	runs. Sinds de implementatie van <a
	href="https://lists.debian.org/debian-devel-announce/2002/debian-devel-announce-200206/msg00002.html";>Accepted-autobuild</a>
	is dit ichter niet meer waar; vandaag de dag gaat een pakket van
	de status <em>uploaded</em> naar de status <em>installed</em> op
	het moment dat het in het archief geaccepteerd wordt. Dit
	betekend dat een pakket gewoonlijk als <em>installed</em>
	gemarkeerd wordt na, gemiddeld, 15 minuten.
      </dd>
    </dl>
    <p>Na deze acht states kent <em>wanna-build</em> ook nog twee
    -removed states, die eigenlijk grensgevallen zijn. Deze twee states
    zijn <em>dep-wait-removed</em> en <em>failed-removed</em>. Ze
    relateren met hun respectieve 'gewone' states als volgt: als een
    pakket in status <em>failed</em> of <em>dep-wait</em> niet voorkomt
    in een nieuw Packages-bestand dat aan <em>wanna-build</em> gevoed
    wordt &ndash; als het er op lijkt dat het verwijderd is &ndash; dan
    wordt de informatie van dat pakket niet weggegooid, vermits het
    mogelijk is dat het niet verschijnen van het pakket in het
    Packages-bestand maar een tijdelijk probleem is, of dat het pakket
    tijdelijk verwijderd is om één of andere reden (maar dat het, mits
    wat geduld, wel terug zal komen). In zo'n geval wordt het pakket
    daarom naar een <em>-removed</em> status gebracht, zodat de
    informatie over waarom de compilatie mislukt is, of waar het op aan
    het wachten is, behouden kan worden. Zou het pakket dan ooit in een
    nieuw Packages-bestand dat aan wanna-build gevoed wordt, voorkomen,
    dan zal het van <em>failed-removed</em> terug naar <em>failed</em>
    verplaatst worden, of van <em>dep-wait-removed</em> terug naar
    <em>dep-wait</em> voordat de verdere verwerking plaatsvindt.</p>
    <p>
      Het is niet mogelijk om de wanna-build database rechtstreeks te
      bevragen; deze database is geïnstalleerd op ftp-master.debian.org,
      wat een beperkte host is, en enkel autobuilders hebben een
      SSH-sleutel die hen toelaat om de wanna-build database van hun
      architectuur te manipuleren. Dit was zelfs het geval voor
      ftp-master beperkt was; vermits wanna-build een database-level
      lock doet bij het benaderen, zelfs al gaat het alleen over lezen,
      van de gegevens, moest je in de juiste groep zijn
      (wb-&lt;arch&gt;) om een wanna-build database rechtstreeks te
      kunnen beheren.
    </p>
    <p>Dat gezegd zijnde kan je zien in welke status een pakket zich
      bevindt door naar <a href="https://buildd.debian.org/stats/";>de
      buildd stats-pagina</a> te gaan, tenzij het in de status
      <em>installed</em> is (nu ja; niet als je het niet erg vindt om je
      door een multi-megabyte <q>&lt;arch&gt;-all.txt</q> bestand te
      worstelen...).
    </p>
    <h2>De compilatielog-resultaten</h2>
    <p>
      Als een pakket gecompileerd is door sbuild (het onderdeel van
      buildd wat de eigenlijke compilatie doet), dan wordt een log met
      het compilatieresultaat via e-mail verzonden naar de
      autobuilder-beheerder en naar logs@buildd.debian.org (zodat het op
      https://buildd.debian.org) kan terechtkomen). Het
      compilatielog-resultaat kan één van <em>successful</em>,
      <em>attempted</em> (vroeger <em>failed</em>), <em>given-back</em>, of
      <em>skipped</em> zijn.
      Merk op dat, op <a href="https://buildd.debian.org";>het buildd
      log overzicht</a> de prefix <em>maybe-</em> toegevoegd wordt,
      omdat, onder andere, het feit dat een compilatie daar als
      <em>failed</em> gemarkeerd kan zijn voor dingen die niet
      <em>echt</em> een mislukte compilatie zijn, in het verleden
      verwarring gezaaid heeft (of, vice versa, soms is een pakket dat
      een successful status heeft eigenlijk stuk en moet het opnieuw
      gecompileerd worden).</p>
    <p>De betekenis van de logresultaten is als volgt:</p>
    <dl>
      <dt><a name="successful">successful</a></dt>
      <dd>De compilatie is gelukt. Als de autobuilder-beheerder deze log
        aankrijgt, dan zal hij het <code>.changes</code>-bestand dat
	zich in de log bevindt eruit halen, dit ondertekenen, en zo
	terugsturen naar de autobuilder, wat tot gevolg zal hebben dat
	het pakket geuploaded wordt.</dd>
      <dt><a name="failed">attempted</a> (vroeger: failed)</dt>
      <dd>De compilatie heeft niet nul geretourneerd, wat aangeeft dat die
	waarschijnlijk mislukt is. Vermits er een groot aantal redenen kan zijn
	waarom een compilatie mislukt, zou het heel wat werk vergen om ze
	allemaal op te noemen, dus er wordt geen poging gedaan om dat te doen.
	Als één van jouw pakketten als <em>(maybe-)failed</em> gemarkeerd is,
	dan wil je waarschijnlijk het bovenstaande lezen, en z'n huidige
	wanna-build status nakijken.
      </dd>
      <dt><a name="given-back">given-back</a></dt>
      <dd>De compilatie is mislukt door een tijdelijk probleem met de
        autobuilder; voorbeelden zijn netwerkproblemen, het niet
	bereikbaar zijn van de broncode van het te compileren pakket met
	de huidige sources.list, weinig schijfruimte, en andere.<br />
	Een pakket dat <em>given-back</em> als resultaat heeft wordt
	terug als <em><a href="#needs-build">needs-build</a></em>
	gemarkeerd; dit wil zeggen dat die automatisch terug opgepikt
	zal worden door een andere autobuilder wanneer er één
	beschikbaar is.
      </dd>
      <dt><a name="skipped">skipped</a></dt>
      <dd>In de tijd tussen het als <em>building</em> markeren van een
        pakket door een autobuilder en de compilatiepoging was een
	nieuwe versie van dit pakket geuploaded, of heeft een porter de
	wanna-build status om een andere reden aangepast. Wanneer zich
	dat voordoet wordt een mail naar de autobuilder gestuurd,
	waardoor die het pakket zal markeren alszijnde dat die niet
	gecompileerd moet worden; sbuild zal dit zien, en zal de
	compilatie overslaan (hoewel een compilatielog met dit resultaat
	verzonden wordt, waarin het feit dat dit gebeurd is, weergegeven
	wordt).
      </dd>
    </dl>

<h2><a name="graphlink">De grafische versie</a></h2>
<p>Om het bovenstaande te illustreren, hebben we ook een <a
href="wanna-build.png">flowchart-versie</a> van deze procedure
beschikbaar gemaakt. Nogmaals, merk op dat deze niet alles wat in dit
document aan bod komt, behandelt.</p>

Reply to: