Skip to content

Commit 963feff

Browse files
author
NVCF OSS Bot
committed
OSS snapshot
0 parents  commit 963feff

File tree

194 files changed

+32597
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

194 files changed

+32597
-0
lines changed

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* @NVIDIA/nvcf-dev
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
name: Bug report
3+
about: Create a bug report to help us improve nvcf-go
4+
title: "[BUG]"
5+
labels: "Needs Triage, bug"
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**Steps/Code to reproduce bug**
14+
Follow [this guide](https://matthewrocklin.com/blog/work/2018/02/28/minimal-bug-reports) to craft a minimal bug report. This helps us reproduce the issue you're having and resolve the issue more quickly.
15+
16+
**Expected behavior**
17+
A clear and concise description of what you expected to happen.
18+
19+
**Additional context**
20+
Add any other context about the problem here.
21+
22+
-----
23+
By submitting this issue, you agree to follow our [code of conduct](/CODE_OF_CONDUCT.md) and our [contributing guidelines](/CONTRIBUTING.md).

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
# GitHub info on config.yml
5+
# https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#configuring-the-template-chooser
6+
# Set to 'false' if you only want the templates to be used.
7+
blank_issues_enabled: false
8+
9+
# When using discussions instead of Question issue templates,
10+
# link that below to have it show up in the 'Submit Issue' page
11+
contact_links:
12+
- name: Ask a Question
13+
url: https://github.com/NVIDIA/nvcf-go/discussions
14+
about: Please ask any questions here.
15+
- name: Report a Security Vulnerability
16+
type: security
17+
url: https://www.nvidia.com/object/submit-security-vulnerability.html
18+
about: Do not file security issues on GitHub. Use the NVIDIA PSIRT.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
---
2+
name: Documentation request
3+
about: Report incorrect or needed documentation
4+
title: "[DOC]"
5+
labels: "Needs Triage, doc"
6+
assignees: ''
7+
8+
---
9+
10+
11+
<!-- Fill out either incorrect documentation, or needed documentation and delete the unused section -->
12+
13+
## Report incorrect documentation
14+
15+
**Location of incorrect documentation**
16+
Provide links and line numbers if applicable.
17+
18+
**Describe the problems or issues found in the documentation**
19+
A clear and concise description of what you found to be incorrect.
20+
21+
**Steps taken to verify documentation is incorrect**
22+
List any steps you have taken:
23+
24+
**Suggested fix for documentation**
25+
Detail proposed changes to fix the documentation if you have any.
26+
27+
---
28+
29+
## Report needed documentation
30+
31+
**Report needed documentation**
32+
A clear and concise description of what documentation you believe it is needed and why.
33+
34+
**Describe the documentation you'd like**
35+
A clear and concise description of what you want to happen.
36+
37+
**Steps taken to search for needed documentation**
38+
List any steps you have taken:
39+
40+
41+
-----
42+
By submitting this issue, you agree to follow our [code of conduct](/CODE_OF_CONDUCT.md) and our [contributing guidelines](/CONTRIBUTING.md).
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for nvcf-go
4+
title: "[FEA]"
5+
labels: "Needs Triage, feature request"
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I wish I could use nvcf-go to do [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context, code examples, or references to existing implementations about the feature request here.
21+
22+
-----
23+
By submitting this issue, you agree to follow our [code of conduct](/CODE_OF_CONDUCT.md) and our [contributing guidelines](/CONTRIBUTING.md).
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
name: Submit question
3+
about: Ask a general question about nvcf-go
4+
title: "[QST]"
5+
labels: "Needs Triage, question"
6+
assignees: ''
7+
8+
---
9+
10+
**What is your question?**
11+
12+
13+
-----
14+
By submitting this issue, you agree to follow our [code of conduct](/CODE_OF_CONDUCT.md) and our [contributing guidelines](/CONTRIBUTING.md).

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
## Customer Summary (required for feat, fix, and perf MRs)
2+
<!--To include in the release notes. Use customer facing language to describe the effect on them.-->
3+
4+
## TL;DR
5+
<!--Provide a brief description of the changes in this MR.-->
6+
7+
## Additional Details (optional for docs, build, test, refactor, ci, chore, style, and revert MRs)
8+
<!-- - describe the intent of this MR -->
9+
<!-- - any limitations or possible things missing from this MR -->
10+
<!-- - what led to this change being made? this is optional extra information to help the reviewer -->
11+
12+
## For the Reviewer
13+
<!--mention reviewers you wish to review this MR-->
14+
<!--call out specific files that should be looked at closely-->
15+
<!--any questions you need answered pertaining to this review-->
16+
17+
## For QA (optional for docs, build, test, refactor, ci, chore, style, and revert MRs)
18+
<!--list steps you took to verify this change-->
19+
<!--Is QA Needed?-->
20+
21+
## Issues: (use one of the action keywords Closes / Fixes / Resolves / Relates to)
22+
- Closes #XXX
23+
- If no issues are associated, use NO-REF
24+
25+
## Checklist
26+
- [ ] I am familiar with the [Contributing Guidelines](/CONTRIBUTING.md).
27+
- [ ] New or existing tests cover these changes.
28+
- [ ] The documentation is up to date with these changes.

.github/dco.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
# DCO (Developer Certificate of Origin) enforcement configuration.
5+
# This file is used by the DCO GitHub App (https://github.com/apps/dco).
6+
#
7+
# All commits in pull requests must include a Signed-off-by line:
8+
# Signed-off-by: Your Name <your.email@example.com>
9+
#
10+
# Contributors can sign off using: git commit -s
11+
12+
require:
13+
members: true # enforce DCO for org members
14+
contributors: true # enforce DCO for external contributors

.github/workflows/ci.yml

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
# SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
#
4+
# CI workflow for nvcf-go public GitHub repository.
5+
# Runs on push to main and on pull requests.
6+
#
7+
# External contributor sandboxing (SEC-1):
8+
# PRs from non-collaborators require maintainer approval before workflows run.
9+
# This is enforced via the repository's "Fork pull request workflows" setting
10+
# (Settings → Actions → Fork pull request workflows from outside collaborators
11+
# → set to "Require approval for all outside collaborators").
12+
13+
name: CI
14+
15+
on:
16+
push:
17+
branches:
18+
- main
19+
pull_request:
20+
branches:
21+
- main
22+
workflow_dispatch:
23+
24+
env:
25+
GO_VERSION: "1.24"
26+
27+
jobs:
28+
# ---------------------------------------------------------------------------
29+
# Build — verify the library compiles cleanly
30+
# ---------------------------------------------------------------------------
31+
build:
32+
name: Build
33+
runs-on: ubuntu-latest
34+
steps:
35+
- name: Checkout
36+
uses: actions/checkout@v4
37+
38+
- name: Set up Go
39+
uses: actions/setup-go@v5
40+
with:
41+
go-version: ${{ env.GO_VERSION }}
42+
cache: true
43+
44+
- name: Download dependencies
45+
run: go mod download
46+
47+
- name: Build
48+
run: go build ./...
49+
50+
# ---------------------------------------------------------------------------
51+
# Lint — static analysis
52+
# ---------------------------------------------------------------------------
53+
lint:
54+
name: Lint
55+
runs-on: ubuntu-latest
56+
steps:
57+
- name: Checkout
58+
uses: actions/checkout@v4
59+
60+
- name: Set up Go
61+
uses: actions/setup-go@v5
62+
with:
63+
go-version: ${{ env.GO_VERSION }}
64+
cache: true
65+
66+
- name: Run go vet
67+
run: go vet ./...
68+
69+
- name: Run golangci-lint
70+
uses: golangci/golangci-lint-action@v6
71+
with:
72+
version: v2.1
73+
args: --timeout=5m ./...
74+
75+
# ---------------------------------------------------------------------------
76+
# Test — unit tests
77+
# ---------------------------------------------------------------------------
78+
test:
79+
name: Test
80+
runs-on: ubuntu-latest
81+
steps:
82+
- name: Checkout
83+
uses: actions/checkout@v4
84+
85+
- name: Set up Go
86+
uses: actions/setup-go@v5
87+
with:
88+
go-version: ${{ env.GO_VERSION }}
89+
cache: true
90+
91+
- name: Download dependencies
92+
run: go mod download
93+
94+
- name: Run tests
95+
run: go test -v -race -coverprofile=coverage.txt -covermode=atomic ./...
96+
97+
- name: Upload coverage
98+
uses: codecov/codecov-action@v4
99+
if: always()
100+
with:
101+
files: coverage.txt
102+
fail_ci_if_error: false

.github/workflows/security.yml

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
# SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
#
4+
# Security scanning workflow for nvcf-go public GitHub repository.
5+
# Runs on push to main and on a weekly schedule.
6+
7+
name: Security Scan
8+
9+
on:
10+
push:
11+
branches:
12+
- main
13+
schedule:
14+
# Run weekly on Mondays at 08:00 UTC
15+
- cron: "0 8 * * 1"
16+
workflow_dispatch:
17+
18+
env:
19+
GO_VERSION: "1.24"
20+
21+
jobs:
22+
# ---------------------------------------------------------------------------
23+
# Secret scanning — check for accidentally committed secrets
24+
# ---------------------------------------------------------------------------
25+
secret-scan:
26+
name: Secret Scan (Gitleaks)
27+
runs-on: ubuntu-latest
28+
steps:
29+
- name: Checkout
30+
uses: actions/checkout@v4
31+
with:
32+
fetch-depth: 0 # full history for thorough scan
33+
34+
- name: Run Gitleaks
35+
uses: gitleaks/gitleaks-action@v2
36+
env:
37+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
38+
39+
# ---------------------------------------------------------------------------
40+
# Dependency vulnerability scan
41+
# ---------------------------------------------------------------------------
42+
dependency-scan:
43+
name: Dependency Scan (govulncheck)
44+
runs-on: ubuntu-latest
45+
steps:
46+
- name: Checkout
47+
uses: actions/checkout@v4
48+
49+
- name: Set up Go
50+
uses: actions/setup-go@v5
51+
with:
52+
go-version: ${{ env.GO_VERSION }}
53+
cache: true
54+
55+
- name: Install govulncheck
56+
run: go install golang.org/x/vuln/cmd/govulncheck@latest
57+
58+
- name: Run govulncheck
59+
run: govulncheck ./...
60+
61+
# ---------------------------------------------------------------------------
62+
# SAST — CodeQL static analysis
63+
# ---------------------------------------------------------------------------
64+
codeql:
65+
name: CodeQL Analysis
66+
runs-on: ubuntu-latest
67+
permissions:
68+
security-events: write
69+
actions: read
70+
contents: read
71+
steps:
72+
- name: Checkout
73+
uses: actions/checkout@v4
74+
75+
- name: Initialize CodeQL
76+
uses: github/codeql-action/init@v3
77+
with:
78+
languages: go
79+
80+
- name: Set up Go
81+
uses: actions/setup-go@v5
82+
with:
83+
go-version: ${{ env.GO_VERSION }}
84+
85+
- name: Build
86+
run: go build ./...
87+
88+
- name: Perform CodeQL Analysis
89+
uses: github/codeql-action/analyze@v3

0 commit comments

Comments
 (0)