Skip to content

NuGet のライセンス・ワークフローの警告・Dependabot の漏れ・依存の脆弱性・ヘルプの Ruby を直す - #1450

Merged
7474 merged 4 commits into
masterfrom
claude/laughing-archimedes-grogzk
Nov 3, 2026
Merged

7474 merged 4 commits into
masterfrom
claude/laughing-archimedes-grogzk

Conversation

@7474

@7474 7474 commented Nov 3, 2026 •

Copy link
Copy Markdown
Owner

概要

次の 5 つを直します。

  • NuGet のパッケージにライセンスを入れる
  • ワークフローに出ていた警告のうち、こちらで直せるもの
  • Dependabot の更新の対象の漏れ
  • VS Code 拡張の依存の脆弱性
  • ヘルプの Ruby の版

変更

NuGet のパッケージのライセンス(SRC.Sharp/Directory.Build.props)

  • 対象は SRCCore・SRCDataLinter・SRCSharpTools です。
  • PackageLicenseExpression を GPL-3.0-or-later にしました。ソースの各ファイルの先頭(「GPL Ver.3 またはそれ以降」)と、VS Code 拡張の license に合わせています。
  • あわせて PackageProjectUrl・RepositoryUrl も入れました。
  • これまでは push のたびに「License missing」の警告が出ていました。

ワークフローの警告

  • C# の警告 CS0618(SRCSharpAvaloniaTests/SettingsTests.cs): 非推奨の Bitmap.Save(string, int?) を、PngBitmapEncoderOptions を渡す形にしました。
  • ヘルプの組み立ての Sass の非推奨の警告(60 件): テーマ(just-the-docs 0.12。最新の版で、Dependabot の対象)の SCSS の書き方が原因です。_config.yml の sass.silence_deprecations で出さないようにしました。

Dependabot

  • ovsx: ワークフローに ovsx@1.2.0 と直接書いていて、Dependabot の対象外でした。VS Code 拡張の devDependencies(^1.3.0)に移し、npm ci で入れたものを使うようにしました。
  • 対象にしないもの: 理由を dependabot.yml に書きました。
    • データビューアの CSS を作る npm: CI で動かさないため、更新しても確かめられません。
    • SRCDataLinter の Docker の土台のイメージ: .NET の版の付いた動くタグで、パッチは公開のたびに取り込まれます。

VS Code 拡張の依存の脆弱性(npm audit 11 件 → 0 件)

package.json の overrides で上書きしました。外す時機は dependabot.yml に書いています。

上書き 消える報告
minimatch → ^11.0.4 DoS(11.0.1 で修正)。拡張の本体に入る vscode-languageclient も使っている
glob → ^14.0.3 minimatch 11 を使う版。glob 13 の AbortSignal の件
@vscode/test-cli の mocha → 拡張の mocha 12 serialize-javascript 6(high、RCE)・diff 7

SRC#Help の Ruby(3.1.3 → 4.0)

  • Static Web Apps の組み立て(Oryx)が使える Ruby は 3.1.3 までで、保守が終わっています。Static Web Apps 側に、Ruby の対応予定のアナウンスは見つかりませんでした。
  • そこで、公式の手順のとおり、CD-swa-help.yml で Jekyll を組み立て、組み立てた頁だけを送る形にしました(skip_app_build: true、app_location: SRC.Sharp.Help/_site)。
  • .ruby-version を 4.0 に、Gemfile の ruby の指定(Oryx に合わせた ~> 3.1)を ~> 4.0 にしました。
  • Gem は Gemfile.lock のとおりに入れます(bundler-cache)。
    • これまでは、Ruby 3.1 では入れられない版を含む Gemfile.lock を、Oryx と CI が黙って解決し直していました。
    • Gemfile.lock の RUBY VERSION(3.1.3)は外しました。
  • CI の build-help も同じ形にし、docs/testing.md の「残っている課題」も書き換えました。

確かめたこと

  • NuGet のパッケージ: 3 つのパッケージの nuspec に、ライセンスと URL が入ること。
  • C# の警告: SRCSharpAvaloniaTests の組み立てで警告が出ないこと(SettingsTests 11 件成功)。
  • ヘルプの Sass: jekyll build の警告が 60 件から 0 件になること。
  • VS Code 拡張: npm audit が 0 件になること。npm run compile、vsce package で vsix を作れること、xvfb-run -a npm test で拡張のテスト 4 件が通ること。
  • ヘルプの Ruby 4.0(手元は Ruby 4.0.6)
    • Gemfile.lock のまま(frozen)Gem を入れられること。足りない Gem はありませんでした。
    • JEKYLL_ENV=production で組み立てられ、警告が 0 件であること。
    • 出来上がりが Ruby 3.4 のときと同じであること(違いは CSS のソースマップのパスだけ)。
  • 配信: Ruby 3.4 の時点の push で、プレビュー環境への配信(CD-swa-help.yml)と CI の build-help が成功し、プレビューでトップ・SRC#Webの使い方・アーカイブ(/vb/)・CSS が出ることを確かめました。Ruby 4.0 では、この push の CI とプレビューで確かめます。

直していない警告(外のツールのもの)

警告 出どころ
Node.js の DeprecationWarning(Buffer()・punycode・url.parse()) 公開・配信に使う npm のツールの中から出ている

🤖 Generated with Claude Code

https://claude.ai/code/session_016o9WHY8U3cQ2HiDnotdcP6

