Skip to content

feat(download): unify ASF download pages - #33

Merged
imbajin merged 2 commits into
oink-918from
prep/oink-918-download
Sep 17, 2026
Merged

imbajin merged 2 commits into
oink-918from
prep/oink-918-download

Conversation

@imbajin

@imbajin imbajin commented Sep 17, 2026 •

Copy link
Copy Markdown

Before → after

Before, English and Chinese download pages duplicated release facts. After, both render from one ASF data source with mirror download, official source artifact, ASC signature and SHA512 links; GitHub-generated source archives are explicitly excluded as ASF releases. Historical release facts remain present.

Integration boundary

  • Base: oink-918 at 88f210ed0dbe2452a66f364f0438e4b21058a078.
  • Current head: 81464b68cd698b90cb2cd51a00c50dfe03b7e52d.
  • Includes the focused keyboard-scroll and mobile overflow fix for wide ASF tables; excludes handoff files and old PR-A history.

Current validation

  • 6 download-data Python tests pass.
  • Strict bilingual Hugo build passes.
  • EN/CN rendered pages each contain 31 mirror, 31 ASC and 31 SHA512 links; live ASF listings contain all 93 expected files.
  • EN/CN download axe checks pass; current staging surface acceptance covers 1440/390/320px, light/dark themes and keyboard table scrolling.
  • Organization Build and deploy site current head run 35275466795 has prepare, all five builds, aggregate and visual green; Chromium E2E remains in progress.

The integrated candidate has also passed the complete five-version production/staging aggregate, 49/49 current Chromium checks, 24 staging surface screenshots, and three independent review/re-review rounds. Those are integration evidence and will be repeated or reconciled after this PR's current CI completes.

The final Apache delivery description will include reviewed EN/CN desktop/mobile light/dark screenshots for version overflow, dynamic sidebar, Community, Download, and real Ask AI staging states. Screenshot evidence is kept separate from product handoff files.

- derive official artifacts from one ASF data source
- render bilingual mirror, ASC and SHA512 links
- validate release data and cover download accessibility

Source commits: 2e9d7e1, 32366fa, 892ba2b

Co-authored-by: Himanshu Verma <himnshuverma10152006@gmail.com>
@coderabbitai

coderabbitai Bot commented Sep 17, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 0a738ccd-3fb8-446f-a165-d9b54a287e4d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown

@codecov-ai-reviewer review

@imbajin
imbajin marked this pull request as ready for review September 17, 2026 20:50
Copilot AI lite review requested due to automatic review settings September 17, 2026 20:50
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 17, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-17T21:18:26.713349Z 81464b6 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 Changes recommended

The added tests do not verify rendered download content or ensure the new routes return actual pages instead of 404 responses.

Get a fresh assessment by requesting another Copilot review.

Pull request overview

This PR centralizes ASF download metadata and renders consistent bilingual release tables.

Changes:

  • Adds structured ASF release data and shared Hugo rendering.
  • Replaces duplicated English/Chinese artifact tables.
  • Adds accessibility routes, styling, translations, and validation tests.
File summaries
File Description
data/downloads/asf.json ASF release and artifact metadata
layouts/_partials/asf-downloads.html Shared download table renderer
layouts/_shortcodes/asf-downloads.html Validated shortcode interface
content/en/docs/download/download.md English page integration
content/cn/docs/download/download.md Chinese page integration
i18n/en.yaml English labels
i18n/zh-CN.yaml Chinese labels
assets/scss/_styles_project.scss Download table styling
scripts/test_download_data.py Data and template validation
tests/e2e/accessibility.spec.js Download route accessibility coverage
Review details
  • Files reviewed: 10/10 changed files
  • Comments generated: 2
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +160 to +170
def test_pages_render_from_data_not_hardcoded_tables(self) -> None:
for page in PAGES:
text = page.read_text(encoding="utf-8")
self.assertIn("{{< asf-downloads latest >}}", text, page)
self.assertIn("{{< asf-downloads archived >}}", text, page)
self.assertNotIn("closer.lua", text, page)
self.assertNotIn(".tar.gz", text, page)
artifact_links = re.findall(
r"downloads\.apache\.org/hugegraph/\d", text
)
self.assertEqual(artifact_links, [], page)
Comment on lines +9 to +10
"/docs/download/download/",
"/cn/docs/download/download/",
- keep wide ASF tables inside a focusable scrolling region\n- add arrow and home/end keyboard scrolling\n- preserve mobile overflow and no-horizontal-page-scroll checks
@imbajin
imbajin merged commit 374d0c5 into oink-918 Sep 17, 2026
12 checks passed
@imbajin
imbajin deleted the prep/oink-918-download branch September 17, 2026 21:32
@imbajin

imbajin commented Sep 18, 2026

Copy link
Copy Markdown
Author

Follow-up is consolidated in #36 (currently open). It adds render-level download assertions, requires successful navigation in accessibility checks, and covers both EN/CN download routes. The original threads remain historical metadata on this merged PR; the fix is reviewed and tested in #36.

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.

2 participants