Complete.Org: Mailing Lists: Archives: gopher: March 2002:
[gopher] ANN: pygopherd modular gopher server
Home

[gopher] ANN: pygopherd modular gopher server

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: gopher@xxxxxxxxxxxx
Subject: [gopher] ANN: pygopherd modular gopher server
From: John Goerzen <jgoerzen@xxxxxxxxxxxx>
Date: Tue, 26 Mar 2002 13:03:55 -0500
Reply-to: gopher@xxxxxxxxxxxx

Hi,

In an effort to do some testing with new gopher protocols and idea, I 
created pygopherd.  Rapid prototyping is much better done with a Python 
framework than a UMN C-based one :-)

pygopherd right now contains protocol modules for standard gopher 
(rfc1436.py) and Gopher+ (gopherp.py).  Thanks to the modular 
architecture and significant framework, rfc1436.py is implemented in 17 
lines of code and gopherp.py in 59 (including comments!)

pygopherd also has modular handlers.  At the moment, only file.py and 
dir.py are defined.  I expect to add modules to handle UMN-format .Links 
files.

pygopherd uses a mime.types file and Python's mimetypes module for all 
type-related operations.  It achieves fill MIME type results in a far 
more complete and accurate fashion than UMN gopherd.  Due to its 
GopherEntry object architecture, it has no need to prepend the file type 
to the selector string like UMN gopherd does.  RFC1436 single-character 
types are generated based on a simple mimetype regexp mapping (ie, 
image/gif -> g, image/.* -> I).

It should also be fairly easy to make pygopherd speak HTTP (on the same 
port as gopher!) and any other gopher-related protocols.

Please download and try it out.  Let me know any thoughts.  There are no 
docs right now.

gopher://quux.org/1/devel/gopher/Downloads
http://quux.org/give-me-gopher/

-- John



[Prev in Thread] Current Thread [Next in Thread]
  • [gopher] ANN: pygopherd modular gopher server, John Goerzen <=