Skip to content

Cloudsmith io/shivani generic upstream GitHub releases#379

Open
ssoni-cloudsmith wants to merge 2 commits intocloudsmith-io:mainfrom
ssoni-cloudsmith:cloudsmith-io/shivani-generic-upstream-github-releases
Open

Cloudsmith io/shivani generic upstream GitHub releases#379
ssoni-cloudsmith wants to merge 2 commits intocloudsmith-io:mainfrom
ssoni-cloudsmith:cloudsmith-io/shivani-generic-upstream-github-releases

Conversation

@ssoni-cloudsmith
Copy link
Copy Markdown

No description provided.

Copilot AI review requested due to automatic review settings April 2, 2026 09:26
@vercel
Copy link
Copy Markdown

vercel bot commented Apr 2, 2026

@ssoni-cloudsmith is attempting to deploy a commit to the Cloudsmith Team on Vercel.

A member of the Team first needs to authorize it.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds documentation/examples for using Generic upstream proxying with GitHub Releases and updates the site’s table component styling to better handle long strings/URLs in table cells.

Changes:

  • Replaces a single “Example” section with an “Examples” section and adds a new GitHub Releases example to the Generic repository docs.
  • Updates the Table component to wrap tables in a horizontally scrollable container.
  • Adjusts table CSS to improve wrapping behavior for long content (including inline code) inside table cells.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
src/content/formats/generic-repository.mdx Adds a GitHub Releases upstream example alongside the existing Node.js example.
src/components/Table/Table.tsx Wraps rendered tables with a container to enable horizontal scrolling.
src/components/Table/Table.module.css Adds overflow container styling and improves long-string wrapping in table cells/code.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +271 to +283
- **Upstream URL**: `https://api.github.com/repos/<owner>/<repo>/releases`
- **Upstream Prefix**: `github_releases`

**How paths are resolved:**

The upstream URL includes the base path (`/releases/`), so file paths are relative to that location.
To download `https://github.com/aquasecurity/trivy/releases/download/v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz`, request the path `v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz` from Cloudsmith:

| Component | Value |
| :-------- | :---- |
| Upstream URL | `https://api.github.com/repos/aquasecurity/trivy/releases` |
| File path on upstream | `v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz` |
| Full upstream URL | `https://api.github.com/repos/aquasecurity/trivy/releases/v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz` |
Copy link

Copilot AI Apr 2, 2026

Choose a reason for hiding this comment

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

The GitHub Releases example currently uses the GitHub API endpoint (https://api.github.com/repos/.../releases) as the upstream base, but release assets are not downloadable by appending /<tag>/<asset> to that API URL (the endpoint returns JSON and .../releases/v0.x/... will 404). Update the example to use a download-able base URL (e.g., https://github.com/<owner>/<repo>/releases/download/) and adjust the “Full upstream URL” row/path explanation accordingly so the resolved URL matches the actual asset URL format (.../releases/download/<tag>/<asset>).

Suggested change
- **Upstream URL**: `https://api.github.com/repos/<owner>/<repo>/releases`
- **Upstream Prefix**: `github_releases`
**How paths are resolved:**
The upstream URL includes the base path (`/releases/`), so file paths are relative to that location.
To download `https://github.com/aquasecurity/trivy/releases/download/v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz`, request the path `v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz` from Cloudsmith:
| Component | Value |
| :-------- | :---- |
| Upstream URL | `https://api.github.com/repos/aquasecurity/trivy/releases` |
| File path on upstream | `v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz` |
| Full upstream URL | `https://api.github.com/repos/aquasecurity/trivy/releases/v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz` |
- **Upstream URL**: `https://github.com/<owner>/<repo>/releases/download/`
- **Upstream Prefix**: `github_releases`
**How paths are resolved:**
The upstream URL includes the base path (`/releases/download/`), so file paths are appended after that location.
To download `https://github.com/aquasecurity/trivy/releases/download/v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz`, request the path `v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz` from Cloudsmith:
| Component | Value |
| :-------- | :---- |
| Upstream URL | `https://github.com/aquasecurity/trivy/releases/download/` |
| File path on upstream | `v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz` |
| Full upstream URL | `https://github.com/aquasecurity/trivy/releases/download/v0.69.3/trivy_0.69.3_Linux-ARM64.tar.gz` |

Copilot uses AI. Check for mistakes.

The upstream prefix (`node_distributions`) ensures files from Node.js don't collide with files from other upstreams, even if they share identical file paths.

#### Github Releases
Copy link

Copilot AI Apr 2, 2026

Choose a reason for hiding this comment

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

Heading uses "Github" here, but elsewhere in this doc (and generally) the brand is styled as "GitHub". Please rename this heading to "GitHub Releases" for consistency.

Suggested change
#### Github Releases
#### GitHub Releases

Copilot uses AI. Check for mistakes.
export function Table(props: React.ComponentPropsWithoutRef<'table'>) {
return <table className={styles.root} {...props} />;
return (
<div className={styles.container}>
Copy link

Copilot AI Apr 2, 2026

Choose a reason for hiding this comment

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

The new scroll container enables horizontal scrolling, but a plain <div> with overflow-x: auto isn’t keyboard-focusable by default, which makes horizontal scrolling difficult for keyboard-only users. Consider making the container focusable (e.g., tabIndex={0}) and giving it an accessible name (via aria-label/aria-labelledby, potentially reusing the table’s labeling props) so assistive tech users can discover and operate the scroll region.

Suggested change
<div className={styles.container}>
<div
className={styles.container}
tabIndex={0}
aria-label={props['aria-label']}
aria-labelledby={props['aria-labelledby']}
>

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants