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

{devel}[GCCcore/10.2.0] Qt5 v5.14.2 #11555

Merged
merged 9 commits into from
Nov 29, 2020

Conversation

Micket
Copy link
Contributor

@Micket Micket commented Oct 21, 2020

(created using eb --new-pr)
depends on #11536

@Micket Micket added the update label Oct 21, 2020
@Micket

This comment has been minimized.

boegel
boegel previously approved these changes Oct 22, 2020
Copy link
Member

@boegel boegel left a comment

Choose a reason for hiding this comment

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

lgtm

@boegel boegel added this to the next release (4.3.1) milestone Oct 22, 2020
@boegel
Copy link
Member

boegel commented Oct 22, 2020

@boegelbot please test @ generoso

@boegelbot
Copy link
Collaborator

@boegel: Request for testing this PR well received on generoso

PR test command 'EB_PR=11555 EB_ARGS= /apps/slurm/default/bin/sbatch --job-name test_PR_11555 ~/boegelbot/eb_from_pr_upload_generoso.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 8189

Test results coming soon (I hope)...

- notification for comment with ID 714275739 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@easybuilders easybuilders deleted a comment from boegelbot Oct 22, 2020
@boegelbot

This comment has been minimized.

@Micket
Copy link
Contributor Author

Micket commented Oct 22, 2020

Note: I tried to build PyQt on top of this without success, but I can't spot anything wrong with this particular build, so, maybe it's some lack of support in PyQt yet(?)

@boegel
Copy link
Member

boegel commented Oct 22, 2020

@Micket Any log you can share?

@boegel
Copy link
Member

boegel commented Oct 22, 2020

Test report by @boegel
SUCCESS
Build succeeded for 13 out of 13 (1 easyconfigs in total)
node3401.kirlia.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) Gold 6240 CPU @ 2.60GHz (cascadelake), Python 2.7.5
See https://gist.github.com/460a6cb35133bd8ddf7aef54a06bf7e2 for a full test report.

@boegel
Copy link
Member

boegel commented Oct 22, 2020

Test report by @boegel
SUCCESS
Build succeeded for 13 out of 13 (1 easyconfigs in total)
node2452.golett.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz (haswell), Python 2.7.5
See https://gist.github.com/1954d3d5f7da6fb18ca92ec83c4cc165 for a full test report.

@boegel
Copy link
Member

boegel commented Oct 22, 2020

Test report by @boegel
SUCCESS
Build succeeded for 13 out of 13 (1 easyconfigs in total)
node3109.skitty.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz, Python 3.6.8
See https://gist.github.com/46f3e9898e9f4a3a9b27bb7df80edd11 for a full test report.

@smoors
Copy link
Contributor

smoors commented Oct 22, 2020

Test report by @smoors
SUCCESS
Build succeeded for 23 out of 23 (1 easyconfigs in total)
node378.hydra.os - Linux centos linux 7.7.1908, x86_64, Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz (skylake_avx512), Python 2.7.5
See https://gist.github.com/6491a8ec79f47e35d05fa5c77ab32f48 for a full test report.

@zao
Copy link
Contributor

zao commented Oct 22, 2020

Test report by @zao
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
freja - Linux Ubuntu 20.04, x86_64, Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz (skylake), Python 3.8.5
See https://gist.github.com/e913422b7e2b76fbc42cf4980a439dda for a full test report.

@boegel boegel modified the milestones: 4.3.1 (next release), 4.3.2 Oct 26, 2020
lexming
lexming previously approved these changes Oct 29, 2020
Copy link
Contributor

@lexming lexming left a comment

Choose a reason for hiding this comment

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

LGTM

@Micket Micket dismissed stale reviews from lexming and boegel via b69d7b8 October 29, 2020 18:55
@Micket
Copy link
Contributor Author

Micket commented Oct 29, 2020

So, how do we deal with the CentOS7 (and similarly old) OS'es. Let them opt in to use the OpenSSL dependency? It's going to quietly "fail" and just skip the components that need OpenSSL, so people are going to discovered they needed to modify the easyconfig when they get around to building PyQt5, which sucks.

There is also a openssl11 package in CentOS7, so, we could try to get it to use that with some extra build flags maybe to make it work by default for everyone, but, again, the dynamic behavior here is annoying. Customize easyblock to support openssl11?

Should we introduce a "OS_PKG_OPENSSL11_DEV" ? Hard to find an optimal solution here.

@lexming
Copy link
Contributor

lexming commented Nov 3, 2020

I think that we have two options (given that PyQtWebEngine needs OpenSSL):

  1. Make OpenSSL v1.1 mandatory for Qt5 and update the qt easyblock to check the OpenSSL v1.1 support, either through an EB dependency or through an OS dependency.
  2. Make the PyQt5 easyconfig check beforehand for support of OpenSSL in QtConfig and fail the build otherwise (or disable PyQtWebEngine). This option needs writing a small Qt program to check QtConfig and ship that with the easyconfig of PyQt5. Not a lot of work, but adds maintenance burden.

