[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