Contents of /xml/htdocs/proj/en/glep/glep-0061.html

Parent Directory Parent Directory | Revision Log Revision Log

Revision 1.1 - (show annotations) (download) (as text)
Tue Oct 21 23:30:47 2008 UTC (10 years ago) by cardoe
Branch: MAIN
File MIME type: text/html
add Robin's tree signing gleps. They still need lots of editing love (some won't glep-ify) but at least they're here and have glep #s reserved

1 <?xml version="1.0" encoding="utf-8" ?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5 <head>
6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7 <meta name="generator" content="Docutils 0.5: http://docutils.sourceforge.net/" />
8 <title>GLEP 61 -- Manifest2 compression</title>
9 <link rel="stylesheet" href="tools/glep.css" type="text/css" /></head>
10 <body bgcolor="white">
11 <table class="navigation" cellpadding="0" cellspacing="0"
12 width="100%" border="0">
13 <tr><td class="navicon" width="150" height="35">
14 <a href="http://www.gentoo.org/" title="Gentoo Linux Home Page">
15 <img src="http://www.gentoo.org/images/gentoo-new.gif" alt="[Gentoo]"
16 border="0" width="150" height="35" /></a></td>
17 <td class="textlinks" align="left">
18 [<b><a href="http://www.gentoo.org/">Gentoo Linux Home</a></b>]
19 [<b><a href="http://www.gentoo.org/proj/en/glep">GLEP Index</a></b>]
20 [<b><a href="http://www.gentoo.org/proj/en/glep/glep-0061.txt">GLEP Source</a></b>]
21 </td></tr></table>
22 <table class="rfc2822 docutils field-list" frame="void" rules="none">
23 <col class="field-name" />
24 <col class="field-body" />
25 <tbody valign="top">
26 <tr class="field"><th class="field-name">GLEP:</th><td class="field-body">61</td>
27 </tr>
28 <tr class="field"><th class="field-name">Title:</th><td class="field-body">Manifest2 compression</td>
29 </tr>
30 <tr class="field"><th class="field-name">Version:</th><td class="field-body">1.1</td>
31 </tr>
32 <tr class="field"><th class="field-name">Last-Modified:</th><td class="field-body"><a class="reference external" href="http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/proj/en/glep/glep-0061.txt?cvsroot=gentoo">2008/07/13 02:21:58</a></td>
33 </tr>
34 <tr class="field"><th class="field-name">Author:</th><td class="field-body">Robin Hugh Johnson &lt;robbat2&#32;&#97;t&#32;gentoo.org&gt;</td>
35 </tr>
36 <tr class="field"><th class="field-name">Status:</th><td class="field-body">Draft</td>
37 </tr>
38 <tr class="field"><th class="field-name">Type:</th><td class="field-body">Standards Track</td>
39 </tr>
40 <tr class="field"><th class="field-name">Content-Type:</th><td class="field-body"><a class="reference external" href="glep-0002.html">text/x-rst</a></td>
41 </tr>
42 <tr class="field"><th class="field-name">Requires:</th><td class="field-body"><a class="reference external" href="http://www.gentoo.org/proj/en/glepglep-0044.html">44</a></td>
43 </tr>
44 <tr class="field"><th class="field-name">Created:</th><td class="field-body">July 2008</td>
45 </tr>
46 <tr class="field"><th class="field-name">Updates:</th><td class="field-body">44</td>
47 </tr>
48 </tbody>
49 </table>
50 <hr />
51 <div class="contents topic" id="contents">
52 <p class="topic-title first">Contents</p>
53 <ul class="simple">
54 <li><a class="reference internal" href="#abstract" id="id1">Abstract</a></li>
55 <li><a class="reference internal" href="#motivation" id="id2">Motivation</a></li>
56 <li><a class="reference internal" href="#specification" id="id3">Specification</a></li>
57 <li><a class="reference internal" href="#backwards-compatibility" id="id4">Backwards Compatibility</a></li>
58 <li><a class="reference internal" href="#references" id="id5">References</a></li>
59 <li><a class="reference internal" href="#copyright" id="id6">Copyright</a></li>
60 </ul>
61 </div>
62 <div class="section" id="abstract">
63 <h1><a class="toc-backref" href="#id1">Abstract</a></h1>
64 <p>Deals with compression of large Manifest2 files.</p>
65 </div>
66 <div class="section" id="motivation">
67 <h1><a class="toc-backref" href="#id2">Motivation</a></h1>
68 <p>With the introduction of MetaManifest, and full-tree Manifest coverage,
69 we are faced with the possibility of having very large Manifests.</p>
70 <p>Preliminary experiments with MetaManifest, show that with just the
71 existing per-package Manifests, the full MetaManifest, for a tree
72 including metadata/, exceeds 8MiB in size. Applying common compression
73 can achieve a 50-60% reduction in this size.</p>
74 </div>
75 <div class="section" id="specification">
76 <h1><a class="toc-backref" href="#id3">Specification</a></h1>
77 <p>When searching for a Manifest2 file, if the basename form does not
78 exist, the package manager should search in the same location using
79 common compressed suffixes, and use the compressed file in place of the
80 Manifest2.</p>
81 <p>gzip, bzip2, lzma should all be supported if available on the given
82 platform. In the case that multiple versions exist, the package manager
83 should simply pick one - they should be identical, differing only in
84 compression.</p>
85 <p>The Manifest generation process is required to ensure that inconsistent
86 compressed versions do not exist.</p>
87 </div>
88 <div class="section" id="backwards-compatibility">
89 <h1><a class="toc-backref" href="#id4">Backwards Compatibility</a></h1>
90 <p>The package Manifests should also be maintained as ONLY uncompressed in
91 CVS.</p>
92 <p>For processing of all existing per-package Manifests, if compression is
93 used, it should be done in parallel to the existing Manifests, to
94 provide for a changeover period. Newer versions of Portage may later
95 choose to exclude all non-compressed Manifests during emerge --sync if
96 compressed versions are guaranteed to exist on the servers.</p>
97 <p>MetaManifests may come into existence as compressed from the start, as
98 do not have an backwards compatibility issues.</p>
99 <p>As a side note, this breaks all manual interaction with Manifests
100 such as grep, and so should only be applied to large Manifest2 files,
101 such as the MetaManifest. 384KiB is suggested as a arbitary cut-off
102 point to start generating compressed Manifest2 files.</p>
103 </div>
104 <div class="section" id="references">
105 <h1><a class="toc-backref" href="#id5">References</a></h1>
106 <table class="docutils footnote" frame="void" id="glep44" rules="none">
107 <colgroup><col class="label" /><col /></colgroup>
108 <tbody valign="top">
109 <tr><td class="label">[1]</td><td>Mauch, M. (2005) GLEP44 - Manifest2 format.
110 <a class="reference external" href="http://www.gentoo.org/proj/en/glep/glep-0044.html">http://www.gentoo.org/proj/en/glep/glep-0044.html</a></td></tr>
111 </tbody>
112 </table>
113 </div>
114 <div class="section" id="copyright">
115 <h1><a class="toc-backref" href="#id6">Copyright</a></h1>
116 <p>Copyright (c) 2007 by Robin Hugh Johnson. This material may be
117 distributed only subject to the terms and conditions set forth in the
118 Open Publication License, v1.0.</p>
119 <p>vim: tw=72 ts=2 expandtab:</p>
120 </div>
122 </div>
123 <div class="footer">
124 <hr class="footer" />
125 <a class="reference external" href="glep-0061.txt">View document source</a>.
126 Generated on: 2008-10-21 23:26 UTC.
127 Generated by <a class="reference external" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
129 </div>
130 </body>
131 </html>

  ViewVC Help
Powered by ViewVC 1.1.20