QGIS Next-Gen Installation Issues

Hi, I am trying to use the Speckle QGIS next-gen connector. However, when I look to click publish I get this error: ‘Python error: An error has occurred while executing Python code: See message log (Python Error) for more details.’

I am using QGIS version 3.40.5 and the latest download of the next-gen connector.

This is what I am getting in the log details:

2025-03-27T08:50:47     WARNING    Traceback (most recent call last):
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\connectionpool.py", line 467, in _make_request
              self._validate_conn(conn)
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\connectionpool.py", line 1099, in _validate_conn
              conn.connect()
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\connection.py", line 653, in connect
              sock_and_verified = _ssl_wrap_socket_and_match_hostname(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\connection.py", line 806, in _ssl_wrap_socket_and_match_hostname
              ssl_sock = ssl_wrap_socket(
              ^^^^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\util\ssl_.py", line 465, in ssl_wrap_socket
              ssl_sock = _ssl_wrap_socket_impl(sock, context, tls_in_tls, server_hostname)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\util\ssl_.py", line 509, in _ssl_wrap_socket_impl
              return ssl_context.wrap_socket(sock, server_hostname=server_hostname)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\ssl.py", line 455, in wrap_socket
              return self.sslsocket_class._create(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\ssl.py", line 1041, in _create
              self.do_handshake()
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\ssl.py", line 1319, in do_handshake
              self._sslobj.do_handshake()
             ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)
             
             During handling of the above exception, another exception occurred:
             
             Traceback (most recent call last):
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\connectionpool.py", line 793, in urlopen
              response = self._make_request(
              ^^^^^^^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\connectionpool.py", line 491, in _make_request
              raise new_e
             urllib3.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)
             
             The above exception was the direct cause of the following exception:
             
             Traceback (most recent call last):
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\requests\adapters.py", line 486, in send
              resp = conn.urlopen(
              ^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\connectionpool.py", line 877, in urlopen
              return self.urlopen(
              ^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\connectionpool.py", line 877, in urlopen
              return self.urlopen(
              ^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\connectionpool.py", line 877, in urlopen
              return self.urlopen(
              ^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\connectionpool.py", line 847, in urlopen
              retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\urllib3\util\retry.py", line 515, in increment
              raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
             urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='app.speckle.systems', port=443): Max retries exceeded with url: /graphql (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)')))
             
             During handling of the above exception, another exception occurred:
             
             Traceback (most recent call last):
              File "C:\Users\UKTES048\AppData\Roaming\Speckle\connector_installations\QGISv3\specklepy\core\api\resource.py", line 57, in make_request_and_parse_response
              response = self.client.execute(query, variable_values=variables)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\Users\UKTES048\AppData\Roaming\Speckle\connector_installations\QGISv3\gql\client.py", line 484, in execute
              return self.execute_sync(
              ^^^^^^^^^^^^^^^^^^
              File "C:\Users\UKTES048\AppData\Roaming\Speckle\connector_installations\QGISv3\gql\client.py", line 248, in execute_sync
              return session.execute(
              ^^^^^^^^^^^^^^^^
              File "C:\Users\UKTES048\AppData\Roaming\Speckle\connector_installations\QGISv3\gql\client.py", line 1017, in execute
              result = self._execute(
              ^^^^^^^^^^^^^^
              File "C:\Users\UKTES048\AppData\Roaming\Speckle\connector_installations\QGISv3\gql\client.py", line 926, in _execute
              result = self.transport.execute(
              ^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\Users\UKTES048\AppData\Roaming\Speckle\connector_installations\QGISv3\gql\transport\requests.py", line 237, in execute
              response = self.session.request(
              ^^^^^^^^^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\requests\sessions.py", line 589, in request
              resp = self.send(prep, **send_kwargs)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\requests\sessions.py", line 703, in send
              r = adapter.send(request, **kwargs)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\PROGRA~1\QGIS34~1.5\apps\Python312\Lib\site-packages\requests\adapters.py", line 517, in send
              raise SSLError(e, request=request)
             requests.exceptions.SSLError: HTTPSConnectionPool(host='app.speckle.systems', port=443): Max retries exceeded with url: /graphql (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)')))
             
             The above exception was the direct cause of the following exception:
             
             Traceback (most recent call last):
              File "C:\Users\UKTES048\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\speckle-qgis-v3\speckle\ui\widgets\dockwidget_main.py", line 376, in _open_select_projects_widget
              self.widget_project_search = ProjectSearchWidget(parent=self)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\Users\UKTES048\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\speckle-qgis-v3\speckle\ui\widgets\widget_project_search.py", line 53, in __init__
              self._add_projects(clear_cursor=True)
              File "C:\Users\UKTES048\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\speckle-qgis-v3\speckle\ui\widgets\widget_project_search.py", line 59, in _add_projects
              new_project_cards: list = self.ui_search_content.get_new_projects_content(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\Users\UKTES048\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\speckle-qgis-v3\speckle\ui\utils\search_widget_utils.py", line 99, in get_new_projects_content
              get_projects_from_client(
              File "C:\Users\UKTES048\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\speckle-qgis-v3\speckle\ui\utils\utils.py", line 58, in get_projects_from_client
              results: ResourceCollection[Project] = speckle_client.active_user.get_projects(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\Users\UKTES048\AppData\Roaming\Speckle\connector_installations\QGISv3\specklepy\core\api\resources\current\active_user_resource.py", line 129, in get_projects
              response = self.make_request_and_parse_response(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
              File "C:\Users\UKTES048\AppData\Roaming\Speckle\connector_installations\QGISv3\specklepy\core\api\resource.py", line 68, in make_request_and_parse_response
              raise SpeckleException(
             specklepy.logging.exceptions.SpeckleException: SpeckleException: Failed to execute the GraphQL active_user request. Inner exception: HTTPSConnectionPool(host='app.speckle.systems', port=443): Max retries exceeded with url: /graphql (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1010)')))

Hi @Tom.Sargent ! Just a quick checklist:

1 Like

Hi Kateryna, thanks for the response! I ran through your list and then final part fixed my issue

Thanks!

1 Like