My vote goes for option 1.

@boegel
Copy link
Member

boegel commented Nov 7, 2020

The discussion is a bit split between this PR and #11563, but taking into account both I'm not sure what our best way forward is here...

If we go with Qt5 5.15.1 then we should consider it incompatible with CentOS 7, where OpenSSL 1.0.x is provided by the OS...

I don't consider using an OpenSSL 1.1.x provided as dependency via EasyBuild a good idea with security in mind, even if we only used it as a build dependency and statically link it in to Qt5.

One option could be creating an OpenSSL/1.1 wrapper, so the underlying installation can be updated in place (similar to Java, see https://easybuild.readthedocs.io/en/latest/Wrapping_dependencies.html), but even then I'm reluctant to start doing this.

Is this a good enough reason to stick to Qt5 5.14.x in the 2020b generation of easyconfigs?
That's just postponing the problem though, it'll resurface again...

@Micket
Copy link
Contributor Author

Micket commented Nov 16, 2020

If we downgrade to 5.14.x again, and postpone this until 2021, then we could consider actually start to always build OpenSSL by default, using a wrapper. This would be easier if everything under the next GCCcore started to link with an EB-provided OpenSSL by default.
Those who prefer the OS-dependency would simply have to opt out with filter-deps.

@zao
Copy link
Contributor

zao commented Nov 16, 2020

From an armchair security perspective, I'd expect that TLS support in scientific software would be more for client-initiated connections and less about serving as it's quite unlikely that anything has actual certificates anyway, reducing the attack surface greatly as there's no real secrets to leak.

How up to date does a client TLS stack have to be? It would assumedly still use the distro's CA certificate collection?

@Micket Micket changed the title {devel}[GCCcore/10.2.0] Qt5 v5.15.1 {devel}[GCCcore/10.2.0] Qt5 v5.14.2 Nov 20, 2020
@Micket

This comment has been minimized.

@Micket

This comment has been minimized.

@Micket

This comment has been minimized.

@Micket
Copy link
Contributor Author

Micket commented Nov 28, 2020

Test report by @Micket
SUCCESS
Build succeeded for 22 out of 22 (1 easyconfigs in total)
alvis-c1 - Linux centos linux 7.8.2003, x86_64, Intel Xeon Processor (Skylake), Python 3.6.8
See https://gist.github.com/a74c31faa364c7005829122998762e77 for a full test report.

@boegel
Copy link
Member

boegel commented Nov 28, 2020

Test report by @boegel
FAILED
Build succeeded for 0 out of 1 (1 easyconfigs in total)
node3573.doduo.os - Linux RHEL 8.2, x86_64, AMD EPYC 7552 48-Core Processor (zen2), Python 3.6.8
See https://gist.github.com/342283ee9c3961375c25ae691a4cd452 for a full test report.

edit: fails with:

make[1]: Entering directory '/tmp/vsc40023/easybuild_build/Qt5/5.14.2/GCCcore-10.2.0/qt-everywhere-src-5.14.2/qtwebengine'
cd src/ && ( test -e Makefile || /tmp/vsc40023/easybuild_build/Qt5/5.14.2/GCCcore-10.2.0/qt-everywhere-src-5.14.2/qtbase/bin/qmake -o Makefile /tmp/vsc40023/easybuild_build/Qt5/5.14.2/GCCcore-10.2.0/qt-everywhere-src-5.14.2/qtwebengine/src/src.pro ) && make -f Makefile                                                                                                                                           
make[2]: Entering directory '/tmp/vsc40023/easybuild_build/Qt5/5.14.2/GCCcore-10.2.0/qt-everywhere-src-5.14.2/qtwebengine/src'                                                                              /bin/sh: -c: line 0: syntax error near unexpected token `('                                                                                                                                                 
/bin/sh: -c: line 0: `echo Modules will not be built. Python version 2 (2.7.5 or later) is required to build QtWebEngine.'                                                                                  
make[2]: *** [Makefile:1095: errorbuild] Error 1                                                                                                                                                            
make[2]: Leaving directory '/tmp/vsc40023/easybuild_build/Qt5/5.14.2/GCCcore-10.2.0/qt-everywhere-src-5.14.2/qtwebengine/src'                                                                               make[1]: *** [Makefile:49: sub-src-make_first] Error 2                                                                                                                                                      
make[1]: Leaving directory '/tmp/vsc40023/easybuild_build/Qt5/5.14.2/GCCcore-10.2.0/qt-everywhere-src-5.14.2/qtwebengine'                                                                                   make: *** [Makefile:1033: module-qtwebengine-make_first] 
Error 2

@Micket We need Python 2 as a build dep for QtWebEngine?

@boegel
Copy link
Member

boegel commented Nov 28, 2020

Test report by @boegel
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node3403.kirlia.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) Gold 6240 CPU @ 2.60GHz (cascadelake), Python 3.6.8
See https://gist.github.com/e9c1bf62d65fdc0da8d383b99a948e92 for a full test report.

