-
Notifications
You must be signed in to change notification settings - Fork 81
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
Make action fail if the specified Qt version/module is unknown #172
Comments
Hi. |
I am aware of that. But this action invokes it and if e.g. it needs to pass some option (I am not familiar with It seems the behavior changed (at least for modules) when using
|
FYI, the following two messages are warnings:
...and this message is an error:
The warnings mean that at the time this version of aqtinstall was released, this version of Qt did not exist, so aqtinstall cannot predict whether or not it's going to install properly. There have been multiple instances where older versions of aqtinstall was unable to patch new versions of Qt properly; the most recent is miurahr/aqtinstall#626. If you want these messages to go away, you need to specify a newer version of aqtinstall. It would be wrong to make this action fail in the case of these warnings; users often want to use old versions of aqtinstall that predate the version of Qt they want to install, and they already know that it will work properly. Please note that the README tells you how to avoid this error with
I know it says 'architectures', but that website will help you with Qt versions, modules, archives, and tools as well. You should be thinking, "Wouldn't it be nice if this action would show me which messages were actual warnings and which messages are actual errors?" Indeed, it would be nice! If you use a newer version of aqtinstall, for example version 3.1.0, this information should be printed in your CI logs (I'm not sure when this changed). |
This appeared with older versions of
...and this happens with the latest version of
Like I mentioned in my previous comment and above in this the module part was even made an error. I haven't tested the latest version with an unknown Qt version yet so it is quite possible that will now also result in a failure.
The problem is that there is no information at all what version you are actually using in the CI log. The version detection in CMake is broken with Qt 6 (or with an
The |
I do not understand what you mean by "no information at all what version you are actually using in the CI log". Which version are you asking about? The CI log shows these versions:
If the Qt installation had failed, the whole workflow would have failed. If you don't believe this to be the case, you are welcome to show us evidence that something else happened. |
Well, maybe @firewave can directly use aqtinstall locally with the same parameters as this action and see what will happens? aqt will not change system settings, but download and extract files.
Since v2.2.0 (miurahr/aqtinstall@60889b7). |
Sorry for the late reply.
The log shows a successful installation and the version But as I suspected that is irrelevant now since the latest version of
So this can be closed as fixed. |
Aqtinstall is not capable of choosing a different version. If you disagree, please show proof. The warning means it cannot find that version in a json file packaged with the program. It has nothing to do with its actual behavior. |
To be more detailed, the "Specified Qt version is unknown" warning message is from:
The code about "Some of specified modules are unknown." is not far away and it has the almost the same logic, you can try to find it.
No, there is no need to do so. Installing an arbitrary version of Qt would make nothing but chaos. If you really has less trust in aqtinstall and its contributors, as I said previously, you can run the program locally, in a virtual machine, to see what will happen.
Well, nothing got fixed. |
It was fixed before I even opened the ticket. The problem was that I was using an fixed, older Now with the latest versions I get an error when I specify unknown versions or modules. Which is exactly the behavior I was expecting. |
Really? you tried to install version 6.4.1 last month and tried to install 6.4.5 two hours ago with the same version of aqtinstall. Something keeps unchanged and something has been changed, right? See Control variable - Wikipedia. I've searched on Qt blog, there is no release note about version 6.4.5 (for now the latest one is 6.4.2), so aqtinstall failed as expected. Since you are using aqtinstall 2.1.0 (via install-qt-action), here is the "combinations.json" file used by aqtinstall 2.1.0 and you are now having a chance to review its content: https://github.com/miurahr/aqtinstall/blob/v2.1.0/aqt/combinations.json
So... the previous explanation from contributors is ignored? |
I'm sorry, you tried to install version 6.4.1 last month with aqtinstall v2.0.6 and tried to install 6.4.5 two hours ago with aqtinstall v2.1.0. |
I used Today I tried the definitely non-existent version
I used a version which does not exist to make sure it cannot be found. |
Yes, I misread the version number. I'm sorry for that.
OK, now I get your intention. However, to get valid experimental results, you may need to control the variable (Control variable - Wikipedia).
You said something got fixed, but actually, the logic about the "unknown Qt versions and modules" message has not been changed recently:
Only the "combinations.json" file has been updated: Talking is cheap and I'm showing you the code in a public place. If you have some free time, please review the code. |
If you specify a unknown version the action succeeds and there is simply a message in the output indicating it (the version is obviously now):
This might lead to unexpected results. It also installs an unspecified version which is even more troubling since. The install folder even uses the version you specified instead of the one which was installed.
In this case it even reported the following:
Although I see nothing specified which is unknown. It might be a side effect of the unknown version though.
The action can be found here: https://github.com/danmar/cppcheck/blob/main/.github/workflows/CI-windows.yml
Note it still uses
jurplel/install-qt-action@v2
(will be updated soon).Here's the full information from the failing job in question:
https://github.com/danmar/cppcheck/actions/runs/3507754081/jobs/5875671584
The text was updated successfully, but these errors were encountered: