Closed firewave closed 1 month ago
Hello,
aqtinstall(aqt) v2.1.0 on Python 3.9.13 [CPython MSC v.1929 64 bit (AMD64)]
It's an old version of aqtinstall. What's your workflow file?
It's an old version of aqtinstall. What's your workflow file?
It is using v3
still defaults the aqtinstall
version to ==2.1.*
.
It is using
v3
still defaults theaqtinstall
version to==2.1.*
.
OK, the default version of aqtinstall has been changed to ==3.1.*
since 945f71c4485be4cbbbd5f3ca17e0126de5939ae0 , but this change has not been applied to v3.
@firewave , did you download valid OpenSSL v3 files by aqtinstall v2.1.0? If so, please ignore that warning; otherwise always specify aqtversion: '==3.1.*'
until the v4 version of this action releases.
Hi @jurplel , sorry for bothering you. May I ask what the release plan is for v4?
@firewave , did you download valid OpenSSL v3 files by aqtinstall v2.1.0? If so, please ignore that warning; otherwise always specify
aqtversion: '==3.1.*'
until the v4 version of this action releases.
Somehow it did download a working version. That's good to not disrupt things but I really dislike some arbitrary package being used as it might lead to unexpected results. But this is an upstream issue and not the scope here.
... but I really dislike some arbitrary package being used as it might lead to unexpected results. But this is an upstream issue and not the scope here.
Well, I know your concern. It's indeed an upstream issue and here I'm trying to do explanation about that warning "Specified target combination is not valid".
Here is the code of aqtinstall v2.1.0:
if not self._check_tools_arg_combination(os_name, tool_name, arch):
self.logger.warning("Specified target combination is not valid: {} {} {}".format(os_name, tool_name, arch))
def _check_tools_arg_combination(self, os_name, tool_name, arch):
for c in Settings.tools_combinations:
if c["os_name"] == os_name and c["tool_name"] == tool_name and c["arch"] == arch:
return True
return False
def tools_combinations(self):
return self._combinations["tools"]
with open(
os.path.join(os.path.dirname(__file__), "combinations.json"),
"r",
) as j:
self._combinations = json.load(j)[0]
The "combinations.json" file is an offline record of the resources on Qt's website [1]. When listing tools, aqtinstall indexes online resources of Qt; when installing tools, it performs some checks (including "combinations.json") and downloads the specified resources. That record will be updated frequently 2. However, if I recall correctly, the prebuilt OpenSSL v3 binaries first appeared in 2023 [3]. No one could predict the future, thus those versions of aqtinstall released prior of 2023 have no awareness of OpenSSL v3. This is the source of that warning.
[3]: Moving to OpenSSL 3 in binary builds starting from Qt 6.5 Beta 2
@pzhlkj6612 Thanks for the thorough explanation.
It is using
v3
still defaults theaqtinstall
version to==2.1.*
.OK, the default version of aqtinstall has been changed to
==3.1.*
since 945f71c , but this change has not been applied to v3.@firewave , did you download valid OpenSSL v3 files by aqtinstall v2.1.0? If so, please ignore that warning; otherwise always specify
aqtversion: '==3.1.*'
until the v4 version of this action releases.Hi @jurplel , sorry for bothering you. May I ask what the release plan is for v4?
Hi there, no worries at all. Sorry for getting back to you late. I am not really actively planning for v4, but I just threw a v4
branch together you can try using for now. Hopefully it actually works.
v4 is released—feel free to reopen this if it is still broken
Recently the old
tools_openssl_x64
tool was removed and you now need to usetools_opensslv3_x64
. That shows up in the list of available tools:But if you install it there is a warning although it is still being installed:
Using the latest
aqtinstall
version this warning does not appear: