Skip to content

Conversation

@fahim-ahmed05
Copy link
Contributor

@fahim-ahmed05 fahim-ahmed05 commented Nov 4, 2025

Resolves #16526

  • Use conventional PR title: <manifest-name[@version]|chore>: <general summary of the pull request>
  • I have read the Contributing Guide

Summary by CodeRabbit

  • New Features
    • VacuumTube package is now available for installation with support for 64‑bit and ARM64 architectures.
    • Automatic update checks for new releases via GitHub.
    • Persistent user data with automatic migration from AppData to a persisted data directory, and cleanup/junction removal on uninstall.
    • Installed shortcut for easy launching.

@coderabbitai
Copy link

coderabbitai bot commented Nov 4, 2025

Warning

Rate limit exceeded

@fahim-ahmed05 has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 7 minutes and 49 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between 15fb92e and a58478d.

📒 Files selected for processing (1)
  • bucket/vacuumtube.json (1 hunks)

Walkthrough

Adds a new Scoop-style manifest bucket/vacuumtube.json for VacuumTube v1.3.21 with metadata, x64/arm64 resources and checksums, persisted data path, PowerShell post-install/post-uninstall scripts to migrate/create/remove an AppData junction, shortcut mapping, and GitHub-based checkver/autoupdate.

Changes

Cohort / File(s) Summary
VacuumTube package manifest
bucket/vacuumtube.json
New manifest for VacuumTube v1.3.21: metadata (homepage, license), architecture-specific resources for x64 and arm64 with download URLs and SHA256, persist path data, PowerShell post_install that migrates existing AppData data to persisted dir and creates a junction if missing, post_uninstall that removes the AppData junction if present, shortcut mapping (VacuumTube.exeVacuumTube), and checkver/autoupdate configured for GitHub releases.

Sequence Diagram(s)

sequenceDiagram
  actor User
  participant Scoop as "Scoop (installer)"
  participant Manifest as "bucket/vacuumtube.json"
  participant PS as "PowerShell post_install"
  participant FS as "Filesystem (persist, AppData)"

  User->>Scoop: install vacuumtube v1.3.21
  Scoop->>Manifest: read manifest (resources, persist, scripts)
  Scoop->>PS: run post_install
  PS->>FS: check %AppData%\VacuumTube (exists?)
  alt AppData exists
    PS->>FS: move AppData contents -> persist\data
    PS->>FS: create junction %AppData%\VacuumTube -> persist\data
  else AppData missing
    PS->>FS: ensure persist\data directories exist
    PS->>FS: create junction %AppData%\VacuumTube -> persist\data
  end
  PS->>Scoop: exit (success)
Loading
sequenceDiagram
  actor User
  participant Scoop as "Scoop (uninstaller)"
  participant PS as "PowerShell post_uninstall"
  participant FS as "Filesystem"

  User->>Scoop: uninstall vacuumtube
  Scoop->>PS: run post_uninstall
  PS->>FS: if %AppData%\VacuumTube is a junction -> remove junction
  PS->>Scoop: exit
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

  • Verify release URLs and SHA256 entries in bucket/vacuumtube.json
  • Inspect PowerShell post_install for correct path handling, migration safety, idempotency, and junction creation
  • Confirm post_uninstall only removes the junction and does not delete persisted data

Suggested reviewers

  • aliesbelik
  • z-Fng

Poem

🐇 I hopped through JSON, tidy and bright,
I moved AppData to a safe little site,
Planted junctions, set shortcuts in tune,
Manifest ready beneath the moon,
VacuumTube lands — a portable boon. 🎵

Pre-merge checks and finishing touches

✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: adding VacuumTube version 1.3.21 to the manifest.
Description check ✅ Passed The description includes the resolved issue reference, confirms following the conventional PR title format, and indicates reading the Contributing Guide, satisfying template requirements.
Linked Issues check ✅ Passed The PR successfully implements the package request from issue #16526 by adding the VacuumTube v1.3.21 manifest with correct metadata, download URLs, architecture support, and post-install/uninstall scripts.
Out of Scope Changes check ✅ Passed All changes are scoped to adding the VacuumTube v1.3.21 manifest file with no extraneous modifications unrelated to the linked package request.

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

github-actions bot commented Nov 4, 2025

All changes look good.

Wait for review from human collaborators.

vacuumtube

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

Check the full log for details.

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: 1

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

17-30: Review error handling in post-install data migration.

Line 23 uses -ErrorAction SilentlyContinue on the Move-Item operation, which silently ignores migration failures. If data files fail to migrate, the junction will be created pointing to potentially empty persist directories without alerting the user.

Consider tightening error handling to at least log or warn on migration failures:

-        "Move-Item -Path (Join-Path $appdata '*') -Destination $persistData -Force -ErrorAction SilentlyContinue",
+        "try { Move-Item -Path (Join-Path $appdata '*') -Destination $persistData -Force } catch { Write-Warning \"Failed to migrate data from AppData: $_\" }",
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a281ec2 and fa5eb2a.

📒 Files selected for processing (1)
  • bucket/vacuumtube.json (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: WindowsPowerShell
🔇 Additional comments (2)
bucket/vacuumtube.json (2)

43-52: Update autoupdate URLs to match initial version-specific pattern.

The autoupdate section also uses /releases/latest/download/. Once the initial URLs are corrected to v1.3.21-specific paths, ensure autoupdate is configured to dynamically fetch future versions correctly. Review Scoop documentation for proper autoupdate patterns for GitHub releases.


9-9: Awaiting hash verification results from the Python script to confirm whether the current hashes match v1.3.21 artifacts...

@fahim-ahmed05
Copy link
Contributor Author

/verify

@github-actions
Copy link
Contributor

github-actions bot commented Nov 4, 2025

All changes look good.

Wait for review from human collaborators.

vacuumtube

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

Check the full log for details.

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.

[Request]: VacuumTube

1 participant