Subject: | Could not parse version string on macOS 11 |
Date: | Sat, 21 Nov 2020 23:40:34 -0600 |
To: | bug-Mac-FSEvents [...] rt.cpan.org |
From: | Ryan Schmidt <perl [...] ryandesign.com> |
Mac::FSEvents 0.14 fails to build on macOS 11:
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Mac::FSEvents
Writing MYMETA.yml and MYMETA.json
Could not parse version string!
Please file a bug report on CPAN, and include the following
in the description:
Show quoted text
> Software:
>
> System Software Overview:
>
> System Version: macOS 11.0.1 (20B29)
> Kernel Version: Darwin 20.1.0
> Boot Volume: System
> Boot Mode: Normal
> Computer Name: bigsura
> User Name: MacPorts (macports)
> Secure Virtual Memory: Enabled
> System Integrity Protection: Enabled
> Time since boot: 2 days 2:24
>
This is because in MacVersion.pm you run `system_profiler SPSoftwareDataType` and then parse the output with a regular expression that assumes the macOS version will be 10.x, an assumption which is no longer true as of the release of macOS Big Sur version 11 this month.
Note that it would be much simpler and quicker to get the macOS version using `sw_vers -productVersion`.