
On 2/11/2013 5:51 PM, Greg Newby wrote:
Feel free to spin up a separate effort, of course. However, I am still optimistic about the feasibility of the approach I outlined a year or so ago (?) of having a user-contributed area, with something like a TRAC for variations.
I think you have a bit of a misconception here. Trac is primarily a project tracking and management solution. It is used to set up project documentation (presumably design document), a "bulletin-board" system for collaboration, setting milestones and tracking bugs and tasks (tickets). Indeed, the ticketing system seems much more oriented towards tracking assigned tasks than reported defects. While Trac can interface to Subversion, it does so only to the extent of providing a browser-based, read-only interface into an existing Subversion repository. One can browse the "source" (i.e. documents) and generate diffs between various versions, but one cannot add new documents, create new versions of documents, or create new branches of documents; that functionality will require a SVN client. For our purposes, Trac is functionally equivalent to Jira + ViewSVN. I have no opinion as to which of these two approaches is superior; I suspect that it doesn't matter, and that the preferences of the system administrator should be the deciding factor. Despite multiple requests on their web site, Trac does not have an interface into CVS; instead it recommends using Trac for ticket management and ViewCVS for the web interface into the CVS repository. All that being said...
Crowdsourcing errata and variations.
Making this scalable is challenging. Doing it so that minimal changes are needed to the existing PG structure is key. (And, especially, so I can't be a bottleneck in the process. I hate that.)
I'm pretty sure I've written all of this before. Coming up with a *scalable* approach is a bigger challenge than (so far) people have been able to demonstrate.
Mr. Newby has imported all of the PG repository into a Subversion database on readingroo.ms as of February 28, 2012. The repository can be browsed from inside Trac at http://trac.readingroo.ms/gutenberg/browser. Note that this repository does not include any changes to the PG corpus made since that time, although some enterprising soul could do that by reviewing the commits archived at http://news.gmane.org/gmane.culture.literature.e-books.gutenberg.announce.po.... I have enabled public access to the ticketing system on http://trac.readingroo.ms/gutenberg/. Any person can enter a new defect report by selecting "New Ticket" on that page. Equally, any person can get a list of all tickets, including resolved tickets, by selecting "View Tickets" from that same page. I would encourage everyone to report defects into the Trac ticketing system. They won't get as much visibility there, but at least they will be archived in a publicly accessible database. To make this really useful, we need to set up Trac so that every defect report generates an e-mail message to errata at pglaf dot org. Trac has that capability, but I haven't figured out how to enable it yet. It may be necessary to install an MTA on readingroo.ms if one is not already present. I'm just one man, and I have a real job; this is a lower priority for me. I have modified the Subversion repository on readingroo.ms so that it can be used by an SVN client in HTTP mode. SVN is exposed on the web by WebDAV, so I had to install the Apache WebDAV module. The way WebDAV, SVN, and Trac work together (i.e., just barely) is heavily dependent on Unix file system permissions (User, Group, World), and I'm not sure those things are set up correctly yet. I want the Subversion repository to be world readable, but require authentication to check in new versions and branches. For all I know, the way I've set things up has made readingroo.ms subject to attack; I'm still muddling through. If you would like SVN write-access to the Subversion repository on readingroo.ms, e-mail me off-list and I'll see what I can do. No promises, and I may not get back to you for weeks. I have absolutely no interest in the impoverished text files in the PG Subversion archive; I'll be happy to provide read/write access to qualified users, but I'm not going to get involved beyond that. Well formatted HTML files are another matter. Clearly, some sort of versioning and branching will be needed for those files. But we have to be aware of the potential for version wars that creep in to places like Wikipedia. I'm certain that Mr. Adcock, Mr. Kretz and I are going to have some pretty serious disagreements about the proper form for a particular file. We can't tolerate on person making a change, then a second person backing it out, then the first person making the change again, then a third person making a contradictory change, then the first person backing out the contradictory change, and so on. I don't think any person's changes ought to be rejected, but we will need a process to determine which changes become part of HEAD, and which changes will be committed to a specific branch (it will be the responsibility of the "branch owner" to keep the branch synchronized with the main line when defects are resolved). So before a versioning mechanism can be established for HTML files some sort of standards will need to be established. Only changes consistent with those standards will be committed to the main line; inconsistent changes will be forked. People who consistently make gratuitous or non-standard changes to files will simply have their write access revoked. Of course, there's no reason why we couldn't create separate Subversion sandboxes for any individual who wanted one and didn't want to play by the rules. Mr. Kretz and I have had several productive discussions, both on- and off-list about what rules there should be for creating HTML files. As a result, I have begun a draft document which can be found at http://readingroo.ms:8080/PG2ePub/cvsget/HTMLRules.html. This document should be viewed as nothing more than a first draft; it is not well organized, incomplete, and subject to change. I am by profession a software developer, not a Linux system administrator, and what I have done with Trac, Subversion and Apache on readingroo.ms was accomplished primarily by googling for answers to specific questions, then trying out the answer to see what happens. If there is anyone who would like to take over administration of any of these three services, please contact me off-list.