On August 19, the Qt repo added a new wasm release for Qt 6.2.0.
`list-qt` currently prints that the `wasm` extension is available for
that version of Qt, but it will not let the user use it to query
modules and architectures, because of a hardcoded version check.
This change rewrites the version check so that a user may make queries.
This also moves the `format_suggested_follow_up` function into the new
AqtException class, refactors `show_list` to use the new exceptions,
and tests the new code appropriately.
Adds coverage for `format_suggested_follow_up` for empty suggestions.
Adds coverage for `show_list` for Versions.
Adds coverage for `show_list` for list of tools.
This removes some duplicated code, and calls `fetch_tool_modules` and
`fetch_tool_long_listing` through the `MetadataFactory.getList()`
interface rather than the direct function call. This will give better
test coverage for the MetadataFactory constructor.
* Introduce tooldata class
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
* Refactoring list command
- Introduce show_list function that is part of UI
- ListCommand class can be used as library to retrieve metadata.
- Rename ListCommand to MetadataFactory
- Rename action method to getList
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
This change adds a function that checks for obvious misuses of the
`--extension` flag, according to these rules:
1. On Qt6 for Android, an extension for processor architecture is
required.
2. On any platform other than Android, or on Qt5, an extension for
processor architecture is forbidden.
3. The "wasm" extension only works on desktop targets for Qt 5.13-5.15.
This validation function is only called on requests for 'modules' and
'architectures', because these are the only places where the version
of Qt is known and the extension matters. Hopefully, this change will
reduce confusion among users.
This change adds the ability to list all the 'tool variant names'
alongside the version and release date of the tool.
When using the `aqt list tools` feature, I often find that I need more
information than the tool provides. I often need to know the release
date and the version for each tool, and I can't get that information
without looking up the Updates.xml file. This feature enables me to skip
that part.