Skip to content

Commit a8cfc19

Browse files
authored
Merge pull request #8 from NavneetHegde/improve/update-package-details
feat: add CycloneDX SBOM generation and improve README demo GIF
2 parents 90f0e89 + 72ca0f2 commit a8cfc19

3 files changed

Lines changed: 25 additions & 16 deletions

File tree

.github/workflows/release.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,12 @@ jobs:
3333
- name: Pack
3434
run: dotnet pack src/AzureDevOpsExcelSync/AzureDevOpsExcelSync.csproj -c Release -p:Version=${{ steps.version.outputs.VERSION }} --output ./nupkg
3535

36+
- name: Generate SBOM (CycloneDX)
37+
run: |
38+
dotnet tool install --global CycloneDX
39+
dotnet CycloneDX src/AzureDevOpsExcelSync/AzureDevOpsExcelSync.csproj -o ./sbom -j
40+
mv ./sbom/bom.json ./sbom/sbom-${{ steps.version.outputs.VERSION }}.cdx.json
41+
3642
- name: Nuget Login (OIDC + temp API Key)
3743
uses: Nuget/login@v1
3844
id: login
@@ -47,4 +53,6 @@ jobs:
4753
with:
4854
tag_name: ${{ steps.version.outputs.TAG }}
4955
generate_release_notes: true
50-
files: nupkg/*.nupkg
56+
files: |
57+
nupkg/*.nupkg
58+
sbom/*.cdx.json

Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<Project>
22
<PropertyGroup>
3-
<Version>1.0.3</Version>
3+
<Version>1.0.4</Version>
44
</PropertyGroup>
55
</Project>

scripts/generate-gif.mjs

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,22 @@ import { fileURLToPath } from 'url';
1515
const __dirname = path.dirname(fileURLToPath(import.meta.url));
1616

1717
// ── Layout constants ───────────────────────────────────────────
18-
const W = 720;
19-
const H = 640; // tall enough for banner + pull output + push output
20-
const LINE_H = 20;
21-
const PAD_X = 18;
22-
const PAD_Y = 18;
23-
const FONT = '13px "Courier New", monospace';
18+
const W = 760;
19+
const H = 680; // tall enough for banner + pull output + push output
20+
const LINE_H = 22;
21+
const PAD_X = 20;
22+
const PAD_Y = 20;
23+
const FONT = 'bold 15px "Courier New", monospace';
2424

2525
// ── Palette ────────────────────────────────────────────────────
2626
const BG = '#0d1117';
27-
const FG = '#c9d1d9';
28-
const CYAN = '#56b6c2';
29-
const DARK_GRAY = '#484f58';
30-
const YELLOW = '#e3b341';
31-
const GREEN = '#3fb950';
27+
const FG = '#ffffff';
28+
const CYAN = '#00e5ff';
29+
const DARK_GRAY = '#6e7681';
30+
const YELLOW = '#ffd700';
31+
const GREEN = '#00ff88';
3232
const WHITE = '#ffffff';
33-
const PICK_BG = '#1f6e79';
33+
const PICK_BG = '#005f73';
3434

3535
// ── Measure monospace char width once ─────────────────────────
3636
const _mc = createCanvas(20, 20);
@@ -41,7 +41,8 @@ const CW = _mx.measureText('M').width;
4141
// ── Helpers ────────────────────────────────────────────────────
4242
function makeCanvas() {
4343
const c = createCanvas(W, H);
44-
const ctx = c.getContext('2d');
44+
const ctx = c.getContext('2d', { antialias: 'none' });
45+
ctx.antialias = 'none';
4546
ctx.fillStyle = BG;
4647
ctx.fillRect(0, 0, W, H);
4748
ctx.font = FONT;
@@ -112,7 +113,7 @@ fs.mkdirSync(path.dirname(OUTPUT), { recursive: true });
112113

113114
const encoder = new GIFEncoder(W, H, 'neuquant', true);
114115
encoder.setRepeat(0);
115-
encoder.setQuality(10);
116+
encoder.setQuality(1);
116117
encoder.start();
117118

118119
function frame(fn, delay = 80) {

0 commit comments

Comments
 (0)