Review of "Package Watchdog" version 1

Details Page Preview

Automatically checks for DNF, APT, Zypper and Flatpak updates and notifies you via GNOME Shell notifications.

Extension Homepage
https://github.com/oliwebd/package-watchdog

No comments.

FAQ

Files

Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.

Shexli (experimental) warning 2

Shexli found 2 issues that may need reviewer attention.

EGO-X-004 warning

extensions should avoid synchronous file IO in shell code

Shell code should avoid synchronous file IO APIs like `GLib.file_get_contents()` and `Gio.File.load_contents()`.

File Operations

  • extension.js:16
    GLib.file_get_contents("/etc/os-release")

EGO-A-004 warning

extension files should not contain excessive ungated console logging

File contains 7 ungated console.log/warn/error calls (threshold: 5).

No excessive logging

  • extension.js:86
    console.error(`Watchdog: Failed to load Soup: ${e}`)
  • extension.js:207
    console.error(`Error listing packages: ${e}`)
  • extension.js:238
    console.error(`Error getting Flatpak info: ${e}`)
  • extension.js:360
    console.error(`NPM Auto-discovery failed: ${e}`)
  • extension.js:411
    console.error(`OSV batch error: ${err}`)
  • extension.js:416
    console.error(`OSV Check failed: ${e}`)
  • extension.js:49
    console.log(`[PackageWatchdog] [${source}] ${message}`)
  • prefs.js:86
    console.error(`Watchdog: Failed to load Soup: ${e}`)
  • prefs.js:207
    console.error(`Error listing packages: ${e}`)
  • prefs.js:238
    console.error(`Error getting Flatpak info: ${e}`)
  • prefs.js:360
    console.error(`NPM Auto-discovery failed: ${e}`)
  • prefs.js:411
    console.error(`OSV batch error: ${err}`)
  • prefs.js:416
    console.error(`OSV Check failed: ${e}`)
  • prefs.js:49
    console.log(`[PackageWatchdog] [${source}] ${message}`)

All Versions

Version Status
2 Unreviewed
1 Rejected

Previous Reviews on this Version

SriramRamkrishna rejected
You haev too much debugging output and you're using synchronous file operations. Use Gio.File.load_contents_async instead for file operations. Fix those and then re-submit.