Skip to content

Conversation

@SorYoshino
Copy link
Contributor

@SorYoshino SorYoshino commented Oct 20, 2025

Summary

This PR updates MQTTX to version 1.12.1 and temporarily removes ARM64 architecture from the manifest.

Related Issue

Changes

  • Converted license to object format with identifier and url
  • Updated x64 and ia32 URLs and SHA512 hashes for version 1.12.1
  • Removed ARM64 architecture due to observed compatibility issues on Windows 11 ARM devices
  • Added notes explaining temporary ARM64 removal and link to upstream discussion

Testing

┏[ D:\Software\Scoop\Local\apps\scoop\current\bin][ master ≡]
└─> .\checkver.ps1 -App mqttx -Dir "D:\Temporary\Software\Microsoft\Windows Sandbox\Repositories\Scoop\Buckets\Extras\bucket" -f
mqttx: 1.12.1 (scoop version is 1.12.1)
Forcing autoupdate!
Autoupdating mqttx
DEBUG[1760985731] [$updatedProperties] = [url hash] -> D:\Software\Scoop\Local\apps\scoop\current\lib\autoupdate.ps1:491:5
DEBUG[1760985732] $substitutions (hashtable) -> D:\Software\Scoop\Local\apps\scoop\current\lib\autoupdate.ps1:221:5
DEBUG[1760985732] $substitutions.$matchHead                     1.12.1
DEBUG[1760985732] $substitutions.$dashVersion                   1-12-1
DEBUG[1760985732] $substitutions.$minorVersion                  12
DEBUG[1760985732] $substitutions.$urlNoExt                      https://github.com/emqx/MQTTX/releases/download/v1.12.1/MQTTX-Setup-1.12.1-ia32
DEBUG[1760985732] $substitutions.$basename                      MQTTX-Setup-1.12.1-ia32.exe
DEBUG[1760985732] $substitutions.$preReleaseVersion             1.12.1
DEBUG[1760985732] $substitutions.$majorVersion                  1
DEBUG[1760985732] $substitutions.$match1                        1.12.1
DEBUG[1760985732] $substitutions.$baseurl                       https://github.com/emqx/MQTTX/releases/download/v1.12.1
DEBUG[1760985732] $substitutions.$dotVersion                    1.12.1
DEBUG[1760985732] $substitutions.$matchTail
DEBUG[1760985732] $substitutions.$version                       1.12.1
DEBUG[1760985732] $substitutions.$buildVersion
DEBUG[1760985732] $substitutions.$underscoreVersion             1_12_1
DEBUG[1760985732] $substitutions.$patchVersion                  1
DEBUG[1760985732] $substitutions.$cleanVersion                  1121
DEBUG[1760985732] $substitutions.$basenameNoExt                 MQTTX-Setup-1.12.1-ia32
DEBUG[1760985732] $substitutions.$url                           https://github.com/emqx/MQTTX/releases/download/v1.12.1/MQTTX-Setup-1.12.1-ia32.exe
DEBUG[1760985732] $hashfile_url = https://github.com/emqx/MQTTX/releases/download/v1.12.1/latest.yml -> D:\Software\Scoop\Local\apps\scoop\current\lib\autoupdate.ps1:224:5
Searching hash for MQTTX-Setup-1.12.1-ia32.exe in https://github.com/emqx/MQTTX/releases/download/v1.12.1/latest.yml
DEBUG[1760985733] $regex = (?sm)ia32.*?sha512:\s+([a-zA-Z0-9+\/=]{24,88}) -> D:\Software\Scoop\Local\apps\scoop\current\lib\autoupdate.ps1:78:9
Found: sha512:f109e1fc77b224ce21cc7dedc84a2d756eb8353b3f68083d83409110d23c78a30ed3caaa3ee88a26d2a7ef1e977bc7c62269fe7c835345a2398ac013613b3cd9 using Extract Mode
DEBUG[1760985733] $substitutions (hashtable) -> D:\Software\Scoop\Local\apps\scoop\current\lib\autoupdate.ps1:221:5
DEBUG[1760985733] $substitutions.$matchHead                     1.12.1
DEBUG[1760985733] $substitutions.$dashVersion                   1-12-1
DEBUG[1760985733] $substitutions.$minorVersion                  12
DEBUG[1760985733] $substitutions.$urlNoExt                      https://github.com/emqx/MQTTX/releases/download/v1.12.1/MQTTX-Setup-1.12.1-x64
DEBUG[1760985733] $substitutions.$basename                      MQTTX-Setup-1.12.1-x64.exe
DEBUG[1760985733] $substitutions.$preReleaseVersion             1.12.1
DEBUG[1760985733] $substitutions.$majorVersion                  1
DEBUG[1760985733] $substitutions.$match1                        1.12.1
DEBUG[1760985733] $substitutions.$baseurl                       https://github.com/emqx/MQTTX/releases/download/v1.12.1
DEBUG[1760985733] $substitutions.$dotVersion                    1.12.1
DEBUG[1760985733] $substitutions.$matchTail
DEBUG[1760985733] $substitutions.$version                       1.12.1
DEBUG[1760985733] $substitutions.$buildVersion
DEBUG[1760985733] $substitutions.$underscoreVersion             1_12_1
DEBUG[1760985733] $substitutions.$patchVersion                  1
DEBUG[1760985733] $substitutions.$cleanVersion                  1121
DEBUG[1760985733] $substitutions.$basenameNoExt                 MQTTX-Setup-1.12.1-x64
DEBUG[1760985733] $substitutions.$url                           https://github.com/emqx/MQTTX/releases/download/v1.12.1/MQTTX-Setup-1.12.1-x64.exe
DEBUG[1760985733] $hashfile_url = https://github.com/emqx/MQTTX/releases/download/v1.12.1/latest.yml -> D:\Software\Scoop\Local\apps\scoop\current\lib\autoupdate.ps1:224:5
Searching hash for MQTTX-Setup-1.12.1-x64.exe in https://github.com/emqx/MQTTX/releases/download/v1.12.1/latest.yml
DEBUG[1760985734] $regex = (?sm)x64.*?sha512:\s+([a-zA-Z0-9+\/=]{24,88}) -> D:\Software\Scoop\Local\apps\scoop\current\lib\autoupdate.ps1:78:9
Found: sha512:321e57f500fc85309ffb7d45d34fbc9cfd560623cbe8593a4474ca81baf95d4bbe80eb5b3adaecd6eb1d99b98757a9844f6f197e40d2cf875087441a3148919d using Extract Mode
Writing updated mqttx manifest