@boegel
Copy link
Member

boegel commented Nov 28, 2020

Test report by @boegel
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node2610.swalot.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) CPU E5-2660 v3 @ 2.60GHz (haswell), Python 3.6.8
See https://gist.github.com/763a0868250866830ae1e2b67ce412e0 for a full test report.

@easybuilders easybuilders deleted a comment from boegelbot Nov 28, 2020
@boegel
Copy link
Member

boegel commented Nov 28, 2020

@boegelbot please test @ generoso

@boegelbot
Copy link
Collaborator

@boegel: Request for testing this PR well received on generoso

PR test command 'EB_PR=11555 EB_ARGS= /apps/slurm/default/bin/sbatch --job-name test_PR_11555 --ntasks=4 ~/boegelbot/eb_from_pr_upload_generoso.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 10893

Test results coming soon (I hope)...

- notification for comment with ID 735283532 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegel
Copy link
Member

boegel commented Nov 28, 2020

Test report by @boegel
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node3551.doduo.os - Linux RHEL 8.2, x86_64, AMD EPYC 7552 48-Core Processor (zen2), Python 3.6.8
See https://gist.github.com/12ce7f44b164014e5142bd43a3df129e for a full test report.

@boegel
Copy link
Member

boegel commented Nov 28, 2020

Test report by @boegel
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node3410.kirlia.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) Gold 6240 CPU @ 2.60GHz (cascadelake), Python 3.6.8
See https://gist.github.com/fa6e0ec54245a7a78ed3b664afa902eb for a full test report.

@boegel
Copy link
Member

boegel commented Nov 28, 2020

Test report by @boegel
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node3170.skitty.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz, Python 3.6.8
See https://gist.github.com/bccaa5f8e34cfd4c91e62763859feb02 for a full test report.

@boegel
Copy link
Member

boegel commented Nov 28, 2020

Test report by @boegel
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node2628.swalot.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) CPU E5-2660 v3 @ 2.60GHz (haswell), Python 3.6.8
See https://gist.github.com/3143d79e33ba3e06b378300efba2f1dd for a full test report.

@boegel
Copy link
Member

boegel commented Nov 28, 2020

Test report by @boegel
FAILED
Build succeeded for 39 out of 40 (1 easyconfigs in total)
node3204.victini.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz (skylake_avx512), Python 3.6.8
See https://gist.github.com/eb7d5e16470f91b395c91967ea7d963b for a full test report.

@Micket
Copy link
Contributor Author

Micket commented Nov 29, 2020

Test report by @boegel
FAILED
Build succeeded for 39 out of 40 (1 easyconfigs in total)
node3204.victini.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz (skylake_avx512), Python 3.6.8
See https://gist.github.com/eb7d5e16470f91b395c91967ea7d963b for a full test report.

oh what the heck is this now

@boegelbot
Copy link
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
generoso-c1-s-1 - Linux centos linux 8.2.2004, x86_64, Intel(R) Xeon(R) CPU E5-2667 v3 @ 3.20GHz (haswell), Python 3.6.8
See https://gist.github.com/d8425da6dc77ef5be09e29eff65b7aa2 for a full test report.

@Micket
Copy link
Contributor Author

Micket commented Nov 29, 2020

Test report by @Micket
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
hebbe-c1 - Linux centos linux 7.8.2003, x86_64, Intel Core Processor (Haswell, no TSX), Python 2.7.5
See https://gist.github.com/718b5132874a09069c791bd73f5cd58f for a full test report.

@Micket
Copy link
Contributor Author

Micket commented Nov 29, 2020

Test report by @Micket
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
vera-c1 - Linux centos linux 7.8.2003, x86_64, Intel Xeon Processor (Skylake), Python 2.7.5
See https://gist.github.com/934902004dea55dbc74579107b6dba2a for a full test report.

@boegel
Copy link
Member

boegel commented Nov 29, 2020

Test report by @boegel
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node3210.victini.os - Linux centos linux 7.8.2003, x86_64, Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz (skylake_avx512), Python 3.6.8
See https://gist.github.com/480d7816da26adde5542ff56d8ab0f44 for a full test report.

Copy link
Member

@boegel boegel left a comment

Choose a reason for hiding this comment

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

lgtm

@boegel
Copy link
Member

boegel commented Nov 29, 2020

Going in, thanks @Micket!

@boegel boegel merged commit 6d7cd34 into easybuilders:develop Nov 29, 2020
@Micket Micket deleted the 20201021205418_new_pr_Qt55151 branch April 21, 2023 13:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants