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
Add startup check for newer versions #179
Conversation
I received the following debug output when testing on Windows - Could another Windows user test and see if they get the same thing?
|
I looked into this and I think it's 'cos windows doesn't have openssl: Support for Secure Sockets Layer (SSL) communication is provided by the OpenSSL Toolkit, which must be obtained separately. See Secure Sockets Layer (SSL) Classes for instructions on building Qt with SSL support. |
Soo... while this works fine on the mac it's utterly awful on Windows. To get it running at least you can copy the following files from QTDIR/Tools/mingw530_32/opt/bin into your build/debug directory (so they're sitting alongside the built xcite.exe: libeay32.dll The problem now is that windows hangs the UI thread while trying to do the network request (which takes an inordinate amount of time in my VM). I'll look into passing it off to a separate thread when I get a second.. |
@nrocy777 thanks for that workaround - that worked; however I experienced the same very long delay while the UI was blocked during fetching the version. As you mentioned, this probably should not be merged to master until we can get it to make that call on a non-UI thread. Also what are your thoughts for handling the file dependency issue on Windows? Would we deploy those DLLs (assuming no licensing issues) within the installer once it's available? |
@enervey Yeah agreed, this definitely shouldn't be merged to master yet - thanks for confirming the same your end. Re: distribution, I think for now we just ship xcite.exe bundled in a zip with the additional DLL dependencies (we won't be able to do anything interesting without https support). Longer term these deps (and QT!) will be shipped with the installer, I believe licensing is more of a concern when you're shipping static builds rather than dynamic. Could you mark this as 'needs changes' in the review box in the meantime please? |
The fun here continues, seems for MINGW32 builds we need to recompile QT to enable the SSL stuff, while it's linking against the DLLs the support actually doesn't exist in QT. Will update as soon as I have something working (this also affects #145 and the pricing chart so needs resolved for bigger reasons) |
Adds a generic filedownloader for pulling other data later Checks current version against latest tagged release on github If current version is older, prompt to download the new version If Download clicked pop the github releases page in default browser You can test this by hardcoding m_currentVersion in the releasechecker.cpp constructor with a value like 10
Another update on this one, this seems to work now with the aforementioned SSL libraries in the same directory as xcite.exe. It doesn't seem to hang on startup for me (but I'm currently building QT in the background so it is slow). @enervey could you give it another try to see how it performs for you locally? |
Now have custom build of Qt with OpenSSL compiled in and have the release check working, despite the download running in another thread it's still lagging out the UI. I'm going to try two things next:
|
@enervey could you give this another stab when you get a chance? thx |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works great, thank you!
Adds a generic filedownloader for pulling other data later
Checks current version against latest tagged release on github
If current version is older, prompt to download the new version
If Download clicked pop the github releases page in default browser
You can test this by hardcoding m_currentVersion in the releasechecker.cpp constructor with a value like 10
Closes #164