┏[ D:\Temporary\Software\Microsoft\Windows Sandbox\Repositories\Scoop\Buckets\Extras\bucket][ mqttx ≢  ~1]
└─> scoop install .\mqttx.json
Installing 'mqttx' (1.12.1) [64bit] from 'D:\Temporary\Software\Microsoft\Windows Sandbox\Repositories\Scoop\Buckets\Extras\bucket\mqttx.json'
Loading MQTTX-Setup-1.12.1-x64.exe from cache.
Checking hash of MQTTX-Setup-1.12.1-x64.exe ... ok.
Extracting MQTTX-Setup-1.12.1-x64.exe ... done.
Running pre_install script...done.
Linking D:\Software\Scoop\Local\apps\mqttx\current => D:\Software\Scoop\Local\apps\mqttx\1.12.1                         
Creating shortcut for MQTT X (MQTTX.exe)
'mqttx' (1.12.1) was installed successfully!
Notes
-----
ARM64 architecture has been temporarily removed from the manifest due to compatibility issues observed on Windows 11 ARM devices.
For more details, see the upstream discussion: https://github.com/emqx/MQTTX/issues/1803#issuecomment-2962059492
Once the upstream provides a stable ARM64 version, support for this architecture will be re-added to the manifest.
  • Use conventional PR title: <manifest-name[@version]|chore>: <general summary of the pull request>
  • I have read the Contributing Guide

Summary by CodeRabbit

  • Chores

    • Version bumped to 1.12.1 with updated package checksums for 64-bit and 32-bit architectures.
    • ARM64 architecture support temporarily removed; see release notes for details.
    • License information updated with enhanced metadata.
  • Bug Fixes

    • Installation script improved with better error handling, explicit path specifications, and enhanced cleanup capabilities for more reliable deployment.

@coderabbitai
Copy link

coderabbitai bot commented Oct 20, 2025

Walkthrough

The MQTTX manifest file is updated to version 1.12.1, with architecture-specific URLs and hashes updated accordingly. ARM64 support is removed from both architecture and autoupdate sections. The license field is refactored from string to object format, notes array is added, and PowerShell pre-install commands are refactored with explicit path and error-handling parameters.

Changes

Cohort / File(s) Summary
MQTTX Manifest Update
bucket/mqttx.json
Version bumped to 1.12.1; license changed from string to object with identifier and URL; notes array added documenting ARM64 support removal; 64bit and 32bit URLs and hashes updated to v1.12.1; arm64 architecture entry removed; pre_install PowerShell commands refactored with explicit -Path, -DestinationPath, and error-handling parameters; autoupdate URLs and templates updated to v$version with arm64 mapping removed.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Rationale: Single file update with primarily mechanical changes (version/hash bumps, URL template updates) and straightforward structural modifications (license schema change, architecture removal). Review requires verification of URLs, hashes, and manifest schema compliance, but logic complexity is minimal.

Poem

🐰 MQTTX hops to twelve-point-one with glee,
ARM64 departs—a version history,
PowerShell whispers now with paths so clear,
The manifest dances, no bugs to fear! 🎉
Schema evolves as licenses take their bow,
Autoupdates aligned, we're ready now!

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title Check ✅ Passed The PR title "mqttx: Update to version 1.12.1 and temporarily remove ARM64 support" directly summarizes the two main objectives of this changeset. Both elements mentioned in the title are clearly present in the file changes: the version bump from 1.11.1 to 1.12.1 with corresponding URL and hash updates, and the removal of ARM64 architecture support from the manifest. The title is concise, specific, and allows a reviewer to immediately understand the primary purpose of the changes without being vague or overly generic.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
Description Check ✅ Passed The pull request description successfully follows the required template structure. It includes a clear summary of the changes (updating MQTTX to 1.12.1 and removing ARM64 support), references the related issue (#16379) using the "Relates to" format, and both required checkboxes are marked as checked by the author. The description goes beyond the minimum template requirements by providing detailed sections on specific changes made, including conversion of the license field to object format, updated URLs and hashes for x64 and ia32 architectures, removal of ARM64 due to compatibility issues, and comprehensive testing output demonstrating successful autoupdate and installation. All essential information required by the template is present and properly formatted.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 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

All changes look good.

Wait for review from human collaborators.

mqttx

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate
  • Autoupdate Hash Extraction

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.

1 participant