Repository navigation
Conversation
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: wailsapp/wails/.coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (3)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review. WalkthroughLinux local dependency checks now use a shared helper to apply installation status, version, and package name. Tests cover the check results, and the Unreleased changelog records the npm detection issue. ChangesLinux local dependency detection
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix · Severity of issue fixed: Low Merge Risk: ⚪ Minimal · up to No actionable merge-blocking issue remains; the Linux dependency-detection fix is ready for normal merge checks. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 4 functions across 2 files. (1 skipped: 1 unsupported.)
✨ Finishing Touches🧪 Generate unit tests (beta)
Warning Some tools did not complete. Review the errors below. 🔧 golangci-lint (2.13.2)golangci-lint (2.13.2) skipped for v2/.golangci.yml: configuration requires version: "2". Migrate older configurations using golangci-lint migrate and review the result; see https://golangci-lint.run/docs/product/migration-guide/. 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. A rabbit checks the Linux trail, Comment |
Description
When the package manager does not report a dependency,
discover()on Linux falls back to a local check (npm -version,makensis -VERSIONand so on), but it only copiedInstalledandVersionfrom the result.doctor.godecides the status fromPackageName, so a dependency the package manager does not list at all stayed Not Found, and a required one failed the diagnosis. In the issue that is npm, because the image removes/var/lib/apt/lists.The local check now also fills in
PackageName("N/A", which doctor already shows for npm on Windows and macOS) when the package manager had none, and keeps the package manager's name otherwise. The nsis check had the same gap and goes through the same helper.The libgtk-3 and libwebkit rows showing Available in the issue are a separate problem (
apt listmarks them[installed,local]once the lists are gone), tracked in #4258 with a draft fix in #5184.Fixes #5842
Type of change
How Has This Been Tested?
v2/internal/system/system_linux_test.go(the case for a dependency only the local check finds fails on master)wails doctorfrom master and from this branch in an ubuntu:22.04 container set up like the one in the issueOn master that container shows npm as Unknown, Not Found and ends with "Required dependencies missing: npm". With this branch npm shows as N/A, Installed and the Fatal line is gone (output below).
Ubuntu 22.04 (arm64 container) with NodeSource Node 24, libgtk-3-dev and libwebkit2gtk-4.0-dev installed and the apt lists removed, Go 1.25.14.
go test ./...inv2passes there.Test Configuration
Checklist:
website/src/pages/changelog.mdxwith details of this PR (v3 changelog entries are added automatically)Summary by CodeRabbit
wails doctorincorrectly reporting npm as missing on Linux when it is installed locally but not listed by the package manager.