Issue994

Title unknown exception: hg push to static-http / python SimpleHTTPServer
Priority bug Status resolved
Superseder Nosy List abuehl, djc, mel, mg, pmezard
Assigned To Topics http_proto, patch

Created on 2008-02-16.21:44:43 by mel, last changed 2008-11-02.13:41:09 by djc.

Files
File name Uploaded Type Edit Remove
static-http-locking.patch mg, 2008-09-06.22:15:18 text/x-diff
Messages
msg7781 (view) Author: djc Date: 2008-11-02.13:41:09
In main, resolving.
msg6990 (view) Author: djc Date: 2008-09-08.09:40:26
Pushed mg's patch to crew as 7739b61897df.
msg6976 (view) Author: mg Date: 2008-09-06.22:15:18
I recently made the attached patch for this, it includes a test case.

Instead of a traceback one now gets an error message that says that one cannot
lock a static-http repository. It would be better to explain that one cannot
push to such a repository, but I think it is still better than nothing.
msg5321 (view) Author: pmezard Date: 2008-02-17.16:11:55
We should handle pushes to static-http without a traceback first, then maybe
make clone smarter. The behaviour when pushing to bundle is also unexpected.
msg5319 (view) Author: djc Date: 2008-02-17.13:12:55
Basically, a clone-over-static-http shouldn't add a default push path, right?

Or do we want a more general error message that pushing to static-http isn't
allowed?
msg5314 (view) Author: pmezard Date: 2008-02-16.22:45:36
With a more recent version:

hg clone http://localhost:8000 test2
localhost - - [16/Feb/2008 23:43:10] "GET /?cmd=heads HTTP/1.1" 200 -
abort: 'http://localhost:8000/' does not appear to be an hg repository!

But the issue is still there if you clone "static-http://localhost:8000"
msg5313 (view) Author: mel Date: 2008-02-16.21:48:27
version: Mercurial Distributed SCM (version f2335246e5c7+20080205)
msg5312 (view) Author: mel Date: 2008-02-16.21:44:42
Steps to repro:
1. hg init test1
2. make a change in repo test1 and commit it
3. cd test1; python -m SimpleHTTPServer (leave it running)
4. hg clone http://localhost:8000/ test2
5. make a change in repo test2 and commit it
6. cd test2; hg push

I know the push operation should not work in this case, but the following is
probably not the right behavior:

pushing to static-http://localhost:8000/
** unknown exception encountered, details follow
** report bug details to http://www.selenic.com/mercurial/bts
** or mercurial@selenic.com
** Mercurial Distributed SCM (version f2335246e5c7+20080205)
Traceback (most recent call last):
  File "hg", line 20, in ?
  File "mercurial\dispatch.pyc", line 20, in run
  File "mercurial\dispatch.pyc", line 29, in dispatch
  File "mercurial\dispatch.pyc", line 45, in _runcatch
  File "mercurial\dispatch.pyc", line 360, in _dispatch
  File "mercurial\dispatch.pyc", line 376, in _runcommand
  File "mercurial\dispatch.pyc", line 424, in profiled
  File "mercurial\dispatch.pyc", line 369, in checkargs
  File "mercurial\dispatch.pyc", line 352, in <lambda>
  File "mercurial\commands.pyc", line 2025, in push
  File "mercurial\localrepo.pyc", line 1441, in push
  File "mercurial\localrepo.pyc", line 1500, in push_addchangegroup
  File "mercurial\localrepo.pyc", line 615, in lock
  File "mercurial\localrepo.pyc", line 102, in __getattr__
AttributeError: _lockref
History
Date User Action Args
2008-11-02 13:41:09djcsetstatus: chatting -> resolved
nosy: pmezard, mg, djc, abuehl, mel
messages: + msg7781
2008-09-09 09:44:21djcsetstatus: testing -> chatting
nosy: pmezard, mg, djc, abuehl, mel
2008-09-09 09:44:14djcsetstatus: chatting -> testing
nosy: pmezard, mg, djc, abuehl, mel
2008-09-08 11:35:13abuehlsetnosy: + abuehl
2008-09-08 09:40:27djcsetnosy: pmezard, mg, djc, mel
messages: + msg6990
2008-09-06 22:16:15mgsettopic: + patch
nosy: pmezard, mg, djc, mel
2008-09-06 22:15:20mgsetfiles: + static-http-locking.patch
nosy: + mg
messages: + msg6976
2008-02-17 16:11:55pmezardsetnosy: pmezard, djc, mel
messages: + msg5321
2008-02-17 13:13:18djcsettopic: + http_proto
nosy: pmezard, djc, mel
2008-02-17 13:12:55djcsetnosy: pmezard, djc, mel
messages: + msg5319
2008-02-17 13:05:13djcsetnosy: + djc
2008-02-16 22:45:37pmezardsetnosy: + pmezard
messages: + msg5314
2008-02-16 21:48:27melsetstatus: unread -> chatting
messages: + msg5313
2008-02-16 21:44:43melcreate