Add Downloads pass/fail column to site-scan overview#318
Add Downloads pass/fail column to site-scan overview#318andrewmusselman wants to merge 3 commits into
Conversation
The crawler already collects a 'downloads' map for each site, but it was never surfaced in the all-projects/all-podlings overview table. Add a 'Downloads' column that flags whether any download links were found: sites with none are marked red (SITE_FAIL) like other failing checks, and sites with downloads are marked green (SITE_PASS) with the discovered URLs available in a hover tooltip. The column uses the same sort_order values as the existing check columns so it sorts pass/fail alongside them. This is display-only; no changes to the crawler or SiteStandards.
| _td '', class: cls, data_sort_value: sort_order[cls] | ||
| end | ||
| downloads = links['downloads'] || {} | ||
| if downloads.empty? |
There was a problem hiding this comment.
Not all projects are expected to have Downloads - e.g. Data Privacy, Diversity (and indeed Whimsy)
This needs to be allowed for.
There was a problem hiding this comment.
Here is a list: attic, comdev, gump, and whimsy.
There was a problem hiding this comment.
That may be the all the actual PMCs that don't make releases, but other websites are included in the analysis.
There was a problem hiding this comment.
True about the analysis, but those other websites are not displayed in this table.
There was a problem hiding this comment.
https://whimsy.apache.org/site/ includes Brand Management, Data Privacy, etc.
There was a problem hiding this comment.
Okay, for PMCs that don't make releases and other websites like Brand Management, Data Privacy, Diversity, (what else?) we add another color/legend to:
* Sites with links to primary ASF page
* Sites with link, but not an expected ASF one
* Sites with no link for this topic
E.g., "Sites with no link for this topic, and not expected to"
And hard code it or find that data?
I am red/green colorblind so please tell me what you would like in hex code.
There was a problem hiding this comment.
I re-purposed amber for the downloads column to mean "not expected," got nonpmc values from the committee, and hard-coded PMCs that don't have downloads.
Reviewers noted that some projects legitimately have no downloads: non-PMC committees (Brand Management, Data Privacy, Diversity, etc.) and a few full PMCs (Attic, ComDev, Gump, Whimsy). Add a third state to the Downloads column so an empty downloads list is only flagged red (SITE_FAIL) when the project is expected to publish releases. Otherwise it is shown amber (SITE_WARN) with a 'Not expected to publish downloads' tooltip. Non-PMC committees are detected via the 'nonpmc' flag already recorded by site-scan.rb; the handful of non-releasing PMCs are listed in a NO_RELEASES constant, since committee_info has no 'makes releases' field to derive this from.
Rather than a per-cell tooltip (which isn't used elsewhere on the overview and isn't discoverable on an all-empty grid), extend the existing amber (SITE_WARN) data key above the table to also cover projects that aren't expected to publish downloads. Drop the tooltip from the amber Downloads branch accordingly.
|
The generated table does not have the correct column header, and the check does not appear when clicking on the project. This is because it bypasses the standard page setup. The column needs to be integrated into COMMON_CHECKS in SiteStandards - it also applies to podlings. Note that 'Uri' is a check that is not dependent on scanning pages so can be used as a guide for adding the download code. |
The crawler already collects a 'downloads' map for each site, but it was never surfaced in the all-projects/all-podlings overview table.
Add a 'Downloads' column that flags whether any download links were found: sites with none are marked red (SITE_FAIL) like other failing checks, and sites with downloads are marked green (SITE_PASS) with the discovered URLs available in a hover tooltip. The column uses the same sort_order values as the existing check columns so it sorts pass/fail alongside them.
This is display-only; no changes to the crawler or SiteStandards.