Kiln » TortoiseHg » TortoiseHg
Clone URL:  
Pushed to one repository · View In Graph Contained in 0.4rc1, 0.4rc2, and 0.4rc3

hggtk/serve: bring up to Mercurial 1.0

fixes:
- traceback when clicking on browse button
- traceback when stopping server

Changeset 0b643e3bb131

Parent 8400ddd8d4ee

by TK Soh

Changes to one file · Browse files at 0b643e3bb131 Showing diff from parent 8400ddd8d4ee Diff from another changeset...

Change 1 of 4 Show Entire File hggtk/​serve.py Stacked
 
235
236
237
238
 
239
240
241
 
277
278
279
280
 
281
282
283
 
290
291
292
293
294
295
 
 
296
297
 
 
 
 
 
 
 
 
298
299
300
301
302
 
303
304
305
 
324
325
326
 
327
328
329
 
235
236
237
 
238
239
240
241
 
277
278
279
 
280
281
282
283
 
290
291
292
 
 
 
293
294
295
 
296
297
298
299
300
301
302
303
304
305
306
307
 
308
309
310
311
 
330
331
332
333
334
335
336
@@ -235,7 +235,7 @@
    while not gservice or not hasattr(gservice, 'httpd'):   time.sleep(0.1) - self._url = 'http://%s:%d/' % (gservice.httpd.addr, port) + self._url = 'http://%s:%d/' % (gservice.httpd.fqaddr, port)   gobject.timeout_add(10, self.process_queue, q)     def _stop_server(self): @@ -277,7 +277,7 @@
  util.set_signal_handler()   try:   parentui = ui.parentui or ui - optlist = ("name templates style address port ipv6" + optlist = ("name templates style address port prefix ipv6"   " accesslog errorlog webdir_conf certificate")   for o in optlist.split():   if opts[o]: @@ -290,16 +290,22 @@
    if not ui.verbose: return   - if self.httpd.port != 80: - ui.status(_('listening at http://%s:%d/\n') % - (self.httpd.addr, self.httpd.port)) + if self.httpd.prefix: + prefix = self.httpd.prefix.strip('/') + '/'   else: - ui.status(_('listening at http://%s/\n') % self.httpd.addr) + prefix = '' + + port = ':%d' % self.httpd.port + if port == ':80': + port = '' + + ui.status(_('listening at http://%s%s/%s (%s:%d)\n') % + (self.httpd.fqaddr, port, prefix, self.httpd.addr, self.httpd.port))     def stop(self):   self.stopped = True   # issue request to trigger handle_request() and quit - addr = '%s:%d' % (self.httpd.addr, self.httpd.port) + addr = '%s:%d' % (self.httpd.fqaddr, self.httpd.port)   conn = httplib.HTTPConnection(addr)   conn.request("GET", "/")   res = conn.getresponse() @@ -324,6 +330,7 @@
  ('E', 'errorlog', '', _('name of error log file to write to')),   ('p', 'port', 0, _('port to use (default: 8000)')),   ('a', 'address', '', _('address to use')), + ('', 'prefix', '', _('prefix path to serve from (default: server root)')),   ('n', 'name', '',   _('name to show in web pages (default: working dir)')),   ('', 'webdir-conf', '', _('name of the webdir config file'