
Trying to follow the logic here, it looks like
|
SUPPORTED_OS_VERSIONS = [ |
needs to be updated.
We're also making a request to https://qs0.qsapp.com/plugins/info.php and retrieving (and caching) some info about supported versions there.
But then it looks like we're just arbitrarily adding SUPPORTED_OS_VERSIONS to every plugin:
|
for major, minor, patch in sorted(SUPPORTED_OS_VERSIONS): |
Is the logic here that these are OSX / MacOS versions that all plugins have been tested on, and therefore we want to always display that they are available? Or just that these are versions that we intend to support (and want to make sure people file bugs if it's not working)?
info.setdefault('_osversions', set()).add((major, minor))
This seems to confirm that all 58 plugins haven an identical table:
#!/usr/bin/env bash
readonly BASE=https://qsapp.com/manual/
mapfile -t plugin_urls < <(
curl -s "${BASE}" |
xmllint 2> /dev/null --html --xpath '//a[starts-with(@href, "plugins")]/@href' - |
awk -F'"' -v BASE="${BASE}" '{ print BASE $2 }'
)
run() {
local table
table=$(curl -s "$1" | xmllint 2> /dev/null --html --xpath '//table[1]' -)
printf '%s\0' "${table}"
}
export -f run
parallel run {} ::: "${plugin_urls[@]}" | sort --zero-terminated | uniq --count --zero-terminated
$ ./run.sh
58 <table>
<thead>
<tr>
<th align="right">Summary</th>
<th align="left"> </th>
</tr>
</thead>
<tbody>
<tr>
<td align="right">Available on macOS version</td>
<td align="left">10.11, 10.12, 10.13, 10.14</td>
</tr>
<tr>
<td align="right">for Quicksilver build</td>
<td align="left">4024, 4025</td>
</tr>
</tbody>
</table>
<table class="table">
<thead>
<tr>
<th style="width: 20%;">Keys</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr>
<td class="help shortcut"><kbd>?</kbd></td>
<td>Open this help</td>
</tr>
<tr>
<td class="next shortcut"><kbd>n</kbd></td>
<td>Next page</td>
</tr>
<tr>
<td class="prev shortcut"><kbd>p</kbd></td>
<td>Previous page</td>
</tr>
<tr>
<td class="search shortcut"><kbd>s</kbd></td>
<td>Search</td>
</tr>
</tbody>
</table>
- Should we add MacOS 12.3 (and maybe others) to
SUPPORTED_OS_VERSIONS?
Trying to follow the logic here, it looks like
manual/plugindocs.py
Line 42 in 51f8dab
We're also making a request to https://qs0.qsapp.com/plugins/info.php and retrieving (and caching) some info about supported versions there.
But then it looks like we're just arbitrarily adding
SUPPORTED_OS_VERSIONSto every plugin:manual/plugindocs.py
Line 279 in 51f8dab
Is the logic here that these are OSX / MacOS versions that all plugins have been tested on, and therefore we want to always display that they are available? Or just that these are versions that we intend to support (and want to make sure people file bugs if it's not working)?
This seems to confirm that all 58 plugins haven an identical table:
SUPPORTED_OS_VERSIONS?