At our company, we customize our hg setup, so we don't want to use the Kiln installer. We have a powershell script that everyone runs that sets up their local Mercurial config.
My plan was to modify this setup script to now configure Kiln. In doing so I kept running into an exception with kilnauth. At first I thought it was a conflict with mercurial_keyring, but after some trial and error, it seems to just be an issue with the kilnauth extention.
I can start a fresh VM (Windows7), install the latest Mercurial tools (1.8.2 and 2.0.3 of thg).
I then do a quick hg clone, and all is well with the world.
Now I download your extensions. I extract the zip, and modify the mercurial.ini so all it has in it kilnauth="path to kilnauth.py". I now try the same hg clone, and I get
hg clone https://<name>.kilnhg.com/Repo/Repositories/Test/zach-test
Cookie file C:\Users\zdrummond\_hgcookies\d41d8cd98f00b204e9800998ecf8427e exists, but could not be opened.
Continuing without cookie authentication.
http authorization required
realm: kiln
user: zdrummond@biaprotect.com
password:
Cookie file C:\Users\zdrummond\_hgcookies\d41d8cd98f00b204e9800998ecf8427e exists, but could not be opened.
Continuing without cookie authentication.
** unknown exception encountered, please report by visiting
** http://mercurial.selenic.com/wiki/BugTracker
** Python 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)]
** Mercurial Distributed SCM (version 1.8.2)
** Extensions loaded: fixfrozenexts, mq, kilnauth
Traceback (most recent call last):
File "hg", line 36, in <module>
File "mercurial\dispatch.pyo", line 16, in run
File "mercurial\dispatch.pyo", line 36, in dispatch
File "mercurial\dispatch.pyo", line 58, in _runcatch
File "mercurial\dispatch.pyo", line 601, in _dispatch
File "mercurial\dispatch.pyo", line 406, in runcommand
File "mercurial\dispatch.pyo", line 655, in _runcommand
File "mercurial\dispatch.pyo", line 609, in checkargs
File "mercurial\dispatch.pyo", line 598, in <lambda>
File "mercurial\util.pyo", line 433, in check
File "mercurial\commands.pyo", line 825, in clone
File "mercurial\hg.pyo", line 221, in clone
File "mercurial\hg.pyo", line 94, in repository
File "mercurial\httprepo.pyo", line 199, in instance
File "mercurial\wireproto.pyo", line 68, in between
File "mercurial\httprepo.pyo", line 137, in _call
File "mercurial\httprepo.pyo", line 88, in _callstream
File "C:\Users\zdrummond\Downloads\kiln_extensions\kilnauth.py", line 169, in open
response = func(*args, **kwargs)
File "urllib2.pyo", line 397, in open
File "urllib2.pyo", line 510, in http_response
File "urllib2.pyo", line 429, in error
File "urllib2.pyo", line 369, in _call_chain
File "urllib2.pyo", line 864, in http_error_401
File "mercurial\url.pyo", line 692, in http_error_auth_reqed
File "urllib2.pyo", line 842, in http_error_auth_reqed
File "urllib2.pyo", line 852, in retry_http_basic_auth
File "C:\Users\zdrummond\Downloads\kiln_extensions\kilnauth.py", line 171, in open
cj.save(ignore_discard=True, ignore_expires=True)
File "_MozillaCookieJar.pyo", line 116, in save
ValueError: a filename was not supplied (nor was the CookieJar instance initialised with one)
Now the interesting thing, is if I copy my _hgcookies directory from another machine with a normal install of kiln everything works. The file in there is named d41d8cd98f00b204e9800998ecf8427e
Should I just add this file to my setup script?