I replaced the nice raise CertificateError with just a 'raise "blah"' to get a backtrace. This is what I got: bzr: ERROR: exceptions.TypeError: exceptions must be old-style classes or derived from BaseException, not str Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 920, in exception_to_return_code return the_callable(*args, **kwargs) File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 1131, in run_bzr ret = run(*run_argv) File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 673, in run_argv_aliases return self.run(**all_cmd_args) File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 695, in run return self._operation.run_simple(*args, **kwargs) File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 136, in run_simple self.cleanups, self.func, *args, **kwargs) File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 166, in _do_with_cleanups result = func(*args, **kwargs) File "/usr/lib/python2.7/dist-packages/bzrlib/builtins.py", line 1420, in run from_location) File "/usr/lib/python2.7/dist-packages/bzrlib/controldir.py", line 778, in open_tree_or_branch controldir = klass.open(location) File "/usr/lib/python2.7/dist-packages/bzrlib/controldir.py", line 685, in open t = _mod_transport.get_transport(base, possible_transports) File "/usr/lib/python2.7/dist-packages/bzrlib/transport/__init__.py", line 1679, in get_transport return get_transport_from_url(location_to_url(base), possible_transports) File "/usr/lib/python2.7/dist-packages/bzrlib/transport/__init__.py", line 1601, in location_to_url location = directories.dereference(location) File "/usr/lib/python2.7/dist-packages/bzrlib/directory_service.py", line 65, in dereference return service().look_up(name, url) File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_directory.py", line 68, in look_up return self._resolve(url) File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_directory.py", line 173, in _resolve result = self._resolve_via_xmlrpc(path, url, _request_factory) File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_directory.py", line 100, in _resolve_via_xmlrpc result = resolve.submit(service) File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_registration.py", line 271, in submit self._authenticated) File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_registration.py", line 194, in send_request result = method(*method_params) File "/usr/lib/python2.7/xmlrpclib.py", line 1224, in __call__ return self.__send(self.__name, args) File "/usr/lib/python2.7/xmlrpclib.py", line 1578, in __request verbose=self.__verbose File "/usr/lib/python2.7/dist-packages/bzrlib/plugins/launchpad/lp_registration.py", line 72, in request response = self._opener.open(request) File "/usr/lib/python2.7/urllib2.py", line 400, in open response = self._open(req, data) File "/usr/lib/python2.7/urllib2.py", line 418, in _open '_open', req) File "/usr/lib/python2.7/urllib2.py", line 378, in _call_chain result = func(*args) File "/usr/lib/python2.7/dist-packages/bzrlib/transport/http/_urllib2_wrappers.py", line 926, in https_open connection.connect_to_origin() File "/usr/lib/python2.7/dist-packages/bzrlib/transport/http/_urllib2_wrappers.py", line 511, in connect_to_origin match_hostname(peer_cert, self.host) File "/usr/lib/python2.7/dist-packages/bzrlib/transport/http/_urllib2_wrappers.py", line 444, in match_hostname raise "blah" TypeError: exceptions must be old-style classes or derived from BaseException, not str You can report this problem to Bazaar's developers by running apport-bug /var/crash/bzr.1000.2012-03-02T10:54.crash if a bug-reporting window does not automatically appear.