Repository navigation
Application Version Check
An optional Jamf-only step that shows which versions of an app are actually installed across your managed Macs, and compares them with the latest version on Homebrew.
It appears as its own wizard step, Check Application Versions, after you pick report sections and before Report Extras. It's switched off by default and doesn't depend on which report sections you picked. If you only want the version check, select no sections and turn this on.
Needs a licence once the 72-hour free trial has ended. Without one, the option shows Licensed Only. See Licensing.
- Turn on Run an application version check.
- Type one or more app names, e.g.
Google Chrome,Zoom,Microsoft Word. Use Add Application to add more rows. - Optionally, fill in Only include devices with an inventory update within the last n day(s) to leave out Macs whose inventory is out of date. Leave it blank to include every Mac.
- Click Check Versions to run the check straight away and see the results in the app. You can also just click Continue, and the check will run while the report generates.
When you check in the app, the report reuses those results instead of scanning the fleet again, as long as the server, the app names and the inventory age limit haven't changed. If you change any of them, the old results are cleared and you need to check again (or let the check run with the report). Going Back and Continue keeps the results and any choices you made.
| Check | Source |
|---|---|
| Installed versions | Each managed Mac's own application inventory in Jamf Pro (computers-inventory, APPLICATIONS section), counted by version. This is what's actually on disk, not what a policy or Patch Management title says should be there. |
| Latest version | Homebrew's public API (formulae.brew.sh), checking casks first and then formulae. Only the app name is sent. No device or user data is included. |
The inventory age limit uses each Mac's last full inventory submission (the reportDate in Jamf's GENERAL inventory section), not its last check-in. A Mac can check in often without sending a fresh application list, so its last check-in doesn't show how current its app versions are.
When a limit is set, Macs with an older inventory date, or none, are left out. The report says which limit was used and how many Macs it left out.
Names are matched on whole words, ignoring case. Edge matches Microsoft Edge, but not Ledger Live or Edger. Names with symbols work too: C++ matches Visual C++ Redistributable and .NET matches Microsoft .NET Runtime.
A name can still match more than one app. When you click Check Versions, the app asks you to choose:
| Ambiguity | Example | Choices |
|---|---|---|
| Several installed apps |
edge matches Microsoft Edge and Microsoft Edge Beta
|
One of the installed apps, or All of the above (combined) |
| Several Homebrew packages |
edge matches the Microsoft Edge cask and Sony's Imaging Edge cask |
One of the casks or formulae, shown with its Homebrew label |
Changing a choice updates the results straight away, without scanning the fleet again. Results show the real app name, with what you typed next to it if it's different.
If the check only runs during report generation, nobody is asked to choose. The installed versions of every matching app are combined, and the first Homebrew match is used. If a name is likely to be ambiguous, use Check Versions first.
| Status | Meaning |
|---|---|
| Up to Date | Every Mac with the app has the latest Homebrew version |
| Mixed | Some Macs have the latest version and some don't |
| Outdated | No Mac has the latest version |
| Not Deployed | The app wasn't found on any managed Mac |
| On Homebrew | Homebrew has the app but doesn't track its version, usually because it updates itself. The latest version shows as Auto-updating, and installed versions aren't compared |
| Unknown | No Homebrew match, so there's no latest version to compare against |
Versions are compared number by number, so 10.0 is newer than 9.9, 1.2 is the same as 1.2.0, and a build number in brackets doesn't upset the comparison. A pre-release such as 1.0b1 counts as older than 1.0. A version that can't be compared, such as Unknown, counts as neither up to date nor outdated, so the app shows as Mixed rather than a false Outdated.
If Homebrew can't be reached or returns an error (a rate limit, for example), the result says so. It isn't reported as "Not found on Homebrew".
If some pages of device inventory can't be read from Jamf Pro, the results say how many pages failed and roughly how many devices that covers, both in the app and in the report. Installed-version counts may then be understated.
The results appear as an Application Version Check section, with one row per app: application, installed versions and device counts, latest Homebrew version, status, and the number of devices with the app. If an inventory age limit was set, it's stated above the table.
Update enforcement detection (looking for configuration profiles that force app updates) has been removed. The check no longer reads configuration profiles.
- Jamf Pro only.
- Whole-word matching is stricter than before, but a short or generic name can still match more apps than you meant. Check the ambiguity prompts.
- Homebrew doesn't cover every app, and its version strings don't always match the version the app reports on the Mac.
- Scheduled reports don't run the version check. See Automated Reports.
MDM Reporting Tool — internal edition · mdmmagic.au · Log issues & feature requests
Setup
Reporting
Automation
App
Security