[csw-devel] SF.net SVN: gar:[13149] csw/mgar/gar/v2

trygvis at users.sourceforge.net trygvis at users.sourceforge.net
Mon Jan 31 10:43:20 CET 2011


Revision: 13149
          http://gar.svn.sourceforge.net/gar/?rev=13149&view=rev
Author:   trygvis
Date:     2011-01-31 09:43:20 +0000 (Mon, 31 Jan 2011)

Log Message:
-----------
o Adding documentation of the upload process.

Added Paths:
-----------
    csw/mgar/gar/v2/upload-application/
    csw/mgar/gar/v2/upload-application/opencsw-upload-process-application.html
    csw/mgar/gar/v2/upload-application/style.css
    csw/mgar/gar/v2/upload-application/upload-process.svg


Property changes on: csw/mgar/gar/v2/upload-application
___________________________________________________________________
Added: svn:ignore
   + *.png


Added: csw/mgar/gar/v2/upload-application/opencsw-upload-process-application.html
===================================================================
--- csw/mgar/gar/v2/upload-application/opencsw-upload-process-application.html	                        (rev 0)
+++ csw/mgar/gar/v2/upload-application/opencsw-upload-process-application.html	2011-01-31 09:43:20 UTC (rev 13149)
@@ -0,0 +1,148 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+  <meta http-equiv="content-type"
+ content="text/html; charset=ISO-8859-1">
+  <link rel="stylesheet" href="style.css" type="text/css">
+  <title>OpenCSW Catalog Release Upload</title>
+</head>
+<body>
+<span style="font-style: italic; font-weight: bold;">TODO</span>
+<ul>
+  <li>Document the security aspects</li>
+</ul>
+<h1>OpenCSW Upload Application</h1>
+<p>This application is used to upload packages to be distributed by
+OpenCSW. The application is supposed to be used by both humans doing
+uploads manually and by tools. HTML is used as the main hypermedia to
+communicate interactions.</p>
+<p>
+An informal summary of the process:</p>
+<ul>
+  <li>A new upload is created. The upload is a long-lived resource so
+it will get its own URI.<br>
+  </li>
+  <li>A set of files with metadata is attached to the upload.</li>
+  <li>If wanted the maintainer can run the checkpkg tool to find any
+issues with the packages to be uploaded.</li>
+  <li>The upload is frozen and sent to the release manager for approval.</li>
+</ul>
+<img style="width: 688px; height: 450px;"
+ alt="Image showing the flow between the pages and the forms used on the interactions"
+ src="upload-process.png"><br>
+<h2>General Constraints</h2>
+It is expected that any user agent:<br>
+<ul>
+  <li>Includes any hidden elements in a form. Only inputs that the user
+agent is expected to fill out are documented.<br>
+  </li>
+  <li>Uses the method specified in a form.<br>
+  </li>
+</ul>
+<h1>Pages</h1>
+<h2>Catalog Release Summary</h2>
+A document listing all packages and the architecture/release
+combination they support. Should include a <a
+ href="#create_upload_form">"Create Upload" form</a>. It should be
+possible to use content negotiation get the data as an Atom feed.<br>
+<h2>Upload Summary</h2>
+<p>A document that shows the current state of the upload. It should
+include the <a href="#add_file_form">"Add File"</a>, <a
+ href="#checkpkg_report_form">"checkpkg report"</a>, <a
+ href="#delete_upload_form">"delete upload"</a>, <a
+ href="#submit_upload_Form">"submit upload"</a> forms.</p>
+<p>There must be a <span style="font-family: monospace;">span</span>
+element with the id <span style="font-family: monospace;">upload-state</span>.
+Currently available upload states:</p>
+<ul>
+  <li style="font-family: monospace;">unsubmitted</li>
+  <li><span style="font-family: monospace;">submitted</span></li>
+</ul>
+<p>The user agent should not use the value for anything in particular
+but instead look at the available forms when presenting options to the
+user. The field is there as information for humans.<br>
+</p>
+<h2>Checkpkg Report</h2>
+<p>An informal report showing any errors/warnings detected from the
+checkpkg tool.<br>
+</p>
+<p style="font-style: italic;">TODO: The format of the checkpkg report
+might be formalized in its own media type later on but right now that
+doesn't exist.</p>
+<p></p>
+<p><span style="font-style: italic;">TODO: It would be nice to be able
+to select the format of this report. For tools it would be useful with
+a plain text version that they can show to the user directly. As it is
+now there's no need for any links from this page so the media doesn't
+need a way to represent links.</span></p>
+<h1>Forms</h1>
+<h2><a class="mozTocH3" name="create_upload_form"></a>"Create Upload"
+Form<br>
+</h2>
+Name: <span class="form_name">create-upload</span> <br>
+<h3>Inputs</h3>
+<dl>
+  <dt class="input_name">maintainer-id</dt>
+  <dd>The OpenCSW id of the person that created the upload.</dd>
+</dl>
+<h2><a class="mozTocH2" name="add_file_form"></a>"Add File" Form</h2>
+Name: <span class="form_name">add-file</span><br>
+<h3>Inputs</h3>
+<dl>
+  <dt>file-name</dt>
+  <dd>The name of the physical file.</dd>
+  <dt>md5</dt>
+  <dd>The MD5 checksum of the file.</dd>
+  <dt>signature</dt>
+  <dd>The PGP signature of the file. It is expected that the maintainer
+uses the PGP key that's associated with the maintainer.</dd>
+</dl>
+<h2><a class="mozTocH2" name="checkpkg_report_form"></a>"checkpkg
+Report" Form</h2>
+<h2><a name="submit_upload_Form"></a>"Submit Upload" Form</h2>
+Once this form is submitted the upload will be frozen and will be
+available for publishing if it passes the release manager.<br>
+<h2><a name="delete_upload_form"></a>"Delete Upload" Form</h2>
+Submit this form to remove the upload.<br>
+<h1>Definitions of words
+and phrases</h1>
+<dl>
+  <dt>Package</dt>
+  <dd>
+    <p>A System V package. Solaris use this package format as its
+native package format. Some packages contain architecture and/or
+Solaris release specific binaries while others can be installed across
+all architectures and Solaris releases.<br>
+    </p>
+    <p>A package file is usually named "pkg" if it is to be used by the
+native Solaris tools, or "pkg.gz" when it's distributed and handled by
+the OpenCSW tools.<br>
+    </p>
+  </dd>
+  <dt>Catalog</dt>
+  <dd>A catalog is a index of all packages available for a specific
+architecture and Solaris release.<br>
+  </dd>
+  <dt>Catalog Release</dt>
+  <dd>A catalog release is a set of catalogs which covers all
+architectures and Solaris releases that the specific catalog release
+support.</dd>
+  <dt>Maintainer</dt>
+  <dd>A person that create packages and performs uploads to the
+repository</dd>
+  <dt>Release Manager</dt>
+  <dd>A person that checks/inspects the released packages and publishes
+them.</dd>
+  <dt>checkpkg</dt>
+  <dd>A tool created by OpenCSW that automates the process of checking
+if a package is compliant with the current OpenCSW policies. Used by
+both maintainers and release managers.</dd>
+  <dt>Upload</dt>
+  <dd>An upload consists of a set of pkg files with meta data that a
+maintainer want to publish.<br>
+  </dd>
+</dl>
+<br>
+<br>
+</body>
+</html>

