hgwebdir.cgi on Windows

Jason Stewart jstewart at pobox.com
Sat Feb 16 08:35:21 CST 2008


I still haven't resolved this but I'm wondering, is anyone using this 
combination? I.e. Windows XP, the precompiled TortoiseHg version of 
Mercurial, and LightTpd? Should I try to build Mercurial from source?

Maybe I need to ask a different question. Is this the best way for me to 
securely share my repo with someone else? I'm doing some contract 
programming for a company and I just want them to be able to easily get 
any updates that I make. I don't think at this time that they need to 
push. Hg serve would probably be sufficient if it was authenticated and 
encrypted. I could use ssh (I'm already running an ssh server) but then 
the customer has to get setup to use plink and I lose the nice web 
interface. I could setup a separate Linux box and run it from there but 
it seems a waste to serve one repository.

Any other suggestions, either for fixing my problem or another approach 
I can take?

Thanks,

Jason Stewart


Jason Stewart wrote:
> I installed Mercurial from the "batteries included" installer and I'm 
> trying to get the hgwebdir script running under LightTPD on Windows. I 
> can get the first summary screen but when I click on the repo I'm trying 
> to serve I get a traceback like:
>
> Traceback (most recent call last):
>   File "c:/progra~1/lighttpd/servers/hg/hgwebdir.cgi", line 51, in <module>
>     wsgicgi.launch(wsgiapplication(make_web_app))
>   File "mercurial\hgweb\wsgicgi.pyc", line 64, in launch
>   File "mercurial\hgweb\request.pyc", line 18, in __call__
>   File "mercurial\hgweb\request.pyc", line 36, in __init__
>   File "mercurial\hgweb\hgwebdir_mod.pyc", line 250, in run_wsgi
>   File "mercurial\hgweb\request.pyc", line 50, in respond
>   File "mercurial\hgweb\request.pyc", line 50, in respond
>   File "mercurial\hgweb\request.pyc", line 59, in respond
>   File "mercurial\hgweb\common.pyc", line 26, in statusmessage
>   File "mercurial\hgweb\common.pyc", line 21, in _statusmessage
>   File "mercurial\demandimport.pyc", line 83, in _demandimport
>   File "BaseHTTPServer.pyc", line 95, in <module>
>   File "mercurial\demandimport.pyc", line 74, in __getattribute__
>   File "mercurial\demandimport.pyc", line 46, in _load
>   File "SocketServer.pyc", line 274, in <module>
>     ���RK���RC���t���forkR@���RF���t���appendR
���R"���t���_exitR
���(���R���R���R ���RI���(����(����s���SocketServer.pycR
���ª��s
����
>   File "SocketServer.pyc", line 317, in TCPServer
>   File "mercurial\demandimport.pyc", line 74, in __getattribute__
>   File "mercurial\demandimport.pyc", line 46, in _load
>   File "socket.pyc", line 46, in <module>
>     SOCK_STREAM, SOCK_DGRAM, SOCK_RAW -- socket types (second argument)
>   File "mercurial\demandimport.pyc", line 83, in _demandimport
>   File "_socket.pyc", line 12, in <module>
>   File "_socket.pyc", line 10, in __load
> ImportError: DLL load failed: The specified module could not be found.
>
>
>
> It looks like it can't load a DLL (socket?). Are there DLLs missing from 
> the "batteries included" installer that are needed for the CGI scripts? 
> Has anyone else done this before?
>
> Thanks for any help.
>
> Jason Stewart
>
> _______________________________________________
> Mercurial mailing list
> Mercurial at selenic.com
> http://selenic.com/mailman/listinfo/mercurial
>   



More information about the Mercurial mailing list