- SRCCore・SRCDataLinter・SRCSharpTools のパッケージに、ライセンス(GPL-3.0-or-later。ソースの各ファイルの
  先頭と VS Code 拡張と同じ)とリポジトリの URL を入れる(Directory.Build.props)。push のたびに
  「License missing」の警告が出ていた
- SRCSharpAvaloniaTests の CS0618(Bitmap.Save(string, int?) は非推奨)を、PngBitmapEncoderOptions を渡す形にする
- ヘルプの組み立てで、テーマ(just-the-docs 0.12)の SCSS が出す Dart Sass の非推奨の警告(60 件)を、
  _config.yml の sass.silence_deprecations で出さない。テーマの側の書き方なので、こちらでは直せない

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016o9WHY8U3cQ2HiDnotdcP6
@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Azure Static Web Apps: Your stage site is ready! Visit it here: https://yellow-pebble-0ddb1c400-1450.eastasia.azurestaticapps.net

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Azure Static Web Apps: Your stage site is ready! Visit it here: https://icy-coast-005428600-1450.eastasia.azurestaticapps.net

- ovsx はワークフローに ovsx@1.2.0 と直接書いていて、Dependabot の対象外だった(最新は 1.3.0)。
  VS Code 拡張の devDependencies(^1.3.0)に移し、Publish-VSCode.yml は npm ci で入れたものを npx で使う
- dependabot.yml に、対象にしないもの(データビューアの CSS を作る npm、SRCDataLinter の Docker の土台の
  イメージ)とその理由を書く

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016o9WHY8U3cQ2HiDnotdcP6
@7474 7474 changed the title NuGet のパッケージにライセンスを入れ、ワークフローの警告を減らす NuGet のパッケージにライセンスを入れ、ワークフローの警告と Dependabot の漏れを直す Nov 3, 2026
@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Azure Static Web Apps: Your stage site is ready! Visit it here: https://yellow-pebble-0ddb1c400-1450.eastasia.azurestaticapps.net

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Azure Static Web Apps: Your stage site is ready! Visit it here: https://icy-coast-005428600-1450.eastasia.azurestaticapps.net

VS Code 拡張(npm audit が 11 件 → 0 件)
- package.json の overrides で、minimatch を 11.0.4(11.0.1 で DoS を修正。拡張の本体に入る
  vscode-languageclient も使う)、glob を 14(minimatch 11 を使う版)、@vscode/test-cli の mocha を
  拡張の mocha 12(serialize-javascript 7.1.4・diff 9)にそろえる
- 組み立て・vsix の作成・拡張のテスト(4 件)が通ることを確かめた。外す時機は dependabot.yml に書く

SRC#Help の Ruby(3.1.3 → 3.4)
- Static Web Apps の組み立て(Oryx)が使える Ruby は 3.1.3 までで、保守が終わっている。CD-swa-help.yml で
  Jekyll を組み立て、組み立てた頁を送る(skip_app_build)ようにし、.ruby-version を 3.4 にする
- Gem は Gemfile.lock のとおりに入れる(bundler-cache)。これまでは Ruby 3.1 で入れられない版を含む
  Gemfile.lock を、Oryx と CI が解決し直していた。Gemfile.lock の RUBY VERSION(3.1.3)は外す

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016o9WHY8U3cQ2HiDnotdcP6
@7474 7474 changed the title NuGet のパッケージにライセンスを入れ、ワークフローの警告と Dependabot の漏れを直す NuGet のライセンス・ワークフローの警告・Dependabot の漏れ・依存の脆弱性・ヘルプの Ruby を直す Nov 3, 2026
@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Azure Static Web Apps: Your stage site is ready! Visit it here: https://yellow-pebble-0ddb1c400-1450.eastasia.azurestaticapps.net

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Azure Static Web Apps: Your stage site is ready! Visit it here: https://icy-coast-005428600-1450.eastasia.azurestaticapps.net

組み立ては GitHub Actions で行い、Static Web Apps には組み立てた頁だけを送るので、Oryx の Ruby の対応
(3.1.3 まで)には縛られない。.ruby-version を 4.0 にし、Gemfile の ruby の指定(Oryx に合わせた ~> 3.1)も
~> 4.0 にする。Ruby 4.0.6 で Gemfile.lock のまま(frozen)入れ、JEKYLL_ENV=production で組み立てられ、
警告が無く、出来上がりが Ruby 3.4 のときと(CSS のソースマップのパスを除いて)同じことを確かめた。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016o9WHY8U3cQ2HiDnotdcP6
@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Azure Static Web Apps: Your stage site is ready! Visit it here: https://yellow-pebble-0ddb1c400-1450.eastasia.azurestaticapps.net

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Azure Static Web Apps: Your stage site is ready! Visit it here: https://icy-coast-005428600-1450.eastasia.azurestaticapps.net

@7474
7474 marked this pull request as ready for review November 3, 2026 12:20
@7474
7474 merged commit fc4aaee into master Nov 3, 2026
19 checks passed
@7474
7474 deleted the claude/laughing-archimedes-grogzk branch November 3, 2026 12:20
@7474
7474 deployed to SRC#DataViewer dev November 3, 2026 12:20 — with GitHub Actions Active
@7474
7474 deployed to SRC#Help dev November 3, 2026 12:20 — with GitHub Actions Active

This branch was successfully deployed

2 active deployments
SRC#DataViewer dev — b8af2ca2 Deployed Nov 3, 2026 by 7474 via Close Pull Request Job #674
SRC#Help dev — b8af2ca2 Deployed Nov 3, 2026 by 7474 via Close Pull Request Job #95
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