Skip to content

Add Downloads pass/fail column to site-scan overview#318

Open
andrewmusselman wants to merge 3 commits into
apache:masterfrom
andrewmusselman:add-downloads-column
Open

Add Downloads pass/fail column to site-scan overview#318
andrewmusselman wants to merge 3 commits into
apache:masterfrom
andrewmusselman:add-downloads-column

Conversation

@andrewmusselman

Copy link
Copy Markdown

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.

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.
Comment thread lib/whimsy/sitewebsite.rb Outdated
_td '', class: cls, data_sort_value: sort_order[cls]
end
downloads = links['downloads'] || {}
if downloads.empty?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not all projects are expected to have Downloads - e.g. Data Privacy, Diversity (and indeed Whimsy)

This needs to be allowed for.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here is a list: attic, comdev, gump, and whimsy.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That may be the all the actual PMCs that don't make releases, but other websites are included in the analysis.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

True about the analysis, but those other websites are not displayed in this table.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://whimsy.apache.org/site/ includes Brand Management, Data Privacy, etc.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.
@sebbASF

sebbASF commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants