Skip to content

Conversation

@erez-c137
Copy link

@erez-c137 erez-c137 commented Oct 31, 2025

  • Use conventional PR title: netspeedtray: Add lightweight network monitor for taskbar
  • I have read the Contributing Guide

Package Details

  • Name: NetSpeedTray
  • Description: A lightweight, open-source network monitor for Windows that displays live upload/download speeds directly on the Taskbar
  • Homepage: https://github.com/erez-c137/NetSpeedTray
  • License: GPL-3.0-only

Testing

  • Tested installation
  • Tested application functionality
  • Tested uninstallation
  • Verified hash matches

Summary by CodeRabbit

  • Chores
    • NetSpeedTray is now available via Scoop package manager for simplified installation and automated updates.

@coderabbitai
Copy link

coderabbitai bot commented Oct 31, 2025

Walkthrough

A new Scoop manifest file for NetSpeedTray is added, specifying 64-bit architecture download details, installation commands, hash verification, GitHub-based version checking, and autoupdate configuration with associated metadata.

Changes

Cohort / File(s) Summary
Scoop Manifest Addition
bucket/netspeedtray.json
New manifest file defining NetSpeedTray package metadata including architecture, installation/uninstallation commands, hash for integrity verification, version checking strategy via GitHub, and autoupdate URL template.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

  • Verify download URL and hash accuracy
  • Confirm installer/uninstaller command syntax is correct
  • Validate GitHub checkver pattern matches repository structure
  • Review autoupdate URL template variable substitution

Poem

