Gentoo Archives: gentoo-dev

From: Alec Warner <antarus@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] GLEP 42 (News) revisited
Date: Mon, 12 Jun 2006 23:39:24
Message-Id: 448DF81A.6000400@gentoo.org
In Reply to: [gentoo-dev] GLEP 42 (News) revisited by Stephen Bennett
1 Stephen Bennett wrote:
2 > Since GLEP 42's original author and sponsor has left the project, I've
3 > taken it over, and would like to have another go at getting it
4 > implemented. I've just updated the version in CVS[1], which should be
5 > making its way onto the www nodes, but with any luck the full text
6 > should be attached here for convenience.
7 >
8 > So, I'd like to ask for any further input on this, and if noone has any
9 > major issues with it, I'd like to put it into the Council's queue for
10 > discussion at the next opportunity.
11 >
12 > Changes since the previous posted version:
13 >
14 > * Added details of a reference implementation.
15 >
16 >
17 > ------------------------------------------------------------------------
18 >
19 > GLEP: 42
20 > Title: Critical News Reporting
21 > Version: $Revision: 1.10 $
22 > Author: Ciaran McCreesh <ciaranm@g.o>
23 > Last-Modified: $Date: 2006/06/12 22:03:07 $
24 > Status: Draft
25 > Type: Standards Track
26 > Content-Type: text/x-rst
27 > Created: 31-Oct-2005
28 > Post-History: 1-Nov-2005, 5-Nov-2005, 7-Nov-2005, 11-Dec-2005, 13-Dec-2005, 18-Dec-2005, 5-Jan-2006, 2-Mar-2006, 6-Mar-2006, 12-Jun-2006
29 >
30 > Abstract
31 > ========
32 >
33 > This GLEP proposes a new way of informing users about important updates and news
34 > related to the tree.
35 >
36 > Motivation
37 > ==========
38 >
39 > Although most package updates are clean and require little user action,
40 > occasionally an upgrade requires user intervention. Recent examples of the
41 > latter include the ``gcc-3.4`` stabilisation on ``x86`` and the ``mysql-4.1``
42 > database format changes.
43 >
44 > There are currently several ways of delivering important news items to our
45 > users, none of them particularly effective:
46 >
47 > * Gentoo Weekly News
48 > * The ``gentoo-announce``, ``gentoo-user`` and ``gentoo-dev`` mailing lists
49 > * The Gentoo Forums
50 > * The main Gentoo website
51 > * RSS feeds of Gentoo news
52 > * ``einfo`` and ``ewarn`` messages in ``pkg_setup`` or ``pkg_postinst``
53 >
54 > A more reliable way of getting news of critical updates out to users is required
55 > to avoid repeats of various prior upgrade debacles. This GLEP proposes a
56 > solution based around pushing news items out to the user via the ``rsync`` tree.
57 >
58 > .. Important:: This GLEP does not seek to replace or modify ``einfo`` messages
59 > which are displayed post-install. That is a separate issue which is handled
60 > by ``elog`` [#bug-11359]_.
61 >
62 > Requirements
63 > ============
64 >
65 > An adequate solution must meet all of the following requirements:
66 >
67 > Preemptive
68 > Users should be told of changes *before* they break a system, not after the
69 > damage has already been done. Ideally, the system administrator would be
70 > given ample warning to plan difficult upgrades and changes, rather than only
71 > being told just before action is necessary.
72 >
73 > No user subscription required
74 > It has already been demonstrated [#forums-apache2]_ that many users do not
75 > read the ``gentoo-announce`` mailing list or ``RSS`` feeds. A solution that
76 > requires subscription has no advantage over current methods.
77 >
78 > No user monitoring required
79 > It has already been demonstrated [#forums-apache2]_ that many users do not
80 > read news items posted to the Gentoo website, or do not read news items
81 > until it is too late. A solution that relies upon active monitoring of a
82 > particular source has no advantage over current methods.
83 >
84 > Relevant
85 > System administrators who do not use a particular package should not have to
86 > read news items which affect purely that package. Some news items may be of
87 > relevance to most or all users, but those that are not should not be forced
88 > upon users unnecessarily.
89 >
90 > Lightweight
91 > It is not reasonable to expect all users to have an MTA, web browser, email
92 > client, cron daemon or text processing suite available on their system.
93 > Users must not be forced to install unreasonable extra software to be able
94 > to read news items.
95 >
96 > No privacy violations
97 > Users of the solution should not be required to provide information about
98 > their systems (for example, IP addresses or installed packages).
99 >
100 > Multiple delivery method support
101 > Some users may wish to view news items via email, some via a terminal and
102 > some via a web browser. A solution should either support all of these
103 > methods or (better still) make it simple to write clients for displaying
104 > news items in different ways.
105 >
106 > The following characteristics would be desirable:
107 >
108 > Internationalisable
109 > Being able to provide messages in multiple languages may be beneficial.
110 >
111 > Quality control
112 > There should be some way to ensure that badly written or irrelevant messages
113 > are not sent out, for example by inexperienced developers or those whose
114 > English language skills are below par.
115 >
116 > Simple for developers
117 > Posting news items should be as simple as is reasonably possible.
118 >
119 > Simple for users
120 > Reading relevant news items should be as simple as is reasonably possible.
121 >
122 > Compatibility with existing and future news sources
123 > A news system would ideally be able to be integrated with existing news
124 > sources (for example, Forums, GWN, the main Gentoo website) without
125 > excessive difficulty. Similarly, easy interoperation with any future news
126 > sources should not be precluded.
127 >
128 > Specification
129 > =============
130 >
131 > Overview
132 > --------
133 >
134 > News items are published and delivered to users as follows:
135 >
136 > 1. A news item is written. The format to be used is described below.
137 >
138 > 2. The news item is reviewed, following the process described in
139 > `News Item Quality Control`_.
140 >
141 > 3. The news item is committed to a CVS (or Subversion [#glep-36]_) repository.
142 > From here, it is merged with the rsync tree. This is described in `News Item
143 > Distribution`_.
144 >
145 > 4. Users fetch the news item when they sync. This ensures that the news items in
146 > question are pushed to the user before the user accidentally makes an
147 > unwanted change. No changes to the existing rsync process are required by
148 > this GLEP.
149 >
150 > 5. The package manager filters the news item and, if it is relevant, marks the
151 > news item for reading. The package manager should also display a notice
152 > informing the user that there are unread news items.
153 >
154 > 6. The news item is handled by the user's choice of news item reader. See `News
155 > Item Clients`_.
156 >
157 > Required Portage Enhancements
158 > -----------------------------
159 >
160 > The following extensions to Portage are required:
161 >
162 > * Every repository (including overlays) will require a unique identifier. It is
163 > assumed that an identifier will be a string consisting of characters from
164 > ``a`` to ``z``, ``A`` to ``Z``, ``0`` to ``9``, ``+`` (plus), ``-`` (hyphen)
165 > ``_`` (underscore).
166 >
167 done
168
169 > * Portage must provide a way for external programs to obtain a list of all
170 > repository identifiers for a given system. It is assumed that this will be in
171 > the form of a ``portageq`` command (e.g. ``portageq get_repo_ids``).
172 >
173
174 not done, and if we implemented it, would be a hack (although
175 compromisable in this scheme, would be essentially a fake portageq command)
176
177 > * Portage must provide a way for external programs to obtain the base path for
178 > a repository with a given ID. It is assumed that this will be in the form of
179 > a ``portageq`` command (e.g. ``portageq get_repo_root gentoo-x86``).
180
181 same as above
182
183 >
184 > * Portage must extend ``portageq has_version`` to support restrictions to a
185 > given repository ID.
186
187 and again
188
189 >
190 > * Portage must extend ``portageq`` to implement a command which returns whether
191 > or not the profile used for a given repository ID is exactly the given profile
192 > (e.g. ``portageq profile_used default-linux/sparc/sparc64/2004.3
193 > gentoo-x86``).
194
195 and again
196
197 >
198 > These extensions are assumed during the following specification.
199 >
200
201 I have no problem with basically writing up 'fake' portageq calls.
202 However often people tell me overlays are important, they don't serve as
203 multipile repos and don't have metadata/news, so they are excluded in
204 this specification (intentially?). Portage doesn't do multiple repo's
205 so any repo-related call will be a 'fake' one, that just returns the
206 expected data, unless someone has a better method (looks at other
207 portage devs).
208
209 >
210 > News Item Quality Control
211 > -------------------------
212 >
213 > There have been complaints regarding the comprehensibility of some upgrade
214 > notices and news items in the past. This is understandable — not every Gentoo
215 > developer speaks English as a first language. However, for the sake of clarity,
216 > professionalism and avoiding making us look like prats, it is important that any
217 > language problems be corrected before inflicting a news item upon end users.
218 >
219 > Thus, at least 72 hours before a proposed news item is committed, it must be
220 > posted to the ``gentoo-dev`` mailing list and ``Cc:``\ed to ``pr@g.o``
221 > (exceptions may be made in exceptional circumstances). Any complaints — for
222 > example regarding wording, clarity or accuracy — **must** be addressed before
223 > the news item goes live.
224 >
225 > News items must only be for **important** changes that may cause serious upgrade
226 > or compatibility problems. Ordinary upgrade messages and non-critical news items
227 > should remain in ``einfo`` notices. The importance of the message to its
228 > intended audience should be justified with the proposal.
229 >
230 > .. Important:: The filtering system means that it is appropriate to send out
231 > news items which are aimed at users of an uncommon package or architecture.
232 > Thus, the justification should be in the form "this message is important to
233 > YourSQL users because ...", not "YourSQL is important because ...".
234 >
235
236 I am not sure if I pointed this out before, but I feel that news items
237 should be of a pragmatic nature. IE they should be useful but not
238 frequent. It should not be overly difficult to post a news item for a
239 particular incident. If news items are constantly being shot down due
240 to "importance" or some other reason that lacks what I would call a
241 reasonable blocking reason ( ie bad grammar, clarity problems,
242 inaccuracies ) it will discourage developers from submitting them.
243 While I am against completely crap news items, I would rather see more
244 news items than very few.
245
246 >
247 > Integration with Existing Systems
248 > =================================
249 >
250 > It would be simple to convert these news items into the format used for news
251 > items on the Gentoo website or posts for the ``gentoo-announce`` mailing list.
252 >
253 > There is an existing automated tool [#forums-glsa]_ for posting GLSAs to the
254 > forums. A similar tool can be used for these news items.
255 >
256
257 I would prefer to hear arguments about whether news items should be
258 posted to announce or to a seperate ML. I would also like to see
259 integration via a "news" link on p.g.o. I would be willing to assist in
260 the latter.
261 --
262 gentoo-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-dev] GLEP 42 (News) revisited Ciaran McCreesh <ciaran.mccreesh@×××××××××××××.uk>
Re: [gentoo-dev] GLEP 42 (News) revisited Stephen Bennett <spb@g.o>
Re: [gentoo-dev] GLEP 42 (News) revisited Marius Mauch <genone@g.o>