discuss: Linux documentation wiki
Subject:
Re: Linux documentation wiki
From:
Charles Curley ####@####.####
Date:
13 Jan 2002 15:42:35 -0000
Message-Id: <20020113081830.A26526@trib.com>
On Sun, Jan 13, 2002 at 09:01:43AM +0100, jdd wrote:
> this "wiki" discussion turns to "wiki versus cvs"
>
> I think wiki and cvs are two completely different beasts.
>
> cvs needs an account and/or special configurations. I once try to look at it
> ans never had time to understand...
>
> wiki can be used at once by anybody.
>
> however it would be ridiculous to make directly a HOWTO from a wiki. Anyboby
> can not only add but also delete from a wiki page and thus no essential text
> can be hold there.
>
> BUT I think it should be VERY interesting to have a wiki page for any HOWTO
> (if accepted by the maintainer) to hold a todo/bug list.
>
> effectively understand my point. suppose I find a bug in a HOWTO. How old is
> my HOWTO version? is this bug already known by the maintainer? before writing
> and spending maybe long hours to comment the bug, I ought to get a look a the
> HOWTO wiki to see if this has already been done.
Would bugzilla be a better choice here?
I've been watching the wiki discussion with some concerns, and haven't
yet been satisfied. One of them is security, another is the integrity
of the original document. Using bugzilla addresses both of those
issues because it does not allow the bug filer access to the source.
Also, the wiki seems to require almost instantaneous response from a
document's maintainer to a change. Bugzilla allows a more leisurely
response because the change is not added to the original document in a
manner that makes it appear to be part of the original document.
I don't see any evidence that a wiki allows the maintainer to deal
with each bug/change discretely. That is, suppose three different
people make changes to a wiki document. Tom edits something in. Dick
sees the changes, and makes a change. Harry then comes along and makes
other changes to Tom's edits. I would want to deal with Tom's original
changes first, then the other two. Bugzilla would preserve Tom's
original changes.
Also, bugzilla would preserve the bug filers' comments about the
change, as well as the change itself.
>
> a wiki log could also show if the maintainer is still alive :-)
>
> of course wiki is only one of many kind of communication methods.
>
> is it costy to use?
>
> if someboby want it, why don't do it?
>
--
-- C^2
The world's most effective anti-virus software: Linux.
Looking for fine software and/or web pages?
http://w3.trib.com/~ccurley
--> -->
<type 'exceptions.IOError'> | Python 2.5.2: /usr/bin/python Sat Jun 29 13:05:34 2024 |
A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/opt/ezmlm-browse-0.20/main.py in main() |
424
|
425 if path is not None:
|
426 main_path(path)
|
427 else:
|
428 main_form()
|
global main_form = <function main_form at 0x85a4c6c> |
/opt/ezmlm-browse-0.20/main.py in main_form() |
378 except ImportError:
|
379 die(ctxt, "Invalid command")
|
380 module.do(ctxt)
|
381
|
382 def main():
|
module = <module 'commands.showmsg' from '/opt/ezmlm-browse-0.20/commands/showmsg.pyc'>, module.do = <function do at 0x8602b8c>, global ctxt = {'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'} |
/opt/ezmlm-browse-0.20/commands/showmsg.py in do(ctxt={'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}) |
18 write(html('msg-pager') % ctxt)
|
19 write('<hr>')
|
20 sub_showmsg(ctxt, ctxt[MSGNUM])
|
21 write('<hr>')
|
22 write(html('msg-pager') % ctxt)
|
global sub_showmsg = <function sub_showmsg at 0x85a41ec>, ctxt = {'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, global MSGNUM = 'msgnum' |
/opt/ezmlm-browse-0.20/globalfns.py in sub_showmsg(ctxt={'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, msgnum=2080) |
229 format_timestamp(ctxt, ctxt)
|
230 write(html('msg-header') % ctxt)
|
231 rec_showpart(ctxt, msg, 0)
|
232 write(html('msg-footer') % ctxt)
|
233 ctxt.pop()
|
global rec_showpart = <function rec_showpart at 0x85a41b4>, ctxt = {'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, msg = <email.message.Message instance at 0x8625c4c> |
/opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x8625c4c>, partnum=1) |
205 else:
|
206 for p in part.get_payload():
|
207 partnum = rec_showpart(ctxt, p, partnum+1)
|
208 else:
|
209 write(html('msg-sep') % ctxt)
|
partnum = 1, global rec_showpart = <function rec_showpart at 0x85a41b4>, ctxt = {'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, p = <email.message.Message instance at 0x862b12c> |
/opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x862b12c>, partnum=2) |
208 else:
|
209 write(html('msg-sep') % ctxt)
|
210 sub_showpart(ctxt, part)
|
211 return partnum
|
212
|
global sub_showpart = <function sub_showpart at 0x85a4144>, ctxt = {'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part = <email.message.Message instance at 0x862b12c> |
/opt/ezmlm-browse-0.20/globalfns.py in sub_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 47, 'HTTP_X_FORW...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x862b12c>) |
164 type = ctxt[TYPE] = part.get_content_type()
|
165 ctxt[FILENAME] = part.get_filename()
|
166 template = html('msg-' + type.replace('/', '-'))
|
167 if not template:
|
168 template = html('msg-' + type[:type.find('/')])
|
global template = <function template at 0x859ce9c>, global html = <function html at 0x859ced4>, type = 'application/pgp-signature', type.replace = <built-in method replace of str object at 0x8627480> |
/opt/ezmlm-browse-0.20/globalfns.py in html(name='msg-application-pgp-signature') |
40
|
41 def html(name):
|
42 return template(name + '.html')
|
43
|
44 def xml(name):
|
global template = <function template at 0x859ce9c>, name = 'msg-application-pgp-signature' |
/opt/ezmlm-browse-0.20/globalfns.py in template(filename='msg-application-pgp-signature.html') |
31 except IOError:
|
32 if not _template_zipfile:
|
33 _template_zipfile = zipfile.ZipFile(sys.argv[0])
|
34 try:
|
35 f = _template_zipfile.open(n).read()
|
global _template_zipfile = None, global zipfile = <module 'zipfile' from '/usr/lib/python2.5/zipfile.pyc'>, zipfile.ZipFile = <class zipfile.ZipFile at 0x8535a7c>, global sys = <module 'sys' (built-in)>, sys.argv = ['-c', '/opt/ezmlm-browse-0.20'] |
/usr/lib/python2.5/zipfile.py in __init__(self=<zipfile.ZipFile instance at 0x861efec>, file='-c', mode='r', compression=0, allowZip64=False) |
337 self.filename = file
|
338 modeDict = {'r' : 'rb', 'w': 'wb', 'a' : 'r+b'}
|
339 self.fp = open(file, modeDict[mode])
|
340 else:
|
341 self._filePassed = 1
|
self = <zipfile.ZipFile instance at 0x861efec>, self.fp = None, builtin open = <built-in function open>, file = '-c', modeDict = {'a': 'r+b', 'r': 'rb', 'w': 'wb'}, mode = 'r' |
<type 'exceptions.IOError'>: [Errno 2] No such file or directory: '-c'
args =
(2, 'No such file or directory')
errno =
2
filename =
'-c'
message =
''
strerror =
'No such file or directory'