🐰 A manifest so neat, a package so fine,
NetSpeedTray now joins the Scoop bucket line,
With hashes and versions in perfect array,
We hop with delight—let the installations play! 🏃‍♂️💨

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Title Check ✅ Passed The PR title "Add NetSpeedTray: Lightweight network monitor for Windows taskbar" is fully related to the main change in the changeset. The title clearly and specifically indicates that a new Scoop package manifest for NetSpeedTray is being added to the repository, which matches the file summary showing a new netspeedtray.json manifest file. The title is concise, descriptive, and specific enough that a teammate scanning history would immediately understand the primary change without ambiguity.
Description Check ✅ Passed The PR description meets most template requirements with both mandatory checkboxes completed (conventional PR title and Contributing Guide acknowledgment). The description includes comprehensive additional sections covering Package Details (name, description, homepage, license) and Testing (installation, functionality, uninstallation, and hash verification), demonstrating thoroughness beyond the template minimums. However, the description lacks an explicit issue reference (Closes/Relates to #XXXX), which the template indicates should be included, though this may not be critical if no issue was opened prior to the PR creation as mentioned in the contributing guidelines.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Contributor

Your changes did not pass all checks.

Please address the issues in the manifest and comment starting with /verify to rerun the checks.

netspeedtray

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate

Check the full log for details.

@erez-c137 erez-c137 mentioned this pull request Oct 31, 2025
6 tasks
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
bucket/netspeedtray.json (1)

11-16: Verify uninstaller reliability for varied installation scenarios.

The uninstaller script uses a hardcoded path to $env:ProgramFiles\NetSpeedTray\unins000.exe, which assumes the Inno Setup installer consistently creates this file in the default location. This is typical for Inno Setup, but verify that the uninstaller path remains valid across:

  • Custom installation paths (if the installer allows them)
  • Different Windows configurations (localized Program Files paths, etc.)

This is generally safe for Inno Setup, but clarify if there are edge cases where this path might not be valid.

If needed, I can suggest alternative uninstaller configurations that are more resilient to installation path variations.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ba8b272 and 53c44dd.

📒 Files selected for processing (1)
  • bucket/netspeedtray.json (1 hunks)
🧰 Additional context used
🧠 Learnings (4)
📓 Common learnings
Learnt from: o-l-a-v
Repo: ScoopInstaller/Extras PR: 16378
File: bucket/compactgui.json:20-22
Timestamp: 2025-10-19T13:58:23.389Z
Learning: In the ScoopInstaller/Extras repository, the CompactGUI manifest removed hash verification from the autoupdate block because the hash verification mechanism (scraping SHA-256 from release page HTML) is no longer available in newer CompactGUI releases. GitHub asset digests exist in beta releases but not in v3.8.0, and Scoop doesn't have built-in support for extracting from GitHub API asset digests.
Learnt from: Gitoffthelawn
Repo: ScoopInstaller/Extras PR: 16106
File: bucket/czkawka-gui.json:25-25
Timestamp: 2025-09-05T09:41:52.653Z
Learning: For czkawka-gui manifests in Scoop Extras, the correct upstream filename pattern for Windows GUI builds in recent versions uses "gtk46" (without underscore), not "gtk_46" (with underscore). The autoupdate URL should use "windows_czkawka_gui_gtk46.zip" format. This was confirmed by a working 10.0.0 update with valid hash.
Learnt from: Gitoffthelawn
Repo: ScoopInstaller/Extras PR: 16106
File: bucket/czkawka-gui.json:25-25
Timestamp: 2025-09-05T09:41:52.653Z
Learning: For czkawka-gui manifests in Scoop Extras, the correct upstream filename pattern for Windows GUI builds uses "gtk46" (without underscore), not "gtk_46" (with underscore). The autoupdate URL should use "windows_czkawka_gui_gtk46.zip" format.
Learnt from: o-l-a-v
Repo: ScoopInstaller/Extras PR: 16349
File: bucket/fvim.json:45-49
Timestamp: 2025-10-16T15:59:21.258Z
Learning: In Scoop manifests, the `autoupdate.url` and `autoupdate.architecture.<arch>.url` fields must be valid URIs according to the JSON schema (defined with `"format": "uri"`). Variables like `$matchUrlx64` that contain only path segments must be combined with a base URL (e.g., `https://github.com/.../releases/download/`) to form a complete valid URI.
Learnt from: Lutra-Fs
Repo: ScoopInstaller/Extras PR: 16020
File: bucket/regedix.json:6-8
Timestamp: 2025-09-26T02:55:31.132Z
Learning: For Scoop manifests, prefer using "suggest" over "depends" for .NET runtime dependencies because user machines often have externally managed .NET runtimes already installed, and using "depends" could cause duplicate installations of the same runtime.
Learnt from: mokosiy
Repo: ScoopInstaller/Extras PR: 16428
File: bucket/multidrive.json:8-8
Timestamp: 2025-10-27T13:19:16.982Z
Learning: For MultiDrive manifests in the ScoopInstaller/Extras repository: the direct download URL at dl.atola.com causes 403 errors due to Cloudflare Bot Fight Mode blocking the Scoop bot, so GitHub Releases URLs should be used instead (e.g., https://github.com/atola-technology/multidrive/releases/download/...).
📚 Learning: 2025-10-19T13:58:23.389Z
Learnt from: o-l-a-v
Repo: ScoopInstaller/Extras PR: 16378
File: bucket/compactgui.json:20-22
Timestamp: 2025-10-19T13:58:23.389Z
Learning: In the ScoopInstaller/Extras repository, the CompactGUI manifest removed hash verification from the autoupdate block because the hash verification mechanism (scraping SHA-256 from release page HTML) is no longer available in newer CompactGUI releases. GitHub asset digests exist in beta releases but not in v3.8.0, and Scoop doesn't have built-in support for extracting from GitHub API asset digests.

Applied to files:

  • bucket/netspeedtray.json
📚 Learning: 2025-09-05T09:41:52.653Z
Learnt from: Gitoffthelawn
Repo: ScoopInstaller/Extras PR: 16106
File: bucket/czkawka-gui.json:25-25
Timestamp: 2025-09-05T09:41:52.653Z
Learning: For czkawka-gui manifests in Scoop Extras, the correct upstream filename pattern for Windows GUI builds in recent versions uses "gtk46" (without underscore), not "gtk_46" (with underscore). The autoupdate URL should use "windows_czkawka_gui_gtk46.zip" format. This was confirmed by a working 10.0.0 update with valid hash.

Applied to files:

  • bucket/netspeedtray.json
📚 Learning: 2025-10-16T15:59:21.258Z
Learnt from: o-l-a-v
Repo: ScoopInstaller/Extras PR: 16349
File: bucket/fvim.json:45-49
Timestamp: 2025-10-16T15:59:21.258Z
Learning: In Scoop manifests, the `autoupdate.url` and `autoupdate.architecture.<arch>.url` fields must be valid URIs according to the JSON schema (defined with `"format": "uri"`). Variables like `$matchUrlx64` that contain only path segments must be combined with a base URL (e.g., `https://github.com/.../releases/download/`) to form a complete valid URI.

Applied to files:

  • bucket/netspeedtray.json
🔇 Additional comments (2)
bucket/netspeedtray.json (2)

1-10: Manifest structure and metadata look correct.

The schema reference, version, description, homepage, and license are properly formatted. The initial installation URL, hash, and installer configuration follow Scoop conventions for Inno Setup applications.


22-28: No changes required—hash omission is correct and intentional.

Checksums for NetSpeedTray v1.1.7 are published on the GitHub release page, but they are embedded in the HTML only, not available as GitHub API asset digests or separate checksum files. Following established precedent in the ScoopInstaller/Extras repository (e.g., compactgui.json), hash verification is correctly omitted from the autoupdate block because Scoop's autoupdate mechanism cannot programmatically extract checksums from release page HTML. The manifest is valid as-is.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant