sofa icon indicating copy to clipboard operation
sofa copied to clipboard

[Sofa.Http] Introduction of a latest release checker

Open alxbilger opened this issue 1 year ago • 0 comments

I chose the library https://github.com/yhirose/cpp-httplib because it allows also to create a server (but not used in this PR). In any case, whatever the library we choose, we must use openSSL (we request a https). This is the main concern about this PR. In terms of installation, I think Ubuntu and macOS are straightforward because there are packages. But Windows is bit more tricky. The pre-built binaries are not available on the openSSL website. I found them here: https://slproweb.com/products/Win32OpenSSL.html. After installation, I had to define OPENSSL_ROOT_DIR, and add the bin folder to my path.

In this PR, the newly introduced module is linked only in Sofa.GUI.Qt and the version checker is called at init (for test). A later contribution will use the introduced function to show the latest version in the GUI.

Output example:

[INFO]    [VersionChecker] You are using the latest version (24.06.99). {272.525 ms}

By submitting this pull request, I acknowledge that
I have read, understand, and agree SOFA Developer Certificate of Origin (DCO).


Reviewers will merge this pull-request only if

  • it builds with SUCCESS for all platforms on the CI.
  • it does not generate new warnings.
  • it does not generate new unit test failures.
  • it does not generate new scene test failures.
  • it does not break API compatibility.
  • it is more than 1 week old (or has fast-merge label).

alxbilger avatar Apr 30 '24 15:04 alxbilger