Skip to content

Releases: mas-cli/mas

v5.2.0: 🕹️ Support Apple Arcade apps

18 Feb 02:13
v5.2.0
e84c065

Choose a tag to compare

  • Support Apple Arcade apps (and anything else that has "MacDesktop-MacDesktop" amongst its supported devices)
  • Parallelize some code

What's Changed

🚀 Features

  • Parallelize async code without side effects that cannot be out of order by @rgoldberg in #1203

🐛 Bug Fixes

  • Support MacDesktop-MacDesktop apps by @rgoldberg in #1199
  • Get minimumOSVersion for MacDesktop-MacDesktop apps from App Store page for search by @rgoldberg in #1201

Full Changelog: v5.1.0...v5.2.0

v5.1.0: ↕️ Install/update & uninstall improvements

30 Jan 03:03
v5.1.0
5a53d3d

Choose a tag to compare

What's Changed

🚀 Features

🐛 Bug Fixes

  • Create temp folders for pkg installer & receipt hard links on same volume as original files by @rgoldberg in #1187
  • Create receipt & ancestor folders with correct owner, group & permissions by @rgoldberg in #1192
  • Index in Spotlight folders that should contain App Store apps but that aren't indexed as such in Spotlight by @rgoldberg in #1194

Changes

  • Fix SwiftFormat file header copyright year issue by @rgoldberg in #1180
  • Output error when uninstall --all <app-id>… or uninstall without args by @rgoldberg in #1189
  • Build with Xcode 26.2 on macos-15 & macos-15-intel GHA runners & more by @rgoldberg in #1195

Full Changelog: v5.0.2...v5.1.0

v5.0.2: 🅾️ Ignore trailing 0 version components

29 Dec 07:40
v5.0.2
9ba2cf5

Choose a tag to compare

  • Ignore trailing 0 version components in inaccurate version comparison (thanks, @WarningImHack3r)

What's Changed

🚀 Features

New Contributors

Full Changelog: v5.0.1...v5.0.2

v5.0.1: 🏗️ Fix macOS 14 build

28 Dec 20:51
v5.0.1
6aba7f2

Choose a tag to compare

  • Fix macOS 14 build

What's Changed

Changes

Full Changelog: v5.0.0...v5.0.1

v5.0.0: ✂️ Require macOS 13 to run; remove account, region & signin

28 Dec 18:02
v5.0.0
9bb9304

Choose a tag to compare

  • Fix an install/update deadlock for long installer logs
  • Remove vestigial account, region & signin
  • Require macOS 13+ to run mas
  • Use Swift 6.2

What's Changed

🐛 Bug Fixes

  • Improve build-time Swift & Swift driver version parsing to be more universal by @rgoldberg in #1163
  • Fix installer output parsing deadlock by @rgoldberg in #1166

Changes

Full Changelog: v4.1.2...v5.0.0

v4.1.2: ⬆️ More install/update & other fixes

27 Dec 07:43
v4.1.2
9518476

Choose a tag to compare

  • Many install/update/outdated improvements
  • Many build improvements
  • Minor cleanup

What's Changed

🚀 Features

🐛 Bug Fixes

  • Ensure that notices about downloading phase always output by @rgoldberg in #1152
  • Build using the latest available Xcode by @rgoldberg in #1154
  • Improve version comparison logic for outdated & update by @rgoldberg in #1155
  • Warn users to switch to a mas distribution that is built using Swift 6.2+ by @rgoldberg in #1156
  • Fix pkg installer selection algorithm by @rgoldberg in #1158
  • Choose shortest (instead of first) bundle URL from installer stderr as app folder by @rgoldberg in #1161

Changes

Full Changelog: v4.1.1...v4.1.2

v4.1.1: ⬆️ Install/update & other fixes

18 Dec 12:01
v4.1.1
dac9fc2

Choose a tag to compare

  • get, install, lucky, & update: numerous fixes including:
    • Properly updating App Store upon app installation/upgrade
    • Improved concurrency
    • Replace existing app receipt
  • App Store & macOS regions: for each macOS region without an App Store, map to a default App Store specific to that region
  • config: binary slice architecture detection
  • Avoid a JSON parsing error
  • arm64 pkg installer no longer require Rosetta to be installed
  • Standardized error output formatting
  • Cleanup

What's Changed

🚀 Features

  • Include mas binary slice architectures & Mac CPU architecture in config output by @rgoldberg in #1119

🐛 Bug Fixes

Changes

Full Changelog: v4.1.0...v4.1.1

v4.1.0: 🔐 Root privilege usage overhaul

08 Dec 12:46
v4.1.0
4fa8f4c

Choose a tag to compare

Root privilege usage has been overhauled. mas now:

  • requires root privileges only when absolutely necessary
  • requests root privileges if they have not yet been granted
  • allows root privileges granted during a call to mas to remain valid pursuant to the user's sudo credential timeout setting
  • calls sudo from the executable mas binary, obviating the need for the now-removed zsh wrapper
  • allows all commands to work properly if they are called with a root effective user
    • some commands previously worked properly only if called with a non-root effective user (i.e. were not called via sudo)

What's Changed

🚀 Features

  • Omnibus: sudo from Swift, non-expiring sudo credentials, macos-15-intel GHA runners, documentation, massive cleanup by @rgoldberg in #1098

Full Changelog: v4.0.0...v4.1.0

v4.0.0: 🎁 Workaround installd/PackageKit restriction

26 Nov 13:40
v4.0.0
21205c0

Choose a tag to compare

Workaround installd/PackageKit restriction (#1029) via a methodology found by @alienator88.

The workaround requires root privileges for get/purchase, install, lucky & update/upgrade.

Automatically requests root privileges via running sudo in an executable shell wrapper around mas.

Root privileges may also be supplied by running sudo mas … on your command line.

What's Changed

🚀 Features

  • Executable zsh wrapper around executable binary that uses sudo when appropriate by @rgoldberg in #1086

🐛 Bug Fixes

  • Workaround installd/PackageKit access restriction introduced in macOS 26.1, 15.7.2 & 14.8.2 by @rgoldberg in #1041
  • Cleanup workaround for installd/PackageKit access restriction introduced in macOS 26.1, 15.7.2 & 14.8.2 by @rgoldberg in #1075
  • Don't warn if multiple bundles installed by installer by @rgoldberg in #1088

Changes

Full Changelog: v3.1.0...v4.0.0

v3.1.0: 🎯 Configurable outdated app detection accuracy

23 Nov 04:48
v3.1.0
d51db64

Choose a tag to compare

  • outdated & update now default to using the inaccurate but faster pre-3.0.0 outdated app detection logic
  • outdated & update now have --accurate & --accurate-ignore-unknown-apps flags to use the accurate but slower outdated app detection logic first released in 3.0.0
    • The accurate logic can result in dialog boxes being opened for apps whose installers cannot be downloaded, because either:
      • The app was installed for a different Apple Account than the current one
      • The installer is no longer available from the App Store
        • --accurate-ignore-unknown-apps skips all apps that are unknown to the App Store
        • --accurate exists because some apps are unknown to the App Store, but their installers can still be downloaded
  • outdated output is now properly tabulated

What's Changed

🚀 Features

🐛 Bug Fixes

Changes

Full Changelog: v3.0.1...v3.1.0