aqtinstall icon indicating copy to clipboard operation
aqtinstall copied to clipboard

unrecognized versions, modules

Open tsteven4 opened this issue 1 year ago • 2 comments

Describe the bug please recognize that 6.5.2 exists, and that it has module qtactiveqt.

To Reproduce Steps to reproduce the behavior:

aqt install-qt windows desktop 6.5.2 win64_msvc2019_64 -O C:Qt -m qt3d qt5compat qtactiveqt qtconnectivity qtgrpc qthttpserver qtimageformats qtlanguageserver qtlocation qtmultimedia qtpdf qtpositioning qtquickeffectmaker qtremoteobjects qtscxml qtsensors qtserialbus qtserialport qtspeech qtwebchannel qtwebengine qtwebsockets qtwebview

Expected behavior no warnings shown below

aqt output

INFO    : aqtinstall(aqt) v3.1.6 on Python 3.9.13 [CPython MSC v.1929 64 bit (AMD64)]
WARNING : Specified Qt version "6.5.2" did not exist when this version of aqtinstall was released. This may not install properly, but we will try our best.
WARNING : Specified modules ['qtactiveqt'] did not exist when this version of aqtinstall was released. This may not install properly, but we will try our best.

Desktop (please complete the following information):

  • OS: [e.g. windows]
  • aqt version [paste the output from the command aqt version or python -m aqt version]

Additional context Add any other context about the problem here.

tsteven4 avatar Jul 21 '23 11:07 tsteven4

Hello.

Here I'm going to explain about the warning about Qt versions:

WARNING : Specified Qt version "6.5.2" did not exist when this version of aqtinstall was released. This may not install properly, but we will try our best.

This warning means that when aqtinstall v3.1.6 was released, Qt 6.5.2 has not been released yet, so aqtinstall doesn't know it. This is not an error.

pzhlkj6612 avatar Jul 21 '23 13:07 pzhlkj6612

@tsteven4, is your qt installation broken in any way? Are you unable to build a qt project that uses qtactiveqt? If so, there may be something to fix here. Otherwise, I'm not sure we can do anything.

The warning messages you mention are meant as a coarse-grain screen to catch obvious mistakes in the user's aqt command. Aqt checks the arguments against known arguments in an auto-generated combinations.json file. It's a low-overhead compromise that gives reasonably good feedback, without running aqt list-qt before every command to validate the argument (which would be very slow). If you are really worried that you gave aqtinstall an argument that it can't handle, you can always check it with aqt list-qt, like so:

$ aqt list-qt windows desktop --modules 6.5.2 win64_msvc2019_64
debug_info qt3d qt5compat qtactiveqt qtcharts qtconnectivity ...

Warning messages:

  • WARNING : Specified Qt version "6.5.2" did not exist when this version of aqtinstall was released. This may not install properly, but we will try our best.

    I am not able to reproduce this one with aqt 3.1.7. It's likely the .github/workflows/check-combinations.yml action fixed this automatically.

  • WARNING : Specified modules ['qtactiveqt'] did not exist when this version of aqtinstall was released. This may not install properly, but we will try our best.

    I am able to reproduce this one. Unfortunately, given the structure of the aqt.combinations.json file, we don't have a place to put qtactiveqt. This is a module that only exists on Windows, and the list of modules maintained in aqt.combinations.json is multiplatform. If we add qtactiveqt to that list, then Mac and Linux users won't be warned about qtactiveqt not being present in the aqt.combinations.json file. If we start adding enough information to that file to cover every edge case like this (there are plenty), the file will grow exponentially. I have a project that scrapes the relevant data at download.qt.io at qt-repo-cache; right now, it's 20MB and growing, and you would need most of it to cover these edge cases. You don't want to have to download all that when you're installing aqt.

ddalcino avatar Aug 28 '23 05:08 ddalcino