This wiki's design, per-entry content and selection of entries is up for discussion. Things have been done so far with the goal of easing adaptation to improved designs and workflows, as soon as we get any.
It may be interesting to keep the wiki repo in sync as the main repo, so the UI helps visualizing history and handling the .wiki files and the scripts. What scripts, you ask? Well...
To make it more maintainable and easier to test/debug, there is a script to parse the wiki and save it as easy-to-edit YAML. This script checks for errors in formatting (parsing will break) and that the creole->YAML->creole conversion round-trips (showing a diff if it doesn't). Line-wrapping and some content normalization (e.g. lowercasing of link names, a.k.a. 'slugs', sorting) are handled by this script. It also checks and handles updates of dependencies. What dependencies, you ask? Well...
Dependencies for each entry are being recorded as possible. While some crazy visualizations are possible, the aim is to include dependencies (and some other useful information) in each package page, so people interested in making some software work get to know what needs to support PyPy before that software can.
Besides this conversion/checking script, there is one for spell-checking pages, one for building dependency graphs and an incipient test suite.
As mentioned above, everything is being done to make the workflow flexible. Feel free to edit the wiki normally: the changes will be picked up and added to the YAML file. Soon, it'll be possible to edit the YAML file instead and get changes automatically into the wiki.
If you are interested in adding some software to the wiki, please do so. You can copy and paste another entry and modify it to get the format right, but here's an overview anyway (one blank between entries, two between categories):
\\\\ == CATEGORY === [[SLUG | NAME]] ICONS \\ URL \\ TAGLINE ---- \\\\ == CATEGORY === [[SLUG | NAME]] ICONS \\ URL \\ TAGLINE ---- === [[SLUG | NAME]] ICONS \\ URL \\ TAGLINE ---- Entry: SLUG - link target, page file name NAME - link text, entry page title URL - main URL, for links page (Home for now) TAGLINE - links page ICONS - info about compatibility and presence of entry page
Again, this is open to change. We could have a page per category, a different format, put the URL in the entry page instead or anything else.
The current YAML looks like this (one blank between entries, two between categories):
002 - Frameworks and application servers: bottle: slug: bottle name: Bottle url: https://github.com/defnull/bottle/wiki tagline: Bottle is a fast and simple micro-framework for small web-applications. compatible: '?' hasinfo: false information: '' category: 002 - Frameworks and application servers description: '' harddepends:  softdepends:  django: slug: django name: Django url: http://www.djangoproject.com/ tagline: Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. compatible: y hasinfo: true information: | Django is [[code.djangoproject.com/wiki/DjangoAndPyPy|known to work]] with PyPy. However, most DB drivers don't work, leaving [[psycopg]] and SQLite as options. PyPy [[http://speed.pypy.org/timeline/?ben=django|runs the templating engine faster]] than CPython, but so far DB access is slower. category: 002 - Frameworks and application servers description: '' harddepends:  softdepends: 
Tests are conducted manually and the results are added to an entry's page. If
you have tested something and want it to appear here but not to edit the wiki,
report your findings on
#pypy on freenode and someone will put it in the
wiki for you.
See Contributing for detailed instructions about testing software compatibility with PyPy.
Any patches needed for the test suite to run should be reported if possible.
Add your idea here
These are the features and tasks planned for the future:
- Add PyPI link and a list of links per entry.
- Make the conversion script handle updating YAML -> wiki.
- Decide whether to mirror the wiki in the repository, or just the scripts.
- Clean up and commit other helper scripts.