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

CI: Test Themis with OpenSSL 3.0 #877

Merged
merged 2 commits into from
Nov 22, 2021

Conversation

ilammy
Copy link
Collaborator

@ilammy ilammy commented Nov 13, 2021

With #875 and #876, Soter and Themis test suites should now pass for OpenSSL 3.0.

Let's test OpenSSL 3.0 builds where we can, making sure that they work. Note that OpenSSL 3.0 support is still experimental and requires special setup. Also, we still use deprecated APIs. In order to make the builds green, stop treating warnings as errors, but don't suppress them. Sometime they need to be fixed, not stay like that forever.

While Themis can be built with OpenSSL 3.0 and apparently passes all the unit tests, it's still not fully supported. We don't know how compatible OpenSSL 1.1.1 is with OpenSSL 3.0 (or rather, how compatible is Themis use of them). Similarly, we have no provisions for building Themis packages linked against a specific version of OpenSSL.

Currently, only macOS provides a sort of a system installation of OpenSSL 3.0. While we could build OpenSSL 3.0 on Linux for testing, I don't think we should be testing non-system setups extensively. Verifying this on macOS alone is good enough for the time being.

Checklist

  • Change is covered by automated tests (duh...)
  • The coding guidelines are followed
  • Changelog is updated (no need, ninja change)
  • #875 and #876 are merged and this PR is rebased

@ilammy ilammy added C-OpenSSL-3.0 Crypto provider: OpenSSL 3.0 infrastructure Automated building and packaging labels Nov 13, 2021
@ilammy ilammy added this to the 0.14.0 milestone Nov 13, 2021
@ilammy ilammy marked this pull request as ready for review November 13, 2021 01:50
Copy link
Collaborator

@Lagovas Lagovas left a comment

Choose a reason for hiding this comment

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

great job

@vixentael
Copy link
Contributor

Sometime they need to be fixed, not stay like that forever.

Sure :)))))

@ilammy ilammy changed the base branch from rebase-after-876-is-merged to openssl-3.0 November 22, 2021 13:44
First, that's a tad long command line. Set all these variables in
environment instead of cramming them into make's command line.

Second, I'm going to need that "build-openssl-3.0" directory for legit
testing with OpenSSL. Use a different directory for this test -- which
is about OpenSSL 3.0 build failing in absence of
WITH_EXPERIMENTAL_OPENSSL_3_SUPPORT being set.
Let's test OpenSSL 3.0 builds where we can, making sure that they work.
Note that OpenSSL 3.0 support is still experimental and requires special
setup. Also, we still use deprecated APIs. In order to make the builds
green, stop treating warnings as errors, but *don't* suppress them.
Sometime they need to be fixed, not stay like that forever.

While Themis can be built with OpenSSL 3.0 and apparently passes all the
unit tests, it's still not fully supported. We don't know how compatible
OpenSSL 1.1.1 is with OpenSSL 3.0 (or rather, how compatible is Themis
use of them). Similarly, we have no provisions for building Themis
packages linked against a specific version of OpenSSL.

Currently, only macOS provides a sort of a system installation of
OpenSSL 3.0. While we could build OpenSSL 3.0 on Linux for testing,
I don't think we should be testing non-system setups extensively.
Verifying this on macOS alone is good enough for the time being.
@ilammy
Copy link
Collaborator Author

ilammy commented Nov 22, 2021

Rebased onto openssl-3.0 with no changes.

@ilammy ilammy merged commit 88da5dc into cossacklabs:openssl-3.0 Nov 22, 2021
@ilammy ilammy deleted the openssl-3.0-build branch November 22, 2021 13:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-OpenSSL-3.0 Crypto provider: OpenSSL 3.0 infrastructure Automated building and packaging
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants