Anybody who had been paying attention will have known that
PyWiki development
stalled long ago. The code is crufty and bloated, and probably will not even
run with current versions of Python.
To my knowledge,
PyWiki was the first '
WikiClone' written in Python, and the
first to be released under a GPL license. Evidence shows that I first
released it in August, 1998. It was fun to do, and I did it just for fun.
I guess open-sourced software never gets officially retired, but I am ready to
announce that I am never going to work on
PyWiki again.
I will no longer be exposing any wiki services to the wilds of the internet,
although I am an enthusiastic user of personal wikis to help manage various
projects.
For the time being,
PyWiki code will still be available for download as
described below.
Thanks to anyone who has ever shown interest in
PyWiki, and especially those
who offered constructive criticism and/or code.
--
TimVoght
PyWiki is a
WikiWikiClone written in the
PythonLanguage by
TimVoght as a 'first project in Python' exercise. An attempt has been made to mimic closely the functionality of
WardCunningham's Wiki. The use of RCS for file archiving is the most obvious departure.
An example is available for your perusal at
http://www.voght.com/cgi-bin/pywiki-demo
PyWiki uses the RCS
RevisionControlSystem to store its pages. It has been tested only on Linux and
MkLinux systems with Python version 1.5.1 and RCS version 5.7 installed.
I have it working fine on Solaris 2.6 -- KeithHodges
I have it working on Solaris 2.6, Python 1.5.2, RCS 5.7, Xitami server. I had to edit xitami.cfg to change "form-fields=0" to "form-fields=1" before it would work right. --
WayneConrad
PyWiki is
FreeSoftware. Source code can be downloaded for
free from:
ftp://voght.com/pub/voght Latest revision is 0.4.2 (February 2000)
It is distributed under the
GnuGeneralPublicLicense (GPL). Enjoy it.
New Version!
Once again,
PyWiki has undergone substantial refactoring. The project continues to be an educational one for me, and I continue to learn. The learning is slow to be sure, and all the slower in that I am working alone with little or no feedback, except for the occasional bug report or feature request.
It has been discussed that in
ExtremeProgrammingForOne,
PairProgramming is impossible (preferable?). That is true, and when you're trying to learn some things, it's easy to ruminate about how helpful it would be to have an experienced pair of eyes over your shoulder and a helpful hand pointing out gaffes on the screen. The best the solitary programmer can do is set the project aside for awhile and work on other things. In a few months, the code will look more alien and more subject to criticism and improvement. Python is a big help here, because it is so readable. I played with Forth once, and found that I couldn't read my own programs a week after writing them.
One thing I learned is discussed in
QuickHackTherapy, where it is pointed out that OO beginners tend to 'over-abstract' some programs, making objects out of everything, often inappropriately. I am comforted by
RalphJohnson's conclusion that, for a learner, this is a good thing and will usually lead to a better understanding of the paradigm. I think this is true.
Another thing I learned is discussed in
GrainOfTheLanguage. Python offers some very powerful abstractions in its list and dictionary structures (I think Perl folk call dictionaries 'associative lists'
nope--'associative arrays' or just 'hashes'). I found that I had designed modules which laid an inferior facade of my own making over these elegant data structures. I had a sudden revelation that I was fighting the language. I'm trying to get over this. Go easy on me. I've been toiling over C and assembly language programs for a long time.
Release Notes PyWiki 0.4.2
- Merciless refactoring.
- Text editing rules now better enforced. The previous version actually accepted some HTML markup. No more.
- Sequences of the form anIllegalWikiName and bogushttp://www.voght.com are no longer recognized as links. Thanks to JuhaPohjalainen for the bug report.
- .jpg and .png files are now accepted as well as .gif.
- URLs ending in .gif,.jpg, and .png will now be converted into images on the page. Previously, pywiki would only do this with external ([] style) links.
- Some web servers do not create the QUERY_STRINGS environment variable when no query strings are present. PyWiki expected the presence of the variable in any case. A fix has been applied. Thanks to CeesDeGroot and DanRoot for their reports and fixes.
- Editing for external link URLs is now on the same edit page as the text editor.
- Edit conflict detection has been implemented. If an author submits an edit and another edit for that page has been submitted (from another host) since the author fetched the edit form, the author is greeted with a page explaining what has happened. The author is asked to reload the form and submit again...
- Users of the 0.3.x versions of PyWiki should find that they can upgrade to 0.4.2 without any changes to their page archives.
After my first release of
PyWiki, I got a chance to see
WardCunningham's
wiki code on wikibase. When I looked at it, I think I saw 368 lines of Perl
code. I was shocked and humbled. I do get some comfort from the fact that
Ward's and my goals were much different, and I'm not sure in my case the
ulimate goal was to create a working wiki. Incidentally my shock and humility
did not prevent me from getting the book
MasteringRegularExpressions and figuring out exactly what Ward was up to.
I think if I were going to start from scratch today and if all I wanted to
accomplish was to create a working wiki, I would use
ZopeApplicationServer [
http://www.zope.com] the Python-based
Web development package. I've just started looking at it, and at first glance
it looks just plain cool.
--
TimVoght
Zope now has a wiki:
http://www.zope.org/Members/simon/ZWiki
--
ShaeErisson
or see
ZwiKi
A recent extraction of the
HyperPerl source for wiki yielded about 520 lines. I would be surprised/disappointed if a Python implementation was significantly larger. I'm playing with a reimplementation myself called
PikiPiki, and will be interested to compare it to
JohnFarrell's implementation as a
JavaServlet. --
MartinPool
Tim,
PyWiki was a breeze to install and get working. I had trouble getting another wiki to work, but I downloaded yours, followed the directions, and had it running in under 10 minutes. Very nice. --
RichardBash
Has anyone tried this with Python 2.2.1 yet? Thanks -- Paul Weimer
This is quite remarkable.
2012 Update
- It seems the PyWiki demo is no longer available
- Another active Python Wiki can be found at:
CategoryWikiImplementation