Re: Proposal for augmented structure for PG

Lee Passey <[email protected]> Tue, 12 Feb 2013 12:05:46 -0700
Newsgroups gmane.culture.literature.e-books.gutenberg.volunteers
Message-ID <[email protected]>
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.posted.

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.

_______________________________________________
gutvol-d mailing list
gutvol-d-4LCm/o+qPMZ96Xl/[email protected]
http://lists.pglaf.org/mailman/listinfo/gutvol-d