Added: csw/mgar/gar/v2/upload-application/style.css
===================================================================
--- csw/mgar/gar/v2/upload-application/style.css	                        (rev 0)
+++ csw/mgar/gar/v2/upload-application/style.css	2011-01-31 09:43:20 UTC (rev 13149)
@@ -0,0 +1,7 @@
+dt.input_name {
+	font-family: courier, fixed, monospace;
+}
+
+span.form_name {
+	font-family: courier, fixed, monospace;
+}

Added: csw/mgar/gar/v2/upload-application/upload-process.svg
===================================================================
--- csw/mgar/gar/v2/upload-application/upload-process.svg	                        (rev 0)
+++ csw/mgar/gar/v2/upload-application/upload-process.svg	2011-01-31 09:43:20 UTC (rev 13149)
@@ -0,0 +1,313 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="744.09448819"
+   height="1052.3622047"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.47 r22583"
+   sodipodi:docname="upload-process.svg"
+   inkscape:export-filename="/home/trygvis/public_html/upload-application/upload-process.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs4">
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow2Lend"
+       style="overflow:visible;">
+      <path
+         id="path3628"
+         style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         transform="scale(1.1) rotate(180) translate(1,0)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow2Mend"
+       style="overflow:visible;">
+      <path
+         id="path3634"
+         style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         transform="scale(0.6) rotate(180) translate(0,0)" />
+    </marker>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective10" />
+    <inkscape:perspective
+       id="perspective4442"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective4467"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective4492"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Lend-4"
+       style="overflow:visible">
+      <path
+         id="path3628-3"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
+    </marker>
+    <inkscape:perspective
+       id="perspective4520"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Lend-3"
+       style="overflow:visible">
+      <path
+         id="path3628-8"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
+    </marker>
+    <inkscape:perspective
+       id="perspective4548"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective2849"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Lend-45"
+       style="overflow:visible">
+      <path
+         id="path3628-2"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
+    </marker>
+    <inkscape:perspective
+       id="perspective2877"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective2902"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.84191547"
+     inkscape:cx="372.04724"
+     inkscape:cy="761.63382"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     inkscape:snap-object-midpoints="true"
+     inkscape:snap-center="true"
+     inkscape:snap-midpoints="false"
+     inkscape:window-width="1233"
+     inkscape:window-height="1124"
+     inkscape:window-x="438"
+     inkscape:window-y="25"
+     inkscape:window-maximized="0" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <text
+       xml:space="preserve"
+       style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+       x="144.78357"
+       y="84.047806"
+       id="text3590"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan3592"
+         x="144.78357"
+         y="84.047806"
+         style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">Catalog Releases</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+       x="207.85934"
+       y="420.46976"
+       id="text3594"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan3596"
+         x="207.85934"
+         y="420.46976"
+         style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">Upload #123 summary</tspan></text>
+    <path
+       style="fill:none;stroke:#000000;stroke-width:1.67754757px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)"
+       d="M 322.22382,368.54677 283.1377,116.0282"
+       id="path3602"
+       sodipodi:nodetypes="cc" />
+    <text
+       xml:space="preserve"
+       style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+       x="10.689908"
+       y="131.84221"
+       id="text4240"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4242"
+         x="10.689908"
+         y="131.84221"
+         style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">name="create-upload"</tspan></text>
+    <path
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)"
+       d="m 214.98595,396.71442 c 0,0 -66.51499,-53.45344 -66.51499,15.44097 0,85.65115 84.3315,95.02142 80.7682,23.75536"
+       id="path4246"
+       sodipodi:nodetypes="csc" />
+    <text
+       xml:space="preserve"
+       style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+       x="9.4930534"
+       y="484.82397"
+       id="text4240-7"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4242-2"
+         x="9.4930534"
+         y="484.82397"
+         style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">name="add-file"</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+       x="497.23529"
+       y="247.82224"
+       id="text3594-9"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan3596-6"
+         x="497.23529"
+         y="247.82224"
+         style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">checkpkg report</tspan></text>
+    <path
+       style="fill:none;stroke:#000000;stroke-width:1.67754757px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)"
+       d="M 377.70888,395.14188 498.42307,257.32437"
+       id="path3602-3"
+       sodipodi:nodetypes="cc" />
+    <path
+       style="fill:none;stroke:#000000;stroke-width:0.94943696px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)"
+       d="m 446.43229,404.74515 c 0,0 59.93021,-53.4788 59.93021,15.44829 0,85.69179 -75.98294,95.06651 -72.7724,23.76663"
+       id="path4246-6"
+       sodipodi:nodetypes="csc" />
+    <text
+       xml:space="preserve"
+       style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+       x="433.13458"
+       y="515.07501"
+       id="text4240-7-0"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4242-2-4"
+         x="433.13458"
+         y="515.07501"
+         style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">name="submit-upload"</tspan></text>
+    <path
+       style="fill:none;stroke:#000000;stroke-width:1.67754757px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)"
+       d="M 227.38244,117.25157 236.9948,394.4774"
+       id="path3602-5"
+       sodipodi:nodetypes="cc" />
+    <text
+       xml:space="preserve"
+       style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+       x="298.82367"
+       y="184.31874"
+       id="text4240-4"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4242-7"
+         x="298.82367"
+         y="184.31874"
+         style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">name="delete-upload"</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
+       x="470.43915"
+       y="312.73941"
+       id="text4240-7-0-4"
+       sodipodi:linespacing="125%"><tspan
+         sodipodi:role="line"
+         id="tspan4242-2-4-4"
+         x="470.43915"
+         y="312.73941"
+         style="font-size:18px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;font-family:DejaVu Sans;-inkscape-font-specification:DejaVu Sans">name="checkpkg-report"</tspan></text>
+  </g>
+</svg>


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.


More information about the devel mailing list