Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

upgrade check failure #972

Open
tsteven4 opened this issue Jan 4, 2023 · 9 comments
Open

upgrade check failure #972

tsteven4 opened this issue Jan 4, 2023 · 9 comments
Assignees

Comments

@tsteven4
Copy link
Collaborator

tsteven4 commented Jan 4, 2023

Ubuntu finally released the fix to Qt6 QLibraryInfo for jammy. But we have a couple of new issues:

  1. If we download from Qt then the expected OpenSSL versions aren't compatible. jammy has 3.0.2, Qt expects 1.

We get the popup
image
and the console shows:

qt.tlsbackend.ossl: Incompatible version of OpenSSL (built with OpenSSL 1.x, runtime version is >= 3.x)
qt.network.ssl: The backend "cert-only" does not support QSslKey
qt.network.ssl: Active TLS backend does not support key creation
qt.network.ssl: The backend "cert-only" does not support QSslKey
qt.network.ssl: Active TLS backend does not support key creation
qt.network.ssl: The backend "cert-only" does not support QSslKey
qt.network.ssl: Active TLS backend does not support key creation
qt.network.ssl: The backend "cert-only" does not support QSslKey
qt.network.ssl: Active TLS backend does not support key creation
qt.network.ssl: The backend "cert-only" does not support QSslKey
qt.network.ssl: Active TLS backend does not support key creation
qt.network.ssl: The backend "cert-only" does not support QSslKey
qt.network.ssl: Active TLS backend does not support key creation
qt.network.ssl: The backend "cert-only" does not support QSslSocket
qt.network.ssl: The backend named "cert-only" does not support TLS
qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
  1. If we use the ubuntu supplied Qt6, then (testing true, qDebug() << oresponse)
    (also notice two periods in the popup)

image

Warning: Ignoring WAYLAND_DISPLAY on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
http status code  200
"NULL\nNULL\n0"

Now, if we change the upgrade check method from http to https then the testing message notifying the user an upgrade from 1.3.1 is presented as expected.

@tsteven4
Copy link
Collaborator Author

tsteven4 commented Jan 4, 2023

This was with 7b321cd, the current HEAD->master.

@tsteven4
Copy link
Collaborator Author

tsteven4 commented Jan 4, 2023

and Qt 6.2.4

@tsteven4
Copy link
Collaborator Author

tsteven4 commented Jan 4, 2023

@tsteven4
Copy link
Collaborator Author

tsteven4 commented Jan 9, 2023

The issue with the popup "Invalid return data at line 1: Start tag expected.." also occurs on macOS. It appears that gpsbabel.org doesn't respond well to redirects which are reissued using GET. upgrade issues a POST using the http scheme.

Note: When Qt handles redirects it will, for legacy and compatibility reasons, issue the redirected request using GET when the server returns a 301 or 302 response, regardless of the original method used, unless it was HEAD.

@robertlipe can you please look at this?

@robertlipe
Copy link
Collaborator

robertlipe commented Jan 9, 2023 via email

@tsteven4
Copy link
Collaborator Author

The invalid return data popup has been reported again on gpsbabel-misc

@tsteven4
Copy link
Collaborator Author

The invalid return data popup is reproducible with 043fe4f on
ProductName: macOS
ProductVersion: 12.6.4

@GPSBabelDeveloper
Copy link
Collaborator

GPSBabelDeveloper commented Jun 21, 2023 via email

@robertlipe
Copy link
Collaborator

This is part of what tripped us up on the 1.9.0 rollout. I think it's because we're issuing a 301 redirect which (stupidly) converts the POST to a GET.

Looks like we may need to dole out 308's and hope that all the old clients can handle this.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/308
https://stackoverflow.com/questions/42136829/whats-the-difference-between-http-301-and-308-status-codes

So running from this problem probably broke update check for a substantial number of people and I've left this in the oven for too long. :-(

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants