Skip to content

Fix Software Update feature#66

Merged
rruchte merged 1 commit into
masterfrom
pr/Check_For_Updates
Nov 24, 2025
Merged

Fix Software Update feature#66
rruchte merged 1 commit into
masterfrom
pr/Check_For_Updates

Conversation

@Chris-AC9KH

@Chris-AC9KH Chris-AC9KH commented Nov 23, 2025

Copy link
Copy Markdown
Collaborator

This feature hasn't worked since js8call v2.2.0. It is now working again for JS8Call-improved.

Screenshot 2025-11-23 at 17 31 07

Some caveats

  • does NOT work with development software, the feature is disabled. To test you have change Versions.cmake to produce a production build from this branch (Edit: I guess it does work with development software. But in practice this will never be the case.)
  • it requires a text file called version.txt to be present in the latest production release downloads, populated with one line - the current semantic version number for that release.
  • the current URL points to the github releases. However, I believe this can be changed later to point to the website once the website is up to speed. @mgochoa57 can comment on that, as I believe it is intended to link to the newest release from the website, which is a "cleaner" URL than the github one.
  • I experimented with putting version.txt in the docs folder in the source tree. It did not work as the software cannot parse the file from there.

@Chris-AC9KH Chris-AC9KH added the enhancement New feature or request label Nov 23, 2025
@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

Additional comment. This is an example where void MainWindow::checkVersion(bool const alertOnUpToDate) could be pulled out of mainwindow eventually and called as an include. That monster needs to have something done with it. But when it happens I prefer the surgical approach instead of the shotgun approach. The shotgun approach is guaranteed to break it.

@wmiler wmiler left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that should work for now. Thanks!

@Joe-K0OG Joe-K0OG left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest you change line 1461 to wrap the web address with HTML tags so that it can be a selectable blue-underlined URL in the pop-up window, thusly (notice I had to escape the " marks with a \ to make it work):

QString("A new version (%1) of JS8Call-improved is now available. Please see <a href=\"https://github.com/JS8Call-improved/JS8Call-improved/releases\">https://github.com/JS8Call-improved/JS8Call-improved/releases</a> for more details.").arg(content),

Tested on Windows and Linux, and this works well. It would be nice if when the link is clicked it would open the OS default browser, which DOES work on Windows, but not on Linux. This is a very minor thing. At least this way it can be right-clicked and the link be copied if left-clicking on it doesn't open the browser. I wonder how this works on MacOS?

73,
-Joe-
K0OG

@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

Suggest you change line 1461 to wrap the web address with HTML tags so that it can be a selectable blue-underlined URL in the pop-up window, thusly (notice I had to escape the " marks with a \ to make it work):

Good suggestion, Joe. I will play with that a bit and test it on MacOS as well.

@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

@Joe-K0OG could you test this latest change to this PR? You don't have to escape the embedded quotes, just switch to using single quote in the HTML tag since that is embedded inside double quotes. It now looks like this, but based on your comment that it doesn't call the default browser on linux I'm hoping a right click can be used to copy the link. The full string for the linked text is quite long compared to being able to use something like "JS8Call-improved.com" for the linked text.

Screenshot 2025-11-24 at 12 28 34

@Joe-K0OG

Joe-K0OG commented Nov 24, 2025

Copy link
Copy Markdown
Collaborator

Looks great now with the reformatted active-link URL, tested on Linux and Windows. Yes, on Linux where the left-clicking the link doesn't open the browser, a right-click does allow copying the long link, then it can be pasted and opened in a browser. All expected behaviors, so it's good to go!

73,
-Joe-
K0OG

@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

I'm running a test on Debian 13 to see how it looks.

@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

So on Debian 13 (Gnome) if formats differently than on MacOS. I need to get rid of the line break tag and that will "fix it" on linux, won't make any difference on MacOS.

@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

The link did launch the default Firefox browser on Debian 13, however. That part worked fine.

Squashed commit for PR, commit history;
This requires a version.txt file to be present in the latest production release
remove verstion.txt from docs, which was experimental to fix Software Update
Change URL to be ambiguous to point to latest release for host of version.txt
Reformat the text in the SelfDestruct message box to be a link that points to the GitHub Releases
Remove HTML line break tag to provide cleaner formatting of text in the SelfDestruct message box
@Chris-AC9KH Chris-AC9KH added the ready Ready to merge label Nov 24, 2025
@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

I think it looks good now on linux and MacOS, works properly on both.

Screenshot 2025-11-24 at 13 21 12 Screenshot 2025-11-24 at 13 36 33

I have to say those linux build scripts are extremely useful. On Debian 13 I just changed the ${VERSION} variable in the top of the script to check out the pr/Check_For_Updates branch. Hit go and it only takes 1 minute and 54 seconds (on my Apple silicon Mac) and I got a running test build on Debian. Faster than downloading an .AppImage.

I think this one should be ready for merge. @rruchte if you want to take a look at it, and are happy with it, please just merge it.

@rruchte rruchte merged commit 1a29eb3 into master Nov 24, 2025
@rruchte

rruchte commented Nov 24, 2025

Copy link
Copy Markdown
Collaborator

Looks great, the link opened for me on Manjaro/Gnome.

@Chris-AC9KH

Copy link
Copy Markdown
Collaborator Author

Thanks for the suggestions, Joe, to make it work better. I'm quite happy that this feature has risen from the ashes and works again!

@Joe-K0OG

Copy link
Copy Markdown
Collaborator

@Chris-AC9KH I should amend my report that the link DOES open in the browser on my Linux Mint 22.2 system. I had a mis-configured default browser in the OS, and with it correctly configured, that link probably will open in all OSs.

73,
-Joe-
K0OG

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request ready Ready to merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants